:root{--bg:#10112b;--navy:#1a1c42;--panel:#222451;--panel2:#292a60;--lav:#a99dff;--pink:#ff66bc;--hot:#ff4ba5;--cyan:#63eafa;--gold:#ffe36f;--text:#f9f8ff;--muted:#c8c6e6;--line:#ffffff29;--good:#70f5c2;--bad:#ff8a9e;--round:22px;--shadow:0 13px 32px #04031760; font-family:'M PLUS Rounded 1c','Hiragino Maru Gothic ProN','Yu Gothic',sans-serif}
*{box-sizing:border-box}html{background:#111229}body{margin:0;min-height:100dvh;color:var(--text);font-size:15px;line-height:1.6;font-weight:700;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.42}a{color:var(--cyan)}.background-shapes{position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 10% 7%,#6345af 0,transparent 34%),radial-gradient(circle at 91% 38%,#8f2e8e 0,transparent 33%),linear-gradient(150deg,#11162f,#171336 65%,#080d29)}.background-shapes i{position:absolute;width:140px;height:140px;border:1px solid #ffffff14;border-radius:35%;transform:rotate(25deg)}.background-shapes i:nth-child(1){top:13%;left:4%}.background-shapes i:nth-child(2){top:65%;right:3%;width:180px;height:180px}.background-shapes i:nth-child(3){bottom:0;left:18%;width:100px;height:100px}
.app-frame{max-width:550px;min-height:100dvh;margin:0 auto;position:relative;background:#131430d9;box-shadow:0 0 100px #0005;overflow:hidden}.boot{padding:70px 20px;text-align:center}.app-scroll{min-height:100dvh;padding:16px 17px 116px}.page-head{display:flex;align-items:center;gap:12px;margin:6px 0 17px}.page-head h1,.page-head h2{margin:0;font-size:20px;font-weight:900;line-height:1.3;letter-spacing:.01em}.head-sub{font-size:11px;letter-spacing:.08em;color:var(--cyan);font-weight:900}.back-btn,.icon-btn{flex-shrink:0;border:1px solid #ffffff28;background:#ffffff14;width:43px;height:43px;border-radius:15px;font-size:20px;display:grid;place-items:center}.spacer{flex:1}.pill{border-radius:99px;padding:5px 11px;background:#ffffff18;font-size:11px;color:#fff;white-space:nowrap;border:1px solid #ffffff26}.badge-gold{color:#211843;background:var(--gold);font-size:10px;border-radius:99px;padding:4px 10px;font-weight:900;display:inline-flex;align-items:center}.badge-pink{color:#fff;background:#ff4f99;padding:4px 9px;border-radius:99px;font-size:10px}.badge-cyan{color:#112641;background:#75eeff;padding:4px 9px;border-radius:99px;font-size:10px}.badge-neutral{color:#ddd8f6;background:#ffffff25;padding:4px 9px;border-radius:99px;font-size:10px}.badge-good{background:#21745c;color:#b4ffdb;padding:4px 9px;border-radius:99px;font-size:10px}
.primary-btn,.secondary-btn,.pink-btn,.small-btn{appearance:none;border:0;border-radius:18px;font-weight:900;min-height:50px;padding:12px 18px;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;box-shadow:var(--shadow)}.primary-btn{background:linear-gradient(120deg,#ffe86c,#ffa832);color:#35234f;box-shadow:0 8px 21px #ffb73750,inset 0 -3px #ad6a3035}.pink-btn{background:linear-gradient(120deg,#ff86cd,#ff4b9d);color:#fff;box-shadow:0 8px 22px #ed3ca641}.secondary-btn{border:1px solid #ffffff40;background:#ffffff14;color:#fff;box-shadow:none}.small-btn{background:#ffffff15;border:1px solid #ffffff33;min-height:37px;border-radius:12px;font-size:12px;padding:8px 13px;box-shadow:none}.wide{width:100%}.two-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.primary-btn:active,.pink-btn:active,.secondary-btn:active,.card-action:active{transform:translateY(2px)}
.card{border:1px solid var(--line);border-radius:var(--round);padding:17px;background:linear-gradient(140deg,#282850,#222347);box-shadow:0 9px 22px #07051a38;margin-bottom:13px}.card p{margin:6px 0;color:var(--muted);font-size:13px}.card h3{margin:0 0 8px;font-size:17px;font-weight:900}.section-head{display:flex;justify-content:space-between;align-items:center;margin:19px 1px 9px;gap:8px}.section-head h2{font-size:16px;margin:0;font-weight:900}.section-head small{color:var(--lav);font-size:11px}.caption{font-size:12px;color:var(--muted)}.tiny{font-size:11px;color:var(--muted)}.muted{color:var(--muted)}.em{color:var(--gold)}.em-pink{color:var(--pink)}.center{text-align:center}.label{font-size:12px;color:var(--cyan);font-weight:900;letter-spacing:.08em}.divider{height:1px;background:var(--line);margin:17px 0}.info-box{background:#132f4b;border:1px solid #42a9d164;padding:12px 14px;border-radius:15px;font-size:12px;color:#d9f6ff}.warn-box{background:#443320;border:1px solid #f6bb5770;padding:12px 14px;border-radius:15px;font-size:12px;color:#fff0cd}.success-box{background:#1a463f;border:1px solid #58c29c77;padding:12px 14px;border-radius:15px;font-size:12px;color:#e2ffef}
/* Original title artwork takes the full first screen, no reinterpretation of the chosen artwork */
.splash{min-height:100dvh;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:15px 20px max(22px,env(safe-area-inset-bottom));background:#79c7f7}.splash-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}.splash::after{content:'';position:absolute;inset:58% 0 0;background:linear-gradient(transparent,#16154499 55%,#14153a 94%);pointer-events:none}.splash-controls{position:relative;z-index:1;display:grid;gap:8px}.splash-start{min-height:66px;border-radius:22px;font-size:20px;letter-spacing:1px;border:3px solid #fff8;color:#222048;box-shadow:0 10px 0 #e39c2d90,0 12px 25px #140f4580;background:linear-gradient(180deg,#fff998,#ffb837)}.splash-note{text-align:center;font-size:11px;color:#fff;text-shadow:0 2px 5px #161544;font-weight:900}.splash-skip{border:0;background:#1d1a5de3;color:#fff;padding:7px 15px;border-radius:50px;justify-self:center;font-size:12px}
.hero{background:radial-gradient(circle at top right,#6639a7,transparent 64%),linear-gradient(145deg,#32316c,#242352);border:1px solid #a48aff65;border-radius:24px;padding:17px;position:relative;overflow:hidden;box-shadow:0 12px 22px #03021540}.hero:before{content:'⚡';font-size:145px;opacity:.08;position:absolute;right:-30px;top:-40px;transform:rotate(-20deg)}.hero-head{display:flex;gap:12px;align-items:center}.hero-art{width:78px;height:82px;flex:0 0 auto;border-radius:19px;object-fit:cover;object-position:44% 71%;border:3px solid #ffe87f;box-shadow:0 0 13px #ffcb5980}.hero h1{margin:0;font-size:18px;line-height:1.5;font-weight:900;text-shadow:0 2px 0 #121432}.hero strong{color:var(--gold)}.hero .slogan{margin-top:12px;font-size:13px;color:#fff}.goal-progress{margin-top:16px}.progress-track{height:10px;border-radius:50px;background:#0d0f2e;overflow:hidden;border:1px solid #ffffff18}.progress-fill{height:100%;background:linear-gradient(90deg,#54e3f7,#7df7c0);border-radius:50px;transition:width .25s}.progress-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:6px}.metric-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.metric{padding:10px 6px;text-align:center;background:#ffffff11;border:1px solid #ffffff20;border-radius:15px}.metric b{display:block;font-size:21px;font-weight:900;color:var(--gold)}.metric span{font-size:10px;color:var(--muted)}
.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.mode-card{min-height:134px;border:1px solid #ffffff38;border-radius:20px;padding:17px 13px;background:linear-gradient(135deg,#4e358f,#333174);text-align:left;position:relative;overflow:hidden;box-shadow:0 5px 0 #0a0c2780}.mode-card:nth-child(2){background:linear-gradient(125deg,#913c83,#582f7f)}.mode-card .emoji{font-size:28px;display:block;margin-bottom:8px}.mode-card strong{font-size:17px;display:block;line-height:1.25}.mode-card small{font-size:11px;color:#ffffffc7;display:block;margin-top:6px}.mode-card .arrow{position:absolute;right:12px;bottom:9px;font-size:25px;color:#ffde78}.action-stack{display:grid;gap:9px}.card-action{width:100%;border:1px solid #ffffff28;display:flex;align-items:center;gap:13px;background:#ffffff0b;text-align:left;border-radius:16px;padding:12px 13px;min-height:70px}.card-action .act-emoji{font-size:26px;flex:0 0 32px;text-align:center}.card-action .act-copy{flex:1;min-width:0}.card-action strong{display:block;font-size:14px}.card-action small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.card-action .chev{font-size:20px;color:var(--pink)}
.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:550px;width:100%;display:grid;grid-template-columns:repeat(4,1fr);background:#1e1b4df7;border-top:1px solid #ffffff29;box-shadow:0 -8px 18px #0906184a;z-index:10;padding:8px 5px max(9px,env(safe-area-inset-bottom))}.bottom-nav button{border:0;background:none;color:#aaacd8;display:grid;justify-items:center;gap:0;font-size:10px;font-weight:900;padding:4px}.bottom-nav button .navico{font-size:22px}.bottom-nav button.active{color:#ffdf6b;text-shadow:0 0 15px #ffd94444}
.filter-row{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}.chip{border:1px solid #ffffff44;background:#ffffff10;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900}.chip.selected{background:var(--gold);border-color:var(--gold);color:#342553}.choice-options{display:grid;gap:10px}.choice{width:100%;display:flex;align-items:flex-start;gap:12px;text-align:left;border:2px solid #ffffff25;background:#16183b;padding:13px;border-radius:16px;min-height:57px}.choice .num{width:26px;height:26px;line-height:26px;text-align:center;background:#373860;border-radius:9px;color:var(--cyan);font-weight:900;flex:0 0 26px}.choice .copy{flex:1;font-size:14px}.choice.selected{border-color:#f9dc69;background:#45402b}.choice.correct{border-color:var(--good);background:#1e4845}.choice.wrong{border-color:var(--bad);background:#512b46}.choice:disabled{opacity:1}.choice.correct .num{background:var(--good);color:#11342c}.choice.wrong .num{background:var(--bad);color:#4f1230}.question-title{font-size:17px;font-weight:900;line-height:1.8;margin:12px 0 18px;white-space:pre-wrap}.question-counter{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.answer-detail{margin-top:13px;padding:15px;border-radius:17px;background:#211f48;border:1px solid #ffffff36}.answer-detail h3{margin:0 0 9px;font-size:16px}.answer-detail .memory{font-size:15px;color:var(--gold);font-weight:900}.answer-detail p{margin:8px 0;font-size:13px;line-height:1.9}.formula{font-family:'Courier New',monospace;color:var(--cyan);font-size:17px;font-weight:900;background:#13183b;border-radius:12px;padding:10px;overflow-wrap:anywhere}.textarea{width:100%;min-height:170px;resize:vertical;color:var(--text);border:2px solid #6c6a9e;border-radius:14px;background:#101333;padding:14px;outline:none;font-size:14px;font-weight:500;line-height:1.9}.textarea:focus,.select:focus{border-color:var(--cyan)}.select{border:1px solid #ffffff4a;background:#15183d;color:#fff;border-radius:13px;padding:11px 12px;max-width:100%;width:100%;font-size:13px}.checklist{list-style:none;margin:10px 0;padding:0}.checklist li{margin:9px 0;padding-left:24px;position:relative;color:var(--muted);font-size:13px}.checklist li:before{content:'✓';color:var(--gold);position:absolute;left:0}
.result-hero{text-align:center;background:radial-gradient(circle at center top,#774caa 0,transparent 70%),#2a2455;padding:30px 15px;border:1px solid #a283ed7d;border-radius:24px;margin-bottom:14px}.result-hero .result-emoji{font-size:50px}.result-hero h2{font-size:26px;margin:3px 0;color:var(--gold);text-shadow:0 2px #4d2361}.result-hero .score{font-size:44px;font-weight:900;color:#fff}.result-hero .score small{font-size:15px;color:var(--lav)}.result-list{display:grid;gap:8px}.review-row{padding:12px;border:1px solid #ffffff27;background:#ffffff0d;border-radius:14px;display:flex;align-items:start;gap:10px}.review-row .status{font-size:20px}.review-row .body{flex:1;font-size:13px}.review-row small{color:var(--muted);display:block;font-size:10px}.review-row button{border:0;background:#ffffff18;border-radius:10px;font-size:11px;padding:7px 8px}.bar-chart{display:grid;gap:11px}.bar-item .bar-caption{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:5px}.bar-item .progress-track{height:10px}.bar-item .progress-fill{background:linear-gradient(90deg,#ff78c9,#ffdf70)}.empty{padding:25px;text-align:center;background:#ffffff09;border:1px dashed #ffffff33;border-radius:17px;color:var(--muted);font-size:13px}.bubble{background:#f4f6ff;color:#252353;padding:13px 15px;border-radius:18px 18px 18px 5px;font-size:13px;font-weight:900;position:relative;margin:12px 0 18px}.bubble:before{content:'🦭';position:absolute;right:0;top:-24px;font-size:24px}.data-source{font-size:11px;color:#bdbbd5}.file-input{display:none}.space-top{margin-top:13px}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.mini-card{background:#ffffff11;border-radius:15px;padding:13px;border:1px solid #ffffff22}.mini-card b{display:block;font-size:22px;color:var(--gold)}.mini-card span{color:var(--muted);font-size:11px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.switch{accent-color:#ff70be;width:22px;height:22px}.footer-note{font-size:10px;line-height:1.8;text-align:center;color:#b9b6d3;margin:25px 6px 4px}.year-item{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 3px;border-bottom:1px solid var(--line);font-size:13px}.year-item:last-child{border:0}.year-item .year-sub{font-size:11px;color:var(--muted)}.spacer-12{height:12px}.question-menu{margin:12px 0;display:flex;gap:9px}.review-tag{border:1px solid #ffcd6f80;background:#544225;border-radius:11px;padding:5px 8px;color:#ffe796;font-size:11px}.tag-line{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
@media(min-width:551px){.bottom-nav{border-radius:18px 18px 0 0}.app-frame{min-height:100dvh}.splash{min-height:100dvh}}@media(max-width:360px){.app-scroll{padding-left:12px;padding-right:12px}.hero h1{font-size:16px}.mode-card{padding:13px 11px}.mode-card strong{font-size:15px}.splash-start{font-size:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* v0.2 — あざらしファクトリー / bright, accessible study UI */
:root{
  --bg:#f0faff;--navy:#e2f3ff;--panel:#fff;--panel2:#eef8ff;
  --lav:#4078a5;--pink:#f63f8c;--hot:#ec3784;--cyan:#1c9ce7;
  --gold:#ffde70;--text:#173358;--muted:#607b98;--line:#d6e5f1;
  --good:#00b887;--bad:#ed4b74;--round:21px;
  --shadow:0 9px 21px #80b6d426;
}
html{background:#e4f5ff;color-scheme:light}
body{color:var(--text);font-weight:700}
button{color:var(--text)}
a{color:#087bcc}
.background-shapes{background:radial-gradient(circle at 8% 8%,#d0f9ff 0%,transparent 29%),radial-gradient(circle at 95% 54%,#e5fff2 0%,transparent 40%),linear-gradient(145deg,#f1fcff 0%,#e6f5ff 55%,#fcfffb 100%)}
.background-shapes i{border:1px solid #a7dbed55;background:#b9e8f522}
.app-frame{background:linear-gradient(160deg,#f7fcff 0%,#eaf8ff 34%,#fff 72%,#f2fffe 100%);box-shadow:0 0 42px #3083ac20}
.app-scroll{padding-top:11px}
.brand-bar{display:flex;align-items:center;gap:8px;margin:-1px -3px 20px;padding:6px 4px 12px;border-bottom:1px solid #dcebf5;background:#ffffff80}
.brand-icon{width:43px;height:43px;object-fit:cover;object-position:36% 46%;border:2px solid #c7eaff;border-radius:50%;background:#e2f7ff;flex:0 0 auto}
.brand-copy{min-width:0;flex:1;display:flex;flex-direction:column;line-height:1.25}
.brand-copy span{font-size:10px;color:#476e96}
.brand-copy strong{font-size:12px;font-weight:900;white-space:nowrap;letter-spacing:-.4px}
.brand-copy em{font-style:normal;color:#ff3485}
.brand-year{font-size:10px;padding:4px 6px;border:1px solid #c8e6fa;background:#e7f8ff;color:#1486bf;border-radius:7px;flex-shrink:0}
.page-head{margin:8px 0 19px;gap:12px}
.page-head h1,.page-head h2{font-size:23px;color:#102f64;line-height:1.35;text-shadow:none;letter-spacing:0}
.head-sub{color:#0088cf;font-size:11px;letter-spacing:.085em}
.back-btn,.icon-btn{background:#fff;color:#0757a1;border:1px solid #c8e4fa;box-shadow:0 4px 13px #b7daea64;border-radius:15px}
.pill{background:#eef9ff;color:#27679e;border-color:#d0eafa}
.badge-gold{background:#ffe47b;color:#4b411a}
.badge-pink{background:#f93987;color:#fff}
.badge-cyan{background:#b3efff;color:#0b5c80}
.badge-neutral{background:#e9f4fc;color:#416b89}
.badge-good{background:#d4fcef;color:#007856}
.primary-btn,.secondary-btn,.pink-btn,.small-btn{box-shadow:none;transition:transform .1s,background .1s}
.primary-btn{background:linear-gradient(120deg,#08a4fc,#218ff3);color:#fff;box-shadow:0 7px 16px #4daaf647,inset 0 -3px #095bbc19}
.pink-btn{background:linear-gradient(125deg,#ff62af,#fb438d);color:#fff;box-shadow:0 6px 14px #ff9bd540}
.secondary-btn{background:#fff;color:#145fa5;border:1.5px solid #b5d9f2;box-shadow:0 4px 12px #bddff044}
.small-btn{background:#e9f6ff;border:1px solid #cbe6f7;color:#286395;box-shadow:none}
.card{background:#fff;border:1px solid #dceaf4;box-shadow:var(--shadow)}
.card p{color:var(--muted)}
.card h3,.section-head h2{color:#113b74}
.section-head small{color:#4b8baa}
.caption,.tiny,.muted{color:var(--muted)}
.em{color:#c07711}.em-pink{color:var(--pink)}
.label{color:#037ba9}.divider{background:#d7e8f4}
.info-box{background:#e7f7ff;border-color:#b7e3f9;color:#1f5a87}
.warn-box{background:#fff7df;border-color:#f5dc96;color:#695018}
.success-box{background:#e2fff1;border-color:#a2e8c6;color:#155b49}
/* Leave the original pointing-at-blueprints title illustration untouched. */
.splash{background:#e1f7ff}
.splash::after{background:linear-gradient(transparent,#21477560 53%,#193d6ab0 100%);inset:62% 0 0}
.splash-start{background:linear-gradient(180deg,#ffec85,#ffd256);color:#214671;box-shadow:0 7px 0 #bf882c77,0 9px 23px #07376c35;border-color:#fff}
.splash-note{color:#fff;text-shadow:0 2px 4px #163a7c}
.splash-copyright{color:#fff;text-shadow:0 1px 4px #123f70;text-align:center;font-size:10px;font-weight:800;letter-spacing:-.1px}
.splash-skip{background:#fff;color:#2068a0;border:1px solid #cee8ff}
.hero{background:radial-gradient(circle at 100% 0%,#ddf8ff,transparent 50%),linear-gradient(150deg,#fff,#f2fcff);border:1px solid #bfe8fa;box-shadow:0 8px 23px #7fbbd13c;color:#15396b}
.hero:before{opacity:.10;color:#00ace6}
.hero-art{border-color:#98dcff;box-shadow:0 2px 12px #a5dcf9;background:#e9faff}
.hero h1{color:#17336a;text-shadow:none}
.hero strong{color:#ff347f}
.hero .slogan{color:#235989}
.progress-track{background:#dcecf7;border:0}
.progress-fill{background:linear-gradient(90deg,#19b4fb,#61ddaa)}
.progress-meta{color:#517999}
.metric-strip{gap:9px}
.metric{background:#fff;border:1px solid #dbeaf4;box-shadow:0 4px 13px #aed4e644}
.metric b{color:#007fe2}
.metric span{color:#66809a}
.mode-card{background:linear-gradient(135deg,#def6ff,#c8eaff);border:1px solid #aee2fb;box-shadow:0 4px 0 #a1d1f5;color:#124e8a}
.mode-card:nth-child(2){background:linear-gradient(135deg,#ffe8f2,#f8e6ff);border-color:#f1c6e3;box-shadow:0 4px 0 #edd4ed}
.mode-card small{color:#4e6d8b}
.mode-card .arrow{color:#168be6}
.action-stack{gap:10px}
.card-action{background:#fff;border:1px solid #d8eafa;box-shadow:0 4px 12px #bad8eb48}
.card-action strong{color:#173d73}
.card-action small{color:#61809a}
.card-action .chev{color:#ff3f8c}
.bottom-nav{background:#fffffff5;border-top:1px solid #cfe6f6;box-shadow:0 -4px 18px #8fb8d53b;backdrop-filter:blur(8px)}
.bottom-nav button{color:#5b7fa5;border-radius:13px}
.bottom-nav button.active{background:#e1f4ff;color:#006ec8;text-shadow:none}
.chip{background:#fff;border:1px solid #cde4f4;color:#315c84}
.chip.selected{background:#ffe079;border-color:#edc456;color:#554315}
.choice{background:#fff;border:2px solid #d8e6f3;box-shadow:0 3px 10px #94c3dd20;color:#203a62;padding:15px 13px;min-height:66px;border-radius:18px}
.choice .num{background:#ddf2ff;color:#008be0;border-radius:10px;font-size:16px}
.choice .copy{font-size:15px}
.choice.selected{border-color:#20a6f4;background:#e9f7ff}
.choice.correct{border-color:#06b994;background:#e3fff3}
.choice.wrong{border-color:#e84f82;background:#fff0f5}
.choice.correct .num{background:#00ad80;color:#fff}
.choice.wrong .num{background:#ed5b89;color:#fff}
.question-title{color:#133365;line-height:1.75;margin:18px 0 22px;font-size:18px}
.question-counter{color:#587793}
.question-menu{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.question-menu>span{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.answer-detail{background:#f1faff;border:1px solid #b9dffa;color:#24456e}
.answer-detail h3{color:#1565a6}
.answer-detail .memory{color:#ce4e7a}
.formula{background:#e0f2ff;color:#075a9c}
.textarea{background:#fff;color:#18395b;border-color:#c8dff2}
.textarea:focus,.select:focus{border-color:#1d9ce8;outline:3px solid #d4efff}
.select{background:#fff;color:#1c4569;border:1px solid #bbd7e9}
.checklist li{color:#50718e}.checklist li:before{color:#00a5a0}
.study-mascot{display:flex;gap:10px;align-items:center;margin:22px 0 2px;padding:9px 14px 9px 6px;border-radius:19px;background:linear-gradient(105deg,#fff,#e3f7ff);border:1px solid #cdeafb;color:#135e9a;font-size:12px;box-shadow:0 3px 10px #b6dfed4a}
.study-mascot img{width:84px;height:80px;object-fit:cover;object-position:34% 50%;border-radius:15px}
.study-mascot small{font-size:10px;color:#6586a0}
.result-hero{overflow:hidden;position:relative;background:radial-gradient(circle at 60% 0%,#fff9e9,transparent 65%),linear-gradient(155deg,#fff2f7,#fff 60%,#eefaff);border:1px solid #f8d3e1;box-shadow:0 8px 24px #ecc1d236;padding:25px 13px 28px}
.result-hero .result-emoji{font-size:49px}
.result-hero h2{font-size:24px;color:#f13582;text-shadow:none}
.result-hero .score{font-size:47px;color:#0475d1}
.result-hero .score small{color:#237dbc}
.result-hero p{color:#537da0}
.result-seal{position:absolute;right:-7px;bottom:-8px;width:87px;height:87px;object-fit:cover;object-position:36% 54%;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 12px #b9d9ed88}
.review-row{border-color:#dbe8f3;background:#fff;box-shadow:0 3px 11px #b1d2e630}
.review-row .body{color:#20456e}
.review-row small{color:#758da5}
.review-row button{background:#e7f5ff;color:#1c6ba7}
.bar-item .progress-fill{background:linear-gradient(90deg,#29aff3,#27cbad)}
.empty{background:#f3faff;border:1px dashed #bddcf3;color:#537494}
.bubble{background:#fff9e7;color:#385b88;border:1px solid #fce4ac;box-shadow:0 4px 14px #edc8692b}
.data-source{color:#68839b}
.mini-card{background:#fff;border:1px solid #d6e8f5;box-shadow:0 3px 12px #c2dce746}
.mini-card b{color:#108fea}
.mini-card span{color:#5f809d}
.switch{accent-color:#079fea}
.footer-note{color:#718b9f;margin:26px 6px 4px;font-size:10px;line-height:1.9}
.footer-note strong{display:block;color:#456e8e;font-size:10px;font-weight:800;margin-top:8px}
.year-item .year-sub{color:#63819e}
.review-tag{background:#fff5d8;border-color:#f3d488;color:#825c00}
@media(max-width:360px){.brand-copy strong{font-size:11px}.brand-year{display:none}.question-title{font-size:17px}.choice .copy{font-size:14px}.result-hero h2{font-size:21px}}

/* v0.3 – Free/Pro feature tiers, bright light UI */
.tier-status{appearance:none;display:flex;gap:4px;align-items:center;white-space:nowrap;min-height:33px;border:1px solid #b8d9f2;border-radius:999px;background:#eff9ff;color:#0867a7;padding:5px 9px;font-size:11px;font-weight:900;box-shadow:0 2px 6px #79badb27}
.tier-status.pro{border-color:#f5d084;background:#fff7dc;color:#956000}.tier-status span{font-size:15px}
.pro-inline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 1px 14px;border-radius:14px;padding:10px 12px;background:#fff9e8;border:1px solid #efd99d;color:#835d1c;font-size:11px;font-weight:900}
.pro-inline button{background:#fff;border:1px solid #e9c56f;border-radius:11px;color:#8d5b08;padding:7px 9px;font-weight:900;white-space:nowrap}
.plan-current{border-radius:19px;padding:14px 16px;border:1px solid #bce2f8;background:linear-gradient(95deg,#e2f6ff,#fff);display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:13px}
.plan-current span{color:#4d7c9d;font-size:12px}.plan-current strong{font-size:17px;color:#0b6bab}
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.plan-card{background:#fff;border:1px solid #cce4f4;border-radius:19px;padding:14px 12px;min-width:0;box-shadow:0 5px 18px #bcd9e433}
.plan-card.featured{background:linear-gradient(140deg,#fffef3,#effbff);border:2px solid #eccb6b}
.plan-eyebrow{color:#0391c5;font-size:10px;font-weight:900;letter-spacing:.12em}.plan-card.featured .plan-eyebrow{color:#ba8214}
.plan-card h2{font-size:17px;color:#174e7f;margin:2px 0}.plan-card p{font-size:11px;line-height:1.5;color:#607e96;margin:0 0 10px}
.plan-card ul{list-style:none;margin:0;padding:0}.plan-card li{position:relative;padding:5px 0 5px 16px;font-size:11px;color:#274d71;line-height:1.55;border-top:1px dashed #d9e8f4}
.plan-card li:before{position:absolute;left:0;content:'✓';color:#00a991;font-weight:900}
.brand-bar .brand-copy{min-width:0;flex:1}
.brand-bar .brand-copy strong{font-size:clamp(10px,2.8vw,13px)}
@media(max-width:355px){.plan-grid{grid-template-columns:1fr}.tier-status{font-size:10px;padding:5px}.pro-inline{flex-direction:column;align-items:stretch}}
