@font-face{font-family:Outfit;src:url('./assets/outfit.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--bg:#f7f9fb;--surface:#fff;--ink:#18202e;--muted:#7b8698;--line:#edf0f2;--forest:#16663e;--green:#16874d;--mint:#d9f8e8;--purple:#7f26e8;--coral:#f45164;--shadow:0 6px 25px #26344506;--radius:24px;--dock:calc(18px + env(safe-area-inset-bottom,0px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Outfit,'Trebuchet MS',sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9971ed;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h1{font-size:30px;font-weight:700}h2{font-size:22px;font-weight:650}h3{font-size:17px;font-weight:600}p{color:var(--muted)}small,.small{font-size:12px;line-height:1.5}.muted{color:var(--muted)}.icon{width:23px;height:23px;flex-shrink:0;vertical-align:middle}.app-shell{max-width:860px;margin:auto;position:relative;min-height:100dvh;padding:0 24px 135px}main{display:flex;flex-direction:column;gap:20px}.main-header{display:flex;align-items:center;justify-content:space-between;padding-top:28px;gap:12px}.wordmark{display:flex;align-items:center;gap:8px;color:var(--forest);font-size:36px;letter-spacing:-1.9px;font-weight:600;white-space:nowrap}.wordmark img:not(.brand-logo-light):not(.brand-logo-dark){width:48px;height:48px}.header-actions{display:flex;gap:10px}.round{border:1px solid var(--line);background:var(--surface);border-radius:50%;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #192c3010;flex-shrink:0}.semester{display:flex;align-items:center;gap:8px;padding:18px 0 24px;font-weight:500;font-size:14px}.semester>.icon{color:var(--forest);width:21px}.semester span{margin-left:auto;color:var(--muted);font-size:12px}.menu{position:absolute;top:84px;right:24px;z-index:20;min-width:240px;box-shadow:0 15px 60px #18202e20}.menu a{display:flex;align-items:center;gap:12px;padding:13px 0;font-weight:500}.hero{border-radius:var(--radius);padding:28px;position:relative;display:flex;align-items:center;min-height:192px;overflow:hidden;background:#dcf8e9}.hero>div:first-child{z-index:1;max-width:76%}.hero h1{margin:12px 0 9px;font-size:32px;line-height:1.13;letter-spacing:-1px}.hero p{max-width:350px;font-size:15px;line-height:1.5;color:#657b77}.eyebrow{display:inline-flex;background:#ffffff60;font-size:11px;font-weight:650;letter-spacing:.055em;padding:6px 10px;border-radius:30px;color:var(--forest)}.hero-art{position:absolute;right:-10px;bottom:3px;width:39%;height:85%;display:flex;align-items:center;justify-content:center}.hero-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 7px #25493912)}.hero-art .sculpture{font-size:105px;transform:rotate(-7deg);filter:drop-shadow(0 7px 8px #523e7220)}.hero.orange{background:linear-gradient(110deg,#fff0da,#ffedda);color:var(--ink)}.hero.orange .eyebrow{color:#a64b0a;background:#ffe0a2}.hero.purple{background:linear-gradient(110deg,#f1eafd,#eae3fc)}.hero.purple .eyebrow{background:#e2d3fb;color:#681cc3}.hero.purple p{color:#8a77ab}.hero.blue{background:linear-gradient(110deg,#e6f8fb,#e3f1fb)}.demo{display:flex;align-items:center;gap:7px;color:#9e6b36;background:#fff3e4;border-radius:12px;padding:8px 12px;font-size:11px}.demo .icon{width:16px;height:16px}.card{background:var(--surface);border-radius:var(--radius);padding:24px;border:1px solid #f0f2f4;box-shadow:var(--shadow)}.card>h2{margin-bottom:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:5px}.section-heading>span{color:var(--muted);font-size:12px}.text-link{color:var(--forest);font-weight:550;font-size:14px;display:inline-flex;align-items:center;gap:6px}.text-link .icon{width:18px;height:18px}.next-exam{display:flex;align-items:center;justify-content:space-between;gap:15px}.next-exam h2{margin:12px 0 6px;font-size:25px}.next-exam p{font-size:14px;margin-bottom:16px}.calendar-art{flex-shrink:0;width:88px;height:88px;border-radius:24px;background:#e8f8ef;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--forest);transform:rotate(4deg)}.calendar-art .icon{width:50px;height:50px}.calendar-art strong{font-size:36px;line-height:1.1}.calendar-art small{font-size:9px;letter-spacing:.15em}.summary{display:flex;align-items:center;justify-content:space-between;gap:22px}.summary>div:first-child{flex:1}.summary h2{font-size:21px;margin:4px 0 8px}.summary p{font-size:14px}.summary .progress-track{margin-top:15px}.ring{width:82px;height:82px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--green) calc(var(--p)*1%),#c6efdc 0);position:relative}.ring:before{content:'';position:absolute;inset:9px;border-radius:50%;background:var(--surface)}.ring b{position:relative;font-size:23px}.progress-track{height:7px;border-radius:20px;background:var(--pale,#dff7eb);overflow:hidden}.progress-track>span{display:block;height:100%;background:var(--accent,#16874d);border-radius:inherit;transition:width .3s}.green{--accent:#15864c;--pale:#ddf9e9;color:#147b43}.blue{--accent:#147fe7;--pale:#e2f0ff;color:#1473c8}.purple{--accent:#9335e6;--pale:#f0e5ff;color:#7826c2}.orange{--accent:#f18b21;--pale:#fff0de;color:#b85b17}.teal{--accent:#15aaa2;--pale:#dcf8f4;color:#087d75}.yellow{--accent:#d4ad1e;--pale:#fff6ce;color:#9c7c10}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:25px;font-size:11px;font-weight:600;white-space:nowrap;line-height:1.4;background:var(--pale,#f1f4f7)}.badge.coral{color:#ee5260;background:#fff0f0}.badge.neutral{color:#8a95a8;background:#f3f6f8}.mint{background:#e0f9ed}.lavender{background:#f0e9fd}.rose{background:#fff0f2}.cream{background:#fff8e5}.subject-list,.unit-list,.topics,.pyq-list{display:flex;flex-direction:column;gap:12px}.subject-card{display:flex;align-items:center;gap:15px;padding:20px;transition:transform .15s,box-shadow .15s}.subject-card:hover,.unit-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #2634450c}.subject-icon{width:58px;height:58px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--pale)}.subject-icon>.icon{width:30px;height:30px}.subject-content{flex:1;min-width:0}.subject-content>.badge{float:left;margin-right:9px;margin-bottom:3px}.subject-content h3{font-size:17px;line-height:1.4}.subject-content p{font-size:12px;margin-top:5px}.subject-content .progress-track{margin-top:10px}.subject-card>.icon,.unit-card>.icon{width:18px;color:#7f8c9f}.unit-card{display:flex;gap:14px;padding:20px;align-items:center;transition:.15s}.unit-no{width:46px;height:48px;background:var(--pale);display:grid;place-items:center;border-radius:13px;font-weight:650;font-size:19px;flex-shrink:0}.unit-content{flex:1;min-width:0}.unit-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.unit-title h3{font-size:17px}.unit-title .badge{font-size:9px;padding:3px 7px}.unit-content>p{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:5px 0 9px}.unit-status{display:flex;gap:8px;align-items:center;margin-bottom:8px;color:var(--muted)}.unit-status .badge{font-size:10px;padding:2px 7px}.subheader{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:28px 0 3px}.subheader h1{font-size:28px}.subheader p{font-size:13px;margin-top:5px}.right-link{text-align:right;margin-top:-12px}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{border-radius:30px;background:var(--surface);padding:10px 19px;font-size:13px;font-weight:500;box-shadow:var(--shadow);border:1px solid var(--line);min-height:40px}.chip.selected{background:var(--forest);color:white;border-color:transparent}.topic{display:flex;align-items:center;gap:14px;cursor:pointer;padding:22px 20px;position:relative}.topic input{position:absolute;opacity:0;width:30px;height:30px}.check-ui{border:2px solid #9ba8b8;width:27px;height:27px;flex-shrink:0;display:grid;place-items:center;border-radius:7px}.check-ui .icon{display:none;width:20px}.topic input:checked+.check-ui{background:#16874d;border-color:#16874d;color:white}.topic input:checked+.check-ui .icon{display:block}.topic input:focus-visible+.check-ui{outline:3px solid #9971ed;outline-offset:3px}.topic-title{font-weight:550;flex:1;line-height:1.4;font-size:16px}.topic>.badge{font-size:10px}.unit-travel{display:flex;gap:12px;margin-top:8px}.unit-travel a{flex:1}.unit-travel small{display:block;font-size:11px;font-weight:400;opacity:.7;line-height:1.3}.button,.primary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:28px;padding:12px 20px;font-size:14px;font-weight:550;text-align:center;line-height:1.3}.primary{background:var(--forest);color:white;border:1px solid transparent}.outline{border:1px solid #dbe2e7;background:var(--surface);color:var(--ink)}.full{width:100%}.purple-button{background:var(--purple)!important;color:white!important;border:1px solid transparent}.amber-button{background:#ed8b0c;color:white}.button .icon{width:19px;height:19px}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.action-row>*{flex:1}.footnote{font-size:12px;text-align:center;margin:5px 0 0}.notice{display:flex;gap:12px;align-items:center;background:#edf8f2;font-size:13px;border-radius:18px;padding:18px;color:#5c7b6b}.notice>.icon{color:var(--forest)}.notice h3{font-size:16px;margin-bottom:5px}.notice p{font-size:13px}.notice a{text-decoration:underline}.notice.card{background:var(--surface)}.shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.shortcut{border-radius:20px;display:flex;gap:12px;align-items:center;padding:22px 18px}.shortcut>.icon{width:30px;height:30px;color:var(--forest)}.shortcut h3{font-size:16px}.shortcut p{font-size:11px;margin-top:4px}.bottom-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:var(--dock);width:calc(100% - 32px);max-width:800px;padding:6px;background:var(--surface);border:1px solid #ffffffa0;border-radius:60px;display:flex;z-index:35;box-shadow:0 8px 35px #152c3410;gap:2px}.bottom-nav a{display:flex;gap:8px;align-items:center;justify-content:center;min-height:54px;flex:1;border-radius:40px;font-size:15px;font-weight:500;padding:0 5px}.bottom-nav .active{color:white;background:#202733;box-shadow:inset 0 0 9px #ffffff0b}.bottom-nav a:last-child:not(.active){color:var(--purple)}.bottom-nav .active .icon{color:#d9b7ff}.bottom-nav .active:first-child .icon{color:#ffb197}.back-dock{position:fixed;bottom:var(--dock);left:max(0px,calc((100% - 860px)/2));z-index:35}.back-pill{background:linear-gradient(120deg,#ff6a77,#f45164);color:white;border-radius:0 40px 40px 0;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:125px;min-height:52px;padding:12px 24px;box-shadow:0 7px 19px #f4516426;font-weight:550}.filter-row{display:flex;gap:12px}.filter-row select{flex:1;min-width:0}.filter-row>.button{flex-shrink:0}.is-active{background:#fff1db;color:#a85705}.pyq-card{padding:22px}.pyq-title{display:flex;gap:10px;align-items:center;margin-bottom:10px}.pyq-title h3{font-size:17px}.question-text{color:var(--ink);font-size:16px;line-height:1.6}.years{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:13px}.years .badge{font-size:11px}.pyq-actions{display:flex;justify-content:space-between;margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.amber{color:#c87512}.analysis h2{font-size:22px}.table-scroll{overflow-x:auto;margin:16px 0;border-radius:13px}table{border-collapse:collapse;width:100%;text-align:center;font-size:13px}td,th{padding:11px 8px;border-bottom:1px solid var(--line)}thead,tfoot{background:#fff1d2;color:#a15c18}tbody tr:nth-child(even){background:#f6f8fb}tbody th{font-weight:500}.mode-card{position:relative;overflow:hidden;padding:28px;background:linear-gradient(135deg,var(--pale),var(--surface) 75%);color:var(--ink)}.mode-card h2{font-size:29px;margin:24px 0 12px;max-width:78%}.mode-card>p{font-size:16px;max-width:67%;min-height:50px}.mode-card .eyebrow{background:var(--pale);color:var(--accent)}.mode-art{position:absolute;right:20px;top:35px;font-size:90px;transform:rotate(-6deg);opacity:.95}.mode-features{display:block;font-size:12px;color:var(--accent);margin:22px 0 16px}.mode-card strong{display:flex;gap:8px;align-items:center;color:var(--accent);font-size:18px}.features{display:flex;align-items:center;justify-content:space-around;padding:20px;gap:15px;font-size:13px;color:#8c51be}.features span{display:flex;gap:8px;align-items:center}.features span+span{border-left:1px solid var(--line);padding-left:18px}.paper-card{display:flex;align-items:center;gap:20px}.paper-card>div:nth-child(2){flex:1}.paper-card h2{font-size:22px;margin-bottom:7px}.paper-card p{font-size:12px;margin-bottom:10px}.year-tile{background:var(--pale);width:80px;height:90px;flex-shrink:0;border-radius:22px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.year-tile .icon{width:30px;height:30px}.year-tile strong{font-size:22px}.resume{background:#f5f0ff}.resume h3{margin-bottom:8px}.resume .button{margin-top:14px}.form-card{display:flex;flex-direction:column;gap:22px}.form-card>h2{margin-bottom:0}label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:550}input:not([type=checkbox]),select{background:var(--surface);border:1px solid #dce2ea;border-radius:14px;padding:14px 16px;color:var(--ink);width:100%;min-height:49px;font-size:15px}input::placeholder{color:#a2aaba}input[type=checkbox]{accent-color:var(--green);width:22px;height:22px;cursor:pointer}select{cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.setup-brand{padding:30px 0 20px}.setup-shell{max-width:660px;padding-bottom:30px}.setup-shell .hero h1{font-size:30px}.setup-shell main{gap:24px}.setup-shell .form-card{padding:28px}.setup-shell .form-card h2{font-size:26px}.empty{text-align:center;padding:35px 20px}.empty h3{margin:12px 0}.empty p{font-size:14px;max-width:340px;margin:8px auto 18px}.task-row{display:flex;align-items:center;gap:14px;padding:20px 0}.task-row+ .task-row{border-top:1px solid var(--line)}.task-row>div{flex:1}.task-row h3{font-size:16px}.task-row p{font-size:12px;margin-top:5px}.task-list{padding:0 24px}.exam-form{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.exam-form button{grid-column:1/-1}.exam-form label{font-size:12px}.exam-form input{font-size:13px;padding:10px}.toggle-row{flex-direction:row;align-items:center;justify-content:space-between;margin-top:20px;font-size:13px}.availability{flex-direction:row;align-items:center;justify-content:space-between}.availability select{max-width:180px}.profile-hero{display:flex;gap:22px;align-items:center;padding:30px;border-radius:var(--radius)}.avatar{width:90px;height:90px;border-radius:50%;background:#fff1db;color:#a86c2d;border:2px solid #fff;display:grid;place-items:center;font-size:32px;font-weight:650;flex-shrink:0}.profile-hero h1{font-size:29px;margin-bottom:10px}.profile-hero p{font-size:13px}.profile-hero .chips{margin:12px 0}.profile-hero .button{min-height:35px;padding:8px 16px;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 10px;gap:4px}.stat b{font-size:30px;line-height:1.2}.stat span{font-size:13px;color:var(--muted)}.settings-list{padding:24px}.settings-list>h2{margin-bottom:8px}.settings-row{display:flex;align-items:center;text-align:left;gap:14px;padding:18px 0;width:100%;font-size:16px;font-weight:500}.settings-row+.settings-row{border-top:1px solid var(--line)}.settings-row>span:not(.mini-icon){flex:1}.settings-row small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:3px}.settings-row>.icon:last-child{margin-left:auto;width:17px;color:#8290a1}.mini-icon{width:40px;height:40px;border-radius:13px;background:var(--pale);display:grid;place-items:center;flex-shrink:0}.mini-icon.coral{background:#ffedf0;color:var(--coral)}.history-card{display:flex;gap:16px;align-items:center}.history-card>div{flex:1}.history-card p{font-size:14px;margin-top:5px}.prose{line-height:1.75}.prose h3{margin-top:25px;margin-bottom:8px}.prose p{font-size:15px}.quiz-shell{max-width:820px;padding-bottom:115px}.quiz-header{display:flex;gap:15px;align-items:center;justify-content:space-between;padding-top:30px;font-weight:600;font-size:18px;color:#8587a2}.timer{display:flex;align-items:center;gap:7px;border:1px solid #ac76ff;padding:8px 14px;border-radius:35px;color:var(--purple);font-size:20px;background:var(--surface);white-space:nowrap}.timer>.icon{width:21px}.quiz-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.quiz-toolbar>.button{min-height:38px;padding:9px 15px;font-size:13px}.exit{color:var(--coral);border:1px solid var(--coral);background:var(--surface)}.active-question{padding:35px 28px;margin-top:6px}.active-question h1{font-size:28px;line-height:1.4;letter-spacing:-.025em;margin-bottom:30px}.options{display:flex;flex-direction:column;gap:15px}.option{display:flex;gap:17px;align-items:center;border:1px solid #dbe0e8;border-radius:17px;padding:22px 20px;text-align:left;font-size:19px;min-height:78px;font-weight:500;transition:background .15s}.option.chosen{background:#f2eafb;border:2px solid #8a21fc;padding:21px 19px}.radio{width:25px;height:25px;border-radius:50%;border:2px solid #a4a6bc;flex-shrink:0;position:relative}.chosen .radio{border-color:var(--purple)}.chosen .radio:after{content:'';position:absolute;inset:4px;background:var(--purple);border-radius:50%}.quiz-dock{position:fixed;left:50%;transform:translateX(-50%);bottom:var(--dock);width:100%;max-width:820px;display:flex;align-items:center;justify-content:space-between;padding-right:24px;z-index:35;pointer-events:none}.quiz-dock>button{pointer-events:auto}.next-pill{background:linear-gradient(120deg,#9737ff,#7520e0);color:white;min-height:52px;border-radius:40px;padding:12px 27px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 7px 20px #8626e528;font-weight:550;min-width:125px}.quiz-demo{font-size:11px;color:#9fa5b6;text-align:center}.question-dropdown{border:1px solid #bb8aff;box-shadow:0 10px 40px #49306d18;position:absolute;top:151px;left:24px;right:24px;z-index:40;max-height:55dvh;overflow:auto;padding:22px}.question-dropdown .section-heading{margin:0 0 14px}.number-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.number{border:1px solid #dbe0e9;border-radius:9px;min-height:42px;font-size:14px;background:var(--surface)}.number small{display:block;font-size:10px}.number.answered{background:#f0e5ff;color:#7521cc}.number.current{border:2px solid var(--purple)}.question-dropdown p{margin-top:14px}.result-hero h1{font-size:58px}.result-hero h2{color:#8070a4;margin-bottom:12px}.result-hero>.sculpture{font-size:100px;margin-left:auto}.two-stats{display:flex;gap:25px;margin:15px 0}.two-stats>div{flex:1;min-width:0}.two-stats>div+div{border-left:1px solid var(--line);padding-left:25px}.two-stats p{font-size:13px;margin-bottom:6px}.two-stats b{font-size:28px}.two-stats .progress-track{margin-top:12px}.review-meta{display:flex;gap:7px;align-items:center;margin-bottom:14px}.time-chip{margin-left:auto;font-size:12px;color:#8a7aab;background:#f6f1ff;border-radius:20px;padding:4px 9px;display:flex;gap:5px;align-items:center}.time-chip .icon{width:15px;height:15px}.review h3{font-size:17px;line-height:1.5}.answer-review{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.answer-review>div{padding:12px 15px;border-radius:13px}.answer-review small{display:block;font-size:10px;color:#6f8193;margin-bottom:3px}.answer-review b{font-size:14px}.explanation{font-size:13px;line-height:1.6}.explanation b{font-weight:500}.review .badge{text-transform:capitalize}#toast{position:fixed;z-index:100;bottom:calc(90px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);max-width:calc(100% - 32px);padding:13px 20px;border-radius:14px;background:#202733;color:white;box-shadow:0 8px 30px #14213026;font-size:13px;opacity:0;pointer-events:none;transition:.2s;text-align:center;width:max-content}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:0;background:var(--surface);color:var(--ink);border-radius:26px;max-width:440px;width:calc(100% - 32px);padding:28px;box-shadow:0 20px 100px #18202e30}dialog::backdrop{background:#17213466;backdrop-filter:blur(3px)}dialog h2{margin-bottom:13px}dialog p{font-size:14px;line-height:1.7}.dialog-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}.dialog-actions>*{flex:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[data-theme=dark]{--bg:#121b21;--surface:#1c2830;--ink:#f1f4f8;--muted:#a6b2bf;--line:#2a3943;--shadow:0 5px 20px #00000015}[data-theme=dark] .card{border-color:#293942}[data-theme=dark] .hero,[data-theme=dark] .mode-card{color:#172432}[data-theme=dark] .hero p,[data-theme=dark] .mode-card p{color:#687b84}[data-theme=dark] .mint,[data-theme=dark] .lavender,[data-theme=dark] .rose,[data-theme=dark] .cream{color:#192733}[data-theme=dark] .avatar{color:#825726}[data-theme=dark] tbody tr:nth-child(even){background:#21313b}[data-theme=dark] .option.chosen{background:#36264d}[data-theme=dark] .number.answered{background:#3d2b59;color:#dbc4ff}[data-theme=dark] .notice{background:#20382e;color:#b7d7c3}[data-theme=dark] .profile-hero p{color:#687488}
@media(min-width:1000px){body{background:linear-gradient(125deg,#eaf4ee,#f4f0fb)}.app-shell{background:var(--bg);box-shadow:0 0 100px #243e3110;padding-left:40px;padding-right:40px}.hero{min-height:220px;padding:32px}.hero h1{font-size:36px}.subject-card{padding:24px}.subject-icon{width:65px;height:65px}.subject-content h3{font-size:19px}.subject-content p{font-size:14px}.quiz-shell{min-height:100dvh}.quiz-shell main{gap:24px}.question-dropdown{left:40px;right:40px}.main-header{padding-top:35px}.quiz-header{padding-top:35px}.profile-hero{padding:35px}.unit-card{padding:25px}}
@media(max-width:520px){body{font-size:14px}.app-shell{padding-left:16px;padding-right:16px;padding-bottom:128px}main{gap:16px}.wordmark{font-size:29px;letter-spacing:-1.4px;gap:4px}.wordmark img:not(.brand-logo-light):not(.brand-logo-dark){width:39px;height:39px}.header-actions{gap:7px}.round{width:36px;height:36px}.round .icon{width:21px;height:21px}.main-header{padding-top:22px}.semester{font-size:11px;padding:16px 0 20px}.semester span{font-size:10px}.hero{padding:22px;min-height:170px;border-radius:22px}.hero h1{font-size:27px;max-width:240px}.hero>div:first-child{max-width:78%}.hero p{font-size:12px;max-width:230px}.hero-art{width:39%;right:-10px;opacity:.92}.hero-art .sculpture{font-size:78px}.eyebrow{font-size:9px;padding:5px 8px}.card{padding:20px;border-radius:22px}.summary{gap:14px}.summary h2{font-size:18px}.summary p{font-size:12px}.ring{width:70px;height:70px}.ring b{font-size:20px}.ring:before{inset:8px}.section-heading h2{font-size:20px}.text-link{font-size:12px}.next-exam h2{font-size:22px}.calendar-art{width:68px;height:75px;border-radius:19px}.subject-card{gap:11px;padding:17px 14px}.subject-icon{width:48px;height:48px}.subject-icon>.icon{width:27px;height:27px}.subject-content h3{font-size:15px;line-height:1.3}.subject-content>.badge{font-size:9px;padding:3px 7px;margin-right:7px}.subject-content p{font-size:11px}.subject-card>.icon{width:15px}.subheader{padding-top:24px}.subheader h1{font-size:24px}.subheader p{font-size:12px}.unit-card{gap:10px;padding:18px 13px}.unit-no{width:38px;height:44px;border-radius:12px;font-size:17px}.unit-title h3{font-size:15px}.unit-content>p{font-size:11px}.unit-status{gap:5px}.unit-status small{font-size:10px}.unit-status .badge{font-size:9px}.unit-title>.badge{font-size:8px}.topic{gap:11px;padding:20px 15px}.topic-title{font-size:14px}.topic>.badge{font-size:8px;padding:4px 6px}.check-ui{width:25px;height:25px}.chip{font-size:12px;padding:9px 14px}.bottom-nav{width:calc(100% - 24px);padding:5px}.bottom-nav a{min-height:49px;font-size:12px;gap:6px}.bottom-nav .icon{width:21px;height:21px}.back-pill,.next-pill{min-height:49px;min-width:113px;padding:12px 20px;font-size:16px}.back-pill .icon,.next-pill .icon{width:22px}.button,.primary,.outline{font-size:12px;padding:12px 16px}.unit-travel a{gap:5px}.unit-travel small{font-size:9px;margin-top:4px}.shortcut{gap:9px;padding:18px 12px}.shortcut h3{font-size:14px}.shortcut p{font-size:10px}.shortcut>.icon{width:23px;height:23px}.filter-row select{font-size:13px}.pyq-title h3{font-size:15px}.question-text{font-size:14px}.pyq-card{padding:19px}.analysis{padding:18px 14px}.analysis h2{font-size:20px}td,th{padding:10px 7px;font-size:12px}.mode-card{padding:25px}.mode-card h2{font-size:26px;max-width:85%;margin-top:24px}.mode-card>p{font-size:13px;max-width:70%}.mode-art{font-size:75px;right:15px;top:60px}.mode-features{font-size:10px;margin-top:18px}.mode-card strong{font-size:16px}.features{font-size:10px;padding:17px 13px;gap:7px}.features .icon{width:20px}.features span+span{padding-left:10px}.paper-card{gap:13px;flex-wrap:wrap}.paper-card h2{font-size:20px}.paper-card .button{margin-left:auto;min-height:39px}.paper-card .year-tile{width:65px;height:77px}.paper-card .year-tile strong{font-size:20px}.form-card{gap:20px}label{font-size:14px}input:not([type=checkbox]),select{font-size:14px;padding:13px}.form-grid{gap:10px}.exam-form{grid-template-columns:1fr 1fr}.stat-grid{gap:9px}.stat{padding:20px 8px;border-radius:18px}.stat b{font-size:27px}.stat span{font-size:11px}.profile-hero{padding:23px;gap:15px;align-items:flex-start}.avatar{width:65px;height:65px;font-size:26px}.profile-hero h1{font-size:25px}.profile-hero p{font-size:12px}.profile-hero .badge{font-size:9px}.profile-hero .chips{gap:5px}.settings-list{padding:20px}.settings-row{font-size:15px;gap:12px;padding:17px 0}.settings-row small{font-size:11px}.mini-icon{width:36px;height:36px}.quiz-header{font-size:14px;padding-top:24px}.timer{font-size:17px;padding:7px 12px}.quiz-shell main{gap:18px}.active-question{padding:26px 20px}.active-question h1{font-size:23px;line-height:1.4;margin-bottom:25px}.option{font-size:16px;padding:20px 15px;gap:14px;min-height:72px}.option.chosen{padding:19px 14px}.radio{width:23px;height:23px}.options{gap:13px}.quiz-dock{padding-right:16px}.question-dropdown{top:135px;left:16px;right:16px;padding:18px}.number-grid{grid-template-columns:repeat(5,1fr);gap:8px}.number{min-height:40px}.result-hero h1{font-size:52px}.result-hero>.sculpture{font-size:70px}.two-stats{gap:18px}.two-stats>div+div{padding-left:18px}.two-stats p{font-size:11px}.two-stats b{font-size:25px}.answer-review{gap:8px}.answer-review>div{padding:11px}.answer-review b{font-size:12px}.review h3{font-size:15px}.explanation{font-size:12px}.setup-shell{padding-bottom:30px}.setup-brand{padding-top:24px}.setup-shell .hero h1{font-size:27px}.setup-shell .form-card{padding:24px}.setup-shell .form-card h2{font-size:23px}.setup-shell main{gap:20px}.task-row h3{font-size:14px}.task-row p{font-size:11px}.task-list{padding:0 20px}.task-row{padding:18px 0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hero.green,.hero.blue,.hero.purple,.hero.orange,.hero.teal,.hero.yellow{color:var(--ink)}
.hero.green{background:linear-gradient(110deg,#dcf8e9,#d5f4e5)}
.hero.teal{background:linear-gradient(110deg,#e1f9f6,#d7f1ee)}
.hero.yellow{background:linear-gradient(110deg,#fff8df,#fff2ca)}
.mode-art{width:29%;height:140px;object-fit:contain;top:40px;font-size:initial}.mode-card h2{max-width:74%}.result-art{width:34%;height:150px;object-fit:contain;margin-left:auto}.hero-art img{opacity:.92}.hero h1,.hero p{position:relative;text-shadow:0 1px 6px #ffffff50}.hero-art{opacity:.85}
@media(max-width:520px){.mode-art{height:105px;top:55px;right:12px}.result-art{height:115px}.mode-card h2{font-size:25px}.hero-art{opacity:.75;right:-15px}}
.topic{flex-direction:row;text-align:left}

/* Theme controls keep both choices visible and expose the selected state. */
.appearance-row{flex-wrap:wrap}.appearance-row>.icon{color:var(--muted)}.theme-control{display:flex;align-items:center;gap:9px;margin-left:auto}.theme-label{font-size:13px;color:var(--muted);font-weight:400}.theme-label.is-selected{color:var(--ink);font-weight:600}.theme-switch{width:54px;min-height:44px;padding:0;position:relative;flex-shrink:0;border-radius:22px}.theme-switch:before{content:'';position:absolute;inset:7px 0;border-radius:30px;background:#dce4eb;box-shadow:inset 0 0 0 1px #c9d4df}.theme-thumb{position:absolute;width:24px;height:24px;left:3px;top:10px;background:white;border-radius:50%;box-shadow:0 2px 5px #14213025;transition:transform .2s}.theme-switch[aria-checked=true]:before{background:#8054c8;box-shadow:inset 0 0 0 1px #a680e5}.theme-switch[aria-checked=true] .theme-thumb{transform:translateX(24px)}
.ring b{color:var(--ink)}
/* Dark surfaces use their own palettes, including headings, labels and summaries. */
[data-theme=dark]{color-scheme:dark}
[data-theme=dark] body{background:var(--bg)}
[data-theme=dark] .hero{--hero-start:#1d3b30;--hero-end:#244738;background:linear-gradient(110deg,var(--hero-start),var(--hero-end));color:var(--ink)}
[data-theme=dark] .hero.blue{--hero-start:#1c3444;--hero-end:#244654}
[data-theme=dark] .hero.purple{--hero-start:#332746;--hero-end:#403052}
[data-theme=dark] .hero.orange{--hero-start:#43311f;--hero-end:#513b27}
[data-theme=dark] .hero.teal{--hero-start:#1b3938;--hero-end:#224947}
[data-theme=dark] .hero.yellow{--hero-start:#3d3621;--hero-end:#4b4228}
[data-theme=dark] .hero h1,[data-theme=dark] .hero p{text-shadow:none}
[data-theme=dark] .hero p{color:#c7d3d9}
[data-theme=dark] .hero .eyebrow{background:#ffffff12;color:#d6ebe0}
[data-theme=dark] .hero.purple .eyebrow{color:#e0ccff}
[data-theme=dark] .hero.orange .eyebrow,[data-theme=dark] .hero.yellow .eyebrow{color:#ffe0a8}
[data-theme=dark] .hero-art{opacity:.9}
[data-theme=dark] .result-hero h2{color:#d4b9f3}
[data-theme=dark] .mint{background:#203a30;color:var(--ink)}
[data-theme=dark] .lavender{background:#332a44;color:var(--ink)}
[data-theme=dark] .rose{background:#422b35;color:var(--ink)}
[data-theme=dark] .cream{background:#3d3728;color:var(--ink)}
[data-theme=dark] .mint p,[data-theme=dark] .lavender p,[data-theme=dark] .rose p,[data-theme=dark] .cream p,[data-theme=dark] .stat span,[data-theme=dark] .answer-review small{color:#b8c5ce}
[data-theme=dark] .mode-card{color:var(--ink);background:linear-gradient(135deg,#3a2a4c,var(--surface) 80%)}
[data-theme=dark] .mode-card.orange{background:linear-gradient(135deg,#44321f,var(--surface) 80%)}
[data-theme=dark] .mode-card p{color:#bdc8d2}
[data-theme=dark] .mode-card strong,[data-theme=dark] .mode-features{color:#d6b2ff}
[data-theme=dark] .mode-card.orange strong,[data-theme=dark] .mode-card.orange .mode-features{color:#ffc781}
[data-theme=dark] .ring{background:conic-gradient(#54ca8a calc(var(--p)*1%),#365246 0)}
[data-theme=dark] .wordmark,[data-theme=dark] .text-link,[data-theme=dark] .semester>.icon,[data-theme=dark] .shortcut>.icon{color:#8bdeb0}
[data-theme=dark] .resume{background:#30273f}
[data-theme=dark] .bottom-nav{background:rgba(24,34,43,0.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.14);box-shadow:0 12px 42px rgba(0,0,0,0.65),0 2px 10px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.08)}
[data-theme=dark] .bottom-nav a{color:#8da0b3;transition:color .18s,background .18s}
[data-theme=dark] .bottom-nav a:hover{color:#f1f5f9}
[data-theme=dark] .bottom-nav a.active{background:linear-gradient(135deg,#184232,#102e23);color:#6ee7b7;border:1px solid rgba(110,231,183,0.35);box-shadow:0 4px 16px rgba(0,0,0,0.45),0 0 12px rgba(110,231,183,0.18),inset 0 1px 0 rgba(255,255,255,0.12);font-weight:600}
[data-theme=dark] .bottom-nav a.active .icon,[data-theme=dark] .bottom-nav a.active:first-child .icon{color:#6ee7b7}
[data-theme=dark] .bottom-nav a.active .nav-icon-3d{filter:drop-shadow(0 2px 8px rgba(110,231,183,0.35));transform:translateY(-1px) scale(1.05)}
[data-theme=dark] .bottom-nav a:last-child:not(.active){color:#8da0b3}
[data-theme=dark] .back-pill{background:linear-gradient(120deg,#ff5768,#e03248);color:#fff;border:1px solid rgba(255,255,255,0.22);border-left:none;box-shadow:0 8px 24px rgba(224,50,72,0.45),0 4px 12px rgba(0,0,0,0.5)}
[data-theme=dark] .back-pill:hover{filter:brightness(1.08);box-shadow:0 10px 28px rgba(224,50,72,0.55),0 4px 14px rgba(0,0,0,0.6)}
[data-theme=dark] .next-pill{background:linear-gradient(120deg,#9f47ff,#731ee0);color:#fff;border:1px solid rgba(255,255,255,0.22);box-shadow:0 8px 26px rgba(135,38,229,0.48),0 4px 12px rgba(0,0,0,0.5)}
[data-theme=dark] .next-pill:hover{filter:brightness(1.08);box-shadow:0 10px 30px rgba(135,38,229,0.6),0 4px 14px rgba(0,0,0,0.6)}
[data-theme=dark] .quiz-dock button:disabled,[data-theme=dark] button:disabled{opacity:.45;background:#23313a!important;color:#7b8e9f!important;border:1px solid #334350!important;box-shadow:none!important}
@media(max-width:360px){.appearance-row{gap:8px}.theme-control{gap:6px}.theme-label{font-size:12px}}
[data-theme=dark] .notice>.icon{color:#8bdeb0}
[data-theme=dark] .mode-card .eyebrow{background:#4c3864;color:#eadcff}
[data-theme=dark] .mode-card.orange .eyebrow{background:#624525;color:#ffe0b4}
[data-theme=dark] .features{color:#d6b9ef}

/* Small, locally bundled 3D navigation assets share the hero artwork style. */
.bottom-nav .nav-icon-3d{display:block;width:32px;height:32px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 2px #152c3420);transition:transform .18s}
.bottom-nav a.active .nav-icon-3d{transform:translateY(-1px);filter:drop-shadow(0 2px 3px #0003)}
.bottom-nav a:last-child:not(.active){color:var(--ink)}
@media(max-width:520px){.bottom-nav .nav-icon-3d{width:29px;height:29px}.bottom-nav a{gap:5px}}
@media(max-width:360px){.bottom-nav .nav-icon-3d{width:26px;height:26px}.bottom-nav a{gap:4px;font-size:11px}}

.main-header{padding-bottom:24px}
.profile-initial{background:#fff1db;color:#a86c2d;border:1px solid #ecd9ba;font-size:19px;font-weight:650;line-height:1;letter-spacing:0;box-shadow:none}
[data-theme=dark] .profile-initial{background:#493a2c;color:#ffdfae;border-color:#65503c}
.exam-schedule{list-style:none;padding:0;margin:8px 0 18px}.exam-schedule-row{display:flex;align-items:center;gap:16px;padding:18px 0}.exam-schedule-row+.exam-schedule-row{border-top:1px solid var(--line)}.schedule-date{width:56px;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;background:var(--pale);flex-shrink:0}.schedule-date b{font-size:25px;line-height:1.1}.schedule-date small{font-size:12px}.exam-schedule-row h3{font-size:16px;margin:6px 0}.exam-schedule-row p{font-size:12px}.schedule-meta{margin-top:10px}
@media(max-width:520px){.main-header{padding-bottom:20px}.profile-initial{font-size:17px}.exam-schedule-row{gap:12px}.exam-schedule-row h3{font-size:14px}.schedule-date{width:48px;min-height:58px}.exam-schedule-row p{font-size:11px}}

/* Profile footer: compact social links, version, and one-line animated wordmark. */
.profile-footer{padding:14px 0 24px;margin-top:4px;container-type:inline-size}.profile-footer h2{font-size:22px;letter-spacing:-.025em;margin-bottom:18px}.social-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.social-link{display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;padding:12px 10px;border-radius:17px;background:#edf0f3;color:#303740;font-weight:500;font-size:15px;transition:background .18s,transform .18s}.social-link .icon{width:23px;height:23px}.social-link:disabled{opacity:.6;cursor:default}.social-link[href]:hover{background:#e3e8ed;transform:translateY(-1px)}.app-version{text-align:center;font-size:13px;color:var(--muted);margin:28px 0 34px;letter-spacing:.04em}.brand-shimmer{--brand-base:#bdc2c8;--brand-shine:#11151a;display:block;width:100%;font-size:15.4cqw;font-weight:750;letter-spacing:-.055em;line-height:1.2;white-space:nowrap;color:var(--brand-base);margin:0;background:linear-gradient(110deg,var(--brand-base) 35%,var(--brand-shine) 48%,var(--brand-base) 61%);background-size:250% 100%;background-position:150% center;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:brand-shine 5s ease-in-out infinite}
@keyframes brand-shine{0%,12%{background-position:150% center}80%,100%{background-position:-50% center}}
[data-theme=dark] .social-link{background:#26353f;color:#e4eaf0}[data-theme=dark] .social-link[href]:hover{background:#30424e}[data-theme=dark] .brand-shimmer{--brand-base:#53626e;--brand-shine:#fff}
@media(max-width:520px){.profile-footer h2{font-size:20px}.social-links{gap:8px}.social-link{gap:6px;min-height:50px;padding:11px 6px;font-size:12px;border-radius:14px}.social-link .icon{width:20px;height:20px}.app-version{margin:25px 0 32px}}
@media(prefers-reduced-motion:reduce){.brand-shimmer{animation:none;background:none;-webkit-text-fill-color:currentColor}}

.brand-signature .brand-byline{font-size:8.4cqw;font-weight:650;letter-spacing:-.04em;line-height:1.2;margin-top:6px}

/* Official Logo image styles */
.wordmark img,
.brand-logo-light,
.brand-logo-dark{width:auto;height:44px;max-width:240px;object-fit:contain}
.brand-logo-light,
.wordmark .brand-logo-light{display:block!important}
.brand-logo-dark,
.wordmark .brand-logo-dark{display:none!important}
[data-theme=dark] .brand-logo-light,
[data-theme=dark] .wordmark .brand-logo-light{display:none!important}
[data-theme=dark] .brand-logo-dark,
[data-theme=dark] .wordmark .brand-logo-dark{display:block!important}
.setup-brand img,.setup-brand .brand-logo-light,.setup-brand .brand-logo-dark{height:58px;width:auto;max-width:300px}
@media(max-width:520px){
  .wordmark img,
  .brand-logo-light,
  .brand-logo-dark{height:36px;max-width:195px}
  .setup-brand img,.setup-brand .brand-logo-light,.setup-brand .brand-logo-dark{height:48px;max-width:240px}
}
/* Interactive Weightage & Topic Flow Components */
.weightage-section{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}
.weightage-meter-wrap{background:var(--surface-card,#ffffff);border:1px solid var(--border-subtle,#e2e8f0);border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:0.75rem;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.weightage-meter{display:flex;width:100%;height:16px;border-radius:999px;overflow:hidden;background:#e2e8f0;gap:2px}
.weightage-segment{height:100%;transition:width 0.3s ease,filter 0.2s ease;cursor:pointer}
.weightage-segment:hover{filter:brightness(1.15)}
.weightage-legend{display:flex;flex-wrap:wrap;gap:0.75rem;font-size:0.78rem;font-weight:500}
.weightage-legend-item{display:inline-flex;align-items:center;gap:0.35rem}
.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.flow-card{background:var(--surface-card,#ffffff);border:1px solid var(--border-subtle,#e2e8f0);border-radius:14px;padding:1.2rem;display:flex;flex-direction:column;gap:0.65rem;transition:transform 0.2s ease,box-shadow 0.2s ease}
.flow-card:hover{border-color:var(--primary,#6366f1);transform:translateY(-2px);box-shadow:0 4px 14px rgba(99,102,241,0.08)}
.flow-header{display:flex;align-items:center;flex-wrap:wrap;gap:0.6rem}
.flow-header h4{margin:0;font-size:1.02rem;font-weight:600;flex:1;min-width:140px}
.flow-marks{font-size:0.85rem;font-weight:600;color:#64748b;margin-left:auto}
.flow-path{background:rgba(99,102,241,0.04);border-left:3px solid #6366f1;border-radius:0 8px 8px 0;padding:0.65rem 0.85rem}
.flow-label{font-size:0.72rem;text-transform:uppercase;letter-spacing:0.05em;font-weight:700;color:#6366f1;display:block;margin-bottom:0.2rem}
.flow-text{margin:0;font-size:0.88rem;line-height:1.45;color:var(--text-primary,#1e293b)}
.flow-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;font-size:0.82rem;color:#64748b;padding-top:0.3rem;border-top:1px dashed var(--border-subtle,#e2e8f0)}
.small-btn{padding:0.4rem 0.85rem;font-size:0.82rem;border-radius:8px}
.question-flow-bar{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin-bottom:0.85rem;flex-wrap:wrap}
.flow-type-badge{font-size:0.78rem;font-weight:600;color:#64748b;background:rgba(0,0,0,0.04);padding:0.2rem 0.55rem;border-radius:6px}
.unit-mastery-card{display:flex;flex-direction:column;gap:0.85rem}
.unit-mastery-list{display:flex;flex-direction:column;gap:0.75rem}
.unit-mastery-row{display:flex;flex-direction:column;gap:0.35rem;padding:0.6rem 0;border-bottom:1px solid var(--border-subtle,#e2e8f0)}
.unit-mastery-row:last-child{border-bottom:none}
.unit-mastery-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;font-size:0.9rem}
.revision-tip{background:rgba(239,68,68,0.06);color:#dc2626;padding:0.35rem 0.65rem;border-radius:6px;font-size:0.8rem}
[data-theme=dark] .weightage-meter-wrap,[data-theme=dark] .flow-card{background:#1e293b;border-color:#334155}
[data-theme=dark] .flow-path{background:rgba(99,102,241,0.12)}
[data-theme=dark] .flow-text{color:#f1f5f9}
[data-theme=dark] .flow-meta,[data-theme=dark] .unit-mastery-row{border-color:#334155}
[data-theme=dark] .revision-tip{background:rgba(239,68,68,0.15);color:#fca5a5}

/* Header Notification Pip & Round Actions */
.round{position:relative;transition:transform 0.15s ease,background 0.15s ease,border-color 0.15s ease}
.round:hover{transform:scale(1.04)}
.round:active{transform:scale(0.96)}
.notif-pip{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px var(--surface,#fff);animation:pulse-pip 2.5s infinite}
@keyframes pulse-pip{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:0.8}}
[data-theme=dark] .notif-pip{box-shadow:0 0 0 2px #18222b}

/* Desktop / Laptop Experience Barrier Notice */
.desktop-gate-overlay{position:fixed;inset:0;background:rgba(15,23,42,0.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}
.desktop-gate-card{background:var(--surface,#ffffff);color:var(--ink,#1e293b);border-radius:28px;max-width:540px;width:100%;padding:36px;box-shadow:0 25px 80px rgba(0,0,0,0.35);border:1px solid rgba(255,255,255,0.12);text-align:center;position:relative;animation:gate-appear 0.3s cubic-bezier(0.16,1,0.3,1)}
@keyframes gate-appear{from{opacity:0;transform:scale(0.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}
.desktop-gate-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:30px;background:#e0f2fe;color:#0284c7;font-size:12px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:16px}
[data-theme=dark] .desktop-gate-badge{background:#0c4a6e;color:#7dd3fc}
.desktop-gate-card h2{font-size:26px;font-weight:750;letter-spacing:-0.03em;margin-bottom:12px;color:var(--ink,#0f172a)}
.desktop-gate-card p{font-size:15px;line-height:1.6;color:var(--muted,#64748b);margin-bottom:20px}
.desktop-gate-card .gate-highlight{color:#15864c;font-weight:600}
.desktop-gate-qr-box{background:var(--pale,#f8fafc);border:1px dashed #cbd5e1;border-radius:18px;padding:16px;margin:20px 0;display:flex;align-items:center;gap:16px;text-align:left}
[data-theme=dark] .desktop-gate-qr-box{background:#18222c;border-color:#334155}
.desktop-gate-qr-box .icon{width:36px;height:36px;color:#15864c;flex-shrink:0}
.desktop-gate-qr-box b{display:block;font-size:14px;margin-bottom:2px}
.desktop-gate-qr-box small{font-size:12px;color:var(--muted,#64748b)}
.desktop-gate-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px}

/* Desktop Frame Simulator */
@media(min-width:861px){
  body{background:radial-gradient(circle at 50% 0%,#e2f1ea,#d8e2ea)}
  [data-theme=dark] body{background:radial-gradient(circle at 50% 0%,#0f172a,#0a0f18)}
  .app-shell{max-width:480px;box-shadow:0 18px 60px rgba(15,23,42,0.18);border-left:1px solid rgba(0,0,0,0.06);border-right:1px solid rgba(0,0,0,0.06);border-radius:32px;margin:24px auto;background:var(--bg)}
  [data-theme=dark] .app-shell{box-shadow:0 18px 60px rgba(0,0,0,0.6);border-color:rgba(255,255,255,0.06)}
  .bottom-nav{max-width:448px}
  .quiz-dock{max-width:480px}
}

/* Instant Install Bottom Sheet Popup */
.install-sheet-backdrop{position:fixed;inset:0;background:rgba(15,23,42,0.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:9000;opacity:0;pointer-events:none;transition:opacity 0.25s ease}
.install-sheet-backdrop.active{opacity:1;pointer-events:auto}
.install-bottom-sheet{position:fixed;left:50%;bottom:0;transform:translate(-50%,100%);width:100%;max-width:540px;background:var(--surface,#ffffff);border-radius:28px 28px 0 0;padding:24px 24px 34px;z-index:9001;box-shadow:0 -12px 50px rgba(0,0,0,0.28);border-top:1px solid rgba(255,255,255,0.2);transition:transform 0.32s cubic-bezier(0.16,1,0.3,1);will-change:transform}
.install-sheet-backdrop.active .install-bottom-sheet{transform:translate(-50%,0)}
.sheet-drag-handle{width:40px;height:5px;border-radius:999px;background:#cbd5e1;margin:0 auto 16px}
[data-theme=dark] .sheet-drag-handle{background:#475569}
.sheet-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.sheet-header img{width:56px;height:56px;border-radius:14px;box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.sheet-header h3{font-size:20px;font-weight:700;margin:0}
.sheet-header p{font-size:13px;color:var(--muted,#64748b);margin:2px 0 0}
.sheet-steps{background:var(--pale,#f8fafc);border-radius:18px;padding:16px;margin:16px 0;display:flex;flex-direction:column;gap:12px}
[data-theme=dark] .sheet-steps{background:#18222c}
.sheet-step{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;line-height:1.45}
.sheet-step-badge{background:#15864c;color:#ffffff;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0}
.sheet-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}

/* Legal Documents Styling (Privacy, Terms, About) */
.legal-document{padding:32px 26px;border-radius:24px;line-height:1.7}
.legal-header{border-bottom:1px solid var(--line,#e2e8f0);padding-bottom:18px;margin-bottom:22px}
.legal-header h1{font-size:28px;font-weight:750;margin:10px 0 6px;letter-spacing:-0.03em}
.legal-meta{font-size:13px;color:var(--muted,#64748b)}
.legal-tagline{font-size:16px;font-weight:600;color:#15864c}
.legal-document h2{font-size:19px;font-weight:700;margin:24px 0 8px;color:var(--ink,#0f172a)}
.legal-document h3{font-size:16px;font-weight:650;margin:18px 0 6px}
.legal-document p{font-size:14.5px;line-height:1.7;margin-bottom:14px;color:var(--ink,#334155)}
.legal-document ul{padding-left:22px;margin:10px 0 16px}
.legal-document li{font-size:14px;line-height:1.65;margin-bottom:6px;color:var(--ink,#334155)}
.legal-alert{background:rgba(239,68,68,0.06);border-left:4px solid #ef4444;border-radius:0 14px 14px 0;padding:14px 16px;margin:18px 0}
.legal-alert strong{color:#b91c1c}
.legal-alert p{margin:0;color:#991b1b;font-size:13.5px}
[data-theme=dark] .legal-alert{background:rgba(239,68,68,0.12)}
[data-theme=dark] .legal-alert strong{color:#fca5a5}
[data-theme=dark] .legal-alert p{color:#fecaca}
[data-theme=dark] .legal-document p,[data-theme=dark] .legal-document li{color:#cbd5e1}
.legal-footer{margin-top:28px;padding-top:18px;border-top:1px solid var(--line,#e2e8f0);font-size:12px;color:var(--muted,#64748b);text-align:center}


