:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#29251e;font-synthesis:none;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;--paper:#fbf7ee;--paper-deep:#f1eadc;--ink:#28231c;--muted:#80786d;--line:#5b4e3c29;--shadow:0 18px 50px #4e42301f;--shadow-soft:0 8px 26px #4e42301a;--serif:"Iowan Old Style", "Baskerville", "Libre Baskerville", Georgia, serif;--note:"Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;background:#f2ecdf;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px}html,body,#root{min-height:100vh;margin:0;padding:0}body{background:radial-gradient(circle at 20% 5%,#ffffffb3,#0000 55%),radial-gradient(circle at 90% 95%,#d0c0a259,#0000 60%),#f2ecdf}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea{font-family:inherit}a{color:inherit}img{max-width:100%;display:block}.app-shell{flex-direction:column;gap:20px;max-width:1480px;min-height:100vh;margin:0 auto;padding:22px clamp(16px,3vw,36px) 32px;display:flex}.topbar{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:18px;justify-content:space-between;align-items:center;padding:14px 22px;display:flex}.brand-block{align-items:center;gap:14px;display:flex}.brand-orb{background:radial-gradient(circle at 30% 30%,#f6d589 0%,#c98c45 70%,#6b4324 100%);border-radius:50%;width:44px;height:44px;position:relative;box-shadow:inset 0 -6px 12px #46280a40,0 4px 14px #aa6e3c4d}.brand-orb:after{content:"";background:radial-gradient(circle,#ffffff80,#0000 60%);border-radius:50%;position:absolute;inset:12px}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-text .brand-title{font-family:var(--serif);letter-spacing:.02em;font-size:22px}.brand-text .brand-sub{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin-top:4px;font-size:12px}.top-nav{align-items:center;gap:18px;display:flex}.top-nav-right{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.top-nav-now{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:12px}.top-nav-now strong{color:var(--ink);letter-spacing:0;text-transform:none;font-weight:600;font-family:var(--serif);margin-left:6px;font-size:14px}.comparison-button{border:1px solid var(--line);letter-spacing:.02em;background:var(--paper-deep);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:transform .18s,box-shadow .18s;display:inline-flex}.comparison-button:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.avatar-button{background:var(--paper-deep);border:1px solid var(--line);border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.avatar-core{background:linear-gradient(135deg,#d2b18b,#80573a);border-radius:50%;width:22px;height:22px}.app-grid{grid-template-columns:232px minmax(0,1fr) 320px;align-items:stretch;gap:22px;display:grid}@media (width<=1180px){.app-grid{grid-template-columns:1fr}}.left-rail,.right-rail,.center-stack{flex-direction:column;gap:18px;display:flex}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:18px;padding:16px}.panel-heading{font-family:var(--serif);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:12px}.cell-list{flex-direction:column;gap:10px;display:flex}.cell-row{background:var(--paper-deep);text-align:left;border:1px solid #0000;border-radius:14px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.cell-row:hover{transform:translateY(-1px)}.cell-row.is-active{background:var(--paper);border-color:var(--line);box-shadow:var(--shadow-soft)}.cell-row-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cell-row-copy strong{font-family:var(--serif);color:var(--ink);font-size:15px;font-weight:600}.cell-row-copy span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.color-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.add-card{border:1px dashed var(--line);text-align:center;color:var(--muted);background:#fff6;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:14px;font-size:12px;display:flex}.add-card strong{font-family:var(--serif);color:var(--ink);font-size:13px;font-weight:600}.stage-panel{flex-direction:column;gap:14px;padding:18px;display:flex}.stage-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.stage-title{flex-direction:column;gap:4px;display:flex}.stage-title h2{font-family:var(--serif);letter-spacing:.01em;margin:0;font-size:28px}.stage-title small{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:12px}.mode-switcher{background:var(--paper-deep);border:1px solid var(--line);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.mode-switcher button{letter-spacing:.04em;color:var(--muted);border:1px solid #0000;border-radius:999px;padding:6px 14px;font-size:12px}.mode-switcher button.is-on{background:var(--paper);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-soft)}.canvas-wrap{background:radial-gradient(circle at 30% 20%, #fff8e1b3, transparent 65%), radial-gradient(circle at 70% 80%, #bea5822e, transparent 65%), var(--paper-deep);border:1px solid var(--line);aspect-ratio:16/10;border-radius:18px;min-height:380px;position:relative;overflow:hidden}.cell-canvas{position:absolute;inset:0}.canvas-wrap .has-preview{place-items:center;display:grid;position:absolute;inset:0}.canvas-wrap .has-preview img{filter:drop-shadow(0 12px 36px #46321e2e);max-width:60%;max-height:80%}.model-loader{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-family:var(--serif);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);z-index:5;background:#f7f0e0a6;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.export-toolbar{gap:10px;display:inline-flex}.export-toolbar button{border:1px solid var(--line);background:var(--paper-deep);letter-spacing:.06em;color:var(--muted);border-radius:999px;padding:6px 12px;font-size:12px;transition:transform .18s,box-shadow .18s}.export-toolbar button:hover{box-shadow:var(--shadow-soft);color:var(--ink);transform:translateY(-1px)}.details-panel{flex-direction:column;gap:16px;display:flex}.detail-hero{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding-bottom:14px;display:flex}.detail-heading{font-family:var(--serif);letter-spacing:.01em;margin:0;font-size:22px}.detail-hero p{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:13px}.detail-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px}.organelle-list{flex-direction:column;gap:8px;display:flex}.organelle-row{background:var(--paper-deep);text-align:left;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:transform .18s,box-shadow .18s;display:flex}.organelle-row:hover{transform:translateY(-1px)}.organelle-row.is-active{background:var(--paper);border-color:var(--line);box-shadow:var(--shadow-soft)}.organelle-orb{background:radial-gradient(circle at 30% 30%,#fff9,#0000000d);border-radius:50%;flex-shrink:0;width:24px;height:24px}.organelle-row-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.organelle-row-copy strong{font-family:var(--serif);color:var(--ink);font-size:14px}.organelle-row-copy span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.attribute-list{grid-template-columns:1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.attribute-list li{background:var(--paper-deep);border-radius:12px;justify-content:space-between;gap:10px;padding:10px 12px;font-size:13px;display:flex}.attribute-list li span:first-child{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.attribute-list li span:last-child{text-align:right;font-weight:600}.fun-fact{background:var(--paper-deep);border-left:3px solid var(--ink);font-family:var(--note);color:var(--ink);border-radius:0 12px 12px 0;padding:12px 14px;font-size:16px;line-height:1.45}.tip-note{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.bottom-grid{grid-template-columns:1.2fr 1fr 1fr;gap:18px;display:grid}@media (width<=1180px){.bottom-grid{grid-template-columns:1fr}}.learning-panel,.notes-panel,.occurrence-panel{flex-direction:column;gap:12px;min-height:220px;display:flex}.lesson-focus{flex-direction:column;gap:8px;display:flex}.lesson-focus h4{font-family:var(--serif);margin:0;font-size:16px}.lesson-focus p{color:var(--ink);margin:0;font-size:13px}.mastery-meter{flex-direction:column;gap:6px;display:flex}.mastery-meter .meter-row{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.mastery-meter .meter-track{background:var(--paper-deep);border-radius:999px;height:8px;overflow:hidden}.mastery-meter .meter-fill{background:linear-gradient(90deg,#c08a3f,#6e8d4f);border-radius:999px;height:100%;transition:width .4s}.tutor-prompt{flex-direction:column;gap:8px;display:flex}.prompt-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.prompt-list li{background:var(--paper-deep);color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.prompt-list li button{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:11px}.prompt-list li button:hover{color:var(--ink)}.notes-panel textarea{border:1px dashed var(--line);width:100%;font-family:var(--note);color:var(--ink);resize:none;background:#ffffff80;border-radius:12px;outline:none;flex:1;min-height:140px;padding:14px;font-size:16px;line-height:1.5}.occurrence-panel{align-items:stretch}.occurrence-art{background:var(--paper-deep);min-height:120px;font-size:36px;font-family:var(--serif);color:var(--muted);text-align:center;border-radius:14px;flex:1;place-items:center;padding:18px;display:grid}.occurrence-panel h4{font-family:var(--serif);margin:0;font-size:16px}.occurrence-panel p{color:var(--muted);margin:0;font-size:13px}.mini-cell{background:var(--paper-deep);border-radius:12px;flex-shrink:0;width:38px;height:38px;position:relative;overflow:hidden}.mini-cell:before,.mini-cell:after{content:"";border-radius:50%;position:absolute}.mini-cell-bacteria:before{background:radial-gradient(circle at 30% 30%,#b6e7d3,#65b8ae);border-radius:999px;height:14px;inset:12px 6px 6px}.mini-cell-bacteria:after{background:#7a43ad;width:8px;height:8px;inset:14px 6px 6px 18px}.mini-cell-muscle{background:repeating-linear-gradient(90deg,#f6c9c2 0 6px,#ca6678 6px 7px)}.mini-cell-neuron{background:radial-gradient(circle,#cdd0ee 0 30%,#0000 33%)}.mini-cell-neuron:before{background:linear-gradient(135deg,#0000 45%,#6b7dc6 46%,#0000 47%),linear-gradient(45deg,#0000 45%,#6b7dc6 46%,#0000 47%);inset:4px}.mini-cell-plant{background:linear-gradient(120deg,#cfe6a8 0%,#81b64b 100%)}.mini-cell-plant:before{background:#5fa842;border-radius:50%;width:10px;height:10px;inset:10px 8px 8px 10px}.mini-cell-plant:after{background:#5fa842;border-radius:50%;width:8px;height:8px;inset:18px 8px 8px 20px}.mini-cell-animal{background:radial-gradient(circle at 35% 35%,#efe5f6,#9db6dc 70%)}.mini-cell-animal:before{background:#7a49b0;border-radius:50%;width:10px;height:10px;inset:12px 12px 12px 14px}.mini-cell-whiteBlood{background:radial-gradient(circle,#fff,#b9bfd7 80%)}.mini-cell-whiteBlood:before{background:radial-gradient(circle at 30% 30%,#d8b6e6,#7849ad);border-radius:60% 40% 55% 45%/50%;width:18px;height:18px;inset:10px 8px 8px 10px}.mini-cell-epithelial{background:linear-gradient(#f4e2e7 0%,#d79baa 100%)}.mini-cell-epithelial:before{background:repeating-linear-gradient(90deg,#0000 0 8px,#fff9 8px 9px);border-radius:0;inset:0}.mini-cell-redBlood{background:radial-gradient(#f4a4a8 0% 20%,#d6595d 22% 70%,#8a2730 85%);border-radius:50%}.mini-cell-redBlood:before,.mini-cell-redBlood:after{display:none}.mini-cell-sperm{background:linear-gradient(120deg,#dde6f3 0%,#9bb6cf 100%)}.mini-cell-sperm:before{background:#5a7da6;border-radius:50%/60% 60% 40% 40%;width:14px;height:14px;inset:5px 0 0 6px}.mini-cell-sperm:after{background:linear-gradient(90deg,#5a7da6 0%,#0000 100%);border-radius:0;width:22px;height:2px;inset:22px 0 0 12px;transform:rotate(18deg)}.mini-cell-adipocyte{background:radial-gradient(circle at 30% 30%,#fce28a,#c9a13c);border-radius:50%}.mini-cell-adipocyte:before{background:#7a4aa2;border-radius:50%;width:8px;height:8px;inset:4px 4px 0 auto}.mini-cell-adipocyte:after{display:none}.mini-cell-virus{background:radial-gradient(circle,#c46b7a 0% 38%,#0000 60%);border-radius:50%}.mini-cell-virus:before{background:radial-gradient(circle at 50% 4%,#cf3e3e 1.6px,#0000 2.4px),radial-gradient(circle at 96%,#cf3e3e 1.6px,#0000 2.4px),radial-gradient(circle at 50% 96%,#cf3e3e 1.6px,#0000 2.4px),radial-gradient(circle at 4%,#cf3e3e 1.6px,#0000 2.4px),radial-gradient(circle at 18% 18%,#cf3e3e 1.4px,#0000 2.2px),radial-gradient(circle at 82% 18%,#cf3e3e 1.4px,#0000 2.2px),radial-gradient(circle at 18% 82%,#cf3e3e 1.4px,#0000 2.2px),radial-gradient(circle at 82% 82%,#cf3e3e 1.4px,#0000 2.2px);border-radius:0;inset:0}.mini-cell-virus:after{display:none}.mini-cell-yeast{background:radial-gradient(circle at 35% 35%,#f0d97a,#b8973a);border-radius:50%;position:relative;overflow:visible}.mini-cell-yeast:before{border:1px solid var(--paper);background:radial-gradient(circle at 30% 30%,#f0d97a,#b8973a);border-radius:50%;width:14px;height:14px;inset:-4px -4px 0 auto}.mini-cell-yeast:after{display:none}.mini-cell-cardiac{background:linear-gradient(135deg,#f3c1c1 0%,#a04848 100%);border-radius:8px}.mini-cell-cardiac:before{background:repeating-linear-gradient(90deg,#0000 0 5px,#50191e66 5px 6px);border-radius:0;inset:0}.mini-cell-cardiac:after{background:#7a4aa2;border-radius:50%;width:6px;height:6px;inset:16px 0 0 16px}.mini-cell-egg{background:radial-gradient(circle at 35% 35%,#fbe2eb 0% 35%,#c98aa6 70%);border-radius:50%;position:relative;overflow:visible;box-shadow:inset 0 0 0 2px #b4648259}.mini-cell-egg:before{background:0 0;border:1.5px dashed #b4648273;border-radius:50%;inset:-3px}.mini-cell-egg:after{background:#7a4aa2;border-radius:50%;width:6px;height:6px;inset:14px 0 0 18px}.mini-cell-photoreceptor{background:linear-gradient(#c2dde3 0% 38%,#5b8b9b 38% 58%,#a3c4cf 58% 80%,#7a8fa8 80% 100%);border-radius:6px 6px 50% 50%/4px 4px 30% 30%}.mini-cell-photoreceptor:before{background:repeating-linear-gradient(#0000 0 2px,#5b8b9b99 2px 3px);border-radius:0;height:14px;inset:0}.mini-cell-photoreceptor:after{background:#7a4aa2;border-radius:50%;width:6px;height:6px;inset:24px 0 0 16px}.left-search{align-items:center;gap:10px;padding:10px 12px;display:flex}.left-search input{min-width:0;color:var(--ink);letter-spacing:.01em;background:0 0;border:none;outline:none;flex:1;font-size:13px}.left-search input::placeholder{color:var(--muted)}.search-hint{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:11px}.cell-groups{flex-direction:column;gap:12px;display:flex}.cell-group{flex-direction:column;gap:8px;display:flex}.cell-group-head{letter-spacing:.18em;text-transform:uppercase;width:100%;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:6px 4px;font-size:11px;transition:color .18s;display:flex}.cell-group-head:hover{color:var(--ink)}.cell-group-title{text-align:left;font-family:var(--serif);letter-spacing:.04em;text-transform:none;color:var(--ink);flex:1;font-size:13px;font-weight:600}.cell-group-count{font-variant-numeric:tabular-nums;background:var(--paper-deep);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px}.cell-group-chevron{color:var(--muted);text-align:center;width:12px;font-size:10px}.empty-hint{color:var(--muted);text-align:center;border:1px dashed var(--line);background:#fff6;border-radius:12px;margin:8px 0;padding:18px 12px;font-size:13px}.mode-switcher button{align-items:center;gap:6px;padding:6px 12px 6px 10px;display:inline-flex}.mode-icon{opacity:.75;font-size:12px}.mode-switcher button.is-on .mode-icon{opacity:1}.stage-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.stage-source{color:var(--muted);letter-spacing:.02em;font-size:12px}.stage-source-label{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-right:4px;font-size:10px}.model-loader{align-items:center;gap:10px;display:inline-flex}.spinner{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.detail-hero-row{align-items:center;gap:10px;display:flex}.bottom-tabs{flex-direction:column;gap:16px;min-height:280px;display:flex}.bottom-tabs-bar{background:var(--paper-deep);border:1px solid var(--line);border-radius:999px;flex-wrap:wrap;align-self:flex-start;gap:2px;padding:4px;display:flex}.bottom-tabs-bar button{letter-spacing:.04em;color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:8px 16px;font-size:12px;transition:background .18s,color .18s,transform .18s}.bottom-tabs-bar button:hover{color:var(--ink)}.bottom-tabs-bar button.is-on{background:var(--paper);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-soft)}.bottom-tab-body{flex-direction:column;gap:14px;display:flex}.lesson-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:11px}.lesson-pane{grid-template-columns:1.1fr 1fr;gap:22px;display:grid}@media (width<=880px){.lesson-pane{grid-template-columns:1fr}}.lesson-focus h4{font-family:var(--serif);letter-spacing:.01em;margin:4px 0 6px;font-size:22px}.lesson-focus p{color:var(--ink);margin:0;font-size:14px;line-height:1.55}.lesson-focus p strong{color:var(--ink);font-weight:600}.lesson-actions{justify-content:flex-end;margin-top:10px;display:flex}.btn-pill{border:1px solid var(--line);background:var(--paper-deep);letter-spacing:.06em;color:var(--muted);border-radius:999px;padding:7px 14px;font-size:12px;transition:transform .18s,color .18s,box-shadow .18s}.btn-pill:hover{color:var(--ink);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.meter-milestones{letter-spacing:.18em;color:var(--muted);justify-content:space-between;margin-top:4px;font-size:10px;display:flex}.meter-milestones .milestone{text-align:center;border-radius:999px;width:24px;padding:2px 0;transition:color .18s,background .18s}.meter-milestones .milestone.is-hit{color:var(--ink);background:var(--paper-deep)}.notes-pane{flex-direction:column;gap:8px;display:flex}.notes-pane textarea{border:1px dashed var(--line);width:100%;min-height:180px;font-family:var(--note);color:var(--ink);resize:vertical;background:#ffffff8c;border-radius:14px;outline:none;padding:16px;font-size:17px;line-height:1.55}.notes-pane textarea:focus{box-shadow:var(--shadow-soft);border-style:solid}.notes-meta{color:var(--muted);letter-spacing:.04em;justify-content:space-between;font-size:11px;display:flex}.occurrence-pane{grid-template-columns:1.4fr 1fr;align-items:stretch;gap:22px;display:grid}@media (width<=880px){.occurrence-pane{grid-template-columns:1fr}}.occurrence-summary h4{font-family:var(--serif);margin:4px 0 8px;font-size:22px}.occurrence-summary p{color:var(--ink);margin:0;font-size:14px;line-height:1.55}.occurrence-pane .occurrence-art{min-height:160px;font-size:56px}.tutor-pane{flex-direction:column;gap:12px;display:flex}.tutor-intro{color:var(--muted);margin:0;font-size:13px}.prompt-text{color:var(--ink);flex:1;font-size:13px;line-height:1.5}.prompt-list li{background:var(--paper-deep);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.comparison-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.comparison-controls select{border:1px solid var(--line);background:var(--paper-deep);color:var(--ink);border-radius:999px;outline:none;padding:8px 12px;font-family:inherit;font-size:13px}.compare-summary{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.compare-hero-text{flex-direction:column;gap:2px;display:flex}.compare-hero-text strong{font-family:var(--serif);font-size:17px;font-weight:600}.compare-hero-text span{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:11px}.compare-key{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;width:40%;font-size:11px}.compare-val{text-align:right;flex:1;font-size:13px}@media (width<=980px){.app-grid{grid-template-columns:1fr}.top-nav-now{display:none}.stage-toolbar{align-items:flex-start}.stage-title h2{font-size:22px}.canvas-wrap{aspect-ratio:4/3;min-height:280px}}@media (width<=620px){.app-shell{gap:14px;padding:14px 12px 24px}.topbar{padding:12px 14px}.brand-text .brand-title{font-size:18px}.brand-text .brand-sub{display:none}.mode-switcher{justify-content:space-between;width:100%}.mode-switcher button{flex:1;justify-content:center}.panel{padding:14px}}.favorite-dot{border:1px solid var(--line);background:var(--paper-deep);width:18px;height:18px;color:var(--muted);border-radius:50%;place-items:center;font-size:11px;display:grid}.favorite-dot.is-on{color:#5a3c0e;background:#f3c85b;border-color:#d39e2c}.toggle-line{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:6px 0;font-size:12px;display:flex}.mini-toggle{background:var(--paper-deep);border:1px solid var(--line);border-radius:999px;width:32px;height:18px;display:inline-block;position:relative}.mini-toggle:after{content:"";background:var(--ink);border-radius:50%;width:14px;height:14px;transition:transform .18s;position:absolute;top:1px;left:1px}.mini-toggle.is-on:after{background:linear-gradient(135deg,#d39e2c,#6e8d4f);transform:translate(13px)}.toast{background:var(--ink);color:var(--paper);letter-spacing:.06em;box-shadow:var(--shadow);z-index:99;border-radius:999px;padding:10px 18px;font-size:13px;animation:.18s toast-in;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.modal-layer{z-index:80;background:#28231c73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.comparison-modal{background:var(--paper);width:100%;max-width:1080px;max-height:90vh;box-shadow:var(--shadow);border-radius:22px;flex-direction:column;gap:16px;padding:22px;display:flex;overflow:auto}.comparison-modal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.comparison-modal-head h3{font-family:var(--serif);margin:0;font-size:22px}.modal-close{border:1px solid var(--line);background:var(--paper-deep);width:34px;height:34px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.comparison-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}@media (width<=720px){.comparison-columns{grid-template-columns:1fr}}.compare-row{background:var(--paper-deep);border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.compare-row .compare-hero{align-items:center;gap:10px;display:flex}.compare-row .compare-hero strong{font-family:var(--serif);font-size:18px}.compare-row .compare-hero span{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:11px}.compare-row ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.compare-row li{background:var(--paper);border-radius:10px;justify-content:space-between;gap:8px;padding:8px 10px;font-size:13px;display:flex}
