.theme-button .sun-icon{display:none}:root[data-theme=dark] .theme-button .sun-icon{display:block}:root[data-theme=dark] .theme-button .moon-icon{display:none}.site-header nav{max-width:100%;overflow-x:auto}@media (max-width:800px){.site-header .container{flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.site-header nav{white-space:nowrap;flex-wrap:nowrap;width:100%;padding-bottom:5px}}:root{color:#102044;--bg:#fff;--surface:#fff;--text:#102044;--muted:#52617a;--border:#dce4ef;--primary:#0a2f7e;--button-text:#fff;--red:#ff2e43;--green:#17b96b;background:#fff;font-family:Poppins,Arial,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1320;--surface:#1b2438;--text:#f5f7fb;--muted:#b8c2d9;--border:#2a3550;--primary:#3b8bff;--button-text:#0e1320;--red:#ff4b5f;--green:#20c07a}*{box-sizing:border-box}html{min-height:100%}body{background:var(--bg);color:var(--text);margin:0;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.65;cursor:wait}:focus-visible{outline-offset:3px;outline:3px solid #ffc928}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.03em;font-size:clamp(2rem,5vw,3rem);line-height:1.15}h2{font-size:1.5rem;line-height:1.3}h3{font-size:1.15rem}p{max-width:75ch}.muted{color:var(--muted)}.small{font-size:.875rem}.container{width:min(1120px,100% - 32px);margin:auto}.narrow{width:min(600px,100% - 32px);margin:auto}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.between{justify-content:space-between;align-items:center;gap:16px;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px;display:grid}.section{padding:32px 0}.page-heading{margin:0 0 24px}.brand{align-items:center;gap:10px;line-height:1.1;display:inline-flex}.brand strong{color:var(--primary);font-size:1.25rem}.brand small{color:var(--muted);margin-top:4px;font-size:.72rem;display:block}.brand-mark{object-fit:contain}.brand-p{color:#ff2e43}.brand-y{color:#1e6dff}.site-header{background:var(--surface);border-bottom:1px solid var(--border)}.site-header .container{justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex}.site-footer{border-top:1px solid var(--border);margin-top:48px;padding:24px 0}.hero{padding:80px 0 100px}.hero-inner{grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;display:grid}.hero-art{background:linear-gradient(140deg,#0a2f7e,#1e6dff);border-radius:24px;justify-content:center;align-items:center;min-height:360px;padding:30px;display:flex}.hero-art img{filter:drop-shadow(0 16px 22px #0003);max-width:100%;height:auto}.eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:700}.button{white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 20px;font-weight:600;display:inline-flex}.button-primary{background:var(--primary);color:var(--button-text)}.button-secondary{background:var(--surface);color:var(--primary);border-color:var(--border)}.button-danger{background:var(--red);color:#000}.button-ghost{color:var(--text);background:0 0}.button-success{color:#fff;background:#13864d;border-color:#13864d}.button-success:hover{background:#0f7542;border-color:#0f7542}.button-success-outline{color:#13864d;background:0 0;border-color:#13864d}.button-success-outline:hover{background:#13864d14}:root[data-theme=dark] .button-success{background:var(--green);color:#0e1320;border-color:var(--green)}:root[data-theme=dark] .button-success:hover{filter:brightness(1.08)}:root[data-theme=dark] .button-success-outline{color:var(--green);border-color:var(--green);background:0 0}:root[data-theme=dark] .button-success-outline:hover{background:#20c07a1f}.icon-button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.card{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:16px;transition:box-shadow .2s,border-color .2s;overflow:hidden}:root[data-theme=dark] .card{border-color:var(--border);box-shadow:none}.card-header{padding:24px 24px 0}.card-content{padding:24px}.card-header+.card-content{padding-top:12px}.card h2,.card h3{margin-bottom:8px}.input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);border-radius:12px;padding:10px 12px}.textarea{resize:vertical;min-height:100px}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:.875rem;font-weight:600}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;display:grid}.notice{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 16px}.notice.error{border-color:var(--red)}.notice.success{border-color:var(--green)}.badge{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-block}.progress-track{background:var(--border);border-radius:999px;height:10px;overflow:hidden}.progress-fill{background:var(--green);border-radius:999px;height:100%}.app-shell{grid-template-columns:320px minmax(0,1fr);min-height:100vh;display:grid}.side-nav{background:var(--surface);border-right:1px solid var(--border);padding:24px 16px}.side-nav nav{flex-direction:column;gap:4px;margin-top:32px;display:flex}.side-nav nav a{border-radius:10px;padding:10px 12px}.side-nav nav a:hover,.side-nav nav a:focus-visible{background:var(--bg)}.app-main{min-width:0;padding:32px max(24px,50vw - 650px)}.app-top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:650px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:12px}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.82rem}.table td form{margin:0;display:inline-flex}.item-actions{white-space:nowrap;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.item-actions form{flex-shrink:0;margin:0;display:inline-flex}.item-actions .button{white-space:nowrap;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;min-height:38px;padding:6px 12px;font-size:.85rem;display:inline-flex}.link{color:var(--primary);text-underline-offset:3px;font-weight:600;text-decoration:underline}.study-text{overflow-wrap:anywhere;font-size:1.2rem;font-weight:600}.study-translation{color:var(--muted)}.category-card{border-top:5px solid #1e6dff}.category-card:nth-child(4n+2){border-top-color:#ff2e43}.category-card:nth-child(4n+3){border-top-color:#ffc928}.category-card:nth-child(4n+4){border-top-color:#17b96b}.search-form{gap:8px;display:flex}.search-form .input{max-width:500px}.lesson-status-badge{color:#13864d;background:#17b96b1f;border:1px solid #17b96b40;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;display:inline-flex}:root[data-theme=dark] .lesson-status-badge{color:var(--green);background:#20c07a26;border-color:#20c07a59}@media (max-width:800px){.hero-inner{grid-template-columns:1fr}.hero{padding:48px 0}.hero-art{min-height:240px}.app-shell{display:block}.side-nav{border-right:0;border-bottom:1px solid var(--border);padding:12px 16px}.side-nav nav{flex-direction:row;margin-top:12px;overflow-x:auto}.side-nav nav a{white-space:nowrap}.app-main{padding:24px 16px}}@media (max-width:520px){.site-header .container{min-height:64px}.brand small,.hero-art{display:none}.search-form{flex-direction:column}.search-form .input{max-width:none}}
.sortable-list{flex-direction:column;gap:12px;display:flex}.button-danger{color:#fff;background:#c51632}.reorder-hint{margin:32px 0 20px}.group-results{margin-top:32px}.reorder-hint+.group-results{margin-top:0}.catalog-results{margin-top:24px}.reorder-hint+.catalog-results{margin-top:0}.dictionary-results{margin-top:24px}.admin-empty-state{width:100%;margin-top:24px}.admin-empty-state .card-content{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.admin-empty-state p{margin:0}.sortable-card-item{width:100%}.sortable-card-unified{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:16px;flex-direction:row;align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}:root[data-theme=dark] .sortable-card-unified{border-color:var(--border);box-shadow:none}.sortable-card-unified:hover{border-color:#0a2f7e40}:root[data-theme=dark] .sortable-card-unified:hover{border-color:#3b8bff59}.sortable-card-item.is-dragging .sortable-card-unified{border-color:var(--primary);box-shadow:none;z-index:10}:root[data-theme=dark] .sortable-card-item.is-dragging .sortable-card-unified{box-shadow:none}.sortable-drag-column{border:none;border-right:1px solid var(--border);width:38px;min-width:38px;max-width:38px;color:var(--muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#0a2f7e05;justify-content:center;align-self:stretch;align-items:center;margin:0;padding:10px 0;transition:background-color .15s,color .15s;display:flex}:root[data-theme=dark] .sortable-drag-column{border-right-color:var(--border);background:#ffffff05}.sortable-drag-column:hover{color:var(--primary);background:#0a2f7e0f}:root[data-theme=dark] .sortable-drag-column:hover{color:var(--primary);background:#3b8bff1f}.sortable-drag-column:active{cursor:grabbing;background:#0a2f7e1a}.sortable-drag-column:disabled{cursor:wait;opacity:.5}.sortable-drag-column:focus-visible{outline-offset:-3px;outline:3px solid #ffc928}.drag-dots-icon{opacity:.45;color:currentColor;pointer-events:none;flex-shrink:0;transition:opacity .15s;display:block}.sortable-drag-column:hover .drag-dots-icon,.table-drag-handle:hover .drag-dots-icon{opacity:.95}.sortable-drag-column:active .drag-dots-icon,.table-drag-handle:active .drag-dots-icon{opacity:1}.drag-dots-rail{opacity:.45;width:14px;height:100%;display:block}.sortable-card-number{border-right:1px solid var(--border);background:color-mix(in srgb, var(--primary) 6%, transparent);min-width:52px;color:var(--primary);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 8px;font-size:1rem;font-weight:700;display:flex}.sortable-card-body{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:20px 24px;display:flex}.sortable-card-body>.card{box-shadow:none;background:0 0;border:none;padding:0}.sortable-card-body>.card>.card-content{padding:0}.table-catalog td.drag-cell{text-align:center;width:36px;min-width:36px;max-width:36px;vertical-align:stretch;padding:0}.table-drag-handle{border:none;border-right:1px solid var(--border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;min-height:44px;color:var(--muted);background:#0a2f7e05;justify-content:center;align-items:center;margin:0;padding:6px 0;transition:background-color .15s,color .15s;display:flex}:root[data-theme=dark] .table-drag-handle{border-right-color:var(--border);background:#ffffff05}.table-drag-handle:hover{color:var(--primary);background:#0a2f7e0f}:root[data-theme=dark] .table-drag-handle:hover{color:var(--primary);background:#3b8bff1f}.table-drag-handle:active{cursor:grabbing}.table-drag-handle:focus-visible{outline-offset:-3px;outline:3px solid #ffc928}.sortable-card{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:16px;display:grid}.sortable-card>.card{min-width:0}.sortable-card-handle{padding-top:12px}.drag-handle{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);touch-action:none;cursor:grab;border-radius:10px;place-items:center;display:inline-grid}.drag-handle:active{cursor:grabbing}.drag-handle:disabled{cursor:wait}.drag-cell{white-space:nowrap;width:36px}.filter-form{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;display:grid}.filter-form.filter-form-single{grid-template-columns:minmax(200px,360px) auto}.filter-form .filter-search{grid-column:1/-1}.filter-actions{align-items:center;gap:8px;display:inline-flex}.status-switch{border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:16px;display:flex}.status-switch span{flex-direction:column;display:flex}.status-switch small{color:var(--muted)}.status-switch input{appearance:none;border:1px solid var(--border);background:var(--border);cursor:pointer;border-radius:999px;flex:none;width:48px;height:28px;position:relative}.status-switch input:before{content:"";background:var(--surface);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.status-switch input:checked{background:var(--green)}.status-switch input:checked:before{transform:translate(20px)}@media (max-width:800px){.filter-form{grid-template-columns:1fr 1fr}}@media (max-width:520px){.filter-form,.filter-form.filter-form-single{grid-template-columns:1fr}}.admin-dialog{border:1px solid var(--border);background:var(--surface);width:min(720px,100vw - 32px);max-height:min(90vh,900px);color:var(--text);border-radius:16px;padding:0;box-shadow:0 24px 80px #0006}.admin-dialog::backdrop{background:#081226aa}.admin-dialog-header{border-bottom:1px solid var(--border);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex;position:sticky;top:0}.admin-dialog-header h2{margin:0}.admin-dialog-header-actions{flex-shrink:0;align-items:center;gap:16px;display:inline-flex}.admin-dialog-body{padding:24px}.admin-dialog-body>.stack+.stack{margin-top:24px}.admin-dialog{overflow-x:hidden}.admin-dialog-header h2{overflow-wrap:anywhere;flex:auto;min-width:0}.admin-dialog-header-actions>.icon-button{flex-shrink:0}@media (max-width:600px){.admin-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.admin-dialog-header{align-items:flex-start;gap:12px;padding:16px}.admin-dialog-header h2{font-size:1.35rem;line-height:1.2}.admin-dialog-header-actions{gap:12px}.admin-dialog-header-actions .field-switch{flex-direction:column;align-items:center;gap:4px}.admin-dialog-header-actions .field-switch span{font-size:.75rem;line-height:1}.admin-dialog-body{padding:16px}}.table td{vertical-align:middle}.field-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.field-header label:first-child{font-size:.875rem;font-weight:600}.field-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.field-switch span{color:var(--muted);font-size:.85rem;font-weight:500;transition:color .15s}.field-switch:has(input:checked) span{color:var(--text);font-weight:600}.field-switch input[role=switch]{appearance:none;border:1px solid var(--border);background:var(--border);cursor:pointer;border-radius:999px;flex:none;width:44px;height:24px;margin:0;transition:background-color .15s,border-color .15s;position:relative}.field-switch input[role=switch]:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.field-switch input[role=switch]:checked{background:var(--green);border-color:var(--green)}.field-switch input[role=switch]:checked:before{transform:translate(20px)}.field-switch input[role=switch]:focus-visible{outline-offset:2px;outline:3px solid #ffc928}.category-icon-field{align-items:center;gap:12px;display:flex}.category-icon-field select,.category-icon-field .input{flex:1}.category-icon-preview{border:1px solid var(--border);background:var(--surface);width:48px;height:48px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.category-group-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:600px){.category-group-row{grid-template-columns:1fr}}.category-color-picker-wrapper{flex-direction:column;gap:8px;display:flex}.category-color-input-row{align-items:center;gap:10px;display:flex}.category-color-swatch-label{border:1px solid var(--border);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000001a}.category-color-swatch-label:hover{transform:scale(1.05);box-shadow:0 3px 8px #0003}.category-color-native-input{opacity:0;cursor:pointer;border:none;width:64px;height:64px;padding:0;position:absolute;top:-8px;left:-8px}.category-color-hex-input{text-transform:uppercase;max-width:140px;font-family:monospace;font-weight:600}.audio-upload-field{margin-top:4px}.audio-field-label{margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.audio-dropzone{border:2px dashed var(--border);background:var(--surface);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:140px;padding:28px 20px;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex}.audio-dropzone:hover,.audio-dropzone:focus-visible{border-color:var(--primary);background:#0a2f7e0a}:root[data-theme=dark] .audio-dropzone:hover,:root[data-theme=dark] .audio-dropzone:focus-visible{border-color:var(--primary);background:#3b8bff14}.audio-dropzone.is-dragging{border-color:var(--primary);background:#1e6dff14;box-shadow:0 0 0 4px #1e6dff24}.audio-dropzone.has-error{border-color:var(--red);background:#ff2e430a}.audio-dropzone-icon{width:48px;height:48px;color:var(--primary);background:#0a2f7e14;border-radius:12px;place-items:center;transition:transform .2s;display:grid}:root[data-theme=dark] .audio-dropzone-icon{background:#3b8bff26}.audio-dropzone:hover .audio-dropzone-icon{transform:translateY(-2px)}.audio-dropzone-prompt strong{color:var(--text);margin-bottom:2px;font-size:.95rem;display:block}.audio-dropzone-prompt small{color:var(--muted);font-size:.82rem}.audio-preview-card{border:2px dashed var(--primary);background:var(--surface);border-radius:16px;flex-direction:column;gap:14px;padding:18px 20px;display:flex}.audio-preview-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.audio-preview-fileinfo{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.audio-preview-icon{width:42px;height:42px;color:var(--primary);background:#0a2f7e1a;border-radius:10px;flex-shrink:0;place-items:center;display:grid}:root[data-theme=dark] .audio-preview-icon{background:#3b8bff2e}.audio-preview-meta{flex-direction:column;min-width:0;display:flex}.audio-preview-filename{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.audio-preview-filesize{color:var(--muted);font-size:.8rem}.audio-preview-actions{align-items:center;gap:8px;display:flex}.button-sm{gap:6px;min-height:36px;padding:6px 12px;font-size:.85rem}.audio-player-bar{background:var(--bg);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:10px 14px;display:flex}.audio-play-button{background:var(--primary);width:38px;height:38px;color:var(--button-text);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;place-items:center;transition:transform .15s,opacity .15s;display:grid}.audio-play-button:hover{transform:scale(1.06)}.audio-play-button:active{transform:scale(.96)}.audio-play-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.audio-play-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.audio-player-timeline{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.audio-player-slider{width:100%;height:6px;accent-color:var(--primary);cursor:pointer;border-radius:999px}.audio-player-time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.75rem;display:flex}.audio-dropzone-error-msg{align-items:center;gap:8px;margin-top:8px;display:flex}.current-audio-box{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.current-audio-info{align-items:center;gap:10px;display:flex}.current-audio-player-wrapper{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.current-audio-player{align-items:center;gap:12px;display:flex}.current-audio-time{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap;font-size:.875rem;font-weight:500}@media (max-width:640px){.current-audio-box{align-items:flex-start}.current-audio-player-wrapper{align-items:flex-start;width:100%;margin-top:4px}}.col-nowrap,th.col-nowrap,td.col-nowrap{white-space:nowrap}.col-actions,th.col-actions,td.col-actions{white-space:nowrap;text-align:right;width:1%}.col-actions .item-actions{justify-content:flex-end}.col-status,th.col-status,td.col-status{white-space:nowrap;width:1%}.col-status .badge{white-space:nowrap}.table-catalog{min-width:860px}.table-dictionary{min-width:580px}.table-students{min-width:860px}.cell-spanish{min-width:180px;font-weight:600}.cell-portuguese{min-width:180px}.listing-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.listing-info{text-align:left;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:2px;min-width:0;display:flex}.listing-info strong{word-break:break-word;text-align:left;line-height:1.4;display:block}.listing-info p{text-align:left;margin:0}.listing-info-with-icon{flex-direction:row;justify-content:flex-start;align-items:center;gap:12px}.listing-info-with-icon>div:last-child{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-width:0;display:flex}.category-icon-box{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.item-actions{align-self:center}@media (max-width:640px){.sortable-card-number{min-width:40px;padding:0 4px}.sortable-card-body{padding:16px}.listing-row{flex-direction:column;align-items:stretch;gap:12px}.listing-row>.item-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;align-self:stretch;padding-top:12px}}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.dashboard-header-text{max-width:680px}.dashboard-header-text h1{color:var(--text);letter-spacing:-.02em;margin-bottom:6px;font-size:clamp(1.6rem,2.4vw,2.25rem);font-weight:700}.dashboard-header-text p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.5}.dashboard-header-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dashboard-metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:32px;display:grid}@media (max-width:1024px){.dashboard-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.dashboard-metrics-grid{grid-template-columns:1fr}}.metric-card{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:16px;flex-direction:column;padding:22px 24px;transition:transform .15s,box-shadow .15s;display:flex}:root[data-theme=dark] .metric-card{border-color:var(--border);box-shadow:none}.metric-card-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.metric-card-icon{border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.metric-card-icon.icon-blue{color:#1e6dff;background:#eef4ff}:root[data-theme=dark] .metric-card-icon.icon-blue{color:#3b8bff;background:#1e6dff29}.metric-card-icon.icon-red{color:#ff2e43;background:#feecef}:root[data-theme=dark] .metric-card-icon.icon-red{color:#ff4b5f;background:#ff2e4329}.metric-card-icon.icon-indigo{color:#4f46e5;background:#eef2ff}:root[data-theme=dark] .metric-card-icon.icon-indigo{color:#818cf8;background:#6366f129}.metric-card-icon.icon-green{color:#17b96b;background:#eaf8f1}:root[data-theme=dark] .metric-card-icon.icon-green{color:#20c07a;background:#17b96b29}.metric-card-label{color:var(--muted);margin-bottom:6px;font-size:.875rem;font-weight:500}.metric-card-value-wrap{align-items:baseline;gap:8px;display:flex}.metric-card-value{color:var(--text);letter-spacing:-.02em;font-size:2.1rem;font-weight:700;line-height:1.1;font-family:var(--font-display,inherit)}.metric-card-unit{color:var(--muted);font-size:.875rem;font-weight:400}.toast-container{z-index:99999;pointer-events:none;flex-direction:column;gap:12px;width:calc(100vw - 32px);max-width:420px;display:flex;position:fixed;top:24px;right:24px}.toast-card{pointer-events:auto;background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px 18px;animation:.35s cubic-bezier(.16,1,.3,1) forwards toastSlideIn;display:flex;position:relative;overflow:hidden}:root[data-theme=dark] .toast-card{box-shadow:none}.toast-card.toast-exiting{animation:.28s forwards toastSlideOut}.toast-card.toast-success{border-left:4px solid var(--green)}.toast-card.toast-error{border-left:4px solid var(--red)}.toast-content-wrapper{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.toast-icon{flex-shrink:0;place-items:center;display:grid}.toast-success .toast-icon{color:var(--green)}.toast-error .toast-icon{color:var(--red)}.toast-message{color:var(--text);word-break:break-word;margin:0;font-size:.95rem;font-weight:500;line-height:1.4}.toast-close-btn{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;place-items:center;margin:0;padding:0;transition:background-color .15s,color .15s;display:grid}.toast-close-btn:hover{color:var(--text);background:#0a2f7e14}:root[data-theme=dark] .toast-close-btn:hover{color:var(--text);background:#ffffff1a}.toast-close-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.toast-progress-bar{background:var(--green);transform-origin:0;width:100%;height:3px;animation:5s linear forwards toastProgress;position:absolute;bottom:0;left:0}.toast-error .toast-progress-bar{background:var(--red)}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-16px)scale(.96)}}@media (max-width:600px){.toast-container{width:auto;max-width:none;top:16px;left:16px;right:16px}}.input-group{align-items:stretch;width:100%;display:flex;position:relative}.input-group .input-group-input{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;flex:1;min-width:0}.input-group .input-group-input:focus,.input-group .input-group-input:focus-visible{z-index:2;position:relative}.input-group .input-group-button{border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--primary);white-space:nowrap;cursor:pointer;border-radius:0 12px 12px 0;flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.input-group .input-group-button:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:#0a2f7e0f}.input-group .input-group-button:focus-visible{z-index:2;outline-offset:2px;outline:3px solid #ffc928;position:relative}.input-group .input-group-button:disabled{opacity:.55;cursor:not-allowed}:root[data-theme=dark] .input-group .input-group-button{background:var(--surface);color:var(--primary);border-color:var(--border)}:root[data-theme=dark] .input-group .input-group-button:hover:not(:disabled){border-color:var(--primary);background:#3b8bff1f}@media (max-width:520px){.input-group .input-group-button{gap:6px;padding:0 12px;font-size:.8125rem}}.animate-spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.access-duration-hint--ending{color:var(--text);font-weight:600}.access-date{font-size:.875rem;font-weight:600}.access-date--active{color:#13864d}.access-date--expired{color:#c8102e}:root[data-theme=dark] .access-date--active{color:var(--green)}:root[data-theme=dark] .access-date--expired{color:var(--red)}.table-students .item-actions .button{justify-content:center;width:38px;padding:0}.filter-form.filter-form-students{grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto}@media (max-width:800px){.filter-form.filter-form-students{grid-template-columns:1fr 1fr}.filter-form.filter-form-students .filter-actions{grid-column:1/-1}}@media (max-width:520px){.filter-form.filter-form-students{grid-template-columns:1fr}}.date-input-group .date-input-picker{opacity:0;pointer-events:none;border:0;width:48px;height:1px;padding:0;position:absolute;bottom:0;right:0}
.card{background:var(--surface);border:1px solid var(--border);box-shadow:none}:root[data-theme=dark] .card{border-color:var(--border);box-shadow:none;background:linear-gradient(145deg,#222f49 0%,#1b2438 78%)}.navigation-card{--card-base:#0861c8;--card-ink:#fff;--card-icon-ink:#084bad;background:radial-gradient(circle at var(--card-gradient-origin,92% 6%), color-mix(in srgb, var(--card-base) 88%, white), var(--card-base) 58%, color-mix(in srgb, var(--card-base) 76%, black));min-height:282px;color:var(--card-ink);box-shadow:none;border:1px solid #ffffff2e;flex-direction:column;padding:20px;transition:transform .18s,box-shadow .18s;display:flex;position:relative}.navigation-card:nth-child(4n+2){--card-base:#ca2b41;--card-icon-ink:#b71d32}.navigation-card:nth-child(4n+3){--card-base:#ffcf32;--card-ink:#081426;--card-icon-ink:#745100}.navigation-card:nth-child(4n+4){--card-base:#087d52;--card-icon-ink:#076b47}:root[data-theme=dark] .card.navigation-card{background:radial-gradient(circle at var(--card-gradient-origin,92% 6%), color-mix(in srgb, var(--card-base) 88%, white), var(--card-base) 58%, color-mix(in srgb, var(--card-base) 76%, black));color:var(--card-ink)}:root[data-theme=dark] .navigation-card{box-shadow:none}.navigation-card:hover{box-shadow:none;transform:translateY(-3px)}:root[data-theme=dark] .navigation-card:hover{box-shadow:none}.navigation-card:focus-visible{outline-offset:3px;outline:3px solid #081426}:root[data-theme=dark] .navigation-card:focus-visible{outline-color:#fff}.home-navigation-grid .navigation-card{--card-gradient-origin:8% 6%;box-shadow:none}:root[data-theme=dark] .home-navigation-grid .navigation-card,.home-navigation-grid .navigation-card:hover,:root[data-theme=dark] .home-navigation-grid .navigation-card:hover{box-shadow:none}.navigation-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.navigation-card-icon{width:52px;height:52px;color:var(--card-icon-ink);background:#fff;border-radius:14px;place-items:center;display:grid;box-shadow:0 4px 12px #0000001f}.home-navigation-grid .navigation-card-icon,.student-catalog-grid .navigation-card-icon{color:#fff;box-shadow:none;background:0 0}.home-navigation-grid .navigation-card-icon svg,.student-catalog-grid .navigation-card-icon svg{width:36px;height:36px}.navigation-card-copy{flex-direction:column;gap:6px;margin:22px 0 auto;display:flex}.navigation-card-title{font:700 clamp(1.2rem, 1.6vw, 1.5rem)/1.25 var(--font-display);letter-spacing:-.02em}.navigation-card-description{font:400 .925rem/1.45 var(--font-body)}.navigation-card-detail{font:700 .75rem/1.2 var(--font-body);white-space:nowrap;background:#fff3;border-radius:999px;padding:6px 10px}.navigation-card-footer{font:700 .78rem/1.2 var(--font-body);text-transform:uppercase;border-top:1px solid #ffffff47;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.navigation-card-arrow{width:36px;height:36px;color:var(--card-icon-ink);background:#fff;border-radius:50%;flex:none;place-items:center;transition:transform .18s;display:grid}.navigation-card:hover .navigation-card-arrow{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.navigation-card,.navigation-card-arrow{transition:none}}.card.progress-summary-card{border:1px solid var(--border);box-shadow:none;background:linear-gradient(135deg,#fff 0% 30%,#d9eaff 100%)}:root[data-theme=dark] .card.progress-summary-card{border-color:var(--border);box-shadow:none;background:linear-gradient(135deg,#263f6a 0%,#1b2438 88%)}.welcome-card{border:1px solid var(--border);box-shadow:none;background:linear-gradient(135deg,#fff 0% 30%,#d9eaff 100%);border-radius:24px;align-items:center;gap:20px;padding:26px 28px;display:flex}.welcome-card-illustration{color:#0a2f7e;background:#fff8df;border:1px solid #ffc928;border-radius:18px;flex:none;place-items:center;width:68px;height:68px;display:grid}.welcome-card-copy h1{margin:0 0 4px;font-size:clamp(1.6rem,3vw,2.1rem)}.welcome-card-copy p{color:var(--text);margin:0;font-size:1rem}.welcome-card-progress{box-shadow:none;background:#fff;border:1px solid #dce4ef;border-radius:16px;flex:none;align-items:center;gap:14px;margin-left:auto;padding:12px 18px;display:flex}.welcome-progress-ring{border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.welcome-progress-ring>span{white-space:nowrap;color:#0a2f7e;width:46px;height:46px;font:700 .82rem/1 var(--font-body);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.welcome-card-progress strong{color:var(--text);font:700 .78rem/1.35 var(--font-body);display:block}.welcome-card-progress p{color:var(--primary);font:600 .72rem/1.35 var(--font-body);white-space:nowrap;margin:2px 0 0}:root[data-theme=dark] .welcome-card{border-color:var(--border);box-shadow:none;background:linear-gradient(135deg,#263f6a 0%,#1b2438 88%)}:root[data-theme=dark] .welcome-card-illustration{color:#f5f7fb;background:#263f6a;border-color:#ffc928}:root[data-theme=dark] .welcome-card-progress{border-color:var(--border);box-shadow:none;background:#1b2438}:root[data-theme=dark] .welcome-progress-ring>span{color:#f5f7fb;background:#1b2438}@media (max-width:520px){.welcome-card{flex-wrap:wrap;align-items:flex-start;gap:16px;padding:20px}.welcome-card-illustration{border-radius:16px;width:56px;height:56px}.welcome-card-illustration svg{width:28px;height:28px}.welcome-card-copy{flex:220px}.welcome-card-progress{width:100%;margin-left:0}}.dictionary-search-box{align-items:center;width:100%;max-width:500px;display:flex;position:relative}.dictionary-search-icon{color:var(--muted);pointer-events:none;position:absolute;left:14px}.dictionary-search-input{width:100%;padding-left:42px;padding-right:40px}.dictionary-search-input::-webkit-search-cancel-button{appearance:none}.dictionary-search-clear{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.dictionary-search-clear:hover,.dictionary-search-clear:focus-visible{color:var(--text);background:var(--border)}.dictionary-grid{grid-template-columns:repeat(auto-fill,340px);gap:20px;max-width:1060px;display:grid}@media (max-width:760px){.dictionary-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),340px))}}@media (max-width:480px){.dictionary-grid{grid-template-columns:1fr;max-width:100%}}.dictionary-card{border:1px solid var(--border);width:100%;max-width:340px;box-shadow:none;background:#fff;border-radius:16px;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;overflow:hidden}:root[data-theme=dark] .dictionary-card{border-color:var(--border);box-shadow:none;background:#1b2438}.dictionary-card:hover{box-shadow:none;border-color:#1e6dff66;transform:translateY(-2px)}:root[data-theme=dark] .dictionary-card:hover{box-shadow:none;border-color:#3b8bff66}@media (prefers-reduced-motion:reduce){.dictionary-card{transition:none}.dictionary-card:hover{transform:none}}.dictionary-card-top{background:#fff;flex-direction:column;gap:10px;padding:20px 22px;display:flex}:root[data-theme=dark] .dictionary-card-top{background:#1b2438}.dictionary-divider{background:color-mix(in srgb, var(--border) 75%, transparent);border:none;width:100%;height:.5px;margin:0}.dictionary-card-bottom{background:#fcfdff;flex-direction:column;flex-grow:1;gap:10px;padding:20px 22px;display:flex}:root[data-theme=dark] .dictionary-card-bottom{background:#202b40}.dictionary-lang-badge{font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border);width:fit-content;color:var(--muted);background:#f4f7fb;border-radius:9999px;align-items:center;gap:7px;padding:4px 10px;font-size:.72rem;font-weight:600;line-height:1.2;display:inline-flex}:root[data-theme=dark] .dictionary-lang-badge{border-color:var(--border);color:var(--muted);background:#ffffff0f}.dictionary-card-bottom .dictionary-lang-badge{border-color:var(--border);background:#fff}:root[data-theme=dark] .dictionary-card-bottom .dictionary-lang-badge{border-color:var(--border);background:#ffffff14}.dictionary-lang-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.dictionary-lang-badge--pt .dictionary-lang-dot{background-color:#17b96b;box-shadow:0 0 0 2px #17b96b33}.dictionary-lang-badge--es .dictionary-lang-dot{background-color:#ff2e43;box-shadow:0 0 0 2px #ff2e4333}:root[data-theme=dark] .dictionary-lang-badge--pt .dictionary-lang-dot{background-color:#20c07a;box-shadow:0 0 0 2px #20c07a40}:root[data-theme=dark] .dictionary-lang-badge--es .dictionary-lang-dot{background-color:#ff4b5f;box-shadow:0 0 0 2px #ff4b5f40}.dictionary-term{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:1.45rem;font-weight:700;line-height:1.25}.dictionary-translation{font-family:var(--font-body);color:var(--text);overflow-wrap:anywhere;margin:0;font-size:1.05rem;font-weight:500;line-height:1.45}.category-see-all{text-align:center;margin:20px 0 0}.category-progress-card{border-radius:20px;align-items:center;gap:16px;margin:16px 0 20px;padding:18px 20px;display:flex}.category-progress-card strong{font-size:1.2rem;line-height:1.3;display:block}.category-progress-card p{margin:2px 0 0}.home-navigation-grid,.student-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (max-width:1279px){.home-navigation-grid,.student-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-navigation-grid .navigation-card-footer,.student-catalog-grid .navigation-card-footer{display:none}.home-navigation-grid .navigation-card,.student-catalog-grid .navigation-card{min-height:0}.home-navigation-grid .navigation-card-copy,.student-catalog-grid .navigation-card-copy{margin:16px 0 0}}@media (max-width:999px){.home-navigation-grid,.student-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:619px){.home-navigation-grid,.student-catalog-grid{grid-template-columns:1fr;gap:12px}.home-navigation-grid .navigation-card,.student-catalog-grid .navigation-card{gap:10px;min-height:0;padding:16px}.home-navigation-grid .navigation-card-icon,.student-catalog-grid .navigation-card-icon{border-radius:10px;width:40px;height:40px}.home-navigation-grid .navigation-card-icon svg,.student-catalog-grid .navigation-card-icon svg{width:24px;height:24px}.home-navigation-grid .navigation-card-copy,.student-catalog-grid .navigation-card-copy{gap:4px;margin:12px 0 4px}.home-navigation-grid .navigation-card-title,.student-catalog-grid .navigation-card-title{font-size:1.05rem}.home-navigation-grid .navigation-card-description,.student-catalog-grid .navigation-card-description{font-size:.85rem}.welcome-card,.welcome-card-progress{display:none}.home-navigation-grid .navigation-card-arrow,.student-catalog-grid .navigation-card-arrow{width:30px;height:30px}.home-navigation-grid .navigation-card-arrow svg,.student-catalog-grid .navigation-card-arrow svg{width:16px;height:16px}}.security-card{border:1px solid var(--border);background:var(--surface);box-shadow:none;border-radius:16px;overflow:hidden}:root[data-theme=dark] .security-card{border-color:var(--border);box-shadow:none;background:linear-gradient(145deg,#222f49 0%,#1b2438 78%)}.security-card-header{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:24px;display:flex}:root[data-theme=dark] .security-card-header{border-bottom-color:#2a3550}.security-card-icon-wrapper{color:#d97706;background:#fff8eb;border:1px solid #fee5b5;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}:root[data-theme=dark] .security-card-icon-wrapper{color:#ffc928;background:#ffc9281f;border-color:#ffc92847}.security-card-header-copy{flex-direction:column;gap:3px;display:flex}.security-card-title{color:var(--text);margin:0;font-size:1.2rem;font-weight:700;line-height:1.25}.security-card-subtitle{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.security-card-divider{display:none}.security-card-content{padding:24px}.security-card-box{background:#f8fafd;border:1px solid #e2e8f0;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}:root[data-theme=dark] .security-card-box{background:#ffffff08;border-color:#2a3550}.security-card-info{flex-direction:column;gap:5px;display:flex}.security-card-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.security-card-item-title{color:var(--text);font-size:.975rem;font-weight:700}.security-card-badge{color:#475569;background:#e2e8f0;border-radius:999px;align-items:center;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-flex}:root[data-theme=dark] .security-card-badge{color:#cbd5e1;background:#2a3550}.security-card-desc{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}.security-card-time{color:var(--muted);opacity:.9;margin:2px 0 0;font-size:.815rem}.security-card-action{flex:none}.security-card-button{border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-size:.885rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 1px 3px #0a2f7e0a;color:var(--text)!important;background:#fff!important;border:1px solid #dce4ef!important}.security-card-button:hover{transform:translateY(-1px);background:#f8fafc!important;border-color:#cbd5e1!important}:root[data-theme=dark] .security-card-button{box-shadow:0 2px 6px #0003;color:#f5f7fb!important;background:#1b2438!important;border-color:#2a3550!important}:root[data-theme=dark] .security-card-button:hover{background:#222f49!important;border-color:#3b8bff!important}@media (max-width:640px){.security-card-header{gap:12px;padding:18px}.security-card-content{padding:18px}.security-card-box{flex-direction:column;align-items:flex-start;gap:16px;padding:18px}.security-card-action{width:100%}.security-card-button{justify-content:center;width:100%}.dsar-erasure-button,.support-email-button{width:100%}}.profile-card-icon-personal{color:#1e6dff!important;background:#eff6ff!important;border:1px solid #dbeafe!important}:root[data-theme=dark] .profile-card-icon-personal{color:#3b8bff!important;background:#1e6dff1f!important;border-color:#1e6dff47!important}.profile-security-row{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:stretch;gap:16px;display:grid}.profile-security-row>.security-card{flex-direction:column;display:flex}.profile-security-row .security-card-content{flex-direction:column;flex:1;display:flex}.profile-security-row .security-card-box{flex:1}.profile-card-icon-access{color:#13864d!important;background:#ecfdf5!important;border:1px solid #c9f2dd!important}:root[data-theme=dark] .profile-card-icon-access{color:var(--green)!important;background:#20c07a1f!important;border-color:#20c07a47!important}.access-validity-box{align-items:flex-start}.access-validity-date{color:var(--text);letter-spacing:-.01em;margin:2px 0 0;font-size:1.5rem;font-weight:700;line-height:1.2}.access-validity-badge--ending{border:1px solid #ffc928}@media (max-width:1100px){.profile-security-row{grid-template-columns:minmax(0,1fr)}}.profile-fields-grid{grid-template-columns:1fr 1fr;align-items:flex-start;gap:20px;display:grid}.profile-field-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.profile-locked-badge{color:#64748b;background:#e2e8f0;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;line-height:1.2;display:inline-flex}:root[data-theme=dark] .profile-locked-badge{color:#cbd5e1;background:#2a3550}.profile-locked-input-wrapper{align-items:center;display:flex;position:relative}.profile-locked-input{-webkit-user-select:all;user-select:all;opacity:.88;color:#64748b!important;cursor:not-allowed!important;background-color:#f8fafd!important;border-color:#dce4ef!important;padding-right:42px!important}:root[data-theme=dark] .profile-locked-input{opacity:.9;color:#94a3b8!important;background-color:#ffffff0a!important;border-color:#2a3550!important}.profile-locked-icon{color:#94a3b8;pointer-events:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}:root[data-theme=dark] .profile-locked-icon{color:#64748b}.profile-hint-text{color:var(--muted);margin-top:4px;margin-bottom:0;font-size:.8rem}@media (max-width:640px){.profile-fields-grid{grid-template-columns:1fr;gap:16px}}
@font-face{font-family:Poppins;src:url(/fonts/Poppins-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-SemiBold.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Variable.ttf)format("truetype");font-style:normal;font-weight:100 900;font-display:swap}:root{--font-display:Poppins, Arial, sans-serif;--font-body:Inter, Arial, sans-serif;font-family:var(--font-body)}body,button,input,select,textarea{font-family:var(--font-body)}h1,h2,h3,.brand strong,.eyebrow{font-family:var(--font-display)}
.user-menu{width:100%;min-width:0;position:relative}.user-menu-card{border:1px solid var(--border);background:var(--surface);width:100%;min-height:64px;color:var(--text);box-shadow:none;border-radius:14px;flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px;transition:border-color .16s;display:flex}:root[data-theme=dark] .user-menu-card{box-shadow:none;border-color:#2a3550}.user-menu-info{width:100%;min-width:0;color:inherit;border-radius:10px;flex:1;align-items:center;gap:10px;padding:2px;text-decoration:none;transition:opacity .16s;display:flex}.user-menu-info:hover{opacity:.9}.user-menu-info:hover strong{color:var(--primary)}:root[data-theme=dark] .user-menu-info:hover strong{color:#5da0ff}.user-menu-info:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.user-avatar-wrapper{flex:none;width:42px;height:42px;position:relative}.user-avatar-ring{background:#1e6dff21;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;padding:3px;transition:background-color .16s;display:grid}.user-avatar{color:#fff;background:#2563eb;border-radius:50%;place-items:center;width:100%;height:100%;font-size:.92rem;font-weight:700;line-height:1;display:grid}.user-avatar-status-dot{border:2px solid var(--surface);box-sizing:border-box;background-color:#10b981;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-1px;right:-1px}:root[data-theme=dark] .user-avatar-status-dot{border-color:var(--surface);background-color:#20c07a}.user-menu-identity{flex-direction:column;flex:1;gap:2px;min-width:0;line-height:1.35;display:flex}.user-menu-identity strong{overflow-wrap:anywhere;color:var(--text);font-size:.885rem;font-weight:600;transition:color .16s}.user-menu-identity>span{color:#78829d;overflow-wrap:anywhere;font-size:.78rem;font-weight:400}:root[data-theme=dark] .user-menu-identity>span{color:#94a3b8}.user-logout-form{align-items:center;width:100%;margin:4px 0 0;display:flex}.user-logout-button{border:1px solid var(--border);background:var(--surface);width:100%;min-height:32px;color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:4px 10px;font-size:.82rem;font-weight:600;transition:background-color .16s,border-color .16s,color .16s,transform .1s;display:inline-flex;box-shadow:0 1px 2px #00000008}.user-logout-button:hover{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.user-logout-button:active{transform:scale(.97)}:root[data-theme=dark] .user-logout-button{color:#94a3b8;background:#ffffff0a;border-color:#2a3550}:root[data-theme=dark] .user-logout-button:hover{color:#ff4b5f;background:#ff4b5f26;border-color:#ff4b5f59}.user-logout-text{font-size:.82rem;line-height:1}
:root{--nav-selected-bg:#edf4ff;--nav-selected-text:#1e6dff;--nav-selected-indicator:#1e6dff;--nav-selected-indicator-halo:#e1edff;--nav-selected-border:#bfd7ff;--nav-unselected-text:#475569;--nav-unselected-icon:#94a3b8;--sidebar-background:linear-gradient(to bottom right, #fff 0%, #fff 30%, #f6faff 65%, #eaf3ff 100%)}:root[data-theme=dark]{--nav-selected-bg:#1e6dff38;--nav-selected-text:#5da0ff;--nav-selected-indicator:#5da0ff;--nav-selected-indicator-halo:#5da0ff42;--nav-selected-border:#5da0ff61;--nav-unselected-text:#f0f4f9;--nav-unselected-icon:#94a9c9;--sidebar-background:linear-gradient(to bottom right, #1b2438 12%, #1b2943 60%, #203758 100%)}.app-shell{grid-template-columns:320px minmax(0,1fr)}.side-nav{padding-top:18px;background:var(--sidebar-background);flex-direction:column;height:100vh;padding-inline:18px;display:flex;position:sticky;top:0;overflow:hidden;padding-bottom:0!important}.side-nav-header{flex-shrink:0;padding-top:14px}.side-nav-content{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;margin-bottom:8px;padding-right:4px;overflow-y:auto}.side-nav .brand,.mobile-navigation-panel .brand{gap:12px;padding:4px 2px 2px}.side-nav .brand-mark,.mobile-navigation-panel .brand-mark{aspect-ratio:1022/785;filter:drop-shadow(0 2px 6px #00000014);flex-shrink:0;width:58px;height:auto}.side-nav .brand strong,.mobile-navigation-panel .brand strong{letter-spacing:-.01em;font-size:1.35rem;line-height:1.15}.side-nav .brand small,.mobile-navigation-panel .brand small{letter-spacing:.01em;margin-top:3px;font-size:.78rem}:root[data-theme=dark] .side-nav .brand strong,:root[data-theme=dark] .mobile-navigation-panel .brand strong{color:#f5f7fb}:root[data-theme=dark] .side-nav .brand-mark,:root[data-theme=dark] .mobile-navigation-panel .brand-mark{filter:drop-shadow(0 2px 8px #00000059)}.side-nav .paraguay-stripe,.mobile-navigation-panel .paraguay-stripe{max-width:250px;margin:16px 0 14px}.app-main{background:var(--surface);padding:0!important}.mobile-navigation{display:none}.side-nav-user-panel{flex-direction:column;gap:12px;width:100%;display:flex}.side-nav-panel-header{justify-content:space-between;align-items:center;width:100%;padding-inline:4px;display:flex}.side-nav-panel-label{letter-spacing:.06em;text-transform:uppercase;color:#78829d;font-size:.72rem;font-weight:700}:root[data-theme=dark] .side-nav-panel-label{color:#94a3b8}.side-nav-status-badge{color:#059669;background:#ecfdf5;border:1px solid #86efac;border-radius:9999px;align-items:center;gap:6px;padding:3px 10px;font-size:.75rem;font-weight:600;line-height:1.2;display:inline-flex}:root[data-theme=dark] .side-nav-status-badge{color:#20c07a;background:#20c07a1f;border-color:#20c07a59}.side-nav-status-badge .status-dot{background-color:#10b981;border-radius:50%;flex-shrink:0;width:6px;height:6px}:root[data-theme=dark] .side-nav-status-badge .status-dot{background-color:#20c07a}.side-nav-panel-badge{align-items:center;padding-left:2px;display:flex}.side-nav-panel-tag{letter-spacing:.08em;text-transform:uppercase;color:#1e6dff;background:#1e6dff14;border:1px solid #1e6dff2e;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:.68rem;font-weight:700;line-height:1.35;display:inline-flex}:root[data-theme=dark] .side-nav-panel-tag{color:#5da0ff;background:#3b8bff24;border-color:#5da0ff47}.theme-switch-row{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:8px 6px;transition:background-color .16s;display:flex}.theme-switch-row:hover{background:#1e6dff0d}:root[data-theme=dark] .theme-switch-row:hover{background:#3b8bff14}.theme-switch-row:focus-visible{outline:2px solid var(--nav-selected-indicator);outline-offset:2px}.theme-switch-label-group{align-items:center;gap:12px;display:flex}.theme-switch-moon-icon{color:#475569;flex-shrink:0}:root[data-theme=dark] .theme-switch-moon-icon{color:#94a3b8}.theme-switch-text{color:var(--text);font-size:.9rem;font-weight:500}.theme-switch-track{background-color:#cbd5e1;border-radius:9999px;flex-shrink:0;width:44px;height:24px;transition:background-color .2s;position:relative}.theme-switch-track.is-checked{background-color:#1e6dff}:root[data-theme=dark] .theme-switch-track:not(.is-checked){background-color:#334155}:root[data-theme=dark] .theme-switch-track.is-checked{background-color:#3b82f6}.theme-switch-thumb{background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.theme-switch-track.is-checked .theme-switch-thumb{transform:translate(20px)}.navigation-theme-button{min-height:50px;color:var(--nav-unselected-text);text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:16px;padding:12px 18px;font-size:1rem;font-weight:500;transition:background-color .16s,color .16s;display:flex}.navigation-theme-button:hover{color:var(--nav-selected-text);background:#1e6dff14}.side-nav>.navigation-theme-button{width:100%;margin-top:24px}.side-nav-footer{margin-top:auto;margin-inline:-18px;padding-top:20px;padding-bottom:10px;border-top:1px solid var(--border);background:#f0f6fe;flex-direction:column;flex-shrink:0;gap:16px;margin-bottom:0;padding-inline:18px;display:flex}:root[data-theme=dark] .side-nav-footer{background:#141d30;border-top-color:#2a3550}.side-nav-footer .navigation-theme-button{width:100%;margin-top:0}.mobile-navigation-footer{margin-top:auto;margin-inline:-16px;padding-top:20px;padding-bottom:max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#f0f6fe;flex-direction:column;gap:16px;margin-bottom:0;padding-inline:16px;display:flex}:root[data-theme=dark] .mobile-navigation-footer{background:#141d30;border-top-color:#2a3550}.mobile-navigation-footer .navigation-theme-button{width:100%;margin-top:0}.theme-button .dark-theme-label,:root[data-theme=dark] .theme-button .light-theme-label{display:none}:root[data-theme=dark] .theme-button .dark-theme-label{display:inline}.paraguay-stripe{border-radius:999px;align-items:center;gap:0;width:100%;max-width:210px;height:3.5px;margin:14px 0 12px;display:flex;overflow:hidden}.paraguay-stripe>span{flex:1;height:100%}.paraguay-stripe>span:first-child{border-radius:999px 0 0 999px}.paraguay-stripe>span:last-child{border-radius:0 999px 999px 0}.paraguay-stripe .stripe-red{background-color:#d52b1e}.paraguay-stripe .stripe-white{background-color:#e2e7ff}:root[data-theme=dark] .paraguay-stripe .stripe-white{background-color:#fff}.paraguay-stripe .stripe-blue{background-color:#0038a8}.side-nav nav{flex-direction:column;gap:6px;margin-top:8px;display:flex}.side-nav nav .side-nav-link{min-height:52px;color:var(--nav-unselected-text);border:1px solid #0000;border-radius:14px;align-items:center;gap:16px;padding:12px 18px;font-size:1.05rem;font-weight:500;transition:background-color .16s,color .16s,border-color .16s;display:flex}.side-nav-link svg{color:var(--nav-unselected-icon);flex:none;transition:color .16s,fill .16s}.side-nav nav .side-nav-link:hover{color:var(--nav-selected-text);background:#1e6dff12}.side-nav nav .side-nav-link:hover svg{color:var(--nav-selected-text)}.side-nav nav .side-nav-link.is-selected{background:var(--nav-selected-bg);border-color:var(--nav-selected-border);color:var(--nav-selected-text);font-weight:700}.side-nav nav .side-nav-link.is-selected svg{color:var(--nav-selected-text)}.side-nav nav .side-nav-link.is-selected:hover{background:var(--nav-selected-bg);border-color:var(--nav-selected-border);color:var(--nav-selected-text)}.side-nav nav .side-nav-link.is-selected:after,.mobile-navigation-dialog .side-nav-link.is-selected:after{content:"";background:radial-gradient(circle, var(--nav-selected-indicator) 0 7px, var(--nav-selected-indicator-halo) 7px 100%);border-radius:9999px;flex-shrink:0;width:28px;height:28px;margin-left:auto;display:block}.side-nav-section{flex-direction:column;gap:4px;display:flex}.side-nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:12px 16px 4px;font-size:.72rem;font-weight:700;display:block}.side-nav-divider{background:var(--border);border:0;height:1px;margin:8px 12px}.side-nav nav .side-nav-link span,.mobile-navigation-dialog .side-nav-link span{word-break:break-word;flex:1;line-height:1.35}.admin-main,.student-main{flex-direction:column;min-height:100dvh;display:flex;padding:0!important}.admin-content,.student-content{padding-top:28px;padding-bottom:24px;flex:1;width:100%;min-width:0;max-width:1300px;margin-inline:auto;padding-inline:24px}@media (max-width:800px){.app-shell{display:block}.side-nav{display:none}.mobile-navigation{display:block}.mobile-navigation-bar{min-height:72px;padding:12px max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));border-bottom:1px solid var(--border);background:var(--sidebar-background);justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-menu-button,.mobile-menu-close{border:1px solid var(--border);background:var(--surface);min-width:48px;min-height:48px;color:var(--text);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:inline-flex}.mobile-navigation-dialog{border:0;border-right:1px solid var(--border);background:var(--sidebar-background);width:min(320px,100vw - 48px);max-width:none;height:100dvh;max-height:none;color:var(--text);opacity:1;transition:transform .28s ease, opacity .28s ease, display .28s allow-discrete, overlay .28s allow-discrete;margin:0;padding:0;position:fixed;inset:0 auto 0 0;transform:translate(0);box-shadow:12px 0 32px #08122633}@starting-style{.mobile-navigation-dialog[open]{opacity:0;transform:translate(-100%)}}.mobile-navigation-dialog:not([open]){opacity:0;transform:translate(-100%)}.mobile-navigation-dialog::backdrop{opacity:1;transition:opacity .28s ease, display .28s allow-discrete, overlay .28s allow-discrete;background:#081226aa}@starting-style{.mobile-navigation-dialog[open]::backdrop{opacity:0}}.mobile-navigation-dialog:not([open])::backdrop{opacity:0}@media (prefers-reduced-motion:reduce){.mobile-navigation-dialog,.mobile-navigation-dialog::backdrop{transition:none}}.mobile-navigation-panel{height:100%;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow-y:auto}.mobile-navigation-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.mobile-navigation-dialog nav{flex-direction:column;gap:6px;margin-top:20px;margin-bottom:52px;display:flex}.mobile-navigation-dialog .side-nav-link{min-height:52px;color:var(--nav-unselected-text);border:1px solid #0000;border-radius:14px;align-items:center;gap:16px;padding:12px 18px;font-size:1.05rem;font-weight:500;transition:background-color .16s,color .16s,border-color .16s;display:flex}.mobile-navigation-dialog .side-nav-link svg{color:var(--nav-unselected-icon);flex:none;transition:color .16s,fill .16s}.mobile-navigation-dialog .side-nav-link:hover{color:var(--nav-selected-text);background:#1e6dff12}.mobile-navigation-dialog .side-nav-link:hover svg{color:var(--nav-selected-text)}.mobile-navigation-dialog .side-nav-link.is-selected{background:var(--nav-selected-bg);border-color:var(--nav-selected-border);color:var(--nav-selected-text);font-weight:700}.mobile-navigation-dialog .side-nav-link.is-selected:hover{background:var(--nav-selected-bg);border-color:var(--nav-selected-border);color:var(--nav-selected-text)}.mobile-navigation-dialog .side-nav-link.is-selected svg{color:var(--nav-selected-text)}.mobile-navigation-dialog .navigation-theme-button{width:100%;margin-top:0}.app-main{padding:0!important}.admin-content,.student-content{padding-top:20px;padding-bottom:20px;padding-inline:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.student-content{padding-top:12px}.student-content .section{padding:12px 0 24px}}@media (max-width:380px){.mobile-navigation-bar .brand strong{font-size:1rem}.mobile-menu-button{padding-inline:10px}}@media (max-width:360px){.mobile-navigation-bar .brand>span{display:none}}
.login-page-root{flex-direction:column;min-height:100dvh;display:flex}.login-header-left{align-items:center;gap:16px;display:flex}.login-page-main{flex:1;justify-content:center;align-items:center;width:100%;padding:32px 16px;display:flex}.login-container{flex-direction:column;gap:12px;width:min(480px,100%);margin:auto;display:flex}.login-top-action{justify-content:flex-start;align-items:center;margin-bottom:4px;display:flex}.back-button{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:.875rem;font-weight:500;line-height:1;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.back-button:hover{background-color:var(--bg);border-color:var(--primary);color:var(--primary)}:root[data-theme=dark] .back-button:hover{border-color:var(--primary);color:var(--primary)}.back-button:focus-visible{outline-offset:2px;outline:3px solid #ffc928}.login-card{border:1px solid var(--border);background:var(--surface);box-shadow:none;border-radius:16px;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}:root[data-theme=dark] .login-card{border-color:var(--border);box-shadow:none}.login-card--admin{box-shadow:none;border-color:#a9c7fa}:root[data-theme=dark] .login-card--admin{box-shadow:none;border-color:#2d4c7f}.login-admin-bar{background:linear-gradient(90deg,#d52b1e 0%,#fff 50%,#0038a8 100%);width:100%;height:4px;display:flex}.login-admin-accent-bar{background:linear-gradient(90deg,#0a2f7e 0%,#1e6dff 50%,#ff2e43 100%);width:100%;height:4px}:root[data-theme=dark] .login-admin-accent-bar{background:linear-gradient(90deg,#3b8bff 0%,#1e6dff 60%,#ff4b5f 100%)}.login-card-content{padding:32px 28px}@media (max-width:480px){.login-card-content{padding:24px 20px}}.login-header-group{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.login-badge-row{justify-content:space-between;align-items:center;display:flex}.login-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.login-badge--admin{color:#0a2f7e;background-color:#ebf3ff;border:1px solid #bfd8ff}:root[data-theme=dark] .login-badge--admin{color:#93c5fd;background-color:#3b8bff26;border-color:#3b8bff59}.login-badge--student{color:#475569;background-color:#f1f5f9;border:1px solid #e2e8f0}:root[data-theme=dark] .login-badge--student{color:#cbd5e1;background-color:#1e293b;border-color:#334155}.login-title-row{align-items:center;gap:14px;display:flex}.login-icon-box{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.login-icon-box--admin{color:#0a2f7e;background:#eaf2ff;border:1px solid #d0e1fd}:root[data-theme=dark] .login-icon-box--admin{color:#60a5fa;background:#1e2d4a;border-color:#2d4370}.login-icon-box--student{color:#0a2f7e;background:#f1f5f9;border:1px solid #e2e8f0}:root[data-theme=dark] .login-icon-box--student{color:#93c5fd;background:#1e2638;border-color:#2d3950}.login-title-text h1{margin:0;font-size:1.5rem;line-height:1.25}.login-subtitle{margin:4px 0 0;font-size:.9rem;line-height:1.45}.admin-security-banner{color:#475569;background-color:#f8fafd;border:1px solid #dee8f5;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:10px 14px;font-size:.8125rem;display:flex}:root[data-theme=dark] .admin-security-banner{color:#94a3b8;background-color:#162033;border-color:#243552}.admin-security-banner svg{color:#0a2f7e;flex-shrink:0;margin-top:2px}:root[data-theme=dark] .admin-security-banner svg{color:#60a5fa}.login-footer-actions{border-top:1px solid var(--border);flex-direction:column;gap:16px;margin-top:24px;padding-top:20px;display:flex}.login-links-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:.875rem;display:flex}.login-switch-box{background:var(--bg);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.825rem;display:flex}.login-switch-link{color:var(--primary);align-items:center;gap:4px;font-weight:600;display:inline-flex}
.pwa-install-button{border:1px solid var(--border);background:var(--surface);width:100%;min-height:46px;color:var(--text);text-align:center;cursor:pointer;white-space:nowrap;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.88rem;font-weight:600;transition:background-color .16s,border-color .16s,box-shadow .16s;display:flex;box-shadow:0 1px 3px #0000000a}.pwa-install-button:hover{color:var(--nav-selected-text);background:#1e6dff0d;border-color:#1e6dff40}:root[data-theme=dark] .pwa-install-button:hover{background:#3b8bff1a;border-color:#5da0ff4d}.pwa-install-button .pwa-install-icon{color:#1e6dff;flex-shrink:0}:root[data-theme=dark] .pwa-install-button .pwa-install-icon{color:#5da0ff}.pwa-install-texts{flex-direction:column;flex:1;min-width:0;display:flex}.pwa-install-title{color:inherit;white-space:nowrap;flex-shrink:0;font-size:.88rem;font-weight:600;line-height:1.25}.pwa-badge{letter-spacing:.04em;color:var(--nav-selected-text);background:#1e6dff1f;border:1px solid #1e6dff33;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.68rem;font-weight:700}.pwa-installed-pill{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:14px;align-items:center;gap:10px;padding:10px 14px;font-size:.88rem;font-weight:500;display:flex}.pwa-installed-icon{color:var(--green);flex-shrink:0}.pwa-dialog{border:1px solid var(--border);background:var(--surface);width:min(480px,100vw - 32px);max-height:min(90vh,700px);color:var(--text);border-radius:20px;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 80px #00000059}.pwa-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#081226aa}.pwa-dialog-card{max-height:inherit;flex-direction:column;display:flex}.pwa-dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.pwa-dialog-title{overflow-wrap:anywhere;min-width:0;color:var(--text);margin:0;font-size:1.25rem;font-weight:700}.pwa-dialog-close{border:1px solid var(--border);background:var(--bg);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s;display:flex}.pwa-dialog-close:hover{opacity:.8}.pwa-dialog-body{flex-direction:column;gap:16px;padding:22px;display:flex;overflow-y:auto}.pwa-dialog-hero{background:var(--bg);border:1px solid var(--border);border-radius:14px;align-items:center;gap:16px;padding:12px 16px;display:flex}.pwa-dialog-icon{border-radius:12px;box-shadow:0 4px 12px #0a2f7e1f}.pwa-dialog-description{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}.pwa-dialog-steps{border:1px solid var(--border);background:var(--bg);border-radius:14px;padding:14px 18px}.pwa-steps-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.pwa-steps-list li{align-items:flex-start;gap:12px;font-size:.9rem;line-height:1.45;display:flex}.pwa-step-number{background:var(--primary);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;font-size:.78rem;font-weight:700;display:flex}.pwa-inline-icon{vertical-align:middle;color:var(--nav-selected-text);background:#1e6dff1a;border-radius:4px;margin:0 2px;padding:2px;display:inline-flex}.pwa-dialog-notice{color:var(--text);background:#ffc9281f;border:1px solid #ffc9284d;border-radius:10px;padding:10px 14px;font-size:.82rem;line-height:1.4}.pwa-dialog-actions{justify-content:flex-end;margin-top:4px;display:flex}.pwa-dialog-confirm-button{width:100%}
.study-dashboard-section{margin-top:28px}.study-dashboard-grid{grid-template-columns:minmax(0,2.1fr) minmax(0,1.25fr);align-items:start;gap:24px;display:grid}@media (max-width:1024px){.study-dashboard-grid{grid-template-columns:1fr;gap:20px}}.study-next-lesson-card{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:24px;padding:24px}:root[data-theme=dark] .study-next-lesson-card{border-color:var(--border);box-shadow:none}.study-next-lesson-header{align-items:center;gap:16px;margin-bottom:22px;display:flex}.study-category-badge-icon{background:color-mix(in srgb, var(--cat-color,#1e6dff) 12%, transparent);width:48px;height:48px;color:var(--cat-color,#1e6dff);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.study-next-lesson-header-copy{flex:1;min-width:0}.study-next-lesson-header-copy h2{font-family:var(--font-display);color:var(--text);margin:0;font-size:clamp(1.25rem,2vw,1.5rem);font-weight:700;line-height:1.25}.study-next-lesson-header-copy p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:.88rem;line-height:1.4;overflow:hidden}.study-header-see-all-link{color:#1e6dff;font-family:var(--font-body);white-space:nowrap;background:#f0f4fd;border-radius:9999px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;text-decoration:none;transition:background-color .18s,transform .18s;display:inline-flex}:root[data-theme=dark] .study-header-see-all-link{color:#3b8bff;background:#3b8bff1f}.study-header-see-all-link:hover{background:#e2edff;transform:translate(2px)}:root[data-theme=dark] .study-header-see-all-link:hover{background:#3b8bff33}.study-lessons-list{flex-direction:column;gap:12px;display:flex}.study-lesson-item{border:1px solid var(--border);color:var(--text);box-shadow:none;background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;transition:transform .16s,border-color .16s;display:flex;position:relative}:root[data-theme=dark] .study-lesson-item{border-color:var(--border);box-shadow:none;background:#1b2438}.study-lesson-item:hover{transform:translateY(-2px)}.study-lesson-item:focus-visible{outline-offset:2px;outline:3px solid #1e6dff}.study-lesson-item-left{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.study-lesson-item-icon{border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.study-lesson-item-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.study-lesson-item-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.study-lesson-item-title{font-family:var(--font-display);color:var(--text);font-size:.96rem;font-weight:600;line-height:1.3}.study-lesson-item-meta{font-family:var(--font-body);color:var(--muted);font-size:.8rem;line-height:1.2}.study-lesson-item-action{flex-shrink:0;align-items:center;display:flex}.study-lesson-badge{letter-spacing:.02em;border-radius:9999px;align-items:center;padding:3px 8px;font-size:.72rem;font-weight:600;line-height:1.2;display:inline-flex}.study-lesson-badge--completed{color:#17b96b;background:#e8f8f0;border:1px solid #17b96b40}:root[data-theme=dark] .study-lesson-badge--completed{color:#20c07a;background:#20c07a24;border-color:#20c07a4d}.study-lesson-badge--next{color:#1e6dff;background:#eaf3ff;border:1px solid #1e6dff40}:root[data-theme=dark] .study-lesson-badge--next{color:#3b8bff;background:#3b8bff29;border-color:#3b8bff59}.study-lesson-item--completed{background:#eaf8ef;border-color:#2f9e5b}:root[data-theme=dark] .study-lesson-item--completed{background:#183326;border-color:#20a765}.study-lesson-item-icon--completed{color:#17b96b;background:#eafaf1;border:1px solid #17b96b33}:root[data-theme=dark] .study-lesson-item-icon--completed{color:#20c07a;background:#20c07a1f;border-color:#20c07a40}.study-lesson-check-circle{color:#fff;background:#17b96b;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}:root[data-theme=dark] .study-lesson-check-circle{color:#0e1320;background:#20c07a}.study-lesson-item--next{border:1px solid var(--border);box-shadow:none;background:#fff}:root[data-theme=dark] .study-lesson-item--next{border-color:var(--border);box-shadow:none;background:#1b2438}.study-lesson-item-icon--next{color:var(--muted);border:1px solid var(--border);background:#f4f7fb}:root[data-theme=dark] .study-lesson-item-icon--next{color:var(--muted);background:#172033}.study-lesson-item--pending{border-color:var(--border);background:#fff}:root[data-theme=dark] .study-lesson-item--pending{background:#1b2438}.study-lesson-item-icon--pending{color:var(--muted);border:1px solid var(--border);background:#f4f7fb}:root[data-theme=dark] .study-lesson-item-icon--pending{color:var(--muted);background:#172033}.study-lesson-chevron{color:var(--muted);transition:transform .15s,color .15s}.study-lesson-item--pending:hover .study-lesson-chevron{color:var(--text);transform:translate(3px)}.study-lesson-item--next .study-lesson-chevron{color:var(--muted);transition:transform .15s,color .15s}.study-lesson-item--next:hover .study-lesson-chevron{color:var(--text);transform:translate(3px)}@media (max-width:580px){.study-next-lesson-header{flex-wrap:wrap}.study-header-see-all-link{margin-left:auto}.study-lesson-item{gap:12px;padding:12px 14px}}.study-progress-card{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:24px;padding:24px}:root[data-theme=dark] .study-progress-card{border-color:var(--border);box-shadow:none}.study-progress-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.study-progress-header-copy h2{font-family:var(--font-display);color:var(--text);margin:0;font-size:1.35rem;font-weight:700;line-height:1.2}.study-progress-header-copy p{font-family:var(--font-body);color:var(--muted);margin:4px 0 0;font-size:.88rem}.study-progress-circle-ring{width:62px;height:62px;box-shadow:none;border-radius:50%;flex-shrink:0;place-items:center;display:none;position:relative}@media (max-width:619px){.study-progress-circle-ring{display:grid}}.study-progress-circle-text{background:var(--surface);width:48px;height:48px;color:var(--text);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:.85rem;font-weight:700;line-height:1;display:grid}:root[data-theme=dark] .study-progress-circle-ring{--progress-track-bg:#2a3550}.study-progress-categories-list{flex-direction:column;gap:12px;display:flex}.study-progress-category-item{border:1px solid var(--border);color:var(--text);box-shadow:none;background:#f9fbfd;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}:root[data-theme=dark] .study-progress-category-item{border-color:var(--border);box-shadow:none;background:#172033}.study-progress-cat-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.study-progress-cat-icon{background:color-mix(in srgb, var(--cat-color,#1e6dff) 14%, #fff);width:36px;height:36px;color:var(--cat-color,#1e6dff);border-radius:10px;flex-shrink:0;place-items:center;display:grid}:root[data-theme=dark] .study-progress-cat-icon{background:color-mix(in srgb, var(--cat-color,#1e6dff) 24%, #1b2438)}.study-progress-cat-name{font-family:var(--font-body);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;line-height:1.3;overflow:hidden}.study-progress-cat-count{font-family:var(--font-body);flex-shrink:0;align-items:baseline;gap:4px;font-size:.92rem;display:flex}.study-progress-cat-count strong{color:var(--text);font-weight:700}.study-progress-cat-count span{color:var(--muted);font-size:.85rem}
.speaker-theme-0{--speaker-color:#1e6dff;--speaker-border:#1e6dff;--speaker-card-bg:#fff;--speaker-card-border:#dbeafe;--speaker-avatar-bg:#eff6ff;--speaker-badge-bg:#eff6ff;--speaker-badge-text:#1e6dff;--speaker-badge-border:#bfdbfe;--speaker-player-bg:#eff6ff;--speaker-player-border:#dbeafe}:root[data-theme=dark] .speaker-theme-0{--speaker-color:#3b8bff;--speaker-border:#3b8bff;--speaker-card-bg:#131f37;--speaker-card-border:#1d3357;--speaker-avatar-bg:#3b8bff2e;--speaker-badge-bg:#3b8bff29;--speaker-badge-text:#78adff;--speaker-badge-border:#3b8bff52;--speaker-player-bg:#172644;--speaker-player-border:#1d3357}.speaker-theme-1{--speaker-color:#08764d;--speaker-border:#08764d;--speaker-card-bg:#effdf6;--speaker-card-border:#bbf7d0;--speaker-avatar-bg:#dcfce7;--speaker-badge-bg:#dcfce7;--speaker-badge-text:#08764d;--speaker-badge-border:#86efac;--speaker-player-bg:#dcfce7;--speaker-player-border:#bbf7d0}:root[data-theme=dark] .speaker-theme-1{--speaker-color:#20c07a;--speaker-border:#20c07a;--speaker-card-bg:#0e271c;--speaker-card-border:#16533c;--speaker-avatar-bg:#20c07a2e;--speaker-badge-bg:#20c07a29;--speaker-badge-text:#8de9b7;--speaker-badge-border:#20c07a52;--speaker-player-bg:#133827;--speaker-player-border:#16533c}.speaker-theme-2{--speaker-color:#7c3aed;--speaker-border:#7c3aed;--speaker-card-bg:#faf5ff;--speaker-card-border:#e9d5ff;--speaker-avatar-bg:#f3e8ff;--speaker-badge-bg:#f3e8ff;--speaker-badge-text:#6d28d9;--speaker-badge-border:#ddd6fe;--speaker-player-bg:#f3e8ff;--speaker-player-border:#ddd6fe}:root[data-theme=dark] .speaker-theme-2{--speaker-color:#a78bfa;--speaker-border:#a78bfa;--speaker-card-bg:#211538;--speaker-card-border:#3c1e6d;--speaker-avatar-bg:#a78bfa2e;--speaker-badge-bg:#a78bfa29;--speaker-badge-text:#c4b5fd;--speaker-badge-border:#a78bfa52;--speaker-player-bg:#2a164a;--speaker-player-border:#3c1e6d}.speaker-theme-3{--speaker-color:#d97706;--speaker-border:#d97706;--speaker-card-bg:#fffbeb;--speaker-card-border:#fde68a;--speaker-avatar-bg:#fef3c7;--speaker-badge-bg:#fef3c7;--speaker-badge-text:#b45309;--speaker-badge-border:#fde68a;--speaker-player-bg:#fef3c7;--speaker-player-border:#fde68a}:root[data-theme=dark] .speaker-theme-3{--speaker-color:#fbbf24;--speaker-border:#fbbf24;--speaker-card-bg:#291f0e;--speaker-card-border:#523b12;--speaker-avatar-bg:#fbbf242e;--speaker-badge-bg:#fbbf2429;--speaker-badge-text:#fcd34d;--speaker-badge-border:#fbbf2452;--speaker-player-bg:#382710;--speaker-player-border:#523b12}.student-content:has(.group-study-page){flex-direction:column;display:flex;max-width:100%!important;padding:0!important}.group-study-page{flex-direction:column;flex:1;width:100%;display:flex}.group-study-header-section{background:var(--surface);border-bottom:1px solid var(--border);width:100%}.group-study-header-inner{width:100%;max-width:1300px;margin-inline:auto;padding:22px 24px 20px}.group-study-top-nav{margin-bottom:12px}.student-back-link{align-self:flex-start;margin-bottom:0}.group-study-header-main{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.group-study-heading-col{flex:1;min-width:280px}.group-study-title{letter-spacing:-.02em;color:var(--text);margin:0 0 4px;font-size:clamp(1.35rem,2.2vw,1.7rem);font-weight:800;line-height:1.25}.group-study-description{color:var(--muted);margin:0 0 10px;font-size:.95rem;line-height:1.45}.dialogue-speakers-summary{flex-wrap:wrap;align-items:center;gap:16px;margin-top:6px;display:flex}.dialogue-speaker-item{color:var(--text);align-items:center;gap:8px;font-size:.88rem;display:inline-flex}.dialogue-speaker-dot{background:var(--speaker-color);border-radius:50%;flex-shrink:0;width:9px;height:9px}.group-study-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.group-study-content-section{background:#f7fafc;flex:1;width:100%}:root[data-theme=dark] .group-study-content-section{background:var(--background)}.group-study-content-inner{flex-direction:column;flex:1;width:100%;max-width:1300px;margin-inline:auto;padding:26px 24px 36px;display:flex}.study-phrases-stack{flex-direction:column;gap:22px;padding-bottom:28px;display:flex}.study-phrase-card{border-radius:18px;transition:border-color .18s;overflow:hidden;box-shadow:none!important}.study-phrase-card.has-speaker{background:var(--speaker-card-bg);border:1px solid var(--speaker-card-border);border-left:5px solid var(--speaker-border)}.study-phrase-card.no-speaker{background:var(--surface);border:1px solid var(--border);border-left:5px solid #1e6dff}:root[data-theme=dark] .study-phrase-card.no-speaker{border-left-color:#3b8bff}.study-phrase-card.is-playing{border-color:var(--speaker-color,#1e6dff)}.study-phrase-card:has(.study-audio-player.is-playing){border-color:var(--speaker-color,#1e6dff)}.study-phrase-card.has-speaker.is-playing{border-color:var(--speaker-color)}.study-phrase-card.has-speaker:has(.study-audio-player.is-playing){border-color:var(--speaker-color)}.study-phrase-card.no-speaker.is-playing{border-color:#1e6dff}.study-phrase-card.no-speaker:has(.study-audio-player.is-playing){border-color:#1e6dff}:root[data-theme=dark] .study-phrase-card.no-speaker.is-playing{border-color:#3b8bff}:root[data-theme=dark] .study-phrase-card.no-speaker:has(.study-audio-player.is-playing){border-color:#3b8bff}@media (hover:hover){.study-phrase-card:hover{box-shadow:none}.study-phrase-card.has-speaker:hover{border-color:var(--speaker-border);box-shadow:none}}.study-content-card{padding:20px 24px}.study-content-card.is-dialogue{grid-template-columns:minmax(120px,160px) 1fr auto;align-items:center;gap:20px;display:grid}.study-content-card.is-phrase{justify-content:space-between;align-items:center;gap:24px;display:flex}.study-dialogue-speaker-col{align-items:center;min-width:0;display:flex}.study-dialogue-badge-wrapper{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.study-dialogue-number{background:var(--speaker-badge-bg);color:var(--speaker-badge-text);border:1px solid var(--speaker-badge-border);letter-spacing:-.01em;white-space:nowrap;border-radius:999px;align-items:center;padding:4px 12px;font-size:.82rem;font-weight:700;line-height:1.35;display:inline-flex}.study-dialogue-text-col,.study-content-copy{flex:1;min-width:0}.study-text{font-family:var(--font-body);color:var(--text);margin:0 0 6px;font-size:clamp(1.08rem,1.8vw,1.28rem);font-weight:800;line-height:1.35}.study-translation-container{align-items:flex-start;gap:7px;margin:0;display:flex}.study-translation-icon{color:var(--muted);opacity:.8;flex-shrink:0;margin-top:3px}.study-translation{color:var(--muted);margin:0;font-size:.98rem;line-height:1.45}.study-dialogue-audio-col{flex:none;justify-content:flex-end;align-items:center;display:flex}.study-audio-player{border:1px solid var(--speaker-player-border,#dbeafe);background:var(--speaker-player-bg,#eff6ff);border-radius:16px;flex:none;align-items:center;gap:12px;width:max-content;max-width:100%;min-height:64px;padding:8px 14px;transition:background-color .18s,border-color .18s;display:flex}:root[data-theme=dark] .study-audio-player{border-color:var(--speaker-player-border,#1d3357);background:var(--speaker-player-bg,#172644)}.study-audio-player.is-playing{border-color:var(--speaker-color,#1e6dff)!important}:root[data-theme=dark] .study-audio-player.is-playing{border-color:var(--speaker-color,#3b8bff)!important}.study-audio-play-button{background:var(--speaker-color,#1e6dff);color:#fff;cursor:pointer;border:none;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;transition:transform .12s,opacity .12s;display:grid}.study-audio-play-button:hover:not(:disabled){transform:scale(1.05)}.study-audio-play-button:active:not(:disabled){transform:scale(.96)}.study-audio-play-button:disabled{opacity:.6;cursor:not-allowed}.study-audio-time{min-width:48px;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.88rem;font-weight:600}.study-audio-wave{flex:0 0 36px;justify-content:center;align-items:center;gap:3px;width:36px;height:28px;display:flex}.study-audio-wave span{background:var(--speaker-color,#1e6dff);opacity:.45;border-radius:3px;width:3px;height:4px;transition:height 70ms linear,opacity .18s}.study-audio-player.is-playing .study-audio-wave span{opacity:1}.study-content-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.study-content-number{color:#1e6dff;background:#eef4fb;border-radius:8px;align-items:center;padding:2px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.study-content-listened{color:#08764d;white-space:nowrap;background:#effdf6;border:1px solid #a9e7cb;border-radius:999px;align-items:center;padding:2px 8px;font-size:.78rem;font-weight:700;line-height:1.4;display:inline-flex}:root[data-theme=dark] .study-content-listened{color:#8de9b7;background:#15382f;border-color:#347b5d}.audio-speed-card{border:1px solid var(--border);background:#f1f5f9;border-radius:12px;align-items:center;gap:10px;min-height:44px;padding:4px 6px 4px 10px;display:flex}:root[data-theme=dark] .audio-speed-card{background:color-mix(in srgb, var(--surface) 84%, #3b8bff 16%)}.audio-speed-label{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:.82rem;font-weight:600;display:inline-flex}.audio-speed-icon{color:var(--muted)}.audio-speed-options{align-items:center;gap:2px;display:flex}.audio-speed-option{min-width:44px;min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 8px;font-size:.88rem;font-weight:600;transition:background-color .15s,color .15s}.audio-speed-option.is-selected{color:#fff;background:#1e6dff;border-color:#1e6dff}:root[data-theme=dark] .audio-speed-option.is-selected{color:#fff;background:#3b8bff;border-color:#3b8bff}.audio-speed-option:hover:not(.is-selected){color:var(--text)}.lesson-status-badge{color:#08764d;background:#effdf6;border:1px solid #a9e7cb;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:.92rem;font-weight:600;display:inline-flex}:root[data-theme=dark] .lesson-status-badge{color:#8de9b7;background:#15382f;border-color:#347b5d}.lesson-status-group{align-items:stretch;display:inline-flex}.lesson-status-group .lesson-status-badge{border-right:0;border-radius:12px 0 0 12px}.lesson-status-group form{margin:0;display:inline-flex}.lesson-status-group .button{border-radius:0 12px 12px 0;justify-content:center;min-width:44px;min-height:44px;padding:0 12px}.group-lesson-navigation{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:16px;margin-top:auto;padding:18px 8px;display:grid}.group-lesson-navigation button,.group-lesson-navigation a{border:1px solid var(--border);background:var(--surface);min-height:46px;color:var(--text);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.group-lesson-navigation button:disabled{opacity:.45;cursor:not-allowed}.group-lesson-navigation .group-lesson-previous{justify-self:start}.group-lesson-navigation .group-lesson-next{color:#fff;background:#1e6dff;border-color:#1e6dff;justify-self:end}.group-lesson-dialog-backdrop{z-index:1000;background:#0a142885;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.group-lesson-dialog{border:1px solid var(--border);background:var(--surface);width:min(520px,100%);color:var(--text);border-radius:18px;padding:26px;position:relative;box-shadow:0 20px 60px #0003}.group-lesson-dialog:focus{outline:none}.group-lesson-dialog h2{margin-bottom:10px;padding-right:40px}.group-lesson-dialog-close{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--muted);border-radius:10px;place-items:center;display:grid;position:absolute;top:16px;right:16px}.group-lesson-dialog-close:hover:not(:disabled){color:var(--text);border-color:var(--primary)}.group-lesson-dialog p{color:var(--muted)}.group-lesson-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.group-lesson-error{color:var(--red)!important}.study-empty{flex-direction:column;flex:1;justify-content:center;width:100%;display:flex}.study-empty-message{text-align:center;width:100%;max-width:none;margin:0}@media (max-width:760px){.study-content-card.is-dialogue{grid-template-columns:1fr;align-items:stretch;gap:16px;padding:18px 20px}.study-content-card.is-dialogue .study-dialogue-audio-col{justify-content:flex-start}.study-content-card.is-phrase{flex-direction:column;align-items:stretch;gap:16px;padding:18px 20px}.group-study-header-main{flex-direction:column;align-items:stretch}.group-study-actions{flex-wrap:nowrap;justify-content:flex-start;gap:8px}.group-study-actions .audio-speed-card{flex:none}.group-study-actions>form,.group-study-actions>.lesson-status-group{flex:auto;min-width:0}.group-study-actions>form .button{width:100%}}@media (max-width:619px){.group-study-header-inner{padding:16px}.group-study-content-inner{padding:18px 16px 28px}.study-content-card{gap:12px;padding:16px}.audio-speed-label{display:none}.group-study-actions .audio-speed-card{gap:0;min-height:40px;padding:3px}.group-study-actions .audio-speed-option{min-width:34px;min-height:32px;padding:0 5px;font-size:.8rem}.group-study-actions>form .button,.group-study-actions .lesson-status-badge,.group-study-actions .lesson-status-group .button{min-height:40px}.group-study-actions>form .button{white-space:nowrap;gap:6px;padding:0 10px;font-size:.88rem}.group-study-actions .lesson-status-badge{white-space:nowrap;padding:0 10px;font-size:.86rem}.group-lesson-navigation{grid-template-columns:1fr 1fr;gap:10px;padding:14px 0}.group-lesson-navigation .group-lesson-previous,.group-lesson-navigation .group-lesson-next{width:100%;padding:0 8px;font-size:.86rem}.group-lesson-dialog-actions{flex-direction:column-reverse}.group-lesson-dialog-actions button{white-space:normal;width:100%}}@media (max-width:380px){.group-study-actions>form .button,.group-study-actions .lesson-status-badge{padding:0 8px;font-size:.8rem}}@media (prefers-reduced-motion:reduce){.study-audio-wave span{transition:none}}.student-loading{min-height:4px;position:relative}.student-loading .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.student-loading-bar{background:var(--primary);transform-origin:0;border-radius:3px;height:3px;animation:1s ease-in-out infinite student-loading-slide}@keyframes student-loading-slide{0%{opacity:.4;transform:scaleX(.1)}50%{opacity:1;transform:scaleX(.7)}to{opacity:.4;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.student-loading-bar{animation:none}}.student-content,.student-main,.group-study-page,.study-phrases-stack,.study-phrase-card,.study-text,.study-translation,.study-translation-container,.study-content-card,.study-dialogue-speaker-col,.study-dialogue-text-col,.study-dialogue-badge-wrapper,.dictionary-card,.dictionary-term,.dictionary-translation,.no-copy{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.student-content input,.student-content textarea,.student-content select,.student-content [contenteditable=true]{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}
.app-footer{border-top:1px solid var(--border);background:var(--surface);align-items:center;width:100%;min-height:56px;margin-top:auto;padding:18px 0;display:flex}.app-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:1300px;margin-inline:auto;padding-inline:24px;display:flex}.app-footer-inner--container{max-width:min(1120px,100% - 32px);padding-inline:0}@media (min-width:1280px){.lp-root .app-footer-inner--container{max-width:min(1120px,100% - 64px)}}.app-footer-brand-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-footer-brand{font-family:var(--font-display,"Poppins", Arial, sans-serif);letter-spacing:-.01em;color:var(--muted);font-size:.9rem;font-weight:600}:root[data-theme=dark] .app-footer-brand{color:var(--dark-text-muted,#b8c2d9)}.app-footer-copy{font-family:var(--font-body,"Inter", Arial, sans-serif);color:var(--muted);font-size:.85rem}:root[data-theme=dark] .app-footer-copy{color:var(--dark-text-muted,#b8c2d9)}.app-footer-nav{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.app-footer-link{font-family:var(--font-body,"Inter", Arial, sans-serif);color:var(--muted);font-size:.85rem;font-weight:500;text-decoration:none;transition:color .15s}.app-footer-link:hover{color:var(--primary);text-underline-offset:3px;text-decoration:underline}:root[data-theme=dark] .app-footer-link{color:var(--dark-text-muted,#b8c2d9)}:root[data-theme=dark] .app-footer-link:hover{color:var(--primary)}@media (max-width:800px){.app-footer-inner{padding-inline:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}}@media (max-width:640px){.app-footer{min-height:auto;padding:14px 0 max(14px, env(safe-area-inset-bottom))}.app-footer-inner{flex-direction:column;align-items:flex-start;gap:10px}.app-footer-nav{gap:16px}}
.institutional-page-root{background:var(--bg);min-height:100vh;color:var(--text);flex-direction:column;display:flex}.institutional-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0}.institutional-header-inner{justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex}.institutional-header-left{align-items:center;gap:16px;display:flex}.institutional-header-actions{align-items:center;gap:24px;display:flex}.institutional-nav{align-items:center;gap:8px;display:flex}.institutional-nav-link{color:var(--muted);border-radius:8px;padding:6px 12px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s}.institutional-nav-link:hover{color:var(--primary);background:var(--bg)}.institutional-nav-link.active{color:var(--primary);background:var(--bg);box-shadow:inset 0 0 0 1px var(--border);font-weight:600}:root[data-theme=dark] .institutional-nav-link.active{background:#3b8bff26;box-shadow:inset 0 0 0 1px #3b8bff4d}.institutional-header-user{align-items:center;gap:12px;display:flex}.institutional-action-btn{min-height:40px;padding:8px 16px;font-size:.875rem}.institutional-main{flex:1;padding:48px 0 64px}.institutional-hero{border-bottom:1px solid var(--border);margin-bottom:40px;padding-bottom:32px}.institutional-badge{background:var(--surface);border:1px solid var(--border);color:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:6px;margin-bottom:16px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.institutional-hero h1{letter-spacing:-.02em;margin-bottom:12px;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.2}.institutional-hero p{color:var(--muted);max-width:65ch;font-size:1.125rem;line-height:1.6}.institutional-updated-date{color:var(--muted);margin-top:16px;font-size:.85rem;display:block}.help-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:24px;display:grid}.help-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;padding:24px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.help-card:hover{border-color:var(--primary);box-shadow:none;transform:translateY(-2px)}:root[data-theme=dark] .help-card:hover{box-shadow:none}.help-card-icon{color:#1e6dff;background:#edf4ff;border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}:root[data-theme=dark] .help-card-icon{color:#5da0ff;background:#1e6dff33}.help-card-icon.red{color:#ff2e43;background:#ffedf0}:root[data-theme=dark] .help-card-icon.red{color:#ff4b5f;background:#ff2e4333}.help-card-icon.green{color:#17b96b;background:#eafaf1}:root[data-theme=dark] .help-card-icon.green{color:#20c07a;background:#17b96b33}.help-card-icon.yellow{color:#b78100;background:#fff8e6}:root[data-theme=dark] .help-card-icon.yellow{color:#ffc928;background:#ffc92833}.help-card h3{color:var(--text);margin:0;font-size:1.15rem;font-weight:600}.help-card p{color:var(--muted);margin:0;font-size:.925rem;line-height:1.55}.faq-section{margin-top:48px}.faq-section h2{margin-bottom:20px;font-size:1.5rem;font-weight:700}.faq-list{flex-direction:column;gap:12px;display:flex}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color .15s;overflow:hidden}.faq-item[open]{border-color:var(--primary)}.faq-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:18px 20px;font-size:1rem;font-weight:600;list-style:none;display:flex}.faq-summary::-webkit-details-marker{display:none}.faq-summary:after{content:"+";color:var(--muted);font-size:1.3rem;font-weight:400;line-height:1;transition:transform .3s cubic-bezier(.2,.8,.2,1),color .2s;display:inline-flex}.faq-item[open] .faq-summary:after{color:var(--primary);transform:rotate(135deg)}.faq-content{color:var(--muted);padding:0 20px 20px;font-size:.95rem;line-height:1.6}.faq-content p{margin-bottom:12px}.faq-content p:last-child{margin-bottom:0}.faq-content ul,.faq-content ol{margin:8px 0 12px;padding-left:20px}.faq-content li{margin-bottom:6px}.legal-layout{grid-template-columns:260px minmax(0,1fr);align-items:flex-start;gap:40px;display:grid}.legal-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;position:sticky;top:100px}.legal-sidebar-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:14px;font-size:.82rem;font-weight:700}.legal-sidebar-nav{flex-direction:column;gap:6px;display:flex}.legal-sidebar-link{color:var(--muted);border-radius:8px;padding:6px 10px;font-size:.875rem;line-height:1.35;text-decoration:none;transition:all .15s}.legal-sidebar-link:hover{color:var(--primary);background:var(--bg)}.legal-content{flex-direction:column;gap:36px;display:flex}.legal-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px 32px;scroll-margin-top:100px}.legal-section h2{color:var(--text);align-items:center;gap:10px;margin-bottom:16px;font-size:1.3rem;font-weight:700;display:flex}.legal-section p{color:var(--text);margin-bottom:14px;font-size:.96rem;line-height:1.65}.legal-section p:last-child{margin-bottom:0}.legal-section ul,.legal-section ol{color:var(--text);margin:12px 0 16px;padding-left:24px}.legal-section li{margin-bottom:8px;font-size:.96rem;line-height:1.55}.legal-highlight-box{background:var(--bg);border-left:4px solid var(--primary);color:var(--text);border-radius:0 10px 10px 0;margin:16px 0;padding:14px 18px;font-size:.925rem}.legal-highlight-box.warning{border-left-color:#ffc928}.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding:32px;display:flex}.contact-card-text h3{margin-bottom:6px;font-size:1.25rem;font-weight:700}.contact-card-text p{color:var(--muted);margin:0;font-size:.95rem}@media (max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-sidebar{display:none}.institutional-header-actions{gap:12px}.institutional-nav{display:none}}@media (max-width:600px){.institutional-main{padding:32px 0 48px}.legal-section,.contact-card{padding:20px}.institutional-action-btn span{display:none}}
html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.lp-root{--lp-max:1120px;--lp-gutter:32px;background:var(--bg);color:var(--text)}@media (min-width:1280px){.lp-root{--lp-gutter:64px}}.lp-header{z-index:50;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.lp-header-inner{width:min(var(--lp-max), calc(100% - var(--lp-gutter)));justify-content:space-between;align-items:center;gap:16px;min-height:72px;margin:auto;display:flex}.lp-nav{white-space:nowrap;align-items:center;gap:4px;max-width:100%;display:flex;overflow-x:auto}.lp-nav a{color:var(--muted);border-radius:8px;padding:8px 12px;font-size:.875rem;font-weight:500}.lp-nav a:hover{color:var(--primary);background:var(--bg)}.lp-header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.lp-menu-button{display:none}.lp-mobile-menu{padding:12px max(16px, calc(var(--lp-gutter) / 2)) 20px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:none;flex-direction:column;gap:16px;display:none;position:absolute;top:100%;left:0;right:0}.lp-mobile-menu-nav{flex-direction:column;display:flex}.lp-mobile-menu-nav a{min-height:48px;color:var(--text);border-radius:10px;align-items:center;padding:0 12px;font-weight:600;display:flex}.lp-mobile-menu-nav a+a{border-top:1px solid var(--border)}.lp-mobile-menu-nav a:hover{color:var(--primary);background:var(--bg)}.lp-mobile-menu-cta{width:100%}@media (prefers-reduced-motion:no-preference){.lp-mobile-menu:not([hidden]){animation:.18s ease-out lp-mobile-menu-in}}@keyframes lp-mobile-menu-in{0%{opacity:0;transform:translateY(-6px)}}.lp-cta-red{background:var(--red);color:#fff;white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 20px;font-weight:600;display:inline-flex}.lp-cta-red:hover{filter:brightness(.95)}.lp-hero{position:relative;overflow:hidden}.lp-hero-bg{z-index:0;will-change:transform;position:absolute;inset:-70px -30px}.lp-hero-bg img{object-fit:cover;object-position:center 30%}.lp-hero-veil{z-index:1;pointer-events:none;background:linear-gradient(100deg,#fffffffa 32%,#ffffffe6 52%,#ffffff40 78%,#ffffff0d 100%);position:absolute;inset:0}:root[data-theme=dark] .lp-hero-veil{background:linear-gradient(100deg,#0e1320fa 32%,#0e1320eb 52%,#0e13208c 78%,#0e132040 100%)}.lp-hero-inner{z-index:2;width:min(var(--lp-max), calc(100% - var(--lp-gutter)));grid-template-columns:1.05fr .95fr;align-items:flex-end;gap:24px;min-height:520px;margin:auto;padding:136px 0 0;display:grid;position:relative}.lp-hero-content{z-index:3;padding-bottom:72px;position:relative}.lp-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px;font-size:.78rem;font-weight:600}.lp-hero h1{letter-spacing:-.03em;margin:0 0 16px;font-family:Poppins,Arial,sans-serif;font-size:clamp(2rem,4.6vw,3rem);line-height:1.15}.lp-hero h1 .accent{color:var(--red)}.lp-lead{color:var(--muted);max-width:54ch;margin:0 0 24px;font-size:clamp(1.15rem,1.4vw,1.25rem);line-height:1.65}.lp-hero-ctas{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.lp-btn-play{background:var(--primary);width:28px;height:28px;color:var(--button-text);border-radius:999px;flex-shrink:0;place-items:center;display:inline-grid}.lp-trust{color:var(--muted);flex-wrap:wrap;gap:20px;font-size:.85rem;font-weight:500;display:flex}.lp-trust span{align-items:center;gap:8px;display:inline-flex}.lp-trust svg{color:var(--primary)}.lp-hero-visual{z-index:2;will-change:transform;justify-content:flex-end;align-self:flex-end;align-items:flex-end;width:calc(100% + 140px);margin-left:-140px;line-height:0;display:flex;position:relative}.lp-hero-image{object-fit:contain;object-position:bottom right;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;max-width:680px;height:auto;display:block}@media (min-width:1280px){.lp-hero-inner{gap:48px;min-height:560px;padding-top:144px}.lp-hero-image{max-width:880px}.lp-band{padding:40px clamp(28px,3vw,56px)}.lp-3col,.lp-steps,.lp-audience,.lp-audience-grid{gap:24px}.lp-offer{gap:40px}.lp-faq-wrap{gap:48px}}.lp-section{width:min(var(--lp-max), calc(100% - var(--lp-gutter)));border-radius:28px;margin:auto;padding:96px 0 32px;scroll-margin-top:96px;position:relative}@keyframes lp-section-pulse{0%{outline-offset:16px;background-color:#0000;outline:2px solid #0000}20%{outline:2px solid var(--primary);outline-offset:12px;background-color:#d52b1e0d}60%{outline:2px solid var(--primary);outline-offset:12px;background-color:#d52b1e08}to{outline-offset:16px;background-color:#0000;outline:2px solid #0000}}@keyframes lp-section-pulse-dark{0%{outline-offset:16px;background-color:#0000;outline:2px solid #0000}20%{outline:2px solid var(--primary);outline-offset:12px;background-color:#ffffff0a}60%{outline:2px solid var(--primary);outline-offset:12px;background-color:#ffffff05}to{outline-offset:16px;background-color:#0000;outline:2px solid #0000}}.lp-section:target,.lp-section.lp-section-highlight{animation:1.4s cubic-bezier(.2,.8,.2,1) forwards lp-section-pulse}:root[data-theme=dark] .lp-section:target,:root[data-theme=dark] .lp-section.lp-section-highlight{animation-name:lp-section-pulse-dark}.lp-band{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:24px;padding:32px clamp(20px,4vw,40px)}.lp-band h2,.lp-h2{letter-spacing:-.02em;text-align:center;margin:0 0 8px;font-family:Poppins,Arial,sans-serif;font-size:clamp(1.4rem,2.8vw,1.9rem);line-height:1.25}.lp-h2 .accent{color:var(--red)}.lp-sub{text-align:center;color:var(--muted);max-width:62ch;margin:0 auto 32px}.lp-3col{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.lp-card{background:var(--bg);border:1px solid var(--border);box-shadow:none;border-radius:16px;padding:20px}.lp-card:hover{border-color:var(--primary);box-shadow:none}.lp-card-icon{width:48px;height:48px;color:var(--red);background:#ffedf0;border-radius:999px;place-items:center;margin-bottom:12px;display:grid}.lp-card-icon.blue{color:#1e6dff;background:#edf4ff}:root[data-theme=dark] .lp-card-icon{color:var(--red);background:#ff4b5f2e}:root[data-theme=dark] .lp-card-icon.blue{color:var(--primary);background:#3b8bff2e}.lp-flag{border:1px solid var(--border);background:var(--surface);border-radius:999px;place-items:center;width:48px;height:48px;margin-bottom:12px;font-size:1.4rem;display:grid;overflow:hidden}.lp-card h3{margin:0 0 6px;font-family:Poppins,Arial,sans-serif;font-size:1rem}.lp-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.55}.lp-steps{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:12px;display:grid}.lp-step{background:var(--surface);border:1px solid var(--border);box-shadow:none;text-align:center;border-radius:16px;padding:24px 16px;position:relative}.lp-step-num{background:var(--primary);width:28px;height:28px;color:var(--button-text);border-radius:999px;place-items:center;font-size:.8rem;font-weight:700;display:grid;position:absolute;top:12px;left:12px}.lp-step-icon{width:48px;height:48px;color:var(--primary);place-items:center;margin:8px auto 12px;display:grid}.lp-step h3{margin:0 0 4px;font-family:Poppins,Arial,sans-serif;font-size:1.05rem}.lp-step p{color:var(--muted);margin:0;font-size:.88rem}.lp-step-arrow{display:none}.lp-audience{grid-template-columns:1.1fr 1.9fr;gap:16px;display:grid}.lp-audience-feature{border:1px solid var(--border);border-radius:16px;align-items:flex-end;min-height:320px;display:flex;position:relative;overflow:hidden}.lp-audience-feature img{object-fit:cover}.lp-audience-feature figcaption{z-index:1;color:#fff;background:linear-gradient(#0000,#050c1ed1);width:100%;padding:24px;font-size:1.15rem;font-weight:700;line-height:1.4;position:relative}.lp-audience-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.lp-audience-card{border:1px solid var(--border);background:var(--surface);min-height:150px;box-shadow:none;border-radius:16px;align-items:flex-end;display:flex;position:relative;overflow:hidden}.lp-audience-card img{object-fit:cover}.lp-audience-label{z-index:1;color:#102044;border:1px solid var(--border);background:#fffffff2;border-radius:10px;align-items:center;gap:8px;margin:12px;padding:8px 12px;font-size:.88rem;font-weight:600;display:inline-flex;position:relative}.lp-audience-label svg{color:var(--red)}.lp-offer{grid-template-columns:1fr .9fr .9fr;align-items:center;gap:24px;display:grid}.lp-pill{background:var(--red);color:#fff;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-bottom:12px;padding:6px 12px;font-size:.72rem;font-weight:700;display:inline-block}.lp-offer h2{text-align:left;color:var(--primary);margin:0 0 8px;font-family:Poppins,Arial,sans-serif;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}:root[data-theme=dark] .lp-offer h2{color:var(--text)}.lp-price-card{background:var(--bg);border:1px solid var(--border);box-shadow:none;text-align:center;border-radius:16px;padding:24px}.lp-price-card small{font-size:1rem;font-weight:600;display:block}.lp-price{margin:4px 0;font-family:Poppins,Arial,sans-serif;font-size:2.6rem;font-weight:700;line-height:1}.lp-price span{vertical-align:top;font-size:1.4rem}.lp-check{flex-direction:column;gap:10px;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex}.lp-check li{align-items:flex-start;gap:8px;display:flex}.lp-check svg{color:var(--green);flex-shrink:0;margin-top:2px}.lp-guarantee{color:#0b5c36;background:#eafaf1;border:1px solid #bfe9d2;border-radius:12px;gap:10px;margin-top:16px;padding:14px 16px;font-size:.88rem;display:flex}:root[data-theme=dark] .lp-guarantee{color:var(--text);background:#20c07a1f;border-color:#20c07a59}.lp-faq-wrap{grid-template-columns:.9fr 1.1fr;align-items:start;gap:32px;display:grid}.lp-faq-list{flex-direction:column;gap:12px;display:flex}.lp-faq-list details{background:var(--surface);border:1px solid var(--border);box-shadow:none;border-radius:12px}.lp-faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;font-size:.95rem;font-weight:600;list-style:none;display:flex}.lp-faq-list summary::-webkit-details-marker{display:none}.lp-faq-list summary:after{content:"+";color:var(--muted);font-size:1.25rem;font-weight:400;line-height:1;transition:transform .3s cubic-bezier(.2,.8,.2,1),color .2s;display:inline-flex}.lp-faq-list details[open] summary:after{color:var(--primary);transform:rotate(135deg)}.lp-faq-list details p{color:var(--muted);margin:0;padding:0 18px 18px;font-size:.92rem;line-height:1.6}.lp-final{width:min(var(--lp-max), calc(100% - var(--lp-gutter)));color:#fff;box-shadow:none;background:#0a2f7e;border:1px solid #0a2f7e;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin:96px auto 0;padding:clamp(24px,4vw,40px);display:grid}:root[data-theme=dark] .lp-final{border-color:var(--border);background:#16294f}.lp-final img{border-radius:16px}.lp-final h2{margin:0 0 6px;font-family:Poppins,Arial,sans-serif;font-size:clamp(1.3rem,2.6vw,1.7rem)}.lp-final p{color:#ffffffd9;margin:0}.lp-footer{width:min(var(--lp-max), calc(100% - var(--lp-gutter)));flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin:auto;padding:28px 0 20px;display:flex}.lp-footer-brand small{color:var(--muted);margin-top:4px;font-size:.78rem;display:block}.lp-footer-links{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.lp-footer-links a:hover{color:var(--primary)}@media (max-width:960px){.lp-header-cta{display:none!important}.lp-hero-inner{text-align:center;grid-template-columns:1fr;gap:32px;min-height:auto;padding:64px 0 0}.lp-hero-content{text-align:center;flex-direction:column;align-items:center;padding-bottom:0;display:flex}.lp-lead{max-width:50ch;margin:0 auto 32px}.lp-hero-ctas{justify-content:center;gap:14px;width:100%;margin-top:8px;margin-bottom:36px}.lp-trust{justify-content:center;margin-bottom:8px}.lp-hero-visual{justify-content:center;align-self:center;width:100%;max-width:520px;margin:0 auto}.lp-3col{grid-template-columns:1fr}.lp-steps{grid-template-columns:repeat(2,1fr)}.lp-audience{grid-template-columns:1fr}.lp-audience-grid{grid-template-columns:repeat(2,1fr)}.lp-offer,.lp-faq-wrap{grid-template-columns:1fr}.lp-final{text-align:left;grid-template-columns:1fr}.lp-nav{display:none}.lp-menu-button{display:grid}.lp-mobile-menu:not([hidden]){display:flex}}@media (max-width:560px){.lp-hero-ctas{flex-direction:column;align-items:stretch;max-width:320px;margin-left:auto;margin-right:auto}.lp-hero-ctas a,.lp-hero-ctas button{justify-content:center;width:100%}.lp-steps,.lp-audience-grid{grid-template-columns:1fr}}
[data-reveal].is-reveal-armed{opacity:0;transition:opacity .48s cubic-bezier(.2,.8,.2,1),transform .48s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--reveal-delay,0) * 60ms);transform:translateY(20px)}[data-reveal].is-reveal-armed[data-reveal-from=left]{transform:translate(-56px)}[data-reveal].is-reveal-armed[data-reveal-from=right]{transform:translate(56px)}[data-reveal].is-reveal-armed[data-reveal-from=scale]{transform:scale(.96)}[data-reveal].is-revealed{opacity:1;transform:none}[data-reveal-stagger]>:first-child{--reveal-delay:0}[data-reveal-stagger]>:nth-child(2){--reveal-delay:1}[data-reveal-stagger]>:nth-child(3){--reveal-delay:2}[data-reveal-stagger]>:nth-child(4){--reveal-delay:3}[data-reveal-stagger]>:nth-child(5){--reveal-delay:4}[data-reveal-stagger]>:nth-child(6){--reveal-delay:5}[data-reveal-stagger]>:nth-child(7){--reveal-delay:6}[data-reveal-stagger]>:nth-child(8){--reveal-delay:7}[data-reveal-stagger]>:nth-child(n+9){--reveal-delay:8}.button,.icon-button,.side-nav-link,.navigation-card,.study-lesson-item,.help-card,.sortable-drag-column,.admin-dialog .icon-button{transition:transform .12s}.button:active,.icon-button:active,.side-nav-link:active,.navigation-card:active,.study-lesson-item:active,.help-card:active,.sortable-drag-column:active,.admin-dialog .icon-button:active{transform:scale(.96)}.route-transition{animation:.32s cubic-bezier(.2,.8,.2,1) both motion-fade-in}@keyframes motion-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.login-card{animation:.42s cubic-bezier(.2,.8,.2,1) both motion-dialog-in}@keyframes motion-dialog-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes motion-dialog-scale-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}.admin-dialog[open]{animation:.26s cubic-bezier(.2,.8,.2,1) both motion-dialog-scale-in}.admin-dialog[open]::backdrop{animation:.26s both motion-backdrop-in}@keyframes motion-backdrop-in{0%{opacity:0}to{opacity:1}}.motion-shake{animation:.38s cubic-bezier(.36,.07,.19,.97) both motion-shake}@keyframes motion-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.motion-spring-in{animation:.48s cubic-bezier(.34,1.56,.64,1) both motion-spring-in}@keyframes motion-spring-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}.motion-collapse>.motion-collapse-content{grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.2,.8,.2,1);display:grid}.motion-collapse[open]>.motion-collapse-content,.motion-collapse.is-open>.motion-collapse-content{grid-template-rows:1fr}.motion-collapse>.motion-collapse-content>*{min-height:0;overflow:hidden}.motion-accordion-icon{transition:transform .3s cubic-bezier(.2,.8,.2,1);display:inline-flex}.motion-accordion[open] .motion-accordion-icon,.motion-accordion.is-open .motion-accordion-icon{transform:rotate(135deg)}.faq-item[open]>.faq-content,.lp-faq-list>details[open]>p{animation:.3s cubic-bezier(.2,.8,.2,1) both motion-faq-in}@keyframes motion-faq-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.sortable-card-item.is-dragging .sortable-card-unified{border-color:var(--primary);transform:scale(1.01)}.motion-counter{font-variant-numeric:tabular-nums}.motion-ring{transition:none}.reading-progress{z-index:60;pointer-events:none;background:0 0;height:3px;position:fixed;top:0;left:0;right:0}.reading-progress .reading-progress-bar{transform-origin:0;background:linear-gradient(90deg, var(--primary), var(--red));width:100%;height:100%;transition:transform .12s linear;transform:scaleX(0)}.lp-cta-red{transition:filter .2s,transform .12s;position:relative;overflow:hidden}.lp-cta-red:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 20%,#ffffff4d 50%,#0000 80%);position:absolute;inset:0;transform:translate(-120%)}.lp-cta-red:hover:after{animation:.9s cubic-bezier(.4,0,.2,1) forwards motion-sweep}@keyframes motion-sweep{to{transform:translate(120%)}}.motion-sr-only,.lp-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transition:none!important;transform:none!important}.route-transition,.admin-dialog[open],.admin-dialog[open]::backdrop,.login-card,.motion-shake,.motion-spring-in,.sortable-card-item.is-dragging .sortable-card-unified{animation:none!important}.button,.icon-button,.lp-cta-red,.side-nav-link,.navigation-card,.study-lesson-item,.help-card,.sortable-drag-column,.motion-accordion-icon,.motion-collapse>.motion-collapse-content{transition:none!important}.button:active,.icon-button:active,.lp-cta-red:active,.side-nav-link:active,.navigation-card:active,.study-lesson-item:active,.help-card:active,.sortable-drag-column:active{transform:none!important}.motion-collapse>.motion-collapse-content{grid-template-rows:1fr}.faq-item[open]>.faq-content,.lp-faq-list>details[open]>p{animation:none!important}.lp-cta-red:after{display:none}.reading-progress .reading-progress-bar{transition:none}}
