@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-ext-wght-normal-CawQDOvP.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-wght-normal-DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#262223;background:#f2f2f2;font-synthesis:none;font-weight:400;--accent: #d9304f;--ink: #262223;--border: #d9d9d9}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 16px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a31a38;outline-offset:3px}.secondary{background:#fff;color:var(--ink);border-color:var(--border)}.plain{background:transparent;color:var(--ink);border-color:transparent}.danger{background:#fff3f4;color:#a31a38;border-color:#efc1ca}.primary{width:100%;margin-top:20px}.link{background:none;border:0;color:#a31a38;padding:5px 0;min-height:44px;text-align:left;display:block}.buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bulk{margin:24px 0}.muted,small{color:#696366;font-size:12px;line-height:1.6}p{color:#696366;font-size:14px;line-height:1.7;margin:6px 0}h1,h2,h3{letter-spacing:-.035em;line-height:1.2}h1{font-size:clamp(28px,3vw,42px);font-weight:650;margin:12px 0}h2{font-size:22px;font-weight:650;margin:0 0 10px}h3{font-size:18px;font-weight:650;margin:16px 0 9px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;color:#766c70;text-transform:uppercase}header{height:86px;background:#262223;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:20px}.brand{display:flex;gap:20px;align-items:center;color:#fff;text-decoration:none;font-size:17px;letter-spacing:4px;font-weight:650}.brand>span{font-size:45px;line-height:1;color:#d9304f;letter-spacing:-3px}.brand b{font-size:10px;color:#c0b9bc;letter-spacing:2px;font-weight:400}.header-button{background:transparent;border-color:#60565a;color:#fff}.app-shell{display:flex;min-height:85vh;max-width:1800px;margin:auto}.sidebar{width:220px;flex-shrink:0;padding:36px 18px;background:#fff;border-right:1px solid var(--border)}.sidebar>small{display:block;padding:0 14px 18px;letter-spacing:2px;font-size:9px}.sidebar>button{width:100%;justify-content:flex-start;background:none;border:0;color:#696366;font-weight:500;margin:3px 0;border-radius:9px}.sidebar>button.active{background:#fce9ed;color:#b82340;font-weight:650}.sidebar-foot{border-top:1px solid var(--border);margin-top:30px;padding:20px 14px;font-size:11px;color:#777;line-height:1.8;overflow-wrap:anywhere}.workspace{padding:42px 4%;min-width:0;flex:1}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading{margin-bottom:34px}.semester{min-width:210px;max-width:290px}.semester label{font-size:10px}.semester select{margin:5px 0 0}.semester .buttons button{font-size:10px;padding:4px 8px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:28px}.stat{background:#fff;padding:23px;border-radius:15px;border:1px solid #e3dfe1;display:flex;flex-direction:column;gap:12px}.stat>span{font-size:12px;color:#70686c}.stat strong{font-size:clamp(24px,2.6vw,36px);font-weight:650;letter-spacing:-1px;overflow-wrap:anywhere}.stat small{font-size:10px}.panel,.offer{background:#fff;border:1px solid #e3dfe1;border-radius:16px;padding:26px;margin-bottom:24px;min-width:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.cards>.panel,.cards>.offer{margin:0}.cards:empty:after{content:"Sin registros para mostrar.";padding:25px;color:#777}.offer .buttons{margin-top:20px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.badge{display:inline-flex;align-items:center;border-radius:6px;padding:5px 9px;font-size:10px;line-height:1.5;font-weight:600;background:#f2eff0;color:#645b5f}.badge.success{background:#edf4ef;color:#315e41}.badge.warning{background:#fff1df;color:#8b5314}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.chips>span{border:1px solid #e6e1e3;padding:5px 8px;border-radius:5px;font-size:10px;color:#696366}.progress{height:4px;background:#eee;border-radius:3px;margin:20px 0 9px;overflow:hidden}.progress>i{height:100%;display:block;background:var(--accent)}.avatar{width:42px;height:42px;border-radius:50%;background:#fce9ed;color:#b82340;display:grid;place-items:center;font-size:12px;font-weight:650}.load{display:flex;align-items:baseline;gap:10px;margin:24px 0 10px}.load strong{font-size:38px;letter-spacing:-1px}.load span{font-size:11px;color:#777}.breakdown{display:flex;flex-direction:column;gap:9px;margin:20px 0;font-size:12px}.breakdown>span{display:flex;justify-content:space-between;color:#696366}.breakdown b{color:#262223}details{border-top:1px solid #eee;margin:20px 0;padding-top:12px}summary{cursor:pointer;font-size:12px;min-height:44px;display:flex;align-items:center;font-weight:600}details p{font-size:11px}.professor .buttons{margin-top:18px}.record{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #eee;align-items:center}.record:last-child{border:0}.record b{font-size:14px}.record p{font-size:12px}.requirements{margin:20px 0;background:#fff7eb;padding:18px;border-radius:10px;font-size:12px;color:#82531f}.requirements ul{padding-left:18px;line-height:1.8}.panel>.section-heading:not(:first-child){margin-top:30px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.toolbar>input{flex:1;min-width:180px}.toolbar select{max-width:220px}.week{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:8px;overflow-x:auto;margin-top:20px}.day{background:#f7f6f6;border-radius:10px;padding:10px;min-height:240px}.day h3{text-align:center;font-size:12px;font-weight:500;padding:10px 0;border-bottom:1px solid #e5dfe1;margin:0 0 16px}.event{background:#fff0f3;border:0;border-left:3px solid #d9304f;border-radius:6px;color:#262223;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:100%;text-align:left;padding:12px 9px;margin-bottom:12px;gap:8px}.event span,.event small{font-size:10px}.event b{font-size:11px}.segment-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.segment-tabs button{background:#f5f3f4;color:#756b70;border:0;font-size:11px}.segment-tabs button.active{background:#262223;color:#fff}.tabs{display:flex;background:#f2f2f2;padding:4px;border-radius:10px;margin:20px 0;gap:4px}.tabs>button{flex:1;border:0;background:transparent;color:#756b70}.tabs>button.active{background:#fff;color:#262223;box-shadow:0 2px 5px #0000000b}input,select,textarea{border:1px solid #d9d9d9;border-radius:8px;background:#fff;color:#262223;padding:12px;min-height:44px;font-size:14px;max-width:100%}label{display:block;font-size:12px;font-weight:500;color:#62595d}label>input:not([type=checkbox]),label>textarea,label>select{display:block;width:100%;margin:8px 0 18px}label small{font-size:10px;display:block;margin:-10px 0 16px;font-weight:400}input[readonly]{background:#f2f2f2;color:#777}fieldset{border:1px solid #e4dfe1;border-radius:8px;margin:20px 0;padding:15px}legend{font-size:12px;padding:0 5px}.checks{display:flex;gap:12px;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:7px;min-height:44px}.checks input{accent-color:#d9304f;min-height:20px;width:18px;height:18px}.login-page{max-width:1150px;margin:auto;min-height:80vh;padding:65px 5%;display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.login-intro h1{font-size:clamp(35px,4vw,52px);font-weight:600;margin:24px 0}.login-intro p{font-size:15px}.login-card{background:#fff;border:1px solid #e0dadd;border-radius:20px;padding:34px}.login-card h2{font-size:25px;margin-top:15px}.login-card .muted{margin-top:18px;font-size:11px}.graphic{background:#d9304f;border-radius:14px 85px 14px 14px;margin-top:40px;height:230px;display:flex;justify-content:space-around;align-items:center;color:#fff}.graphic>span{font-size:90px;letter-spacing:-7px;line-height:.85;font-weight:750}.graphic i{writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;font-style:normal}.alert{background:#edf4ef;color:#315e41;border-radius:10px;padding:14px 18px;margin-bottom:22px;font-size:13px;line-height:1.6;display:flex;justify-content:space-between;gap:15px;align-items:center}.error{background:#fff0f0;color:#972738;border:1px solid #f1c5cc}.offline{background:#fff1df;color:#82531f;text-align:center;padding:12px;font-size:13px}.overlay{position:fixed;inset:0;z-index:100;background:#18121799;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;border-radius:18px;padding:28px;width:100%;max-width:620px;max-height:92vh;overflow:auto;box-shadow:0 30px 90px #0002}.modal pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8;color:#554c50}.modal h2{font-size:21px}.modal .section-heading{margin-bottom:20px}.empty{text-align:center;padding:35px 10px;color:#756b70}blockquote{margin:12px 0 0;padding:12px;border-left:3px solid #d9304f;background:#fcf2f4;font-size:12px;color:#80545d}footer{padding:25px 4%;display:flex;justify-content:space-between;border-top:1px solid var(--border);color:#756b70;letter-spacing:1.5px;font-size:9px}.update-banner{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:200;box-shadow:0 8px 25px #0003}@media(max-width:1000px){.sidebar{width:180px;padding:30px 10px}.workspace{padding:30px 3%}.cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.page-heading{align-items:flex-start}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){header{height:72px;padding:0 5%}.brand{font-size:14px;gap:13px;letter-spacing:3px}.brand>b,.brand b{display:none}.brand>span{font-size:37px}.header-button{font-size:10px;padding:8px 10px}.app-shell{display:block}.sidebar{width:100%;padding:10px 4%;display:flex;gap:6px;overflow-x:auto;border:0;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5}.sidebar>button{width:auto;flex-shrink:0;min-height:44px;font-size:11px;padding:8px 12px;margin:0}.sidebar>small,.sidebar-foot{display:none}.workspace{padding:26px 5%}.page-heading{flex-direction:column;gap:18px}.semester{max-width:none;width:100%}.semester>label{display:flex;align-items:center;gap:14px}.semester select{flex:1}.semester .buttons{justify-content:flex-end}.page-heading h1{font-size:29px}.page-heading p{font-size:12px}.stats{gap:10px}.stat{padding:18px 14px;gap:10px}.stat strong{font-size:26px}.stat>span{font-size:10px}.stat small{font-size:9px}.panel,.offer{padding:20px}.cards{grid-template-columns:1fr}.record{align-items:flex-start;flex-direction:column;gap:12px}.section-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.section-heading h2{font-size:20px}.toolbar select{flex:1;max-width:none;width:45%}.toolbar>button{width:100%}.week{grid-template-columns:repeat(7,140px);scroll-snap-type:x proximity}.day{scroll-snap-align:start}.segment-tabs{flex-wrap:nowrap;overflow-x:auto}.segment-tabs button{flex-shrink:0}.login-page{padding:35px 6%;grid-template-columns:1fr;gap:30px}.login-intro h1{font-size:34px}.login-intro p{font-size:13px}.graphic{display:none}.login-card{padding:25px}.overlay{padding:12px}.modal{padding:22px;max-height:94vh}footer span{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.audit-diff{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;max-height:350px;overflow:auto;background:#f7f6f6;padding:15px;border-radius:8px}.login-card .tabs button{padding-left:8px;padding-right:8px;font-size:12px}:root{--ink: #08162f;--ink-soft: #17284a;--blue: #0b50db;--blue-bright: #1677ff;--cyan: #40d9ff;--violet: #6d61ff;--paper: #f4f7fc;--white: #fff;--muted: #66728a;--line: #dfe6f1;--shadow: 0 24px 70px rgba(10, 39, 92, .14);--accent: var(--blue);--border: var(--line);font-family:Manrope Variable,sans-serif;color:var(--ink);background:var(--paper)}body{min-width:320px;background:radial-gradient(circle at 76% 18%,rgba(104,171,255,.13),transparent 35%),var(--paper)}h1,h2,h3,.stat strong{font-family:Sora Variable,sans-serif}h1{font-weight:650;font-size:clamp(27px,2.6vw,36px);letter-spacing:-.045em}h2{font-size:21px}h3{font-size:16px}p,small,.muted{color:var(--muted)}.ui-icon{flex:0 0 auto;vertical-align:middle}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:800;font-size:10px;letter-spacing:.19em}button,.button{border-radius:12px;min-height:46px;font-size:12px;font-weight:750;background:linear-gradient(100deg,#0b4fcf,#187af5);border-color:transparent;box-shadow:0 8px 18px #0b50db1f;transition:transform .18s,box-shadow .18s}button:hover,.button:hover{filter:none;box-shadow:0 10px 24px #0b50db30;transform:translateY(-1px)}button:disabled:hover{transform:none;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue-bright);outline-offset:3px}.secondary{background:#fffc;color:var(--ink-soft);border-color:var(--line);box-shadow:none}.plain{background:transparent;box-shadow:none;color:var(--muted);border-color:transparent}.plain:hover{box-shadow:none;background:#eaf1ff;color:var(--blue)}.danger{color:#a52840;background:#fff0f3;border-color:#efced8;box-shadow:none}.link{color:var(--blue);background:transparent;box-shadow:none}.primary{box-shadow:0 12px 24px #0b50db33}.site-header{height:100px;background:transparent;color:var(--ink);padding:24px 6%;position:relative;z-index:4}.site-header--login{max-width:1500px;margin:auto}.brand{display:inline-flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;letter-spacing:normal}.brand>.brand__mark{width:42px;height:48px;display:grid;place-items:center;color:#fff;font-family:Sora Variable,sans-serif;font-size:24px;letter-spacing:0;font-weight:750;background:linear-gradient(145deg,var(--blue-bright),var(--blue));border-radius:8px 8px 14px 14px;clip-path:polygon(50% 0,100% 16%,92% 72%,50% 100%,8% 72%,0 16%)}.brand>.brand__copy{display:flex;flex-direction:column;gap:3px}.brand__copy strong{font-family:Sora Variable,sans-serif;font-size:13px;letter-spacing:.12em;font-weight:700}.brand__copy small{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.brand--light{color:#fff}.brand--light .brand__mark{background:linear-gradient(145deg,var(--cyan),var(--blue-bright))}.brand--light .brand__copy small{color:#a8bada}.status-pill{display:flex;gap:8px;align-items:center;background:#ffffffb3;border:1px solid #e2e9f5;border-radius:30px;padding:9px 14px;font-size:10px;color:var(--ink-soft);font-weight:650}.status-pill i{height:6px;width:6px;border-radius:50%;background:var(--blue-bright)}.login-page{position:relative;max-width:1380px;margin:auto;min-height:calc(100vh - 165px);padding:55px 6% 90px;grid-template-columns:1.12fr 1fr;gap:12%;isolation:isolate}.login-page:before{content:"";position:absolute;inset:-100px 0 -40px;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(13,55,117,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(13,55,117,.045) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(to right,#000,transparent 70%);mask-image:linear-gradient(to right,#000,transparent 70%)}.login-intro{position:relative}.login-intro:before{content:"";position:absolute;inset:-60px -10px auto auto;width:380px;height:380px;border:1px solid #1677ff15;border-radius:50%;z-index:-1;box-shadow:0 0 100px #1677ff10 inset}.login-intro h1{font-size:clamp(48px,5.5vw,78px);font-weight:750;line-height:1.03;letter-spacing:-.06em;margin:30px 0 24px}.login-intro h1 em{font-style:normal;color:var(--blue-bright);background:linear-gradient(100deg,var(--blue),var(--blue-bright));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.login-intro p{font-size:14px;max-width:390px;line-height:1.9}.login-panel-wrap{position:relative;width:100%;max-width:510px;justify-self:end}.login-card{position:relative;z-index:2;padding:38px;border:1px solid #ffffffdb;border-radius:30px;background:#ffffffd4;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow)}.login-card h2{font-size:27px;margin:8px 0}.login-card__intro{font-size:12px;margin:0 0 22px}.login-card__icon{width:54px;height:54px;display:grid;place-items:center;color:#fff;border-radius:17px;background:linear-gradient(145deg,var(--blue-bright),#063fae);box-shadow:0 12px 26px #0b50db47;margin-bottom:25px}.login-card .eyebrow{font-size:9px}.login-card .tabs{background:#f0f3f8;border:1px solid #e5ebf4;border-radius:14px;padding:5px}.login-card .tabs button{font-size:11px;min-width:0;min-height:46px;border-radius:10px;background:transparent;color:var(--muted);box-shadow:none}.login-card .tabs button.active{background:#fff;color:var(--blue);box-shadow:0 5px 16px #142f5c14}.login-card label{font-size:11px;font-weight:700}.login-card input{background:#ffffffc9;height:52px;border-radius:12px}.orbit-card{position:absolute;z-index:3;display:flex;gap:8px;align-items:center;padding:11px 14px;color:#36506f;font-size:10px;font-weight:750;border:1px solid #ffffffcc;border-radius:12px;background:#ffffffd1;box-shadow:0 12px 28px #0c2d5f1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:none}.orbit-card .ui-icon{color:var(--blue-bright)}.orbit-card--top{top:35px;right:-45px}.orbit-card--bottom{bottom:-18px;left:-35px}.week-preview{margin-top:35px;padding:22px;border:1px solid #ffffffd9;border-radius:20px;background:#ffffffa6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 40px #183d6b0a;max-width:400px}.week-preview__head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.week-preview__head>div:first-child{display:flex;flex-direction:column;gap:6px}.week-preview__head span{font-size:9px;color:var(--muted);font-weight:750;letter-spacing:.15em}.week-preview__head strong{font-size:14px}.mini-icon{display:grid;place-items:center;color:var(--blue);width:40px;height:40px;background:#e8f0ff;border-radius:12px}.semester-flow{display:flex;gap:8px;padding:19px 0}.semester-flow span{flex:1;min-height:39px;display:grid;place-items:center;background:linear-gradient(135deg,#e3efff,#f5f9ff);color:var(--blue);border:1px solid #d7e5fa;border-radius:8px;font-size:11px;font-weight:750}.semester-flow span.intensive{background:#eeebff;color:#6554e4;border-color:#e3defa}.preview-caption{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:10px}.preview-caption .ui-icon{color:var(--blue)}.site-header--app{margin-left:250px;width:calc(100% - 250px);padding:18px 4%;height:85px;border-bottom:1px solid #e1e9f4;background:#ffffff80;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.site-header--app>.brand{display:none}.header-context{display:flex;align-items:center;justify-content:space-between;flex:1;gap:12px}.header-context>.eyebrow{font-size:9px}.header-identity{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.header-button{color:var(--ink-soft);background:#fff;border-color:var(--line);box-shadow:none;min-height:40px;font-size:10px}.app-shell{display:block;max-width:none;background:radial-gradient(circle at 90% 10%,#e2ecfc70,transparent 40%)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:10;display:flex;flex-direction:column;width:250px;padding:30px 20px 22px;border:0;color:#a4b4d0;background:radial-gradient(circle at 25% 20%,#196fff33,transparent 32%),linear-gradient(180deg,#081a3a,#061329)}.sidebar>.brand{margin:0 5px 45px;flex-shrink:0}.sidebar>.brand .brand__copy strong{font-size:11px}.sidebar>small{color:#879abd;letter-spacing:.18em;padding-left:15px}.sidebar>button{background:none;color:#acbdd7;border:0;display:flex;align-items:center;gap:12px;justify-content:flex-start;font-size:11px;font-weight:650;min-height:46px;margin:3px 0;padding:12px 14px;box-shadow:none}.sidebar>button.active{color:#fff;background:linear-gradient(95deg,#136effe6,#1b62da8c);box-shadow:0 10px 25px #002d8a61}.sidebar>button:hover{background:#1b62da30;color:#fff;transform:none}.sidebar-foot{margin-top:auto;border-color:#ffffff15;color:#a8bada;padding:25px 12px 0;font-size:10px}.workspace{margin-left:250px;width:calc(100% - 250px);padding:32px clamp(24px,4vw,60px) 50px}.page-heading{margin-bottom:28px}.page-heading p{font-size:12px}.semester select{border-radius:10px;font-size:12px;background:#ffffffd9}.semester .plain{font-size:10px}.stats{gap:16px}.stat{position:relative;overflow:hidden;background:#ffffffd4;border:1px solid #ffffffdb;border-radius:20px;padding:22px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 12px 35px #14346a06;gap:20px}.stat-head{display:flex;justify-content:space-between;align-items:center;gap:8px;z-index:1;font-size:11px;color:var(--muted)}.stat-icon{width:35px;height:35px;display:grid;place-items:center;background:#eaf1ff;color:var(--blue);border-radius:11px}.stat strong{font-size:30px;font-weight:650;letter-spacing:-.05em;z-index:1}.stat small{font-size:10px;z-index:1}.stat:first-child{color:#fff;background:linear-gradient(130deg,#092f74,#0d5fe2);border-color:transparent;box-shadow:0 15px 30px #0b50db24}.stat:first-child:after{content:"";position:absolute;width:135px;height:135px;border-radius:50%;right:-45px;bottom:-65px;background:var(--cyan);filter:blur(30px);opacity:.5}.stat:first-child .stat-head,.stat:first-child small{color:#d8e8ff}.stat:first-child .stat-icon{background:#ffffff24;color:#fff}.panel,.offer{border:1px solid #ffffffdb;border-radius:22px;background:#ffffffd4;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 14px 40px #14346a07}.offer .eyebrow{color:var(--blue);font-size:9px}.offer h3{font-size:17px}.offer p{font-size:12px}.cards{gap:20px}.badge{border-radius:7px;font-size:10px;color:#6554e4;background:#eeebff}.badge.success{color:#126348;background:#dcf8ed}.badge.warning{color:#875019;background:#fff0da}.chips>span{background:#f6f9fd;border-color:#e3eaf5;color:#526786}.chips>span:first-child{color:var(--blue);background:#eaf1ff;border-color:#dce8fc}.progress{background:#e9eff8;height:4px}.progress>i{background:linear-gradient(90deg,var(--cyan),var(--blue-bright))}.avatar{color:var(--blue);background:#eaf1ff;border-radius:13px;font-weight:800}.load strong{font-family:Sora Variable,sans-serif;color:var(--ink)}.breakdown>span{color:var(--muted)}.breakdown b{color:var(--ink-soft)}.record{border-color:var(--line)}.record>b,.record b{color:var(--ink-soft)}details{border-color:var(--line)}.requirements{background:#fff5e8;color:#80511b;border:1px solid #f5e7d4}.week{gap:9px}.day{background:#f3f7fd;border:1px solid #e8eef8;border-radius:12px}.day h3{color:#526786;border-color:var(--line);font-family:Manrope Variable,sans-serif}.event{background:linear-gradient(135deg,#eaf1ff,#f3f8ff);border:1px solid #dce8fb;border-left:3px solid var(--blue-bright);color:var(--ink-soft);box-shadow:0 6px 16px #0b50db08;border-radius:9px}.event:hover{box-shadow:0 6px 16px #0b50db12}.event small{color:var(--blue)}.segment-tabs button{background:#eaf1ff;color:#526786;box-shadow:none}.segment-tabs button.active{background:linear-gradient(100deg,var(--blue),var(--blue-bright));color:#fff}.tabs{background:#edf2f9}.tabs>button{box-shadow:none}.tabs>button.active{color:var(--blue);background:#fff}.toolbar input{background:#ffffffdb;border-radius:12px}.toolbar select{font-size:12px}.empty{color:var(--muted)}label{color:#34415a;font-weight:650}input,select,textarea{color:var(--ink);background:#ffffffdb;border-color:#d8e0eb;border-radius:12px}input[readonly]{background:#eef3fa;color:#66728a}input:focus,textarea:focus,select:focus{border-color:var(--blue-bright);box-shadow:0 0 0 3px #1677ff14}.checks input{accent-color:var(--blue)}fieldset{border-color:var(--line);border-radius:12px}.overlay{background:#040f229e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{border-radius:24px;border:1px solid #ffffff80;box-shadow:var(--shadow)}.modal h2{font-size:23px}.alert{border:1px solid #cae8dc;background:#ecf8f1;color:#235d46}.alert.error{background:#fff0f2;border-color:#f1cbd3;color:#94273c}.offline{background:#fff1df;color:#82531f}.audit-diff{background:#f1f5fc;color:var(--ink-soft)}blockquote{border-color:var(--blue-bright);background:#edf4ff;color:#36506f}.update-banner{background:var(--blue);box-shadow:var(--shadow);max-width:90vw}footer{border-color:var(--line);color:var(--muted);font-size:9px;background:transparent}.app-shell~footer{padding-left:calc(250px + 4%)}@media(min-width:1600px){.workspace{max-width:1550px}.login-page{gap:15%}}@media(max-width:1100px){.login-page{gap:9%;padding:40px 5% 75px}.login-intro h1{font-size:59px}.orbit-card--top{right:-20px}.orbit-card--bottom{left:-25px}.sidebar{width:220px;padding:28px 14px}.sidebar>.brand{gap:10px}.sidebar>.brand .brand__copy strong{font-size:10px}.workspace{margin-left:220px;width:calc(100% - 220px);padding:28px}.site-header--app{margin-left:220px;width:calc(100% - 220px)}.app-shell~footer{padding-left:calc(220px + 4%)}.stat{padding:18px}.stat strong{font-size:27px}}@media(max-width:820px){.login-page{grid-template-columns:1fr 1fr;gap:6%;padding:35px 4% 65px}.login-intro h1{font-size:47px}.login-intro p{font-size:13px}.login-card{padding:28px}.login-card h2{font-size:22px}.orbit-card{display:none}.week-preview{padding:18px}.sidebar{width:180px;padding:25px 10px}.sidebar>.brand{gap:8px;margin:0 0 32px}.sidebar>.brand .brand__copy strong{font-size:8px}.sidebar>.brand .brand__copy small{font-size:8px}.sidebar>.brand .brand__mark{width:33px;height:39px;font-size:20px}.sidebar>button{padding:10px 12px;font-size:10px;gap:9px}.sidebar>button .ui-icon{width:17px}.workspace{margin-left:180px;width:calc(100% - 180px);padding:25px 20px}.site-header--app{margin-left:180px;width:calc(100% - 180px);padding:15px 20px}.header-context>.eyebrow{display:none}.app-shell~footer{padding-left:calc(180px + 4%)}.stats{grid-template-columns:repeat(2,1fr)}.page-heading{align-items:flex-start;flex-direction:column}.semester{width:100%;max-width:100%}.semester>label{display:flex;align-items:center;gap:16px}.semester select{flex:1}.semester .buttons{justify-content:flex-end}.cards{grid-template-columns:1fr}}@media(max-width:600px){.site-header--login{height:85px;padding:20px 6%}.site-header--login .brand__copy strong{font-size:10px}.site-header--login .brand__copy small{font-size:8px}.site-header--login .brand{gap:10px}.status-pill{font-size:8px;padding:8px 10px}.brand>.brand__mark{width:34px;height:40px;font-size:21px}.login-page{display:flex;flex-direction:column;gap:32px;padding:25px 6% 45px;min-height:0}.login-intro{width:100%}.login-intro>.eyebrow{font-size:8px;letter-spacing:.13em}.login-intro h1{font-size:clamp(43px,11vw,58px);margin:22px 0 18px}.login-intro p{font-size:12px;max-width:330px}.week-preview{display:none}.login-panel-wrap{max-width:none}.login-card{padding:26px;border-radius:24px}.login-card h2{font-size:25px}.login-card__icon{width:46px;height:46px;margin-bottom:20px;border-radius:14px}.login-card .tabs button{font-size:10px;padding:8px 6px}.sidebar{position:fixed;inset:auto 0 0;z-index:20;width:100%;height:calc(78px + env(safe-area-inset-bottom));padding:7px 8px calc(7px + env(safe-area-inset-bottom));display:flex;flex-direction:row;gap:4px;overflow:auto;align-items:center;box-shadow:0 -8px 30px #08162f24;background:linear-gradient(180deg,#081a3af5,#061329);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:18px 18px 0 0}.sidebar>.brand,.sidebar>small,.sidebar-foot{display:none}.sidebar>button{flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px 7px;min-width:77px;max-width:110px;min-height:60px;flex-shrink:0;border-radius:12px;text-align:center;font-size:9px;line-height:1.25;margin:0}.sidebar>button .ui-icon{width:18px;height:18px}.sidebar>button.active{box-shadow:none}.sidebar>button span{max-width:90px;white-space:normal}.workspace{margin:0;width:100%;padding:25px 5% 32px}.site-header--app{margin-left:0;width:100%;height:72px;padding:15px 5%}.header-context>.eyebrow{display:block;font-size:8px;letter-spacing:.12em}.header-identity{display:none}.header-button{padding:8px 12px;min-height:38px}.stats{gap:10px}.stat{padding:16px 14px;border-radius:17px;gap:16px}.stat-head{font-size:9px}.stat-icon{width:29px;height:29px;border-radius:9px}.stat-icon .ui-icon{width:16px;height:16px}.stat strong{font-size:25px}.stat small{font-size:9px}.panel,.offer{padding:20px;border-radius:19px}.page-heading h1{font-size:29px}.toolbar>input{min-width:100%}.toolbar select{max-width:none}.week{grid-template-columns:repeat(7,140px)}.segment-tabs{flex-wrap:nowrap;overflow:auto}.modal{padding:24px;border-radius:22px}.modal h2{font-size:20px}.app-shell~footer{padding:22px 5% calc(110px + env(safe-area-inset-bottom))}.login-page~footer{padding:20px 6%}.alert{font-size:12px}.update-banner{bottom:calc(100px + env(safe-area-inset-bottom));font-size:11px}}@media(prefers-reduced-motion:reduce){button,.button{transition:none}button:hover,.button:hover{transform:none}}@media(prefers-reduced-transparency:reduce){.panel,.offer,.login-card,.stat,.modal{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--white)}.stat:first-child{background:#0b50db}}.brand>.brand__copy{color:var(--ink)}.brand--light>.brand__copy{color:var(--white)}
