:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#193a32;background:#f4f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{background:white;border-bottom:1px solid #dfebe5;padding:20px max(24px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}a{color:#087b58;text-decoration:none}.brand{font-size:29px;font-weight:900;letter-spacing:-1px}main{max-width:1200px;padding:30px 24px;margin:auto}h1{font-size:clamp(28px,4vw,40px);letter-spacing:-1.1px;margin:8px 0}h2{font-size:17px;margin:0 0 6px}p{line-height:1.6}.eyebrow{color:#087b58;font-size:12px;letter-spacing:2px;font-weight:800}.muted{color:#63776f;font-size:14px;margin:7px 0}.panel{background:white;border:1px solid #dfe9e3;border-radius:18px;padding:20px;box-shadow:0 4px 18px #173b3205}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.filters{display:flex;gap:12px;align-items:center;margin-bottom:20px}.filters input{flex:1;min-width:120px}input,select,textarea{font:inherit;background:white;color:inherit;border:1px solid #c8d8ce;border-radius:10px;padding:11px;min-width:0}textarea{resize:vertical;min-height:100px}button{font:inherit;font-weight:650;padding:11px 17px;border-radius:10px;border:1px solid transparent;cursor:pointer;white-space:nowrap}.primary{background:#126cf1;color:white}.secondary{background:#f4f8f5;color:#275544;border-color:#d7e6dc}button:disabled{opacity:.55;cursor:default}button:hover:enabled{filter:brightness(.95)}:focus-visible{outline:3px solid #e6ba20;outline-offset:3px}.catalog{display:grid;gap:12px}.row{display:flex;align-items:center;gap:18px}.row img{width:92px;height:62px;object-fit:cover;border-radius:10px}.info{flex:1}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.badge{padding:6px 10px;border-radius:7px;background:#eff1f2;color:#56616a;font-size:12px;font-weight:700}.published{background:#e2f5e8;color:#086742}.coming_soon{background:#fff3d4;color:#866000}.notice{background:#e5f4eb;border-radius:12px;padding:14px;margin:0 0 20px}.error{color:#a62d36}.notice.error{background:#ffeced}.login{max-width:540px;margin:60px auto;padding:36px}.login button{width:100%;margin:16px 0}.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;margin:12px 0}.check input{margin-top:4px;accent-color:#087b58}.editor{border:0;border-radius:20px;padding:28px;max-width:780px;width:94vw;max-height:90vh;color:inherit}.editor::backdrop{background:#18392a88}.editor h2{font-size:25px;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:650}.form-grid label.check{flex-direction:row}.editor .actions{justify-content:flex-end;margin-top:24px}footer{text-align:center;color:#7c8e85;font-size:12px;padding:24px}[hidden]{display:none!important}@media(max-width:800px){.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.row{flex-wrap:wrap}.row .actions{width:100%;justify-content:flex-end}.toolbar{align-items:flex-start}.form-grid{grid-template-columns:1fr}.login{margin:20px auto;padding:24px}header{padding:16px 24px}}

.course-editor{grid-column:1/-1;border:1px solid #cbd5e1;border-radius:12px;padding:16px}.course-editor legend{font-weight:800}.course-editor .check{display:inline-flex;margin:8px 16px 8px 0}.course-editor input{width:auto}.course-editor .muted{margin-top:0}

.admin-tabs{display:flex;gap:6px;padding:5px;margin:0 0 24px;background:#e8f0eb;border:1px solid #d9e6df;border-radius:14px;width:fit-content;max-width:100%}
.admin-tabs button{background:transparent;color:#39584d;white-space:normal;line-height:1.3}
.admin-tabs [aria-selected=true]{background:#fff;color:#075a42;border-color:#d5e6dc;box-shadow:0 2px 5px #173b3210}
.access-panel{padding:clamp(16px,3vw,28px)}
.access-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}
.access-heading h2,.catalog-heading h2{font-size:clamp(20px,3vw,25px);letter-spacing:-.35px}
.access-heading a{display:inline-block;font-weight:650;font-size:14px;margin-top:4px}
.access-heading a:hover{text-decoration:underline}
.catalog-heading{margin-bottom:16px}
.newspaper-form{display:flex;align-items:end;gap:12px;padding:16px;margin-bottom:0;background:#f3f8f5;border:1px solid #e0ebe4;border-radius:12px}
.newspaper-form label{display:grid;gap:7px;flex:1;min-width:0;font-size:14px;font-weight:650}
.newspaper-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px 16px;background:#e6f5ec;border:1px solid #c5e4d2;border-radius:12px}
.newspaper-result p{margin:0}
.newspaper-code{display:block;font-size:clamp(26px,5vw,34px);font-weight:750;letter-spacing:.15em;color:#075a42;user-select:all}
.newspaper-status{margin:10px 0}
.newspaper-status:empty{margin:0}
.newspaper-history{margin-top:26px}
.newspaper-history h3{font-size:16px;margin:0 0 12px}
.newspaper-table-wrap{overflow-x:auto;border:1px solid #dfe9e3;border-radius:12px}
.newspaper-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}
.newspaper-table th,.newspaper-table td{padding:12px 14px;border-bottom:1px solid #e8efea}
.newspaper-table thead th{font-size:13px;color:#456056;background:#f3f7f4}
.newspaper-table tbody tr:last-child>*{border-bottom:0}
.newspaper-table tbody th{overflow-wrap:anywhere}
.newspaper-table .badge{display:inline-block;white-space:nowrap}
.newspaper-table .waiting{background:#fff1d3;color:#754e08}
.newspaper-table .revoked{background:#fbe9ea;color:#8d3039}
.newspaper-table td:last-child,.newspaper-table thead th:last-child{text-align:right}
.newspaper-revoke{padding:6px 10px;background:#fff;color:#8d3039;border-color:#ebced0;font-size:13px}
@media(max-width:620px){
  .admin-tabs{width:100%}.admin-tabs button{flex:1;padding:8px 5px;font-size:13px}
  .access-heading,.newspaper-form{display:grid;align-items:stretch;gap:10px}
  .newspaper-result{flex-wrap:wrap}
  .newspaper-table th,.newspaper-table td{padding:9px 8px}
  .newspaper-table{min-width:450px}
}

.pizarra-duration.pizarra-duration{flex:0 0 auto}.newspaper-remove{padding:6px 10px;font-size:13px}
