/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){::backdrop{--tw-border-style:solid}*,:before,:after{--tw-border-style:solid}::backdrop{--tw-border-style:solid}}}@layer theme{:root,:host{--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#f7f7f4;--foreground:#17211d;--surface:#fff;--surface-muted:#f0f2ee;--border:#dbe0da;--muted:#64716a;--accent:#184f3a;--accent-hover:#103d2c;--success:#1d6a48;--warning:#9a6a18;--danger:#a43d35}body{background:var(--background);color:var(--foreground);margin:0;font-family:Arial,Helvetica,sans-serif}.nav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:72px;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-weight:700;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:7px;place-items:center;width:27px;height:27px;font-size:13px;display:grid}.nav-links{color:var(--muted);align-items:center;gap:26px;font-size:14px;display:flex}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-size:14px;font-weight:650;display:inline-flex}.button:hover{background:var(--accent-hover)}.button.secondary{color:var(--accent);background:0 0}.hero{grid-template-columns:1.08fr .92fr;align-items:center;gap:72px;padding:100px 0 86px;display:grid}.hero h1{letter-spacing:-.055em;max-width:700px;margin:0;font-size:clamp(42px,5vw,66px);line-height:1.03}.hero p{max-width:560px;color:var(--muted);margin:24px 0 0;font-size:18px;line-height:1.55}.overview{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:25px;box-shadow:0 18px 50px #12281c12}.overview-header,.row{justify-content:space-between;align-items:center;display:flex}.overview-header{font-size:14px;font-weight:700}.progress-track{background:#e5e9e4;border-radius:99px;height:8px;margin:20px 0 10px;overflow:hidden}.progress-track>span{background:var(--accent);border-radius:inherit;height:100%;display:block}.next-card{border-left:3px solid var(--accent);background:var(--surface-muted);margin-top:24px;padding:16px}.next-card strong{margin-bottom:5px;font-size:14px;display:block}.section{border-top:1px solid var(--border);padding:72px 0}.section h2{letter-spacing:-.04em;margin:0;font-size:30px}.section-lead{color:var(--muted);margin:12px 0 28px}.grid{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.feature{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:19px}.feature strong{margin:14px 0 8px;font-size:15px;display:block}.num{width:28px;height:28px;color:var(--accent);background:#e6efe9;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.price{background:#f2f7f3;border:1px solid #bfd1c5;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:28px;display:flex}.price strong{letter-spacing:-.04em;font-size:32px}.footer{color:var(--muted);justify-content:space-between;padding:32px 0;font-size:13px;display:flex}.app-shell{grid-template-columns:236px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:#f2f4f0;padding:24px 14px}.side-label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding:13px 10px 7px;font-size:11px;font-weight:700}.side-link{color:#405149;border-radius:7px;align-items:center;gap:10px;margin:2px 0;padding:10px;font-size:14px;display:flex}.side-link.active{color:#123b2b;background:#dfeae2;font-weight:700}.topbar{border-bottom:1px solid var(--border);background:#ffffffa6;justify-content:flex-end;align-items:center;height:68px;padding:0 34px;display:flex}.avatar{width:32px;height:32px;color:var(--accent);background:#d5e2d8;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.page-head h1{letter-spacing:-.04em;margin:0;font-size:30px}.page-head p{color:var(--muted);margin:8px 0 0}.card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:20px}.card h2,.card h3{letter-spacing:-.02em;margin:0}.metric{color:var(--accent);letter-spacing:-.045em;margin:18px 0 4px;font-size:30px;font-weight:750}.status{color:#246044;background:#e5efe8;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.status.warning{color:#8a5c13;background:#f8eed7}.status.muted{color:#64716a;background:#ecefeb}.list-row:last-child{border:0}.list-row strong{font-size:14px;display:block}.list-row span{color:var(--muted);font-size:13px}.tema{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:16px}.tema.locked{opacity:.56}.tema b{margin-bottom:7px;font-size:14px;display:block}.tema small{color:var(--muted)}.table th{color:var(--muted);text-align:left;font-size:12px;font-weight:700}.table th,.table td{border-bottom:1px solid var(--border);padding:13px 10px}.prompt{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin:20px 0;padding:26px;font-size:18px;line-height:1.55}.rating{border:1px solid var(--border);color:#405149;cursor:pointer;background:#fff;border-radius:7px;padding:11px 8px;font-size:13px}.rating:hover,.rating.selected{border-color:var(--accent);color:var(--accent);background:#e8f1eb;font-weight:700}.notice{color:#79541a;background:#f8f1df;border-radius:8px;padding:13px 15px;font-size:13px}@media (max-width:800px){.wrap{width:min(100% - 32px,1180px)}.nav-links{gap:14px}.nav-links a:not(.button){display:none}.hero{grid-template-columns:1fr;gap:32px;padding:62px 0}.grid{grid-template-columns:repeat(2,1fr)}.price{flex-direction:column;align-items:flex-start}.app-shell{display:block}.sidebar{display:none}.topbar{height:58px;padding:0 18px}.content{width:min(100% - 32px,1240px);padding-top:26px}.page-head{display:block}.page-head .button{margin-top:18px}.cards-3,.cards-2,.split,.tema-list{grid-template-columns:1fr}.table-wrap{overflow-x:auto}.ratings{grid-template-columns:1fr 1fr}.footer{flex-direction:column;align-items:flex-start;gap:14px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}.auth-login-contact{color:#64748b;text-align:center;border-top:1px solid #e5eaf3;border-radius:12px;margin:2px 0 0;padding:20px 16px 4px;font-family:Outfit,sans-serif}.auth-login-contact strong{color:#0f172a;letter-spacing:-.025em;font-size:18px;font-weight:800;line-height:1.2;display:block}.auth-login-contact p{margin:8px 0 0;font-size:14px;line-height:1.5}.auth-login-contact a{color:#1a56db;font-weight:750}.auth-login-contact a:hover{text-underline-offset:3px;text-decoration:underline}.auth-login-title-row{align-items:center;gap:10px;display:flex}.auth-login-title-row h1{white-space:nowrap;min-width:0;font-size:clamp(1.7rem,5vw,2.35rem)}.auth-login-back{color:#64748b;border:1px solid #d8e2f0;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;transition:color .15s,background .15s,border-color .15s,transform .15s;display:grid}.auth-login-back:hover{color:#1a56db;background:#f3f7ff;border-color:#abc9f4;transform:translate(-2px)}:root{--background:#f6f8fc;--foreground:#172033;--surface:#fff;--surface-muted:#f0f4fb;--surface-blue:#eef4ff;--border:#dce4f2;--border-strong:#c7d4ea;--muted:#64718a;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-soft:#dbeafe;--navy:#14213d;--success:#18794e;--success-soft:#e7f6ed;--warning:#9a5b13;--warning-soft:#fff3dd;--danger:#b23a48;--danger-soft:#ffebef}*{box-sizing:border-box}html{background:var(--background)}body{background:var(--background);color:var(--foreground);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}button:disabled{cursor:not-allowed;opacity:.6}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site{background:radial-gradient(circle at 80% -10%,#e5efff 0,transparent 33%),var(--background);min-height:100vh}.wrap{width:min(1180px,100% - 48px);margin:0 auto}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;letter-spacing:-.01em;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;min-height:40px;padding:0 15px;font-size:13px;font-weight:750;display:inline-flex;box-shadow:0 5px 12px #2563eb29}.button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px);box-shadow:0 8px 18px #2563eb38}.button.secondary{border-color:var(--border-strong);color:#365172;box-shadow:none;background:#fff}.button.secondary:hover:not(:disabled){background:var(--surface-blue);color:var(--accent-strong);box-shadow:none;border-color:#9db9ed}.eyebrow{color:var(--accent);letter-spacing:.11em;text-transform:uppercase;margin:0 0 9px;font-size:10px;font-weight:800}.small{color:var(--muted);font-size:12px;line-height:1.5}.muted{color:var(--muted)}.actions{flex-wrap:wrap;gap:9px;margin-top:auto;display:flex}.stack{gap:15px;display:grid}.row{justify-content:space-between;align-items:center;gap:14px;display:flex}.app-shell{background:var(--background);grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;flex-direction:column;height:100vh;padding:25px 13px;display:flex;position:sticky;top:0}.sidebar .brand{padding:0 10px 28px}.brand{color:var(--navy);letter-spacing:-.035em;align-items:center;gap:10px;font-size:15px;font-weight:800;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#3b82f6,#1d4ed8);border-radius:9px;place-items:center;width:29px;height:29px;font-size:12px;font-weight:850;display:grid;box-shadow:0 5px 12px #2563eb3d}.side-label{color:#8a97aa;letter-spacing:.1em;text-transform:uppercase;margin:0;padding:12px 10px 7px;font-size:10px;font-weight:800}.side-link{color:#58677e;border:1px solid #0000;border-radius:8px;align-items:center;min-height:39px;margin:2px 0;padding:0 11px;font-size:13px;font-weight:650;transition:background .18s,color .18s,border-color .18s;display:flex}.side-link:hover{background:var(--surface-blue);color:var(--accent-strong)}.side-link.active{background:var(--accent-soft);color:var(--accent-strong);border-color:#cfe0fb;font-weight:800}.app-main{min-width:0}.topbar{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f6f8fccc;border-bottom:1px solid #dce4f2e6;justify-content:flex-end;align-items:center;min-height:68px;padding:0 34px;display:flex;position:sticky;top:0}.avatar{background:var(--surface-blue);width:32px;height:32px;color:var(--accent-strong);border:1px solid #bdd2f6;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.content{width:min(1320px,100% - 64px);margin:0 auto;padding:38px 0 68px}.page-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.page-head h1{color:var(--navy);letter-spacing:-.05em;margin:0;font-size:clamp(25px,2.2vw,32px);font-weight:780;line-height:1.1}.page-head p{max-width:700px;color:var(--muted);margin:7px 0 0;font-size:13px}.card{border:1px solid var(--border);background:var(--surface);border-radius:13px;padding:20px;box-shadow:0 9px 24px #152a4f0b}.card h1,.card h2,.card h3{color:var(--navy);letter-spacing:-.03em;margin:0;line-height:1.2}.card h2{font-size:18px}.card h3{font-size:13px}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.metric{color:var(--navy);letter-spacing:-.06em;margin:18px 0 3px;font-size:31px;font-weight:790;line-height:1}.metric .small{letter-spacing:0;font-size:12px;font-weight:650}.split{grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:14px;display:grid}.status{background:var(--success-soft);width:fit-content;min-height:25px;color:var(--success);white-space:nowrap;border:1px solid #bae4ca;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:780;display:inline-flex}.status.warning{background:var(--warning-soft);color:var(--warning);border-color:#f2d6a1}.status.muted{border-color:var(--border);background:var(--surface-muted);color:var(--muted)}.list-row{border-bottom:1px solid #edf1f7;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.list-row:last-child{border-bottom:0}.list-row strong{font-size:13px}.list-row span{color:var(--muted);text-align:right;font-size:12px}.tema-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.tema{border:1px solid var(--border);background:var(--surface);border-radius:11px;min-height:115px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;box-shadow:0 6px 16px #152a4f09}.tema:not(.locked):hover{border-color:#aac6f2;transform:translateY(-2px);box-shadow:0 12px 22px #214d911a}.tema b{color:var(--navy);letter-spacing:-.02em;font-size:14px;display:block}.tema small{color:var(--muted);margin-top:8px;font-size:12px;display:block}.tema.locked{opacity:.62;background:#fafbfc}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{color:#8a97aa;letter-spacing:.07em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:0 10px 11px;font-size:10px;font-weight:800}.table td{vertical-align:middle;border-top:1px solid #edf1f7;padding:13px 10px}.table tbody tr:hover{background:#fbfcff}.focus{width:min(840px,100%);margin:0 auto}.prompt{color:var(--navy);background:linear-gradient(135deg,#fff,#f3f7ff);border:1px solid #cdddf6;border-radius:14px;margin:18px 0;padding:25px;font-size:18px;font-weight:550;line-height:1.55;box-shadow:0 10px 24px #1d4ed80f}.ratings{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rating{border:1px solid var(--border);color:#53647d;cursor:pointer;background:#fff;border-radius:9px;min-height:43px;padding:8px;font-size:12px;font-weight:700}.rating:hover,.rating.selected{background:var(--surface-blue);color:var(--accent-strong);border-color:#91b5ed;box-shadow:0 0 0 3px #2563eb14}.progress-track{background:#e7edf7;border-radius:99px;height:7px;overflow:hidden}.progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#60a5fa,var(--accent));height:100%;display:block}.notice{background:var(--surface-blue);color:#365172;border:1px solid #c9dafa;border-radius:10px;margin:0;padding:12px 14px;font-size:13px;line-height:1.45}.notice.error{background:var(--danger-soft);color:var(--danger);border-color:#fac8d1}input,textarea,select{border:1px solid var(--border-strong);width:100%;color:var(--foreground);background:#fff;border-radius:9px;outline:0;padding:10px 11px;transition:border-color .18s,box-shadow .18s}textarea{resize:vertical}input:hover,textarea:hover,select:hover{border-color:#a9c3e9}input:focus,textarea:focus,select:focus{border-color:#75a3e8;box-shadow:0 0 0 3px #2563eb1f}fieldset{border:0;margin:0;padding:0}legend{color:var(--navy);margin-bottom:10px;font-size:13px;font-weight:780}.auth-center{background:radial-gradient(circle at 15% 10%,#dbeafe 0,transparent 30%),radial-gradient(circle at 88% 86%,#e0edff 0,transparent 25%),var(--background);place-items:center;min-height:100vh;padding:32px;display:grid;position:relative}.auth-card{width:min(430px,100%)}.auth-center .card{width:min(430px,100%);padding:28px;box-shadow:0 22px 60px #1c3f7824}.auth-center .brand{margin-bottom:8px}.auth-login-page{isolation:isolate;background:radial-gradient(circle at 13% 10%,#bfdbfeb8 0,#0000 27%),radial-gradient(circle at 88% 84%,#dbeafecc 0,#0000 23%),#f7f8fc;padding:32px 24px;overflow:hidden}.auth-login-page:before{z-index:-1;content:"";border:1px solid #bfdbfe8c;border-radius:50%;width:min(780px,85vw);height:min(780px,85vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 64px #eff6ff6b,0 0 0 128px #f7faff80}.auth-login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #dbe5f4;border-radius:20px;gap:20px;width:min(454px,100%);padding:34px;display:grid;box-shadow:0 24px 64px #1e40af21,0 2px 6px #0f172a08}.auth-login-brand{color:#0f172a;letter-spacing:-.025em;align-items:center;gap:10px;font-family:Outfit,sans-serif;font-size:15px;font-weight:750;display:flex}.auth-login-brand .brand-mark{background:linear-gradient(145deg,#2563eb,#1d4ed8);border-radius:9px;width:30px;height:30px;box-shadow:0 5px 12px #2563eb3d}.auth-login-heading{padding:3px 0 4px}.auth-login-heading p{color:#1a56db;letter-spacing:.1em;text-transform:uppercase;margin:0 0 7px;font-family:Outfit,sans-serif;font-size:10px;font-weight:750}.auth-login-heading h1{color:#0f172a;letter-spacing:-.045em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(2rem,5vw,2.35rem);font-weight:800;line-height:1.08}.auth-login-heading span{color:#64748b;margin-top:9px;font-size:13px;line-height:1.55;display:block}.auth-login-field{color:#0f172a;gap:8px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;display:grid}.auth-login-field input{background:#fbfdff;border-color:#d8e2f0;border-radius:11px;min-height:46px;padding:11px 13px}.auth-login-field input:hover{border-color:#abc9f4}.auth-login-field input:focus{border-color:#5d92e6;box-shadow:0 0 0 4px #2563eb1c}.auth-login-submit{border-radius:11px;width:100%;min-height:46px;font-family:Outfit,sans-serif;font-size:14px;font-weight:750}.auth-login-recovery{color:#64748b;width:fit-content;margin:0 auto;font-family:Outfit,sans-serif;font-size:12px;font-weight:650;transition:color .15s}.auth-login-recovery:hover{color:#1a56db}.auth-login-card .notice{margin:0}.qr{width:min(240px,100%);height:auto;margin:auto}.consent{z-index:50;border:1px solid var(--border);background:#fff;border-radius:13px;width:min(460px,100% - 40px);padding:20px;position:fixed;bottom:20px;right:20px;box-shadow:0 18px 45px #152a4f2b}.consent p{font-size:13px;line-height:1.5}.mobile-nav{display:none}.mobile-nav summary{cursor:pointer;color:var(--navy);font-size:13px;font-weight:780}.mobile-nav nav{z-index:20;border:1px solid var(--border);background:#fff;border-radius:10px;min-width:215px;padding:8px;display:grid;position:absolute;top:35px;left:0;box-shadow:0 18px 35px #152a4f24}.mobile-nav a{color:#52627b;padding:10px;font-size:13px}.mobile-nav a:hover{background:var(--surface-blue);color:var(--accent-strong)}.button:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}a:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}input:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}textarea:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}select:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}summary:focus-visible{outline-offset:2px;outline:3px solid #2563eb6b}@media (max-width:900px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-inline:10px}.content{width:min(100% - 42px,1320px)}.tema-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.app-shell{display:block}.sidebar{display:none}.topbar{background:#ffffffe6;justify-content:space-between;min-height:59px;padding:0 18px;position:relative}.mobile-nav{display:block;position:relative}.content{width:min(100% - 32px,1320px);padding:27px 0 48px}.page-head{margin-bottom:21px;display:block}.page-head .button{margin-top:15px}.cards-3,.cards-2,.split,.tema-list{grid-template-columns:1fr}.table th,.table td{padding-inline:8px}.ratings{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt{padding:19px;font-size:16px}.correction-layout{flex-direction:column;display:flex}.list-row{flex-direction:column;align-items:flex-start;gap:4px}.list-row span{text-align:left}.consent{width:calc(100% - 24px);bottom:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@font-face{font-family:Outfit;src:url(/_next/static/media/outfit-latin.Bc-8i84L.woff2)format("woff2");font-style:normal;font-weight:300 800;font-display:swap}@font-face{font-family:Inter;src:url(/_next/static/media/inter-latin.Dx4kXJAl.woff2)format("woff2");font-style:normal;font-weight:400 600;font-display:swap}.alumno-dashboard-shell{--alumno-brand:#1a56db;--alumno-amber:#d97706;--alumno-surface:#f5f7fb;--alumno-card:#fff;--alumno-line:#e5e9f2;--alumno-ink:#0f172a;--alumno-slate:#64748b;--alumno-muted:#94a3b8;height:100vh;height:100dvh;color:var(--alumno-ink);background:#f7f8fc;flex-direction:column;font-family:Inter,sans-serif;font-size:16px;line-height:24px;display:flex;overflow:hidden}.alumno-dashboard-shell *{box-sizing:border-box}.alumno-dashboard-shell button{cursor:pointer}.alumno-dashboard-shell button[aria-disabled=true]{cursor:default}.alumno-dashboard-shell-scroll{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.alumno-dashboard-header{background:#fff;flex:0 0 50px;justify-content:space-between;align-items:center;height:50px;padding:0 24px;display:flex}.alumno-dashboard-brand{color:var(--alumno-ink);align-items:center;gap:9px;font-family:Outfit,sans-serif;font-size:12px;font-weight:600;line-height:1.25;display:flex}.alumno-dashboard-mark{background:linear-gradient(145deg,#2563eb,#1d4ed8);border-radius:8px;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;display:flex;box-shadow:0 3px 7px #2563eb38}.alumno-dashboard-account{width:34px;height:34px;color:var(--alumno-slate);border-radius:8px;justify-content:center;align-items:center;transition:background-color .15s;display:flex;position:relative}.alumno-dashboard-account:hover{background:#f3f4f6}.alumno-dashboard-account i{background:#22c55e;border:2px solid #fff;border-radius:50%;width:7px;height:7px;display:none;position:absolute;top:2px;right:3px}.alumno-dashboard-main{flex:1;min-height:0;padding:20px 34px 24px}.alumno-dashboard-grid{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;height:100%;display:grid}.alumno-dashboard-column{flex-direction:column;gap:18px;min-height:0;display:flex}.alumno-dashboard-state{color:var(--alumno-slate);place-items:center;font-family:Outfit,sans-serif;font-size:13px;display:grid}.alumno-loading-screen{min-height:100vh;background:#f7f8fc;place-items:center;min-height:100dvh;display:grid}.alumno-loading-card{border:1px solid var(--alumno-line);background:var(--alumno-card);text-align:center;border-radius:18px;flex-direction:column;align-items:center;min-width:240px;padding:28px 34px;display:flex;box-shadow:0 16px 40px #1a56db14}.alumno-loading-mark{background:linear-gradient(145deg,#2563eb,#1d4ed8);border-radius:10px;width:32px;height:32px;margin-bottom:14px;display:block;box-shadow:0 5px 12px #2563eb3d}.alumno-loading-card p{color:var(--alumno-slate);letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.alumno-loading-card strong{color:var(--alumno-ink);letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:18px;font-weight:750}.alumno-loading-card i{gap:5px;margin-top:16px;display:flex}.alumno-loading-card i b{background:var(--alumno-brand);border-radius:50%;width:6px;height:6px;animation:.9s ease-in-out infinite alternate alumno-loading-dot}.alumno-loading-card i b:nth-child(2){animation-delay:.15s}.alumno-loading-card i b:nth-child(3){animation-delay:.3s}@keyframes alumno-loading-dot{to{opacity:.28;transform:translateY(-3px)}}.alumno-greeting{flex:none;justify-content:space-between;align-items:flex-end;min-height:62px;display:flex}.alumno-greeting p{color:var(--alumno-slate);margin:0 0 2px;font-family:Outfit,sans-serif;font-size:14px;font-weight:500;line-height:1.5}.alumno-greeting h1{color:var(--alumno-ink);letter-spacing:-.03em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.8rem,2.6vw,2.5rem);font-weight:800;line-height:1.1}.alumno-greeting time{color:var(--alumno-muted);font-family:Outfit,sans-serif;font-size:11.5px;line-height:1.5}.alumno-topics{text-align:left;background:linear-gradient(150deg,#2563eb 0%,#1e40af 60%,#1e3a8a 100%);border-radius:16px;flex:1.18 1 0;justify-content:space-between;align-items:center;min-height:200px;padding:26px 28px;transition:transform .15s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}:is(.alumno-topics:hover,.alumno-topics:focus-visible){transform:scale(1.005)}.alumno-topics:active{transform:scale(.998)}.alumno-topics-orbit{pointer-events:none;border:32px solid #ffffff0d;border-radius:50%;width:160px;height:160px;position:absolute;top:-35px;right:-35px}.alumno-topics-copy,.alumno-topics-progress{z-index:1;position:relative}.alumno-topics-copy{align-items:center;gap:16px;display:flex}.alumno-topics-icon{background:#ffffff1f;border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.alumno-topics-copy strong{color:#fff;letter-spacing:-.04em;font-family:Outfit,sans-serif;font-size:clamp(1.8rem,2.8vw,2.6rem);font-weight:800;line-height:1;display:block}.alumno-topics-copy small{color:#ffffff73;margin-top:4px;font-family:Outfit,sans-serif;font-size:11px;display:block}.alumno-topics-progress{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:8px;display:flex}.alumno-topics-progress small{color:#ffffff80;letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-family:Outfit,sans-serif;font-size:11px;font-weight:600;line-height:1.5;display:block}.alumno-topics-progress strong{color:#fff;letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:20px;font-weight:800;line-height:1;display:block}.alumno-topics-progress strong i{color:#ffffff73;font-size:13px;font-style:normal;font-weight:500}.alumno-progress-track{background:#ffffff26;border-radius:2px;width:88px;height:4px;display:block;overflow:hidden}.alumno-progress-track i{background:#ffffffa6;border-radius:2px;height:100%;display:block}.alumno-topics-arrow{color:#fff;background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .15s;display:flex}:is(.alumno-topics:hover .alumno-topics-arrow,.alumno-topics:focus-visible .alumno-topics-arrow){transform:translate(4px)}.alumno-dashboard-bottom{flex-direction:column;flex:.82 1 0;min-height:0;display:flex}.alumno-action-panel{border:1px solid var(--alumno-line);background:var(--alumno-card);border-radius:16px;flex:none;padding:16px}.alumno-dashboard-main .alumno-action-panel,.alumno-dashboard-main .alumno-calendar,.alumno-dashboard-main .alumno-teacher{border-color:#dfe5ef;box-shadow:0 8px 22px #0f172a0f,0 1px 2px #0f172a06}.alumno-dashboard-bottom .alumno-action-panel{flex-direction:column;flex:0 0 calc(100% - 32px);min-height:0;padding:20px;display:flex}.alumno-action-panel h2{color:var(--alumno-slate);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-family:Outfit,sans-serif;font-size:12px;font-weight:600;line-height:16px}.alumno-action-row{gap:8px;display:flex}.alumno-dashboard-bottom .alumno-action-row{flex:1;min-height:0}.alumno-action{border:1px solid var(--alumno-line);background:var(--alumno-surface);min-width:0;min-height:102.8px;color:var(--alumno-ink);text-align:center;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 8px;transition:transform .15s cubic-bezier(.4,0,.2,1);display:flex}.alumno-dashboard-bottom .alumno-action{min-height:0}:is(.alumno-action:hover,.alumno-action:focus-visible){transform:scale(1.02)}.alumno-action:active{transform:scale(.98)}.alumno-action-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.alumno-action-icon svg{width:24px;height:24px}.alumno-action-blue .alumno-action-icon{color:var(--alumno-brand)}.alumno-action-amber .alumno-action-icon{color:var(--alumno-amber)}.alumno-action-label{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:13px;font-weight:600;line-height:1.25}.alumno-action-arrow{opacity:0;height:14px;transition:opacity .15s}.alumno-action-blue .alumno-action-arrow{color:var(--alumno-brand)}.alumno-action-amber .alumno-action-arrow{color:var(--alumno-amber)}:is(.alumno-action:hover .alumno-action-arrow,.alumno-action:focus-visible .alumno-action-arrow){opacity:1}.alumno-calendar{border:1px solid var(--alumno-line);background:var(--alumno-card);border-radius:16px;flex-direction:column;flex:1;min-height:0;padding:14px 16px;display:flex}.alumno-dashboard-right .alumno-calendar{flex:0 0 392px;min-height:392px}.alumno-dashboard-right{justify-content:flex-end;padding-bottom:32px}.alumno-calendar-top-row{flex:none;align-items:center;gap:12px;min-height:26px;display:flex}.alumno-calendar-top-row h2{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;flex:none;margin:0;font-family:Outfit,sans-serif;font-size:11px;font-weight:600;line-height:1.5}.alumno-calendar-dashboard-controls{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.alumno-calendar-dashboard-controls .alumno-calendar-switch{margin-left:auto}.alumno-calendar-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.alumno-calendar .alumno-calendar-content:has(>.alumno-month-view){overflow:visible}.alumno-calendar-dashboard-spacer{flex:0 0 32px}.alumno-calendar-toolbar{flex:none;justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.alumno-calendar-period{align-items:center;gap:4px;display:flex}.alumno-calendar-period button{width:20px;height:20px;color:var(--alumno-slate);background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background-color .15s;display:flex}.alumno-calendar-period button:hover{background:#f3f4f6}.alumno-calendar-period strong{min-width:96px;color:var(--alumno-ink);text-align:center;font-family:Outfit,sans-serif;font-size:11px;font-weight:600;line-height:1.5}.alumno-calendar-switch{border:1px solid var(--alumno-line);background:var(--alumno-surface);border-radius:8px;align-items:center;padding:2px;display:flex}.alumno-calendar-switch button{color:var(--alumno-slate);background:0 0;border:0;border-radius:6px;padding:3px 10px;font-family:Outfit,sans-serif;font-size:10.5px;font-weight:600;line-height:1.5;transition:color .15s,background-color .15s,box-shadow .15s}.alumno-calendar-switch button.active{color:var(--alumno-brand);background:#fff;box-shadow:0 1px 3px #00000014}.alumno-month-view{flex-direction:column;min-height:0;display:flex}.alumno-calendar .alumno-month-view>.alumno-weekdays,.alumno-calendar .alumno-month-view>.alumno-month-grid{margin-left:6%;margin-right:6%}.alumno-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:4px;display:grid}.alumno-calendar .alumno-weekdays{position:relative}.alumno-calendar .alumno-weekdays:after{content:"";background:#94a3b838;height:1px;position:absolute;bottom:-1px;left:3%;right:3%}.alumno-weekdays span{color:var(--alumno-slate);letter-spacing:.04em;text-align:center;font-family:Outfit,sans-serif;font-size:10px;font-weight:600;line-height:1.5}.alumno-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px 0;display:grid}.alumno-calendar-cell{justify-content:center;align-items:center;height:26px;display:flex}.alumno-calendar-day{width:24px;height:24px;color:var(--alumno-ink);border-radius:50%;justify-content:center;align-items:center;font-family:Outfit,sans-serif;font-size:11px;font-weight:500;line-height:1;transition:background-color .15s;display:flex;position:relative}.alumno-calendar-day:hover{background:#eff6ff}.alumno-calendar-day.past{color:var(--alumno-slate);opacity:.45;font-weight:400}.alumno-calendar-day.today{background:var(--alumno-brand);color:#fff;opacity:1;font-weight:700}.alumno-calendar-dots{gap:1px;display:flex;position:absolute;bottom:1px;left:50%;transform:translate(-50%)}.alumno-calendar-dots i{border-radius:50%;width:4px;height:4px;display:block}.alumno-calendar-dots .green,.alumno-calendar-event>.green{background:#16a34a}.alumno-calendar-dots .red,.alumno-calendar-event>.red{background:#dc2626}.alumno-calendar-events{border-top:1px solid var(--alumno-line);flex-direction:column;gap:6px;margin-top:11px;padding-top:13px;display:flex}.alumno-calendar .alumno-calendar-events{border-top:0;flex:none;margin-top:16px;padding-left:3%}.alumno-month-view.dense .alumno-calendar-cell{height:21px}.alumno-month-view.dense .alumno-calendar-events{gap:3px}.alumno-month-view.dense .alumno-calendar-event{gap:6px}.alumno-month-view.dense .alumno-calendar-event>i{height:11px}.alumno-month-view.dense .alumno-calendar-event span{font-size:11px;line-height:1.15}.alumno-calendar-event{align-items:center;gap:8px;display:flex}.alumno-calendar-event>i{border-radius:2px;flex:0 0 3px;width:3px;height:13px;display:block}.alumno-calendar-event span{color:var(--alumno-slate);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.3;overflow:hidden}.alumno-calendar-event strong{color:var(--alumno-ink);font-weight:600}.alumno-calendar-expand{flex:none;justify-content:flex-end;margin-top:8px;padding-top:8px;display:flex}.alumno-calendar-expand button{border:1px solid var(--alumno-line);width:auto;color:var(--alumno-brand);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-family:Outfit,sans-serif;font-size:11px;font-weight:600;line-height:1.5;transition:background-color .15s;display:flex}.alumno-calendar-expand button:hover{background:#eff6ff}.alumno-calendar-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a57;place-items:center;padding:32px;display:grid;position:fixed;inset:0}.alumno-calendar-modal{background:#fff;border:1px solid #d6e2f5;border-radius:20px;flex-direction:column;width:min(1080px,100%);height:min(760px,100dvh - 64px);padding:24px;display:flex;box-shadow:0 28px 80px #0f172a38}.alumno-calendar-modal>header{flex:none;justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.alumno-calendar-modal>header h2{color:var(--alumno-ink);letter-spacing:-.025em;margin:0;font-family:Outfit,sans-serif;font-size:20px;font-weight:750}.alumno-calendar-modal>header button{border:1px solid var(--alumno-line);background:var(--alumno-surface);width:34px;height:34px;color:var(--alumno-slate);border-radius:10px;place-items:center;transition:background-color .15s,color .15s;display:grid}.alumno-calendar-modal>header button:hover{color:var(--alumno-brand);background:#eff6ff}.alumno-calendar-modal .alumno-calendar-content{overflow:auto}.alumno-calendar-modal .alumno-calendar-toolbar{justify-content:center;min-height:36px;margin-bottom:16px;position:relative}.alumno-calendar-modal .alumno-calendar-switch{position:absolute;right:0}.alumno-calendar-modal .alumno-calendar-period{gap:8px}.alumno-calendar-modal .alumno-calendar-period button{width:30px;height:30px}.alumno-calendar-modal .alumno-calendar-period strong{min-width:160px;font-size:16px}.alumno-calendar-modal .alumno-calendar-switch button{padding:6px 16px;font-size:13px}.alumno-calendar-modal .alumno-weekdays{margin-bottom:8px}.alumno-calendar-modal .alumno-weekdays span{font-size:12px}.alumno-calendar-modal .alumno-month-grid{gap:6px 0}.alumno-calendar-modal .alumno-calendar-cell{height:54px}.alumno-calendar-modal .alumno-calendar-day{width:42px;height:42px;font-size:15px}.alumno-calendar-modal .alumno-calendar-dots{gap:2px;bottom:3px}.alumno-calendar-modal .alumno-calendar-dots i{width:5px;height:5px}.alumno-calendar-modal .alumno-calendar-events{gap:9px;margin-top:16px;padding-top:14px}.alumno-calendar-modal .alumno-calendar-event>i{flex-basis:4px;width:4px;height:17px}.alumno-calendar-modal .alumno-calendar-event span{font-size:13px}.alumno-calendar-modal .alumno-week-view{gap:12px}.alumno-calendar-modal .alumno-week-day{border-radius:14px;gap:10px;padding:16px 8px}.alumno-calendar-modal .alumno-week-day>span{font-size:12px}.alumno-calendar-modal .alumno-week-day>strong{font-size:20px}.alumno-calendar-modal .alumno-week-day small{padding:6px;font-size:10px}.alumno-week-view{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-height:0;display:grid}.alumno-week-day{border:1px solid var(--alumno-line);background:var(--alumno-surface);min-width:0;color:var(--alumno-ink);border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;font-family:Outfit,sans-serif;display:flex}.alumno-week-day>span{color:var(--alumno-slate);font-size:10px;font-weight:600}.alumno-week-day>strong{font-size:14px}.alumno-week-day.today{border-color:var(--alumno-brand);color:#fff;background:#2563eb}.alumno-week-day.today>span{color:#ffffffb3}.alumno-week-day.unlock:not(.today){background:#f0f9f3;border-color:#cce9d5}.alumno-week-day.simulation:not(.today):not(.unlock){background:#fdf3f3;border-color:#f2cdcd}.alumno-week-day small{text-align:center;text-overflow:ellipsis;border-radius:4px;width:100%;padding:4px;font-size:8px;font-weight:600;line-height:1.2;overflow:hidden}.alumno-week-day small.green{color:#15803d;background:#dcfce7}.alumno-week-day small.red{color:#b91c1c;background:#fee2e2}.alumno-teacher{border:1px solid var(--alumno-line);background:var(--alumno-card);text-align:left;border-radius:16px;flex:none;align-items:center;gap:16px;min-height:70px;padding:13px 16px;transition:transform .15s cubic-bezier(.4,0,.2,1);display:flex}:is(.alumno-teacher:hover,.alumno-teacher:focus-visible){transform:scale(1.005)}.alumno-teacher:active{transform:scale(.998)}.alumno-teacher-avatar{color:#fff;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border-radius:50%;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;display:flex;position:relative}.alumno-teacher-avatar i{background:#22c55e;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;bottom:1px;right:1px}.alumno-teacher-copy{flex:1;min-width:0}.alumno-teacher-copy strong,.alumno-teacher-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.alumno-teacher-copy strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px;font-weight:600;line-height:1.5}.alumno-teacher-copy small{color:var(--alumno-slate);font-size:12px;line-height:1.5}.alumno-teacher-arrow{background:var(--alumno-surface);width:30px;height:30px;color:var(--alumno-brand);border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;transition:transform .15s;display:flex}:is(.alumno-teacher:hover .alumno-teacher-arrow,.alumno-teacher:focus-visible .alumno-teacher-arrow){transform:translate(2px)}:is(.alumno-dashboard-shell a:focus-visible,.alumno-dashboard-shell button:focus-visible){outline-offset:2px;outline:3px solid #2563eb6b}.profesor-dashboard,.profesor-page{width:min(980px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px}.profesor-welcome p,.profesor-page-head p,.profesor-pending>div>p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800}.profesor-welcome h1,.profesor-page-head h1{color:var(--alumno-ink);letter-spacing:-.04em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.8rem,3.2vw,2.45rem);font-weight:800}.profesor-welcome>span{color:var(--alumno-slate);margin-top:7px;font-size:14px;display:block}.profesor-main-actions{gap:12px;margin-top:44px;display:grid}.profesor-main-actions>a,.profesor-main-actions>button{border:1px solid var(--alumno-line);background:var(--alumno-card);min-height:100px;color:inherit;font:inherit;text-align:left;border-radius:16px;align-items:center;gap:17px;padding:20px;transition:transform .15s,border-color .15s,background-color .15s;display:flex;box-shadow:0 4px 14px #152a4f06}.profesor-main-actions>a:hover,.profesor-main-actions>button:hover{border-color:#b9d2f6;transform:translateY(-2px)}.profesor-main-actions>button{cursor:pointer}.profesor-main-actions>a>span:nth-child(2),.profesor-main-actions>button>span:nth-child(2){flex:1}.profesor-main-actions strong,.profesor-main-actions small{display:block}.profesor-main-actions strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:17px}.profesor-main-actions small{color:var(--alumno-slate);margin-top:4px;font-size:12px}.profesor-main-actions>a>svg,.profesor-main-actions>button>svg{color:var(--alumno-brand)}.profesor-main-actions.admin-actions{gap:12px}.profesor-main-actions .profesor-main-action-admin{background:linear-gradient(135deg,#fff,#fbf9ff);border-color:#d8d0f2;margin-top:10px}.profesor-main-actions .profesor-main-action-admin:hover{background:#faf8ff;border-color:#b8a9df}.profesor-action-icon{border-radius:12px;place-items:center;width:42px;height:42px;font-family:Outfit,sans-serif;font-size:11px;font-weight:800;display:grid}.profesor-action-icon.blue{color:#2563eb;background:#dbeafe}.profesor-action-icon.amber{color:#a16207;background:#fef0c7}.profesor-action-icon.green{color:#15803d;background:#dcfce7}.profesor-action-icon.violet{color:#7c3aed;background:#ede9fe}.profesor-page-head{align-items:center;gap:15px;margin-bottom:26px;display:flex}.profesor-invite{background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:15px 17px;display:flex}.profesor-invite strong,.profesor-invite small{display:block}.profesor-invite strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.profesor-invite small{color:var(--alumno-slate);margin-top:3px;font-size:11px}.profesor-invite>div:last-child{gap:7px;display:flex}.profesor-invite input{border:1px solid var(--alumno-line);width:205px;font:inherit;border-radius:9px;outline:none;padding:9px 11px;font-size:12px}.profesor-invite input:focus{border-color:#93baf0}.profesor-invite button,.profesor-save{color:#fff;background:#2563eb;border:0;border-radius:9px;padding:9px 14px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700}.profesor-student-list{gap:8px;display:grid}.profesor-student-row{border:1px solid var(--alumno-line);background:var(--alumno-card);width:100%;color:inherit;text-align:left;border-radius:13px;align-items:center;gap:12px;padding:13px 15px;transition:border-color .15s,background .15s;display:flex}.profesor-student-row:hover{background:#f9fbff;border-color:#b9d2f6}.profesor-student-row>span:nth-child(2){flex:1}.profesor-student-row strong,.profesor-student-row small{display:block}.profesor-student-row strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.profesor-student-row small{color:var(--alumno-slate);margin-top:2px;font-size:11px}.profesor-avatar{color:#2563eb;background:linear-gradient(135deg,#e0edff,#dbeafe);border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800;display:grid}.profesor-notification{color:#fff;background:#2563eb;border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 6px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800;display:grid}.profesor-student-row>svg{color:#2563eb}.profesor-notification{box-sizing:border-box;justify-content:center;align-items:center;padding:1px 6px 0;line-height:1;display:flex}.profesor-modal-backdrop{z-index:30;background:#0f172a61;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.profesor-student-modal{background:#fff;border:1px solid #d9e5f5;border-radius:20px;width:min(900px,100%);max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 24px 70px #0f172a38}.profesor-student-modal>header{border-bottom:1px solid var(--alumno-line);justify-content:space-between;align-items:center;padding:21px 24px;display:flex}.profesor-student-modal header p{color:var(--alumno-slate);letter-spacing:.09em;text-transform:uppercase;margin:0 0 3px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800}.profesor-student-modal h2{color:var(--alumno-ink);margin:0;font-family:Outfit,sans-serif;font-size:22px}.profesor-student-modal header button{border:1px solid var(--alumno-line);width:32px;height:32px;color:var(--alumno-slate);background:#fff;border-radius:9px;place-items:center;font-size:22px;line-height:1;display:grid}.profesor-student-details{border-bottom:1px solid var(--alumno-line);color:var(--alumno-ink);align-items:center;gap:38px;padding:14px 24px;font-size:13px;display:flex}.profesor-student-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.profesor-student-details small{color:var(--alumno-slate);text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.profesor-calendar-wrap{padding:14px 24px 0}.profesor-calendar-wrap .alumno-calendar{min-height:365px}.profesor-access{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;grid-template-columns:1fr auto auto;align-items:end;gap:14px;margin:14px 24px 18px;padding:14px 16px;display:grid}.profesor-access>div:first-child strong,.profesor-access>div:first-child small{display:block}.profesor-access strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.profesor-access small{color:var(--alumno-slate);margin-top:3px;font-size:10.5px}.profesor-access label{color:var(--alumno-slate);grid-template-columns:auto auto;gap:5px;font-size:10px;font-weight:700;display:grid}.profesor-access label span{grid-column:1/-1}.profesor-access input{width:54px;color:var(--alumno-ink);font:inherit;background:#fff;border:1px solid #cfe0fb;border-radius:8px;padding:7px;font-size:12px}.profesor-access i{align-self:center;font-size:11px;font-style:normal}.profesor-access>div:last-child{grid-column:2/-1;justify-content:flex-end;align-items:center;gap:9px;display:flex}.profesor-saved{color:#15803d!important}.profesor-history{color:#2563eb;font:inherit;background:#fff;border:1px solid #cfe0fb;border-radius:8px;padding:7px 10px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s}.profesor-history:hover{background:#eff6ff;border-color:#93baf0}.profesor-contact{align-items:center;gap:6px;display:inline-flex}.profesor-contact span{color:#fff;background:#2563eb;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-family:Outfit,sans-serif;font-size:10px;line-height:1;display:grid}.profesor-next-exam{background:linear-gradient(135deg,#fffdf8,#fff7e7);border:1px solid #f3dfbd;border-radius:17px;padding:26px}.profesor-next-exam>span{color:#a16207;text-transform:uppercase;background:#fef0c7;border-radius:999px;padding:5px 8px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800;display:inline-block}.profesor-next-exam h2,.profesor-pending h2{color:var(--alumno-ink);letter-spacing:-.03em;margin:13px 0 5px;font-family:Outfit,sans-serif;font-size:22px}.profesor-next-exam p{color:var(--alumno-slate);margin:0;font-size:13px}.profesor-next-exam-actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.profesor-next-exam-actions button,.profesor-edit-list button{color:#a16207;font:inherit;background:#fff;border:1px solid #ecd39f;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700}.profesor-pending{margin-top:32px}.profesor-pending h2{margin-top:0}.profesor-pending-card{border:1px solid var(--alumno-line);width:100%;color:inherit;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:12px;margin-top:8px;padding:13px 15px;transition:transform .15s,border-color .15s,background .15s;display:flex}.profesor-pending-card:hover{background:#f9fbff;border-color:#b9d2f6;transform:translateY(-1px)}.profesor-pending-card>span:nth-child(2){flex:1}.profesor-pending-card>svg{color:#2563eb}.profesor-pending strong,.profesor-pending small{display:block}.profesor-pending strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:13px}.profesor-pending small,.profesor-pending time{color:var(--alumno-slate);margin-top:3px;font-size:11px}.profesor-permission{color:#2563eb;background:#eff6ff;border-radius:9px;margin:0 0 18px;padding:8px 11px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;display:inline-block}.profesor-edit-list{gap:8px;display:grid}.profesor-edit-list article{border:1px solid var(--alumno-line);background:#fff;border-radius:12px;align-items:center;gap:13px;padding:12px 14px;display:flex}.profesor-edit-list article>span{color:#2563eb;background:#dbeafe;border-radius:8px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800;display:grid}.profesor-edit-list strong{color:var(--alumno-ink);flex:1;font-family:Outfit,sans-serif;font-size:13px}.profesor-edit-list strong small{color:var(--alumno-slate);margin-top:2px;font-family:Inter,sans-serif;font-size:10px;font-weight:400;display:block}.profesor-edit-list div{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.profesor-edit-list button{color:#2563eb;border-color:#cfe0fb}.alumno-topic-catalog{width:min(1240px,100%);margin:0 auto;padding:34px}.alumno-topic-catalog-head{align-items:center;gap:15px;margin-bottom:24px;display:flex}.alumno-topic-back{border:1px solid var(--alumno-line);background:var(--alumno-card);width:38px;height:38px;color:var(--alumno-brand);border-radius:11px;flex:0 0 38px;justify-content:center;align-items:center;transition:background-color .15s,transform .15s;display:flex}.alumno-topic-back:hover{background:#eff6ff;transform:translate(-2px)}.alumno-topic-catalog-head p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 2px;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.alumno-topic-catalog-head h1{color:var(--alumno-ink);letter-spacing:-.035em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:800;line-height:1.1}.alumno-topic-catalog-head span{color:var(--alumno-slate);margin-top:5px;font-size:13px;display:block}.alumno-topic-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.alumno-topic-row{border:1px solid var(--alumno-line);background:var(--alumno-card);min-width:0;min-height:76px;color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:13px;align-items:center;gap:12px;padding:12px 13px;transition:transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s;display:flex;box-shadow:0 4px 14px #152a4f06}:is(.alumno-topic-row:hover,.alumno-topic-row:focus-visible){transform:translateY(-1px);box-shadow:0 6px 18px #152a4f12}.alumno-topic-row:active{transform:translateY(0)}.alumno-topic-row.unlocked{background:linear-gradient(135deg,#fff,#f5f9ff);border-color:#cfe0fb}.alumno-topic-row.locked{background:#fafbfc}.alumno-topic-number{background:var(--alumno-surface);width:30px;height:30px;color:var(--alumno-slate);border-radius:9px;flex:0 0 30px;place-items:center;font-family:Outfit,sans-serif;font-size:11px;font-weight:700;display:grid}.alumno-topic-row.unlocked .alumno-topic-number{color:var(--alumno-brand);background:#dbeafe}.alumno-topic-title{flex:1;min-width:0}.alumno-topic-title strong,.alumno-topic-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.alumno-topic-title strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:13px;font-weight:700}.alumno-topic-title small{color:var(--alumno-slate);margin-top:3px;font-size:10.5px}.alumno-topic-status{max-width:136px;color:var(--alumno-slate);text-align:right;justify-content:flex-end;align-items:center;gap:4px;font-size:10px;line-height:1.25;display:flex}.alumno-topic-status.available{color:#15803d;background:#dcfce7;border-radius:99px;padding:4px 7px;font-family:Outfit,sans-serif;font-size:10px;font-weight:700}.alumno-practice-catalog{width:min(1240px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px}.alumno-practice-list{gap:9px;display:grid}.alumno-practice-labels,.alumno-practice-row{grid-template-columns:minmax(250px,1fr) repeat(5,minmax(72px,auto));align-items:center;column-gap:18px;display:grid}.alumno-practice-labels{color:var(--alumno-slate);letter-spacing:.055em;text-transform:uppercase;padding:0 14px;font-family:Outfit,sans-serif;font-size:9.5px;font-weight:700;transform:translateY(50px)}.alumno-practice-labels>span:not(:first-child){text-align:center;justify-self:center}.alumno-practice-label-completed{line-height:1.1}.alumno-practice-row{min-height:76px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:13px;padding:12px 14px;transition:transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s;box-shadow:0 4px 14px #152a4f06}:is(.alumno-practice-row:hover,.alumno-practice-row:focus-visible){transform:translateY(-1px);box-shadow:0 6px 18px #152a4f12}.alumno-practice-row:active{transform:translateY(0)}.alumno-practice-topic{align-items:center;gap:12px;min-width:0;display:flex}.alumno-practice-topic>span{width:30px;height:30px;color:var(--alumno-brand);background:#dbeafe;border-radius:9px;flex:0 0 30px;place-items:center;font-family:Outfit,sans-serif;font-size:11px;font-weight:700;display:grid}.alumno-practice-topic div{min-width:0}.alumno-practice-topic strong,.alumno-practice-topic small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.alumno-practice-topic strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:13px;font-weight:700}.alumno-practice-topic small{color:var(--alumno-slate);margin-top:3px;font-size:10.5px}.alumno-practice-metric{text-align:center;justify-self:center;min-width:0}.alumno-practice-metric span{display:none}.alumno-practice-metric strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px;font-weight:750}.alumno-practice-metric.attempts strong{color:#64748b}.alumno-practice-metric.incorrect strong{color:#dc2626}.alumno-practice-metric.regular strong{color:#d97706}.alumno-practice-metric.good strong{color:#15803d}.alumno-practice-combine{z-index:2;pointer-events:none;justify-content:flex-start;margin:0;display:flex;position:sticky;top:12px}.alumno-practice-combine button{min-width:280px;color:var(--alumno-brand);pointer-events:auto;background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:11px;padding:12px 18px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;box-shadow:0 4px 14px #152a4f0d}.alumno-practice-combine button:hover{background:#eff6ff;border-color:#abc9f4}.alumno-cases-placeholder{flex-direction:column;display:flex}.alumno-cases-card{text-align:center;background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:18px;flex:1;place-content:center;min-height:360px;padding:34px;display:grid}.alumno-cases-card span{color:var(--alumno-brand);text-transform:uppercase;background:#dbeafe;border-radius:99px;justify-self:center;padding:5px 9px;font-family:Outfit,sans-serif;font-size:10px;font-weight:700}.alumno-cases-card h2{color:var(--alumno-ink);letter-spacing:-.03em;margin:14px 0 7px;font-family:Outfit,sans-serif;font-size:clamp(1.5rem,3vw,2rem)}.alumno-cases-card p{max-width:390px;color:var(--alumno-slate);margin:0}.alumno-simulation-info{width:min(860px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px}.alumno-simulation-card{background:linear-gradient(135deg,#fffdf8,#fff7e7);border:1px solid #f5d8a4;border-radius:18px;max-width:680px;padding:clamp(28px,5vw,48px);box-shadow:0 10px 28px #92400e12}.alumno-simulation-card h2{color:var(--alumno-ink);letter-spacing:0;margin:0 0 10px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;line-height:1.45}.alumno-simulation-card>p{max-width:550px;color:var(--alumno-slate);margin:0;font-size:14px;line-height:1.65}.alumno-simulation-topics{border-top:1px solid #f3dfbd;justify-content:space-between;align-items:center;gap:18px;margin-top:28px;padding-top:20px;display:flex}.alumno-simulation-topics span{color:var(--alumno-slate);letter-spacing:.08em;text-transform:uppercase;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.alumno-simulation-topics strong{color:#a16207;background:#fff;border-radius:9px;padding:8px 11px;font-family:Outfit,sans-serif;font-size:14px}.alumno-professor-page{flex-direction:column;width:min(1240px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px;display:flex}.alumno-professor-empty{text-align:center;flex:1;place-items:center;min-height:360px;display:grid}.alumno-professor-empty>div{background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:18px;max-width:560px;padding:clamp(28px,5vw,48px);box-shadow:0 10px 28px #152a4f0d}.alumno-professor-empty h2{color:var(--alumno-ink);letter-spacing:-.03em;margin:0 0 10px;font-family:Outfit,sans-serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;line-height:1.15}.alumno-professor-empty p{color:var(--alumno-slate);margin:0;font-size:14px;line-height:1.65}.alumno-profile-page{width:min(760px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px}.alumno-profile-head{align-items:center;gap:15px;margin-bottom:24px;display:flex}.alumno-profile-head p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 2px;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.alumno-profile-head h1{color:var(--alumno-ink);letter-spacing:-.035em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:800;line-height:1.1}.alumno-profile-card{border:1px solid var(--alumno-line);background:var(--alumno-card);border-radius:18px;padding:clamp(22px,4vw,32px);box-shadow:0 10px 28px #152a4f0b}.profesor-profile-photo{border-bottom:1px solid var(--alumno-line);justify-items:center;gap:8px;margin-bottom:4px;padding-bottom:24px;display:grid}.profesor-profile-page .alumno-profile-details{border-top:0}.profesor-profile-avatar{color:#2563eb;background:linear-gradient(145deg,#e8f1ff,#f8fbff);border:1px solid #cfe0f8;border-radius:50%;place-items:center;width:88px;height:88px;font-family:Outfit,sans-serif;font-size:28px;font-weight:750;display:grid;overflow:hidden}.profesor-profile-avatar img{object-fit:cover;width:100%;height:100%}.profesor-profile-photo-button{min-height:34px;color:var(--alumno-brand);cursor:pointer;background:#fff;border:1px solid #b8cdef;border-radius:8px;align-items:center;padding:7px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.profesor-profile-photo-button:hover{background:#eff6ff;border-color:#8fb2ea}.profesor-profile-photo-button input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.alumno-profile-intro{color:var(--alumno-slate);margin:0 0 22px;font-size:13px;line-height:1.6}.alumno-profile-details{border-top:1px solid var(--alumno-line)}.alumno-profile-page:not(.profesor-profile-page) .alumno-profile-details{border-top:0}.alumno-profile-row{border-bottom:1px solid var(--alumno-line);justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:15px 0;display:flex}.alumno-profile-row:last-child{border-bottom:0}.alumno-profile-row span{color:var(--alumno-slate);letter-spacing:.05em;text-transform:uppercase;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.alumno-profile-row strong{color:var(--alumno-ink);text-align:right;overflow-wrap:anywhere;font-family:Outfit,sans-serif;font-size:14px;font-weight:650}.alumno-profile-state{place-items:center;display:grid}.alumno-profile-logout{min-height:40px;color:var(--alumno-ink);background:#fff;border:1px solid #cbd5e1;border-radius:10px;justify-content:center;align-items:center;margin-top:24px;padding:0 16px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;transition:background-color .15s,border-color .15s,transform .15s;display:inline-flex}.alumno-profile-logout:hover{background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px)}.alumno-profile-logout:disabled{cursor:wait;opacity:.65;transform:none}@media (min-width:769px){.alumno-dashboard-grid{column-gap:22px}.alumno-topics{margin-top:10px}}@media (max-width:768px){.alumno-dashboard-shell{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.alumno-dashboard-header{padding:0 24px}.alumno-dashboard-brand{max-width:calc(100% - 46px)}.alumno-dashboard-main{flex:none;min-height:auto;padding:20px 24px 28px}.alumno-topic-catalog{padding:26px 24px 32px}.alumno-topic-list{grid-template-columns:repeat(2,minmax(0,1fr))}.alumno-practice-catalog,.alumno-simulation-info,.alumno-professor-page,.alumno-profile-page,.profesor-dashboard,.profesor-page{padding:26px 24px 32px}.profesor-invite{flex-direction:column;align-items:flex-start}.profesor-student-details{flex-wrap:wrap;gap:14px 28px}.profesor-student-actions{width:100%;margin-left:0}.profesor-access{grid-template-columns:1fr 1fr}.profesor-access>div:first-child{grid-column:1/-1}.profesor-access>div:last-child{grid-column:1/-1;justify-content:flex-start}.profesor-edit-list article{flex-wrap:wrap;align-items:flex-start}.profesor-edit-list div{justify-content:flex-start;width:100%;padding-left:43px}.profesor-pending time{text-align:right}.alumno-practice-labels{display:none}.alumno-practice-row{grid-template-columns:minmax(160px,1fr) repeat(5,minmax(50px,auto));column-gap:10px}.alumno-practice-metric span{color:var(--alumno-slate);text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:700;line-height:1.1;display:block}.alumno-dashboard-grid{grid-template-rows:auto;grid-template-columns:1fr;height:auto}.alumno-dashboard-column{gap:14px;min-height:auto}.alumno-dashboard-right{justify-content:initial;padding-bottom:0}.alumno-greeting{min-height:0}.alumno-topics{flex:none;min-height:170px;padding:22px 24px}.alumno-dashboard-bottom{flex:none;min-height:auto}.alumno-action-panel,.alumno-dashboard-bottom .alumno-action-panel{padding:16px;display:block}.alumno-action-row,.alumno-dashboard-bottom .alumno-action-row{min-height:auto;display:flex}.alumno-action,.alumno-dashboard-bottom .alumno-action{min-height:114px;padding:12px 8px}.alumno-calendar,.alumno-dashboard-right .alumno-calendar{flex:none;min-height:372px}.alumno-calendar-modal-backdrop{padding:16px}.alumno-calendar-modal{height:min(720px,100dvh - 32px);padding:18px}.alumno-calendar-modal .alumno-calendar-cell{height:44px}.alumno-week-view{min-height:260px}}@media (max-width:430px){.alumno-topic-catalog{padding-inline:18px}.alumno-topic-list{grid-template-columns:1fr}.alumno-topic-row{min-height:70px}.alumno-practice-catalog,.alumno-simulation-info,.alumno-professor-page,.alumno-profile-page{padding-inline:18px}.alumno-profile-row{flex-direction:column;align-items:flex-start;gap:6px}.alumno-profile-row strong{text-align:left}.alumno-simulation-topics{flex-direction:column;align-items:flex-start;gap:8px}.alumno-practice-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.alumno-practice-topic{grid-column:1/-1}.alumno-practice-metric strong{font-size:13px}.alumno-practice-combine{margin:0;top:12px}.alumno-practice-combine button{width:100%}.alumno-topics{padding-left:24px;padding-right:18px}.alumno-action-panel{padding:16px}.alumno-action{min-height:114px;padding-inline:5px}.alumno-action-label{max-width:76px}.alumno-calendar{padding-inline:16px}.alumno-calendar-period{gap:2px}.alumno-calendar-period strong{min-width:92px;font-size:10.5px}.alumno-calendar-switch button{padding-inline:9px}.alumno-week-day{gap:4px;padding-inline:2px}.alumno-calendar-modal-backdrop{padding:10px}.alumno-calendar-modal{border-radius:16px;height:calc(100dvh - 20px);padding:15px}.alumno-calendar-modal .alumno-calendar-period strong{min-width:122px;font-size:13px}.alumno-calendar-modal .alumno-calendar-switch button{padding-inline:10px;font-size:11px}.alumno-calendar-modal .alumno-calendar-cell{height:36px}.alumno-calendar-modal .alumno-calendar-day{width:32px;height:32px;font-size:12px}.alumno-calendar-modal .alumno-week-view{gap:5px}.alumno-calendar-modal .alumno-week-day{gap:6px;padding:10px 2px}.alumno-calendar-modal .alumno-week-day>strong{font-size:15px}.alumno-calendar-modal .alumno-week-day small{font-size:8px}}@media (prefers-reduced-motion:reduce){.alumno-dashboard-shell *,.alumno-dashboard-shell :before,.alumno-dashboard-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.profesor-profile-modal-backdrop{z-index:40;background:#0f172a6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.profesor-profile-modal{background:#fff;border:1px solid #cfe0f8;border-radius:20px;width:min(560px,100%);max-height:min(760px,100vh - 48px);padding:28px;overflow:auto;box-shadow:0 24px 60px #0f2a4f38}.profesor-profile-modal>header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.profesor-profile-modal>header p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-family:Outfit,sans-serif;font-size:10px;font-weight:700}.profesor-profile-modal>header h2{color:var(--alumno-ink);letter-spacing:-.035em;margin:0;font-family:Outfit,sans-serif;font-size:25px;line-height:1.1}.profesor-profile-modal>header>button{color:#64748b;cursor:pointer;background:#f8fbff;border:1px solid #d5e2f4;border-radius:10px;place-items:center;width:34px;height:34px;padding:0;font-size:22px;line-height:1;display:grid}.profesor-profile-modal>header>button:hover{color:#1d4ed8;background:#eff6ff;border-color:#aec7eb}.profesor-profile-modal>header>button:disabled{cursor:wait;opacity:.6}.profesor-profile-editor{gap:18px;display:grid}.profesor-profile-editor-photo{border-bottom:1px solid var(--alumno-line);place-items:center;min-height:152px;padding-bottom:21px;display:grid}.profesor-profile-photo-uploader{cursor:pointer;border-radius:50%;place-items:center;width:144px;height:144px;display:grid;position:relative;overflow:hidden}.profesor-profile-photo-uploader .profesor-profile-avatar{width:100%;height:100%}.profesor-profile-photo-overlay{color:#fff;opacity:0;background:#0f2a4fa3;border-radius:50%;place-items:center;font-family:Outfit,sans-serif;font-size:12px;font-weight:800;transition:opacity .18s;display:grid;position:absolute;inset:0}.profesor-profile-photo-uploader:hover .profesor-profile-photo-overlay,.profesor-profile-photo-uploader:focus-within .profesor-profile-photo-overlay{opacity:1}.profesor-profile-photo-uploader input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.profesor-profile-field{gap:7px;display:grid}.profesor-profile-field>span{color:var(--alumno-slate);letter-spacing:.05em;text-transform:uppercase;font-family:Outfit,sans-serif;font-size:11px;font-weight:700}.profesor-profile-field input,.profesor-profile-field textarea{width:100%;color:var(--alumno-ink);font:inherit;background:#fff;border:1px solid #cbdcf2;border-radius:10px;outline:none;padding:11px 12px;font-size:13px}.profesor-profile-field input:focus,.profesor-profile-field textarea:focus{border-color:#75a1e8;box-shadow:0 0 0 3px #75a1e829}.profesor-profile-field input[readonly]{color:#52647e;background:#f7faff}.profesor-profile-readonly-control{align-items:center;gap:10px;display:flex}.profesor-profile-readonly-control>input{flex:1;width:auto;min-width:0}.profesor-profile-readonly-control>svg{fill:none;stroke:#7185a3;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none;width:17px;height:17px}.profesor-profile-field textarea{resize:vertical;min-height:132px;line-height:1.55}.profesor-profile-error{color:#b42318;margin:-4px 0 0;font-size:12px;line-height:1.45}.profesor-profile-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.profesor-profile-cancel,.profesor-profile-save{cursor:pointer;border:1px solid #b8cdef;border-radius:9px;min-height:40px;padding:0 16px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700}.profesor-profile-cancel{color:#31527e;background:#fff}.profesor-profile-cancel:hover{background:#f5f9ff;border-color:#8fb2ea}.profesor-profile-save{color:#fff;background:#2563eb;border-color:#1d5bbb;box-shadow:0 6px 14px #2563eb2e}.profesor-profile-save:hover{background:#1649bc;border-color:#1649bc}.profesor-profile-cancel:disabled,.profesor-profile-save:disabled{cursor:wait;opacity:.6}@media (max-width:560px){.profesor-profile-modal-backdrop{padding:14px}.profesor-profile-modal{border-radius:17px;max-height:calc(100vh - 28px);padding:22px 18px}.profesor-profile-editor-photo{min-height:0}.profesor-profile-photo-uploader{width:132px;height:132px}.profesor-profile-actions{flex-direction:column-reverse}.profesor-profile-cancel,.profesor-profile-save{width:100%}}.profesor-dashboard{padding-top:84px}.profesor-dashboard .profesor-main-actions{gap:18px;margin-top:60px}@media (max-width:560px){.profesor-dashboard{padding-top:56px}.profesor-dashboard .profesor-main-actions{gap:14px;margin-top:44px}}.admin-professor-page{width:min(980px,100%);min-height:calc(100vh - 68px);margin:0 auto;padding:34px}.admin-page-head{align-items:center;gap:15px;margin-bottom:26px;display:flex}.admin-page-head p,.admin-section-heading p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800}.admin-page-head h1{color:var(--alumno-ink);letter-spacing:-.04em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.8rem,3.2vw,2.45rem);font-weight:800}.admin-page-head span{color:var(--alumno-slate);margin-top:7px;font-size:14px;display:block}.admin-back-link{border:1px solid var(--alumno-line);background:var(--alumno-card);width:38px;height:38px;color:var(--alumno-brand);border-radius:11px;flex:0 0 38px;justify-content:center;align-items:center;transition:background-color .15s,transform .15s;display:flex}.admin-back-link:hover{background:#eff6ff;transform:translate(-2px)}.admin-professor-invite{background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #cfe0fb;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:15px 17px;display:flex}.admin-professor-invite strong,.admin-professor-invite small{display:block}.admin-professor-invite strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.admin-professor-invite small{color:var(--alumno-slate);margin-top:3px;font-size:11px}.admin-professor-invite-controls{gap:7px;display:flex}.admin-professor-invite input{border:1px solid var(--alumno-line);width:205px;font:inherit;border-radius:9px;outline:none;padding:9px 11px;font-size:12px}.admin-professor-invite input:focus{border-color:#93baf0}.admin-gmail-button{color:#c2413d;background:#fff;border:1px solid #f0b4b4;border-radius:9px;align-items:center;gap:6px;min-height:34px;padding:8px 12px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.admin-gmail-button:hover{background:#fff7f7;border-color:#e28b87}.admin-gmail-button.disabled{cursor:default;opacity:.5}.admin-professor-list,.admin-assigned-list{gap:8px;display:grid}.admin-professor-row{border:1px solid var(--alumno-line);background:var(--alumno-card);width:100%;min-height:72px;color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:13px;align-items:center;gap:12px;padding:13px 15px;transition:border-color .15s,background .15s,transform .15s;display:flex}.admin-professor-row:hover{background:#f9fbff;border-color:#b9d2f6;transform:translateY(-1px)}.admin-professor-avatar,.admin-student-avatar{color:#2563eb;background:linear-gradient(135deg,#e0edff,#dbeafe);border-radius:50%;flex:0 0 38px;place-items:center;width:38px;height:38px;font-family:Outfit,sans-serif;font-size:11px;font-weight:800;display:grid}.admin-professor-row-copy{flex:1;min-width:0}.admin-professor-row-copy strong,.admin-professor-row-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-professor-row-copy strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.admin-professor-row-copy small,.admin-professor-row-meta small{color:var(--alumno-slate);margin-top:3px;font-size:11px}.admin-professor-row-meta{text-align:right;min-width:96px;display:grid}.admin-professor-row-meta b{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:12px}.admin-professor-row>svg{color:var(--alumno-brand)}.admin-directory-notice{color:#91651d;background:#fff8e8;border-radius:10px;padding:13px 15px;font-size:13px}.admin-modal-backdrop{z-index:30;background:#0f172a61;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.admin-professor-modal,.admin-student-modal{background:#fff;border:1px solid #d9e5f5;border-radius:20px;width:min(860px,100%);max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 24px 70px #0f172a38}.admin-loading-modal{min-height:130px;color:var(--alumno-slate);place-items:center;font-size:13px;display:grid}.admin-modal-head{border-bottom:1px solid var(--alumno-line);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px;display:flex}.admin-modal-head p{color:var(--alumno-slate);letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800}.admin-modal-head h2{color:var(--alumno-ink);letter-spacing:-.035em;margin:0;font-family:Outfit,sans-serif;font-size:25px;line-height:1.1}.admin-modal-head a{color:var(--alumno-brand);margin-top:5px;font-size:12px;display:inline-block}.admin-modal-head a:hover{text-underline-offset:3px;text-decoration:underline}.admin-close-button{color:#64748b;cursor:pointer;background:#f8fbff;border:1px solid #d5e2f4;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;padding:0;display:grid}.admin-close-button:hover{color:#1d4ed8;background:#eff6ff;border-color:#aec7eb}.admin-access-editor{border-bottom:1px solid var(--alumno-line);background:#f8fbff;gap:14px;padding:18px 24px;display:grid}.admin-access-editor>div:first-child{align-items:center;gap:11px;display:flex}.admin-modal-icon{color:#2563eb;background:#dbeafe;border-radius:11px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.admin-access-editor strong,.admin-access-editor small{display:block}.admin-access-editor strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.admin-access-editor small{color:var(--alumno-slate);margin-top:3px;font-size:11px}.admin-tema-control{align-items:center;gap:7px;display:flex}.admin-tema-control button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #cfe0fb;border-radius:9px;place-items:center;width:33px;height:33px;font-size:19px;line-height:1;display:grid}.admin-tema-control button:hover{background:#eff6ff;border-color:#93baf0}.admin-tema-control input{width:64px;height:33px;color:var(--alumno-ink);font:inherit;text-align:center;border:1px solid #cfe0fb;border-radius:9px;padding:4px 7px;font-size:13px;font-weight:700}.admin-tema-control span{color:var(--alumno-slate);margin-left:3px;font-size:12px}.admin-save-button,.admin-history-button{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #b8cdef;border-radius:9px;width:fit-content;min-height:35px;padding:8px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700}.admin-save-button:hover,.admin-history-button:hover{background:#1649bc}.admin-save-button:disabled{cursor:wait;opacity:.6}.admin-modal-notice{color:#15803d;margin:0;font-size:12px}.admin-assigned-students{padding:22px 24px 24px}.admin-section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.admin-section-heading h3{color:var(--alumno-ink);letter-spacing:-.03em;margin:0;font-family:Outfit,sans-serif;font-size:18px}.admin-section-heading>span{color:#2563eb;background:#dbeafe;border-radius:999px;place-items:center;min-width:28px;height:28px;font-family:Outfit,sans-serif;font-size:11px;font-weight:800;display:grid}.admin-assigned-row{border:1px solid var(--alumno-line);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:9px 11px;display:flex}.admin-student-main{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:2px;display:flex}.admin-student-main>span:nth-child(2){flex:1;min-width:0}.admin-student-main strong,.admin-student-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-student-main strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:13px}.admin-student-main small{color:var(--alumno-slate);margin-top:2px;font-size:11px}.admin-student-main>svg{color:var(--alumno-brand);flex:none}.admin-change-teacher{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #cfe0fb;border-radius:8px;flex:none;padding:7px 9px;font-family:Outfit,sans-serif;font-size:10px;font-weight:700}.admin-change-teacher:hover{background:#eff6ff;border-color:#93baf0}.admin-modal-empty{color:var(--alumno-slate);margin:0;font-size:13px}.admin-danger-zone{background:snow;border-top:1px solid #f2dada;justify-content:flex-end;padding:16px 24px 20px;display:flex}.admin-delete-button{color:#b42318;cursor:pointer;background:#fff;border:1px solid #e7a3a3;border-radius:9px;min-height:36px;padding:8px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:800}.admin-delete-button:hover{background:#fff1f1;border-color:#c94c45}.admin-confirm-backdrop{z-index:40}.admin-confirm-modal{text-align:center;background:#fff;border:1px solid #f0caca;border-radius:18px;width:min(430px,100%);padding:28px;box-shadow:0 24px 70px #7f1d1d38}.admin-danger-icon{color:#b42318;background:#fee2e2;border-radius:50%;place-items:center;width:42px;height:42px;margin:0 auto 12px;font-family:Outfit,sans-serif;font-size:20px;font-weight:800;display:grid}.admin-confirm-modal h2{color:#7f1d1d;letter-spacing:-.03em;margin:0;font-family:Outfit,sans-serif;font-size:21px}.admin-confirm-modal p{color:#7f5d5d;margin:9px auto 22px;font-size:13px;line-height:1.55}.admin-confirm-actions{justify-content:center;gap:9px;display:flex}.admin-cancel-button,.admin-confirm-delete{cursor:pointer;border-radius:9px;min-height:38px;padding:8px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:750}.admin-cancel-button{color:#52647e;background:#fff;border:1px solid #d4dce9}.admin-confirm-delete{color:#fff;background:#b42318;border:1px solid #b42318}.admin-confirm-delete:disabled{cursor:not-allowed;opacity:.5}.admin-student-backdrop{z-index:50}.admin-student-modal{width:min(900px,100%)}.admin-student-details{border-bottom:1px solid var(--alumno-line);color:var(--alumno-ink);align-items:center;gap:28px;padding:14px 24px;font-size:12px;display:flex}.admin-student-details>span small{color:var(--alumno-slate);text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.admin-student-actions{gap:8px;margin-left:auto;display:flex}.admin-student-actions .admin-history-button{color:#2563eb;background:#fff}.admin-student-actions .admin-history-button:hover{background:#eff6ff}.admin-student-actions .admin-history-button span{color:#fff;background:#2563eb;border-radius:999px;place-items:center;min-width:18px;height:18px;margin-left:5px;font-size:10px;display:inline-grid}.admin-student-calendar{padding:14px 24px 0}.admin-student-calendar .alumno-calendar{min-height:365px}.admin-student-access{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;grid-template-columns:1fr auto auto;align-items:end;gap:14px;margin:14px 24px 18px;padding:14px 16px;display:grid}.admin-student-access>div strong,.admin-student-access>div small{display:block}.admin-student-access strong{color:var(--alumno-ink);font-family:Outfit,sans-serif;font-size:14px}.admin-student-access small{color:var(--alumno-slate);margin-top:3px;font-size:10.5px}.admin-student-access label{color:var(--alumno-slate);grid-template-columns:auto auto;gap:5px;font-size:10px;font-weight:700;display:grid}.admin-student-access label span{grid-column:1/-1}.admin-student-access input{width:54px;color:var(--alumno-ink);font:inherit;background:#fff;border:1px solid #cfe0fb;border-radius:8px;padding:7px;font-size:12px}.admin-student-access i{align-self:center;font-size:11px;font-style:normal}@media (max-width:768px){.admin-professor-page{padding:26px 24px 32px}.admin-professor-invite{flex-direction:column;align-items:flex-start}.admin-professor-invite-controls{width:100%}.admin-professor-invite input{flex:1;width:auto}.admin-modal-backdrop{padding:16px}.admin-professor-modal,.admin-student-modal{max-height:calc(100dvh - 32px)}.admin-student-details{flex-wrap:wrap;gap:14px 24px}.admin-student-actions{width:100%;margin-left:0}.admin-student-access{grid-template-columns:1fr 1fr}.admin-student-access>div{grid-column:1/-1}}@media (max-width:560px){.admin-professor-page{padding-inline:18px}.admin-page-head{align-items:flex-start}.admin-page-head span{font-size:13px}.admin-professor-row-meta{display:none}.admin-assigned-row{flex-direction:column;align-items:flex-start}.admin-student-main{width:100%}.admin-change-teacher{margin-left:48px}.admin-modal-head,.admin-assigned-students,.admin-access-editor,.admin-danger-zone,.admin-student-calendar{padding-inline:18px}.admin-student-access{margin-inline:18px}.admin-confirm-actions{flex-direction:column-reverse}.admin-cancel-button,.admin-confirm-delete{width:100%}}
