.star-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:100}.xp-star{position:absolute;line-height:1;color:#ffd24a;text-shadow:0 0 6px rgba(255,210,74,.85);animation:xp-fly var(--dur, 1.1s) cubic-bezier(.5,0,.35,1) var(--delay, 0ms) forwards;will-change:transform,opacity}@keyframes xp-fly{0%{transform:translate(0) scale(.4);opacity:0}12%{transform:translate(var(--bx),var(--by)) scale(1.2);opacity:1}30%{transform:translate(var(--bx),var(--by)) scale(1);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(.3);opacity:0}}@media (prefers-reduced-motion: reduce){.xp-star{animation-duration:1ms;opacity:0}}.backdrop-img{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background-repeat:no-repeat;background-position:bottom center;background-size:cover;image-rendering:pixelated}.backdrop-img--fade{animation:backdrop-fade .6s ease both}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}.backdrop-dim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(180deg,#15121fcc,#15121fa8)}.backdrop-rain{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}@media (prefers-reduced-motion: reduce){.backdrop-img{animation:none}}.toolbar{--card: #201b30;--ink: #ece9f6;--muted: #a49ec6;--line: #2c2447;--accent: #a385e6;--accent-soft: #2c2447;--toolbar-border: var(--accent);position:sticky;top:0;z-index:10;height:64px;background:var(--card);border-bottom:var(--line-width) solid var(--toolbar-border)}.toolbar__inner{max-width:1200px;height:100%;margin:0 auto;display:flex;align-items:center;gap:16px;padding:0 20px}.toolbar__brand{margin-right:auto;display:inline-flex;align-items:center;gap:8px;font-family:Deltarune,monospace;font-size:var(--fs-xl);line-height:1;transform:translateY(3px);color:var(--ink);text-decoration:none;white-space:nowrap}.toolbar__brand-heart{color:var(--accent);font-size:var(--fs-xl);margin-top:-7px;margin-right:8px}.toolbar__brand-heart svg{fill:currentColor}.toolbar__menu-xp{padding:8px 4px 4px}.toolbar__menu-level{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-sm);color:var(--muted);margin-bottom:8px}.toolbar__level{flex-shrink:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.03em;color:var(--accent);background:var(--accent-soft);border:2px solid var(--accent);border-radius:999px;padding:2px 8px}.toolbar__track{flex:1;min-width:0;height:8px;border-radius:999px;overflow:hidden;background:var(--accent-soft);border:2px solid var(--line)}.toolbar__fill{height:100%;background:var(--accent);transition:width .4s ease}.toolbar__avatar{width:44px;height:44px;flex-shrink:0;object-fit:contain;background:#fff;border:2px solid var(--toolbar-border);border-radius:50%;padding:2px}.toolbar__link{font-family:inherit;font-weight:700;font-size:var(--fs-sm);text-decoration:none;cursor:pointer;color:var(--accent);background:transparent;border:3px solid var(--accent);border-radius:8px;padding:6px 14px;white-space:nowrap}.toolbar__link:hover{background:var(--accent-soft)}.toolbar__sound,.toolbar__notes{display:inline-flex;align-items:center;background:transparent;border:0;cursor:pointer;color:var(--accent);font-size:22px;line-height:1;padding:4px 8px;border-radius:8px}.toolbar__notes:hover{background:var(--accent-soft)}.toolbar__notes--on{background:var(--accent-soft);color:var(--ink)}.toolbar__fs{display:none;background:transparent;border:0;cursor:pointer;color:var(--accent);font-size:22px;line-height:1;padding:4px 8px;border-radius:8px}@media (max-width: 600px){.toolbar__fs{display:inline-flex;align-items:center}}.toolbar__account{position:relative}.toolbar__avatar-btn{display:block;padding:0;border:0;background:transparent;cursor:pointer;border-radius:50%}.toolbar__avatar-btn:hover .toolbar__avatar{border-color:var(--accent)}.toolbar__avatar--critter{padding:0;overflow:hidden;border-radius:50%}.toolbar__avatar--critter .critter-avatar__layer{width:120%;height:120%;top:-10%;right:-10%;bottom:-10%;left:-10%;transform:scaleX(-1)}.toolbar__avatar--fallback{display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:800;font-size:var(--fs-lg)}.toolbar--drop{animation:toolbar-drop .55s cubic-bezier(.2,.8,.2,1) backwards}@keyframes toolbar-drop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.toolbar--drop{animation:none}}.toolbar__menu{position:absolute;top:calc(100% + 10px);right:0;z-index:20;display:flex;flex-direction:column;gap:8px;min-width:300px;padding:12px;background:var(--card);border:var(--card-border);border-radius:12px;box-shadow:0 8px 24px #0000002e;transform-origin:top right;animation:toolbar-menu-in .18s ease both}@keyframes toolbar-menu-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.toolbar__menu{animation:none}}.toolbar__menu-head{padding:2px 4px 10px;margin-bottom:2px;border-bottom:2px solid var(--line)}.toolbar__menu-name{font-size:var(--fs-md);font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar__menu-email{font-size:var(--fs-sm);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar__menu .toolbar__link{width:100%;text-align:center}.toolbar__group{border-top:2px solid var(--line);padding-top:10px;margin-top:2px}.toolbar__group-title{font-size:var(--fs-sm);font-weight:800;color:var(--ink);margin:0 4px 2px}.toolbar__group-hint{font-size:var(--fs-xs);color:var(--muted);margin:0 4px 8px;line-height:1.4}.toolbar__group-empty{display:block;font-size:var(--fs-sm);font-weight:700;color:var(--accent);text-decoration:none;padding:4px;margin-top:4px}.toolbar__group-empty:hover{text-decoration:underline}.toolbar__group-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.toolbar__group-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;font-size:var(--fs-sm);cursor:pointer;background:transparent;color:var(--ink);border:2px solid var(--line);border-radius:8px;padding:5px 10px;transition:border-color .15s,background .15s}.toolbar__group-row:hover{border-color:var(--accent)}.toolbar__group-row.is-on{border-color:var(--accent);background:var(--accent-soft)}.toolbar__group-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.toolbar__group-mark{width:16px;height:16px;color:var(--muted);flex-shrink:0}.toolbar__group-row.is-on .toolbar__group-mark{color:var(--accent)}@media (max-width: 600px){.toolbar__brand{font-size:var(--fs-lg);transform:translateY(2px)}}.critter-avatar{position:relative;display:inline-block;flex:none;border-radius:10px}.critter-avatar--stage{background:#fff;box-shadow:inset 0 -16px 32px #00000010,0 8px 24px #00000040;overflow:hidden}.critter-avatar__layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.stars{display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:var(--fs-md);color:var(--ink)}.stars__icon{color:#f5c542;font-size:1.2em;line-height:1;filter:drop-shadow(0 0 2px rgba(245,197,66,.45))}.stars--glow .stars__icon{animation:stars-glow .9s ease}@keyframes stars-glow{0%{transform:scale(1);filter:drop-shadow(0 0 1px rgba(245,197,66,.3))}30%{transform:scale(1.45);filter:drop-shadow(0 0 10px rgba(245,197,66,.95))}to{transform:scale(1);filter:drop-shadow(0 0 2px rgba(245,197,66,.45))}}.stars__count{font-variant-numeric:tabular-nums}.icon{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;line-height:0}.icon svg{width:100%;height:100%;display:block}.notes-dock{--notes-w: 500px;width:0;flex-shrink:0;visibility:hidden;transition:width .26s cubic-bezier(.2,.8,.25,1),visibility 0s .26s}.notes-dock--open{width:var(--notes-w, 340px);visibility:visible;transition:width .26s cubic-bezier(.2,.8,.25,1),visibility 0s 0s}.notes-panel{position:fixed;top:64px;right:0;z-index:5;width:var(--notes-w, 340px);height:calc(100dvh - 64px);transform:translate(100%);transition:transform .26s cubic-bezier(.2,.8,.25,1);background:var(--card);border-left:var(--line-width) solid var(--line);display:flex;flex-direction:column;overflow:hidden}.notes-dock--open .notes-panel{transform:none}.notes-dock__scrim{display:none}.notes-panel__header{display:flex;align-items:center;gap:10px;padding:14px 16px 4px;flex-shrink:0}.notes-panel__titles{flex:1;min-width:0}.notes-panel__title{font-family:Jua,sans-serif;font-size:var(--fs-lg);color:var(--ink)}.notes-panel__close{background:none;border:none;color:var(--muted);font-size:var(--fs-lg);line-height:1;cursor:pointer;padding:2px 4px}.notes-panel__close:hover{color:var(--ink)}.notes-panel__controls{display:flex;align-items:center;gap:8px;padding:10px 16px;flex-shrink:0}.notes-panel__add{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;color:var(--accent);border:2px solid var(--line);border-radius:8px;font-size:var(--fs-lg);padding:0;cursor:pointer}.notes-panel__add:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.notes-panel__add:disabled{opacity:.4;cursor:default}.notes-panel__search{position:relative;flex:1;min-width:0}.notes-panel__search input{width:100%;height:32px;font:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:8px;padding:0 28px 0 10px}.notes-panel__search input:focus{outline:none;border-color:var(--accent)}.notes-panel__search input::placeholder{color:var(--muted)}.notes-panel__search-clear{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;background:none;border:0;cursor:pointer;color:var(--muted);font-size:var(--fs-sm);padding:4px}.notes-panel__search-clear:hover{color:var(--ink)}.notes-panel__body{flex:1;overflow-y:auto;padding:14px 16px 18px}.notes-panel__error{color:var(--red);background:var(--red-soft);border-radius:8px;font-size:var(--fs-sm);padding:8px 10px;margin-bottom:10px}.notes-panel__empty{font-family:Jua,sans-serif;color:var(--muted);font-size:var(--fs-md);text-align:center;padding:24px 8px}.note{--note-border-c: rgba(0, 0, 0, .35);--note-border-c: color-mix(in srgb, var(--note-ink) 45%, transparent);background:var(--note-paper);color:var(--note-ink);font-family:var(--note-font);border:3px solid var(--note-border-c);border-radius:6px;box-shadow:0 3px 10px #0000002e}.note--dashed{border-style:dashed}.note--doodle{border-radius:255px 15px 225px/15px 225px 15px 255px}.note--tape{border-color:transparent;position:relative}.note--tape:before{content:"";position:absolute;top:-9px;left:50%;width:72px;height:20px;transform:translate(-50%) rotate(-3deg);background:#ffffff8c;border:1px solid rgba(0,0,0,.08);pointer-events:none}.note__title{font-weight:700;font-size:var(--fs-md);margin-bottom:4px;overflow-wrap:anywhere}.note b,.note strong,.note__title{font-weight:700;text-shadow:.04em 0 currentColor,-.04em 0 currentColor}.note .note-line--sm{font-size:.85em}.note .note-line--lg{font-size:1.3em}.note .note-line--xl{font-size:1.6em;line-height:1.25}.note__body{font-size:var(--note-fs, var(--fs-sm));line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.note__hl{background:#ffd65799;color:inherit;border-radius:2px;padding:0 1px}.notes-panel__wall{display:flex;flex-direction:column;gap:14px}.notes-panel__card{padding:12px 12px 10px;cursor:pointer;position:relative;transition:transform .18s ease}.notes-panel__card:nth-child(odd){transform:rotate(-1deg)}.notes-panel__card:nth-child(2n){transform:rotate(1.2deg)}.notes-panel__card:hover,.notes-panel__card:focus-within{transform:translateY(-3px) rotate(0)}.notes-panel__card--new{animation:note-pop .18s ease}@keyframes note-pop{0%{transform:scale(.92);opacity:0}}.note__actions{position:absolute;top:6px;right:6px;display:flex;gap:4px;opacity:0;transition:opacity .15s ease}.notes-panel__card:hover .note__actions,.notes-panel__card:focus-within .note__actions{opacity:1}.note__action{display:inline-flex;align-items:center;background:#ffffffa6;border:0;border-radius:6px;cursor:pointer;color:inherit;font:inherit;font-size:var(--fs-sm);padding:4px 5px;transition:opacity .15s ease}.note__action:hover{background:#ffffffe6}.note__action--confirm{opacity:1;font-weight:700;color:#a4243b;font-size:var(--fs-xs)}.note__action--pinned{opacity:1;background:#ffffffe6}.note__action--pinned .icon{transform:rotate(45deg)}.notes-panel__card .note__actions:has(.note__action--pinned){opacity:1}.notes-panel__card:not(:hover):not(:focus-within) .note__actions:has(.note__action--pinned) .note__action:not(.note__action--pinned){opacity:0;pointer-events:none}.notes-panel__card:hover .note__action,.notes-panel__card:focus-within .note__action{opacity:1;pointer-events:auto}.notes-panel__editor-wrap{margin:0}.notes-panel__ed-toolbar{position:relative;display:flex;align-items:center;gap:2px;width:fit-content;padding:3px;margin:10px 0 8px;background:var(--bg);border:2px solid var(--line);border-radius:10px}.notes-panel__ed-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;background:transparent;color:var(--ink);border:0;border-radius:7px;cursor:pointer;font-size:var(--fs-md);padding:0}.notes-panel__ed-btn:hover{background:var(--accent-soft)}.notes-panel__ed-btn--on{background:var(--accent-soft);color:var(--accent)}.notes-panel__ed-sep{width:2px;height:16px;margin:0 3px;background:var(--line);border-radius:1px}.notes-panel__ed-paperchip{display:block;width:16px;height:16px;border-radius:5px;border:2px solid rgba(0,0,0,.3)}.notes-panel__ed-inkchip{display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:800;font-size:var(--fs-sm);line-height:1;color:var(--ink)}.notes-panel__ed-inkbar{display:block;width:14px;height:3px;border-radius:2px;box-shadow:0 0 0 1px var(--line)}.notes-panel__ed-borderchip{display:block;width:16px;height:14px;border:2px solid var(--ink);border-radius:3px;position:relative}.notes-panel__ed-borderchip--dashed{border-style:dashed}.notes-panel__ed-borderchip--doodle{border-radius:40px 5px 34px/5px 34px 5px 40px}.notes-panel__ed-borderchip--tape{border-color:transparent;background:var(--accent-soft)}.notes-panel__ed-borderchip--tape:before{content:"";position:absolute;top:-3px;left:50%;width:10px;height:4px;transform:translate(-50%) rotate(-4deg);background:var(--ink);opacity:.7}.notes-panel__ed-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:5;display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--card);border:2px solid var(--line);border-radius:10px;box-shadow:0 6px 18px #00000040;animation:ed-pop-in .12s ease}@keyframes ed-pop-in{0%{opacity:0}}@media (prefers-reduced-motion: reduce){.notes-panel__ed-pop{animation:none}}.notes-panel__editor{padding:12px;margin-bottom:10px}.notes-panel__editor-area{width:100%;min-height:110px;max-height:40vh;overflow-y:auto;outline:none;cursor:text;color:inherit;font-family:inherit;font-size:var(--note-fs, var(--fs-sm));line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.notes-panel__editor-area:empty:before{content:attr(data-placeholder);opacity:.45;pointer-events:none}.notes-panel__swatch{width:22px;height:22px;border-radius:50%;border:2px solid rgba(0,0,0,.25);padding:0;cursor:pointer}.notes-panel__swatch--on{outline:3px solid var(--accent);outline-offset:1px}.notes-panel__border-btn{width:28px;height:22px;background:transparent;border:3px solid var(--muted);border-radius:4px;padding:0;cursor:pointer;position:relative}.notes-panel__border-btn--dashed{border-style:dashed}.notes-panel__border-btn--doodle{border-radius:60px 8px 50px/8px 50px 8px 60px}.notes-panel__border-btn--tape{border-color:transparent;background:var(--accent-soft)}.notes-panel__border-btn--tape:before{content:"";position:absolute;top:-4px;left:50%;width:14px;height:6px;transform:translate(-50%) rotate(-4deg);background:var(--muted);opacity:.7}.notes-panel__border-btn:hover{border-color:var(--accent)}.notes-panel__border-btn--tape:hover{border-color:transparent;background:var(--accent)}.notes-panel__border-btn--on{border-color:var(--accent)}.notes-panel__border-btn--on.notes-panel__border-btn--tape{background:var(--accent);border-color:transparent}.notes-panel__ed-pop--emoji{flex-direction:column;align-items:stretch;gap:8px;width:264px}.notes-panel__emoji-search{width:100%;font:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:8px;padding:5px 10px}.notes-panel__emoji-search:focus{outline:none;border-color:var(--accent)}.notes-panel__emoji-search::placeholder{color:var(--muted)}.notes-panel__emoji-tabs{display:flex;gap:2px;padding-bottom:6px;border-bottom:2px solid var(--line)}.notes-panel__emoji-tab{flex:1;display:flex;align-items:center;justify-content:center;height:28px;background:transparent;border:0;border-radius:7px;font-size:var(--fs-md);line-height:1;padding:0;cursor:pointer;opacity:.55}.notes-panel__emoji-tab:hover,.notes-panel__emoji-tab--on{background:var(--accent-soft);opacity:1}.notes-panel__emoji-scroll{display:grid;grid-template-columns:repeat(auto-fill,minmax(30px,1fr));gap:4px;max-height:200px;overflow-y:auto;padding:2px}.notes-panel__emoji{display:flex;align-items:center;justify-content:center;height:30px;background:transparent;border:0;border-radius:6px;font-size:18px;line-height:1;padding:0;cursor:pointer;transition:transform .12s ease}.notes-panel__emoji:hover{background:var(--accent-soft);transform:scale(1.2)}.notes-panel__emoji-none{grid-column:1 / -1;text-align:center;color:var(--muted);font-size:var(--fs-sm);padding:12px 0}.notes-panel__editor-actions{display:flex;gap:8px}@media (max-width: 720px){.notes-dock,.notes-dock--open{width:0}.notes-panel{bottom:0;height:auto;z-index:100;max-width:100vw;box-shadow:-8px 0 40px #0006}.notes-dock__scrim{display:block;position:fixed;top:64px;right:0;bottom:0;left:0;z-index:99;background:#0000008c;opacity:0;pointer-events:none;transition:opacity .2s ease}.notes-dock--open .notes-dock__scrim{opacity:1;pointer-events:auto}}@media (prefers-reduced-motion: reduce){.notes-dock,.notes-panel,.notes-dock__scrim,.notes-panel__card,.notes-panel__emoji{transition:none}.notes-panel__card--new{animation:none}}.ui-btn{font:inherit;font-weight:700;cursor:pointer;text-decoration:none;border:4px solid var(--accent);background:var(--accent);color:#fff;border-radius:10px;padding:10px 18px;transition:transform .05s,filter .12s}.ui-btn:hover{filter:brightness(1.05)}.ui-btn:active{transform:translateY(1px)}.ui-btn:disabled{opacity:.55;cursor:not-allowed}.ui-btn--ghost{background:transparent;color:var(--accent)}.ui-btn--danger{background:var(--red);border-color:var(--red);color:#fff}.ui-btn--plain{background:transparent;border-color:transparent;color:inherit;padding-left:0;padding-right:0}.ui-btn--plain:hover{filter:none;text-decoration:underline}.ui-btn--sm{padding:6px 12px;border-width:3px;border-radius:8px;font-size:var(--fs-sm)}.ui-btn--block{width:100%}.home{min-height:100vh;overflow-x:clip;position:relative}.home-content{max-width:1040px;margin:0 auto;padding:96px 20px 80px}.section{margin-bottom:64px}.section+.section{margin-top:100px}.section-label{display:flex;align-items:center;gap:14px;font-family:Jua,sans-serif;font-size:19px;font-weight:700;color:#efecfb;text-shadow:0 1px 3px rgba(0,0,0,.45);letter-spacing:.02em;margin-bottom:14px;margin-top:36px}.section-label:before,.section-label:after{content:"";height:2px;border-radius:2px;background:#efecfb8c}.section-label:before{width:24px;flex:none}.section-label:after{flex:1}.section-label:first-child{margin-top:0}.nav-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (min-width: 581px){.nav-grid.trio{grid-template-columns:repeat(3,1fr)}}.icon-link{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding:20px;text-decoration:none;color:var(--ink)}.icon-link-img{height:150px;width:auto;max-width:100%;object-fit:contain;transition:filter .25s ease,transform .15s ease}.pixel-art{image-rendering:pixelated}.icon-link:hover .icon-link-img{filter:drop-shadow(0 0 8px rgba(255,255,255,.95)) drop-shadow(0 0 18px rgba(255,255,255,.65));animation:icon-bob 1.8s ease-in-out infinite}@keyframes icon-bob{0%,to{transform:translateY(-3px) scale(1.04)}50%{transform:translateY(-11px) scale(1.04)}}.icon-link-label{font-family:Jua,sans-serif;font-size:28px;text-align:center;color:#efecfb;text-shadow:0 1px 3px rgba(0,0,0,.45)}.icon-link-sub{font-size:12px;color:#cbc4ec;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.45)}.home-footer{text-align:center;font-size:12px;color:#cbc4ec;text-shadow:0 1px 3px rgba(0,0,0,.45);padding:24px}@media (max-width: 580px){.nav-grid{grid-template-columns:1fr}.home-content{padding-top:44px}.nav-grid.trio{grid-template-columns:repeat(2,1fr);column-gap:12px;row-gap:32px}.icon-link-img{height:88px}.icon-link{padding:0;gap:2px}.icon-link-label{font-size:15px;line-height:1.15}.icon-link-sub{display:none}.section+.section{margin-top:50px}}.start-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 24px 224px;text-align:center;cursor:pointer;background:radial-gradient(ellipse at center,#15121f59,#15121fb8);animation:start-in .5s ease both}.start-screen.is-leaving{animation:start-out .65s ease forwards;pointer-events:none}@keyframes start-in{0%{opacity:0}to{opacity:1}}@keyframes start-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.start-banner{width:min(90%,680px);height:auto;margin-bottom:6px;filter:drop-shadow(0 6px 24px rgba(0,0,0,.55))}.start-tagline{font-family:Jua,sans-serif;font-size:18px;color:#d7cdf6;max-width:560px;text-shadow:0 1px 4px rgba(0,0,0,.6)}.start-prompt{font-family:Deltarune,monospace;font-size:26px;letter-spacing:.15em;color:#fff;margin-top:20px;text-shadow:0 0 12px rgba(163,133,230,.9),0 2px 4px rgba(0,0,0,.6);animation:start-blink 1.1s steps(1,end) infinite}.start-hint{font-size:12px;color:#a79fce;letter-spacing:.08em;text-transform:uppercase}@keyframes start-blink{0%,49%{opacity:1}50%,to{opacity:.2}}.home--entering .home-content .section-label,.home--entering .home-content .icon-link{animation:home-rise .8s ease backwards}@keyframes home-rise{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.start-screen,.start-screen.is-leaving,.start-prompt,.home-content .section-label,.home-content .icon-link{animation:none!important}}.daily-label-icon{font-size:var(--fs-lg)}.daily-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.daily-task{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;text-decoration:none;color:#efecfb;background:#15121f8c;border:2px solid rgba(239,236,251,.18);transition:border-color .18s ease,background .18s ease,transform .15s ease}.daily-task:hover{border-color:#efecfb8c;background:#15121fbf;transform:translateY(-2px)}.daily-task-icon{font-size:var(--fs-xl);flex:none;color:#cbc4ec}.daily-task-text{display:flex;flex-direction:column;gap:2px;min-width:0}.daily-task-title{font-family:Jua,sans-serif;font-size:var(--fs-md);line-height:1.2}.daily-task-sub{font-size:var(--fs-xs);color:#cbc4ec;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-task-check{font-size:var(--fs-lg);flex:none;margin-left:auto;color:#8a82ad}.daily-task.is-done{border-color:#86dc9873}.daily-task.is-done .daily-task-check{color:#9fe6a0}.daily-task.is-done .daily-task-title{color:#cbc4ec}.daily-test-cta{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px 16px;border-radius:14px;text-decoration:none;color:#efecfb;background:#42326999;border:2px solid rgba(163,133,230,.55);transition:border-color .18s ease,background .18s ease,transform .15s ease}.daily-test-cta:hover{border-color:#a385e6f2;background:#423269cc;transform:translateY(-2px)}.daily-cta-icon{font-size:var(--fs-xl);flex:none;color:#cbc4ec}.daily-cta-text{font-family:Jua,sans-serif;font-size:var(--fs-md)}.daily-cta-go{margin-left:auto;flex:none;font-size:var(--fs-sm);font-weight:700;color:#efecfb;padding:6px 14px;border-radius:999px;background:#a385e659;border:1px solid rgba(163,133,230,.7)}.daily-done-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 20px;text-align:center;border-radius:14px;color:#efecfb;background:#42326999;border:2px solid rgba(163,133,230,.55)}.daily-done-icon{font-size:40px;color:#f3d37a}.daily-done-title{font-family:Jua,sans-serif;font-size:var(--fs-xl);text-shadow:0 1px 3px rgba(0,0,0,.45)}.daily-done-sub{font-size:var(--fs-sm);color:#cbc4ec}.home--entering .daily-act .daily-task,.home--entering .daily-act .daily-test-cta,.home--entering .daily-act .daily-done-card{animation:home-rise .8s ease backwards;animation-delay:.12s}@media (max-width: 720px){.daily-list{grid-template-columns:1fr;gap:10px}}@media (prefers-reduced-motion: reduce){.daily-act .daily-task,.daily-act .daily-test-cta,.daily-act .daily-done-card{animation:none!important;transition:none}}.ui-card{position:relative;background:var(--card);border:var(--card-border);border-radius:14px;padding:20px 22px}.ui-card+.ui-card:has(.peeking-critter){margin-top:60px}.ui-text{margin:0}.ui-text--title{font-family:Jua;font-size:var(--fs-xl);font-weight:800;line-height:1.2}.ui-text--subtitle{font-size:var(--fs-lg);font-weight:700}.ui-text--body{font-size:var(--fs-md)}.ui-text--muted{font-size:var(--fs-md);color:var(--muted)}.ui-text--label{font-size:var(--fs-sm);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.xp-bar{display:flex;flex-direction:column;gap:10px}.xp-bar__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.xp-bar__id{display:flex;align-items:center;gap:10px}.xp-bar__total{color:var(--muted)}.xp-bar__badge{background:var(--accent-soft);color:var(--accent);border:4px solid var(--accent);padding:4px 12px;border-radius:999px;font-size:var(--fs-md);font-weight:700;letter-spacing:.03em}.xp-bar__track{height:16px;border-radius:999px;overflow:hidden;background:var(--accent-soft);border:3px solid var(--line)}.xp-bar__fill{height:100%;background:var(--accent);transition:width .4s ease}.xp-bar__caption{font-size:var(--fs-sm);color:var(--muted)}.activity{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.activity__row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:2px solid var(--line)}.activity__row:last-child{border-bottom:none}.activity__icon{font-size:var(--fs-lg)}.activity__label{font-weight:600}.activity__ref{color:var(--muted);font-size:var(--fs-xs)}.activity__xp{margin-left:auto;font-weight:700;color:var(--green)}.activity__empty{color:var(--muted)}.activity__more{margin-top:12px;padding:0;background:none;border:none;cursor:pointer;font:inherit;font-weight:700;font-size:var(--fs-sm);color:var(--accent)}.activity__more:hover{filter:brightness(1.15);text-decoration:underline}.friends-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px}.friends-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border:var(--card-border);border-radius:10px;background:var(--bg)}.friends-name{flex:1;min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-level{font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.friends-remove{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:none;color:var(--muted);cursor:pointer}.friends-remove:hover{color:var(--red);background:var(--card)}.friends-add{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}.friends-add input{flex:1;min-width:180px;font:inherit;padding:8px 12px;border-radius:10px;border:3px solid var(--line);background:var(--card);color:var(--ink)}.friends-add input:focus{outline:none;border-color:var(--accent)}.friends-error{margin-top:8px;font-size:var(--fs-sm);font-weight:600;color:var(--red)}.back-home{display:inline-block;font-size:var(--fs-sm)}.peeking-critter-wrap{position:absolute;z-index:2;isolation:isolate;display:inline-block;line-height:0;user-select:none;-webkit-user-select:none}.peeking-critter{position:relative;z-index:1;display:block;width:auto;cursor:pointer;pointer-events:auto;-webkit-touch-callout:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.28))}.peek-heart{position:absolute;left:50%;top:45%;z-index:0;height:auto;image-rendering:pixelated;pointer-events:none;transform:translate(-50%,-50%);animation:peek-heart-float var(--dur, 1.1s) ease-out var(--delay, 0ms) forwards}@keyframes peek-heart-float{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}20%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% - var(--rise))) scale(1) rotate(var(--rot))}}@media (prefers-reduced-motion: reduce){.peek-heart{animation-duration:1ms}}.cc{background:var(--card);border:var(--card-border);border-radius:18px;padding:18px}.cc__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.cc__title{font-family:Jua,sans-serif;font-size:var(--fs-xl);margin:0}.cc__wallet{display:flex;align-items:center;gap:8px;background:var(--bg);border:3px solid var(--line);border-radius:999px;padding:6px 16px;font-size:var(--fs-lg);font-weight:800}.cc__star{filter:drop-shadow(0 0 6px #ffd34d88)}.cc__layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width: 720px){.cc__layout{grid-template-columns:1fr}}.cc__stage-wrap{display:flex;flex-direction:column;align-items:center;gap:12px}.cc__stage{width:100%;max-width:300px;aspect-ratio:1 / 1;height:auto}.cc__hint{margin:0;color:var(--muted);font-size:var(--fs-sm);text-align:center;min-height:1.2em}.cc__hint--active{color:var(--accent);font-weight:700}.cc__confirm{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:300px}.cc__confirm>.ui-btn:first-child{width:100%}.cc__shortfall{color:var(--red);font-size:var(--fs-xs);font-weight:700}.cc__tabs{display:flex;gap:8px;margin-bottom:14px}.cc__tab{flex:1;padding:10px 0;border:3px solid var(--line);background:var(--accent-soft);color:var(--muted);border-radius:12px;font:inherit;font-weight:800;cursor:pointer;transition:all .15s ease}.cc__tab:hover{color:var(--ink)}.cc__tab.is-active{background:var(--accent);color:#1a1426;border-color:var(--accent)}.cc__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;overflow-y:auto;max-height:380px;padding:2px}.cc__tile{position:relative;background:var(--bg);border:3px solid transparent;border-radius:12px;padding:8px 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:5px;font:inherit;color:var(--ink);transition:transform .12s ease,border-color .12s ease,background .12s ease}.cc__tile:hover:not(:disabled){transform:translateY(-2px);border-color:var(--line)}.cc__tile.is-previewed{border-color:var(--accent);background:var(--accent-soft)}.cc__tile:disabled{cursor:default}.cc__thumb{position:relative;width:72px;height:72px;background:#fff;border-radius:8px;overflow:hidden}.cc__none{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:30px;opacity:.85}.cc__label{font-size:var(--fs-xs);font-weight:800;text-align:center;line-height:1.1}.cc__price{font-size:var(--fs-xs);color:var(--accent);font-weight:800}.cc__price--free{color:var(--muted)}.cc__price--owned{color:var(--green)}.cc__price--short{color:var(--red)}.cc__badge{position:absolute;top:5px;right:5px;font-size:11px;background:var(--green);color:#0c2a16;border-radius:6px;padding:1px 6px;font-weight:800}.cc__badge--equipped{background:var(--accent);color:#1a1426}.scene-section{margin-bottom:28px}.scene-section .ui-text{margin-bottom:12px}.scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.scene-tile{position:relative;display:flex;flex-direction:column;gap:8px;align-items:stretch;background:var(--card);border:var(--card-border);border-radius:12px;padding:10px;cursor:pointer;color:var(--ink);font:inherit;text-align:center;transition:border-color .12s,transform .05s}.scene-tile:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.scene-tile:disabled{cursor:default}.scene-tile.is-previewed{border-color:var(--accent)}.scene-tile__badge{position:absolute;top:6px;right:6px;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--green);color:#08130d}.scene-confirm{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - 24px);background:var(--card);border:var(--card-border);border-radius:12px;padding:12px 16px;box-shadow:0 8px 30px #00000073;animation:scene-confirm-in .25s ease both}@keyframes scene-confirm-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}.scene-confirm__hint{font-size:var(--fs-sm);color:var(--muted)}@media (prefers-reduced-motion: reduce){.scene-confirm{animation:none}}.scene-tile__preview{display:grid;place-items:center;height:84px;overflow:hidden;border-radius:8px;background:var(--bg)}.scene-tile__preview img{width:100%;height:100%;object-fit:cover}.scene-tile__icon{font-size:40px}.scene-tile__placeholder{color:var(--muted);font-size:var(--fs-xl)}.scene-tile__name{font-weight:700;font-size:var(--fs-sm)}.scene-tile__tag{font-size:var(--fs-xs);font-weight:700;color:var(--muted)}.scene-tile.is-equipped .scene-tile__tag{color:var(--green)}.scene-tile.is-short .scene-tile__tag{color:var(--red)}.scene-msg{margin-bottom:14px;padding:10px 14px;border-radius:10px;background:var(--red-soft);color:var(--red);border:1px solid var(--red);font-weight:600;font-size:var(--fs-sm)}.toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 24px);border:1px solid;border-radius:12px;padding:12px 16px;font-weight:700;font-size:var(--fs-md);box-shadow:0 8px 30px #00000073;animation:toast-in .25s ease both}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.toast__icon{font-size:var(--fs-lg);line-height:1}.toast__msg{white-space:pre-wrap}.toast__actions{display:flex;gap:8px;margin-left:4px}.toast__close{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--fs-lg);line-height:1;opacity:.7;padding:0 2px;margin-left:2px}.toast__close:hover{opacity:1}.toast--success{background:var(--green-soft);color:var(--green);border-color:var(--green)}.toast--error{background:var(--red-soft);color:var(--red);border-color:var(--red)}.toast--warn{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.toast--accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;border:3px solid var(--line);border-radius:10px;background:var(--bg)}.color-pick{aspect-ratio:1;cursor:pointer;background:#fff;border:4px solid transparent;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:2px}.color-pick:hover{border-color:var(--line)}.color-pick.is-selected{border-color:var(--accent)}.dev-select{font:inherit;padding:10px 12px;border-radius:10px;border:3px solid var(--line);background:var(--card);color:var(--ink)}.dev-select:focus{outline:none;border-color:var(--accent)}.dev-stage{margin-top:20px;padding:28px;border:3px dashed var(--line);border-radius:14px;background:var(--card)}.tab-card__tabs{display:inline-flex;gap:6px;padding:0 14px;position:relative;z-index:1}.tab-card__tab{font:inherit;font-family:Jua,sans-serif;font-size:var(--fs-md);color:var(--muted);background:var(--bg);border:var(--card-border);border-bottom:none;border-radius:12px 12px 0 0;padding:9px 18px 7px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;margin-bottom:0;transition:color .15s,background .15s}.tab-card__tab:hover{color:var(--ink)}.tab-card__tab.is-active{color:var(--ink);background:var(--card);margin-bottom:calc(-1 * var(--line-width));padding-bottom:calc(7px + var(--line-width))}.tab-card__badge{font-family:inherit;font-size:var(--fs-xs);line-height:1;padding:3px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.tab-card__body{position:relative;z-index:0}@property --glow-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.glow-btn{position:relative;z-index:0;background:transparent;border:0;padding:0;cursor:pointer;font:inherit}.glow-btn--block{width:100%}.glow-btn:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:14px;z-index:-1;background:conic-gradient(from var(--glow-angle),#7c5ccf,#a06ee8,#c77dff,#ff6fae,#ff9ed8,#c77dff,#7c5ccf);opacity:.8;animation:glow-spin 3.2s linear infinite}.glow-btn__label{display:block;background:var(--accent);color:#fff;border-radius:10px;padding:11px 22px;text-align:center;font-weight:700;font-size:var(--fs-md)}.glow-btn:disabled{opacity:.5;cursor:not-allowed}.glow-btn:disabled:before{display:none}@keyframes glow-spin{to{--glow-angle: 360deg}}@media (prefers-reduced-motion: reduce){.glow-btn:before{animation:none}}.ui-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000b8;display:flex;align-items:center;justify-content:center;padding:24px;animation:ui-modal-fade .15s ease both}.ui-modal{background:var(--card);border:var(--card-border);border-radius:14px;width:100%;max-height:86vh;overflow:auto;box-shadow:0 24px 70px #0000008c;animation:ui-modal-pop .18s ease both}.ui-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 0}.ui-modal__title{font-weight:800;font-size:var(--fs-lg)}.ui-modal__close{background:none;border:none;color:var(--muted);font-size:var(--fs-lg);line-height:1;cursor:pointer;padding:2px 4px}.ui-modal__close:hover{color:var(--ink)}.ui-modal__body{padding:18px}.ui-modal__foot{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:0 18px 18px}@keyframes ui-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.ui-modal__overlay,.ui-modal{animation:none}}.toggle-btn{border:2px solid var(--line);border-radius:10px;padding:10px 20px;cursor:pointer;font:inherit;font-size:var(--fs-md);font-weight:600;background:var(--card);color:var(--muted);transition:border-color .15s,background .15s,color .15s;-webkit-user-select:none;user-select:none}.toggle-btn:hover:not(:disabled){border-color:var(--accent);color:var(--ink)}.toggle-btn.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.toggle-btn:disabled{opacity:.4;cursor:not-allowed}.ui-select{position:relative;display:inline-block}.ui-select select{font:inherit;font-size:var(--fs-md);cursor:pointer;width:100%;padding:10px 36px 10px 12px;border-radius:10px;border:3px solid var(--line);background:var(--card);color:var(--ink);-moz-appearance:none;appearance:none;-webkit-appearance:none}.ui-select select:focus{outline:none;border-color:var(--accent)}.ui-select__arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted);font-size:var(--fs-sm)}.ui-toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.ui-toggle input{position:absolute;opacity:0;width:0;height:0}.ui-toggle__track{width:42px;height:24px;flex-shrink:0;border-radius:999px;background:var(--line);position:relative;transition:background .15s}.ui-toggle__knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}.ui-toggle input:checked+.ui-toggle__track{background:var(--accent)}.ui-toggle input:checked+.ui-toggle__track .ui-toggle__knob{left:20px}.ui-toggle input:focus-visible+.ui-toggle__track{outline:2px solid var(--accent);outline-offset:2px}.ui-toggle__label{font-size:var(--fs-sm);font-weight:600;color:var(--ink)}.ui-tag{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;padding:2px 10px;border-radius:999px;border:4px solid;white-space:nowrap}.ui-tag--accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.ui-tag--green{background:var(--green-soft);color:var(--green);border-color:var(--green)}.ui-tag--amber{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.ui-tag--red{background:var(--red-soft);color:var(--red);border-color:var(--red)}.toc-card{padding:18px 22px}.toc-card__head{font-family:Jua,sans-serif;font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px;margin-bottom:10px}.toc-card__head .ico{font-size:22px}.toc{list-style:none;padding:0;margin:0}.toc li{border-bottom:1px solid var(--line)}.toc li:last-child{border-bottom:none}.toc a{display:flex;align-items:center;gap:10px;padding:10px 4px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600;transition:color .12s}.toc a:hover{color:var(--accent)}.toc .num{font-size:12px;color:var(--muted);min-width:32px}.video-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px;background:#000;margin-bottom:12px}.video-wrap video{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:12px}.video-meta{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:16px;flex-wrap:wrap}.video-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.video-block{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}.video-label{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:4px}@media (max-width: 600px){.video-pair{grid-template-columns:1fr}}.section-card{scroll-margin-top:80px}.section-card__head{font-family:Jua,sans-serif;font-size:20px;font-weight:800;margin:0 0 10px;padding:0 4px}.section-card__head .ico{font-size:22px;margin-right:10px}.section-card__anchor{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;position:relative}.section-card__anchor:hover{text-decoration:underline;text-underline-offset:3px}.section-card__anchor-ico{font-size:16px;color:var(--muted);opacity:0;transition:opacity .15s}.section-card__anchor:hover .section-card__anchor-ico,.section-card__anchor:focus-visible .section-card__anchor-ico{opacity:.8}.section-card__copied{font-family:system-ui,sans-serif;font-size:var(--fs-xs);font-weight:600;color:var(--green);background:var(--green-soft);border-radius:6px;padding:2px 8px;white-space:nowrap}.section-content{line-height:1.6}.section-content p{margin-bottom:12px;font-size:15px}.section-content p:last-child{margin-bottom:0}.section-content ul,.section-content ol{padding-left:22px;font-size:15px}.section-content li{margin-bottom:6px}.section-content h3{font-size:13px;font-weight:700;margin:18px 0 8px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.section-content code{background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:13px}.section-content img,.section-content video{image-rendering:auto}.section-content .alert{border-radius:0;padding:13px 16px;font-size:14px;color:var(--ink);margin:16px 0;display:flex;gap:12px;align-items:flex-start}.section-content .alert .icon{font-size:0;flex-shrink:0;margin-top:1px;width:18px;height:18px;background-color:var(--alert-color, var(--ink));-webkit-mask:var(--alert-ico) center / contain no-repeat;mask:var(--alert-ico) center / contain no-repeat}.section-content .alert.exam{background:var(--accent-soft);border-left:4px solid var(--accent);--alert-ico: url(/icons/pin.svg);--alert-color: var(--accent)}.section-content .alert.tip{background:var(--green-soft);border-left:4px solid var(--green);--alert-ico: url(/icons/lightbulb.svg);--alert-color: var(--green)}.section-content .alert.warn{background:var(--amber-soft);border-left:4px solid var(--amber);--alert-ico: url(/icons/triangle-alert.svg);--alert-color: var(--amber)}.section-content .alert.note{background:var(--purple-soft);border-left:4px solid var(--purple);--alert-ico: url(/icons/notebook-pen.svg);--alert-color: var(--purple)}.section-content .alert .content .title{display:block;font-weight:700;margin-bottom:3px}.section-content .alert .content .description{font-size:14px}.section-content .tbl-wrap{overflow-x:auto;margin:14px 0}.section-content table{width:100%;border-collapse:collapse;font-size:14px}.section-content th{background:var(--bg);text-align:left;padding:9px 12px;font-weight:700;border-bottom:2px solid var(--line);color:var(--muted);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.section-content td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}.section-content tr:last-child td{border-bottom:none}.section-content .badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700}.section-content .badge.green{background:var(--green-soft);color:var(--green)}.section-content .badge.amber{background:var(--amber-soft);color:var(--amber)}.section-content .badge.red{background:var(--red-soft);color:var(--red)}.section-content .badge.blue{background:var(--accent-soft);color:var(--accent)}.section-content .badge.purple{background:var(--purple-soft);color:var(--purple)}.section-content .fig-wrap{margin:20px 0}.section-content .fig-wrap img{width:auto;max-width:100%;border-radius:10px;border:1px solid var(--line);display:block}.section-content .fig-h350 img{max-height:350px}.section-content .fig-cap{font-size:13px;color:var(--muted);margin-top:7px;font-style:italic}.section-content .fig-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.section-content .fig-row .fig-wrap{margin:0}.section-content .steps{list-style:none;padding:0;margin:0}.section-content .steps li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.section-content .steps li:last-child{border-bottom:none}.section-content .step-num{width:26px;height:26px;border-radius:8px;flex-shrink:0;background:var(--accent);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}.section-content .steps .content{display:flex;flex-direction:column;gap:4px}.section-content .steps .content .title{font-weight:700;font-size:14px}.section-content .steps .content .description{font-size:13px;color:var(--muted)}.section-content .two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.section-content .diagram{margin:20px 0;overflow-x:auto}.section-content .diagram svg{max-width:100%;display:block;margin:0 auto}@media (max-width: 600px){.section-content .fig-row,.section-content .two-col{grid-template-columns:1fr}}.section-card__edit{position:absolute;top:0;right:0;z-index:2;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;padding:5px 8px;cursor:pointer;line-height:1;font-size:var(--fs-sm);opacity:.65;transition:opacity .15s}.section-card__edit:hover{opacity:1}.section-card__editor{width:100%;min-height:260px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm);line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:12px}.section-card__editor:focus{outline:2px solid var(--accent);outline-offset:-1px}.section-card__tools{display:flex;align-items:center;gap:8px;margin-top:12px;justify-content:flex-end}.section-card__error{margin-right:auto;color:var(--red);font-size:var(--fs-sm)}.section-card__tools button{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:6px 14px;cursor:pointer;font-size:var(--fs-sm);font-weight:700;color:var(--ink)}.section-card__tools button:disabled{opacity:.55;cursor:default}.section-card__tools .section-card__save{background:var(--accent);border-color:var(--accent);color:#fff}.data-flow{margin:4px 0 2px}.df-steps{position:relative;display:flex;flex-direction:column;gap:4px}.df-rail{position:absolute;left:23px;top:29px;bottom:29px;width:3px;background:var(--line);border-radius:2px}.df-packet{position:absolute;left:23px;transform:translate(-50%,-50%);font-size:22px;z-index:3;transition:top 1.2s cubic-bezier(.4,.6,.3,1)}.df-step{display:flex;align-items:flex-start;gap:14px;padding:6px 0}.df-step__icon{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;font-size:22px;background:var(--card);border:2px solid var(--line);border-radius:50%;z-index:1;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,opacity .2s ease}.df-step__body{display:flex;flex-direction:column;padding-top:4px}.df-step__label{font-family:Jua,sans-serif;font-weight:700;font-size:var(--fs-md)}.df-step__note{color:var(--muted);font-size:var(--fs-sm);margin-top:2px;transition:color .2s ease}.df-step.is-passed .df-step__icon{border-color:var(--accent)}.df-step.is-active .df-step__icon{border-color:var(--accent);transform:scale(1.12);box-shadow:0 0 0 4px var(--accent-soft)}.df-step.is-active .df-step__note{color:var(--ink)}.df-step:not(.is-active):not(.is-passed) .df-step__icon{opacity:.85}.df-controls{margin-bottom:12px;text-align:center}.df-btn{font-family:Deltarune,monospace;font-size:var(--fs-sm);cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:8px 18px}@media (prefers-reduced-motion: reduce){.df-packet{transition:none}}.print-flow{margin:4px 0 2px}.pf-stage{position:relative;height:184px;margin:8px 30px 0}.pf-rail{position:absolute;left:14%;width:72%;top:23px;height:3px;background:var(--line);border-radius:2px}.pf-drop{position:absolute;left:50%;transform:translate(-50%);top:23px;width:3px;height:73px;background:var(--line)}.pf-node{position:absolute;top:0;transform:translate(-50%);width:92px;text-align:center}.pf-pc1{left:14%}.pf-switch{left:50%}.pf-printer{left:86%}.pf-pc2{left:50%;top:96px}.pf-icon{width:46px;height:46px;margin:0 auto;display:grid;place-items:center;font-size:23px;background:var(--card);border:2px solid var(--line);border-radius:50%;position:relative;z-index:1;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.pf-node.is-active .pf-icon{border-color:var(--accent);transform:scale(1.14);box-shadow:0 0 0 4px var(--accent-soft)}.pf-label{display:block;font-family:Jua,sans-serif;font-weight:700;font-size:var(--fs-sm);margin-top:4px}.pf-ip{display:block;font-family:Courier New,monospace;font-size:var(--fs-xs);color:var(--muted)}.pf-packet{position:absolute;top:23px;transform:translate(-50%,-50%);font-size:20px;z-index:3;transition:left .95s cubic-bezier(.4,.6,.3,1)}.pf-note{text-align:center;min-height:1.6em;margin-top:8px;font-family:Jua,sans-serif;font-size:var(--fs-md);color:var(--ink)}.pf-controls{text-align:center;margin-bottom:12px}.pf-btn{font-family:Deltarune,monospace;font-size:var(--fs-sm);cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:8px 18px}@media (max-width: 560px){.pf-stage{margin:8px 6px 0}.pf-node{width:72px}.pf-icon{width:40px;height:40px;font-size:20px}}@media (prefers-reduced-motion: reduce){.pf-packet{transition:none}}.gw{margin:4px 0 2px}.gw-stage{position:relative;height:116px;margin:8px 8px 0}.gw-rail{position:absolute;left:12%;width:76%;top:23px;height:3px;background:var(--line);border-radius:2px}.gw-node{position:absolute;top:0;transform:translate(-50%);width:116px;text-align:center}.gw-icon{width:46px;height:46px;margin:0 auto;display:grid;place-items:center;font-size:23px;background:var(--card);border:2px solid var(--line);border-radius:50%;position:relative;z-index:1;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.gw-node.is-passed .gw-icon{border-color:var(--accent)}.gw-node.is-active .gw-icon{border-color:var(--accent);transform:scale(1.14);box-shadow:0 0 0 4px var(--accent-soft)}.gw-label{display:block;font-family:Jua,sans-serif;font-weight:700;font-size:var(--fs-sm);margin-top:4px}.gw-ip{display:block;font-family:Courier New,monospace;font-size:var(--fs-xs);color:var(--muted)}.gw-tag{display:inline-block;margin-top:3px;padding:1px 8px;border-radius:999px;font-size:var(--fs-xs);font-weight:700;background:var(--accent-soft);color:var(--accent)}.gw-packet{position:absolute;top:23px;transform:translate(-50%,-50%);font-size:20px;z-index:3;transition:left .95s cubic-bezier(.4,.6,.3,1)}.gw-note{text-align:center;min-height:1.6em;margin-top:8px;font-family:Jua,sans-serif;font-size:var(--fs-md);color:var(--ink)}.gw-controls{text-align:center;margin-bottom:12px}.gw-btn{font-family:Deltarune,monospace;font-size:var(--fs-sm);cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:8px 18px}@media (max-width: 560px){.gw-stage{margin:8px 2px 0}.gw-node{width:84px}.gw-icon{width:38px;height:38px;font-size:19px}}@media (prefers-reduced-motion: reduce){.gw-packet{transition:none}}.snd{margin:8px 0 2px}.snd-row{display:flex;align-items:center;justify-content:center}.snd-rl{width:50px;flex-shrink:0;text-align:right;padding-right:10px;font-weight:700;font-size:var(--fs-sm);color:var(--muted)}.snd-octs{display:inline-flex;align-items:center}.snd-cell{width:54px;height:42px;margin:3px 0;display:grid;place-items:center;font-family:Courier New,monospace;font-size:18px;font-weight:800;border:2px solid var(--line);border-radius:8px}.snd-cell.is-net{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.snd-cell.is-host{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.snd-dot{width:14px;text-align:center;font-weight:800;color:var(--muted)}.snd-div{width:18px;align-self:stretch;position:relative}.snd-div:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed var(--ink);opacity:.45}.snd-labels{margin-bottom:2px}.snd-grp{text-align:center;font-size:var(--fs-xs);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.snd-grp.is-net{width:190px;color:var(--accent)}.snd-grp.is-host{width:54px;color:var(--amber)}.snd-spacer{width:18px;flex-shrink:0}.snd-cap{max-width:460px;margin:14px auto 0;text-align:center;font-size:var(--fs-sm);color:var(--muted);line-height:1.5}.snd-tag{font-weight:700}.snd-tag.is-net{color:var(--accent)}.snd-tag.is-host{color:var(--amber)}@media (max-width: 560px){.snd-rl{width:38px;padding-right:6px;font-size:var(--fs-xs)}.snd-cell{width:44px;height:38px;font-size:15px}.snd-dot{width:10px}.snd-div,.snd-spacer{width:14px}.snd-grp.is-net{width:152px}.snd-grp.is-host{width:44px}}.network-zoom{margin:0 0 2px;width:100%}.nz-stage{background:var(--bg);border:2px solid var(--line);border-radius:14px;overflow:hidden}.nz-svg{display:block;width:100%;height:auto;aspect-ratio:800 / 520}.nz-fade{transition:opacity .45s ease}@media (prefers-reduced-motion: reduce){.nz-fade{transition:none}}.nz-box{fill:var(--card);stroke:var(--line);stroke-width:2}.nz-box-label{font-family:Jua,sans-serif;font-size:13px;fill:var(--ink)}.nz-tag{fill:var(--muted);font-size:11px}.nz-cloud{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2;stroke-dasharray:6 5}.nz-cloud-title{font-family:Jua,sans-serif;font-size:15px;fill:var(--ink)}.nz-cloud-sub{font-size:11px;fill:var(--muted)}.nz-icon{font-size:19px}.nz-icon-sm{font-size:15px}.nz-node-label{font-size:9px;fill:var(--muted)}.nz-link{stroke:var(--line);stroke-width:2}.nz-link--wan{stroke:var(--accent);stroke-width:2.5;stroke-dasharray:5 4}.nz-caption-wrap{position:relative;margin:12px 2px 0}.nz-caption-reserve{display:grid}.nz-caption-reserve .nz-caption{grid-area:1 / 1;visibility:hidden}.nz-caption--live{position:absolute;top:0;right:0;bottom:0;left:0}.nz-caption{display:flex;flex-direction:column;gap:2px}.nz-caption__title{font-family:Jua,sans-serif;font-size:var(--fs-md);color:var(--ink)}.nz-caption__sub{color:var(--muted);font-size:var(--fs-sm)}.nz-controls{margin-top:12px;display:flex;align-items:center;justify-content:center;gap:14px}.nz-btn{font-family:Deltarune,monospace;font-size:var(--fs-sm);cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:8px 18px}.nz-btn--ghost{background:transparent;color:var(--ink);border:2px solid var(--line);padding:6px 16px}.nz-btn:disabled{opacity:.4;cursor:default}.nz-dots{display:inline-flex;gap:7px}.nz-dot{width:8px;height:8px;border-radius:50%;background:var(--line);transition:background .2s ease}.nz-dot.is-on{background:var(--accent)}.core-index__title{font-family:Jua,sans-serif;font-size:var(--fs-xl);font-weight:800;color:#efecfb;text-shadow:0 1px 3px rgba(0,0,0,.45);margin-bottom:4px}.core-index__desc{font-size:var(--fs-md);color:#cbc4ec;text-shadow:0 1px 3px rgba(0,0,0,.45);margin-bottom:24px}.domain{margin-bottom:28px}.domain-header{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:10px}.domain-num{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#cbc4ec}.domain-name{font-size:15px;font-weight:700;color:#efecfb}.domain-progress{margin-left:auto;font-size:12px;font-weight:600;color:#cbc4ec}.domain-num,.domain-name,.domain-progress{text-shadow:0 1px 3px rgba(0,0,0,.45)}.module-list{display:flex;flex-direction:column;gap:10px}.class-group{background:var(--accent-soft);border:2px solid var(--accent);border-radius:14px;padding:12px 14px;margin-bottom:14px}.class-group__header{display:flex;align-items:center;gap:8px;margin:2px 2px 12px}.class-group__icon{font-size:16px}.class-group__title{font-family:Jua,sans-serif;font-size:15px;font-weight:800;color:var(--accent)}.class-group__hint{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--accent);border-radius:999px;padding:2px 8px}.module-card{display:flex;align-items:center;gap:14px;background:var(--card);border:var(--card-border);border-radius:12px;padding:14px 18px;text-decoration:none;color:var(--ink);transition:border-color .12s,background .12s}.module-card:hover{border-color:var(--accent);background:var(--accent-soft)}.module-card.coming-soon{opacity:.5;cursor:not-allowed;pointer-events:none}.module-card{animation:module-rise .4s ease backwards}@keyframes module-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.module-card{animation:none}}.module-num{font-size:13px;font-weight:700;color:var(--muted);min-width:36px;text-align:right}.module-body{flex:1;display:flex;flex-direction:column}.module-title{font-size:15px;font-weight:700;margin-bottom:2px}.module-desc{font-size:13px;color:var(--muted)}.status{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap;flex-shrink:0;border:4px solid}.status.tested{background:var(--green-soft);color:var(--green);border-color:var(--green)}.status.read{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.status.unread{background:var(--accent-soft);color:var(--muted);border-color:var(--line)}@media (max-width: 500px){.module-card{flex-wrap:wrap}.module-num{min-width:auto}}.match-board{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.match-col{display:flex;flex-direction:column;gap:8px}.match-col-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#cbc4ec;text-shadow:0 1px 3px rgba(0,0,0,.45);padding-left:4px}.match-card{position:relative;text-align:left;cursor:pointer;font:inherit;background:var(--card);color:var(--ink);border:3px solid var(--line);border-radius:12px;padding:12px 14px 12px 34px;font-size:14px;line-height:1.45;transition:border-color .12s,background .12s,transform .05s}.match-card:hover:not(:disabled):not(.matched){border-color:var(--accent)}.match-card:disabled{cursor:default}.match-card.selected{border-color:var(--accent);background:var(--accent-soft)}.match-term{display:block}.match-sub{display:block;font-size:12px;color:var(--muted);margin-top:3px}.match-check{position:absolute;left:12px;top:12px;font-weight:800;opacity:0;transition:opacity .12s}.match-card.matched .match-check{opacity:1}.match-card.mc-0{border-color:#a385e6;background:#2c2447}.match-card.mc-0 .match-check{color:#a385e6}.match-card.mc-1{border-color:#2fbd8c;background:#143229}.match-card.mc-1 .match-check{color:#2fbd8c}.match-card.mc-2{border-color:#e0974a;background:#38280f}.match-card.mc-2 .match-check{color:#e0974a}.match-card.mc-3{border-color:#e86c8d;background:#371d28}.match-card.mc-3 .match-check{color:#e86c8d}.match-card.wrong{border-color:var(--red);background:var(--red-soft);animation:match-shake .4s ease}@keyframes match-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@media (max-width: 560px){.match-board{grid-template-columns:1fr}}.match-stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.match-stat{font-size:var(--fs-sm);color:var(--muted);background:var(--card);border:var(--card-border);border-radius:999px;padding:4px 14px}.match-stat b{color:var(--ink);font-size:var(--fs-md);margin-left:4px}.match-complete{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.match-complete-msg{font-weight:800;font-size:var(--fs-lg);margin-bottom:2px}.match-footer{display:flex;justify-content:center;margin-top:28px}.choice-list{display:flex;flex-direction:column;gap:10px}.choice{display:flex;align-items:center;gap:12px;text-align:left;width:100%;font:inherit;font-size:15px;cursor:pointer;background:var(--card);color:var(--ink);border:3px solid var(--line);border-radius:11px;padding:12px 16px;transition:border-color .15s,background .15s}.choice:hover:not(:disabled){border-color:var(--accent)}.choice.locked{cursor:default}.choice.correct{border-color:var(--green);background:var(--green-soft)}.choice.wrong{border-color:var(--red);background:var(--red-soft)}.choice.dimmed{opacity:.5}.choice__letter{flex-shrink:0;width:26px;height:26px;border-radius:6px;display:grid;place-items:center;font-weight:700;font-size:13px;text-transform:uppercase;background:var(--accent-soft);color:var(--accent);transition:background .15s,color .15s}.choice.correct .choice__letter{background:var(--green);color:#fff}.choice.wrong .choice__letter{background:var(--red);color:#fff}.choice__text{flex:1}.choice__mark{font-weight:800;margin-left:auto}.choice.correct .choice__mark{color:var(--green)}.choice.wrong .choice__mark{color:var(--red)}.choice-list--grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice-list--grid .choice{position:relative;flex-direction:column;align-items:stretch}.choice-list--grid .choice__text{width:100%}.choice-list--grid .choice__mark{position:absolute;top:6px;right:8px;margin:0;font-size:18px;text-shadow:0 1px 2px rgba(0,0,0,.4)}@media (max-width: 420px){.choice-list--grid{grid-template-columns:1fr}}.perfect-gif{width:112px;height:112px;object-fit:cover;border-radius:12px;border:var(--line-width) solid var(--card-border);-webkit-user-select:none;user-select:none;animation:perfect-gif-pop .32s cubic-bezier(.34,1.56,.64,1)}@keyframes perfect-gif-pop{0%{transform:scale(.6) rotate(-6deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.char-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;max-height:240px;overflow-y:auto;padding:8px;border:3px solid var(--line);border-radius:10px;background:var(--bg)}.char-pick{aspect-ratio:1;cursor:pointer;background:#fff;border:5px solid transparent;border-radius:8px;display:flex;align-items:center;justify-content:center}.char-pick:hover{border-color:var(--line)}.char-pick.is-selected{border-color:var(--accent)}.char-pick img{max-width:100%;max-height:100%;object-fit:contain}.practice-quiz__head{font-family:Jua,sans-serif;font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px;margin-bottom:8px}.practice-quiz__head .ico{font-size:22px}.practice-quiz__intro{color:var(--muted);font-size:15px}.practice-quiz__actions{margin-top:20px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.quiz-q{margin-bottom:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}.quiz-q:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.quiz-q-num{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.quiz-q-text{font-size:16px;font-weight:600;margin-bottom:18px;line-height:1.5}.quiz-opts{display:flex;flex-direction:column;gap:10px}.quiz-opt{display:flex;align-items:flex-start;gap:12px;border:2px solid var(--line);border-radius:11px;padding:12px 16px;cursor:pointer;transition:border-color .15s,background .15s;font-size:15px}.quiz-opt:hover{border-color:var(--accent)}.quiz-opt.selected{border-color:var(--accent);background:var(--accent-soft)}.quiz-opt.correct{border-color:var(--green);background:var(--green-soft)}.quiz-opt.wrong{border-color:var(--wrong);background:var(--wrong-soft)}.quiz-opt.correct-reveal{border-color:var(--green)}.quiz-opt.correct-reveal .quiz-opt-ltr{background:var(--green);color:#fff}.quiz-opt-ltr{width:26px;height:26px;border-radius:6px;flex-shrink:0;background:var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;transition:background .15s,color .15s}.quiz-opt.selected .quiz-opt-ltr{background:var(--accent);color:#fff}.quiz-opt.correct .quiz-opt-ltr{background:var(--green);color:#fff}.quiz-opt.wrong .quiz-opt-ltr{background:var(--wrong);color:#fff}.quiz-tf{display:flex;gap:10px}.quiz-tf-btn{flex:1;padding:11px;border-radius:10px;border:2px solid var(--line);background:var(--card);cursor:pointer;font-size:14px;font-weight:700;transition:all .12s;color:var(--muted)}.quiz-tf-btn:hover:not(:disabled){border-color:var(--accent);color:var(--ink)}.quiz-tf-btn.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.quiz-tf-btn.correct{border-color:var(--green);background:var(--green-soft);color:var(--green)}.quiz-tf-btn.wrong{border-color:var(--wrong);background:var(--wrong-soft);color:var(--wrong)}.quiz-tf-btn.correct-reveal{border-color:var(--green);color:var(--green)}.quiz-order-list{display:flex;flex-direction:column;gap:6px}.quiz-order-item{display:flex;align-items:center;gap:10px;border:2px solid var(--line);border-radius:10px;padding:9px 12px;background:var(--card);font-size:14px}.quiz-order-item.correct-pos{border-color:var(--green);background:var(--green-soft)}.quiz-order-item.wrong-pos{border-color:var(--wrong);background:var(--wrong-soft)}.order-pos{width:24px;height:24px;border-radius:6px;flex-shrink:0;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.order-btns{display:flex;flex-direction:column;gap:2px;margin-left:auto;flex-shrink:0}.order-btn{width:26px;height:20px;border:1px solid var(--line);border-radius:5px;background:var(--bg);cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;transition:background .1s}.order-btn:hover:not(:disabled){background:var(--accent-soft)}.order-btn:disabled{opacity:.3;cursor:not-allowed}.quiz-match-hint{font-size:12px;color:var(--muted);margin-bottom:8px}.quiz-match-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quiz-match-left,.quiz-match-right{display:flex;flex-direction:column;gap:6px}.match-item{padding:9px 12px;border-radius:10px;border:2px solid var(--line);background:var(--card);font-size:13px;cursor:pointer;transition:border-color .12s,background .12s;min-height:42px;display:flex;align-items:center}.match-item.active{border-color:var(--accent);background:var(--accent-soft)}.match-item.matched-0{border-color:#a385e6;background:#2c2447}.match-item.matched-1{border-color:#2fbd8c;background:#143229}.match-item.matched-2{border-color:#e0974a;background:#38280f}.match-item.matched-3{border-color:#c79bef;background:#2e2547}.match-item.correct{border-color:var(--green);background:var(--green-soft)}.match-item.wrong{border-color:var(--wrong);background:var(--wrong-soft)}.quiz-fill input{width:100%;padding:10px 14px;border:2px solid var(--line);border-radius:10px;font-size:14px;font-family:inherit;outline:none;background:var(--card);color:var(--ink);transition:border-color .15s}.quiz-fill input:focus{border-color:var(--accent)}.quiz-fill input.correct{border-color:var(--green);background:var(--green-soft)}.quiz-fill input.wrong{border-color:var(--wrong);background:var(--wrong-soft)}.quiz-explain{margin-top:10px;font-size:13px;padding:10px 14px;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--muted);line-height:1.5}.practice-quiz__anchor{scroll-margin-top:100px}.quiz-banner{border-radius:12px;padding:20px 24px;text-align:center;border:2px solid;scroll-margin-top:80px}.quiz-banner.pass{background:var(--green-soft);border-color:var(--green);color:var(--green)}.quiz-banner.fail{background:var(--wrong-soft);border-color:var(--wrong);color:var(--wrong)}.quiz-score-big{font-size:40px;font-weight:800}.quiz-score-lbl{font-size:14px;margin-top:4px;opacity:.85;font-weight:600}.quiz-review-item{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.quiz-review-item:last-child{border-bottom:none}.quiz-review-num{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.quiz-review-q{font-size:14px;font-weight:600;margin-bottom:12px}.quiz-review-links{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.quiz-section-link,.quiz-seek{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;padding:4px 10px;border:1px solid var(--accent);border-radius:999px;background:transparent;cursor:pointer}.quiz-seek{color:var(--muted);border-color:var(--line)}@media (max-width: 500px){.quiz-match-grid{grid-template-columns:1fr}}.tests-card-enter{animation:tests-card-rise 1s cubic-bezier(.2,.8,.2,1) both}@keyframes tests-card-rise{0%{opacity:0;transform:translateY(72px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.tests-card-enter{animation:none}}.wrap.tests{max-width:760px}.tests .ui-card+.ui-card{margin-top:22px}.tests .back-home{display:inline-block;margin-bottom:36px}.tests h1{font-size:22px;margin-bottom:6px;font-family:Jua,sans-serif;display:flex;align-items:center;gap:10px}.tests h2{font-size:18px;margin:0 0 14px;font-family:Jua,sans-serif}.tests .lead{color:var(--muted);font-size:15px;margin-bottom:20px}.tests .exam-tabs{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.tests .group-hint{color:var(--muted);font-size:14px;margin:-6px 0 14px}.tests .domain-list{list-style:none;margin-bottom:22px;padding:0}.tests .domain-item{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.tests .domain-item:last-child{border-bottom:none}.tests .domain-name{flex:1;color:var(--ink)}.tests .domain-count{color:var(--muted);font-size:13px;white-space:nowrap}.tests .domain-pick{display:flex;align-items:center;gap:12px;flex:1;min-width:0;cursor:pointer}.tests .domain-check{width:18px;height:18px;margin:0;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.tests .domain-item--off .domain-name,.tests .domain-item--off .domain-count,.tests .domain-item--off .ui-tag{opacity:.5}.tests .btn-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:24px}.tests .progress-bar-wrap{height:6px;background:var(--accent-soft);border-radius:99px;margin-bottom:18px;overflow:hidden}.tests .progress-bar-fill{height:100%;background:var(--accent);border-radius:99px;transition:width .3s}.tests .q-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.tests .q-dot{width:32px;height:32px;border-radius:8px;font:inherit;border:2px solid var(--line);background:var(--card);font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s}.tests .q-dot:hover{border-color:var(--accent);color:var(--accent)}.tests .q-dot.answered{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.tests .q-dot.current{background:var(--accent);border-color:var(--accent);color:#fff}.tests .test-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tests .test-title{font-weight:700;font-size:15px;font-family:Jua,sans-serif}.tests .test-exam-label{font-size:13px;color:var(--muted);font-weight:600}.tests .q-text{font-size:16px;font-weight:600;margin:32px 0 24px;line-height:1.5}.tests .multi-hint{font-size:13px;font-weight:600;color:var(--accent);margin-bottom:10px}.tests .options{display:flex;flex-direction:column;gap:10px}.tests .opt{display:flex;align-items:flex-start;gap:12px;text-align:left;width:100%;border:2px solid var(--line);border-radius:11px;background:var(--card);color:var(--ink);padding:12px 16px;cursor:pointer;font:inherit;font-size:15px;transition:border-color .15s,background .15s}.tests .opt:hover{border-color:var(--accent)}.tests .opt.selected{border-color:var(--accent);background:var(--accent-soft)}.tests .opt.correct{border-color:var(--green);background:var(--green-soft)}.tests .opt.wrong{border-color:var(--wrong);background:var(--wrong-soft)}.tests .opt-letter{width:26px;height:26px;border-radius:6px;background:var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;transition:background .15s,color .15s}.tests .opt.selected .opt-letter{background:var(--accent);color:#fff}.tests .opt-check{font-size:18px;flex-shrink:0;line-height:1;color:var(--muted)}.tests .opt.selected .opt-check{color:var(--accent)}.tests .opt-text{flex:1;line-height:1.45}.tests .test-nav{display:flex;align-items:center;gap:10px;margin-top:32px;flex-wrap:wrap}.tests .q-counter{color:var(--muted);font-size:14px;font-weight:600;flex:1}.tests .flash-mode{margin-bottom:22px}.tests .flash-mode-hint{margin:10px 0 0}.tests .opt:disabled{cursor:default}.tests .opt:disabled:hover{border-color:var(--line)}.tests .opt.correct:disabled:hover{border-color:var(--green)}.tests .opt.wrong:disabled:hover{border-color:var(--wrong)}.tests .flash-reveal{margin-top:18px;padding:14px 16px;border:2px solid;border-radius:12px;animation:flash-reveal-in .28s cubic-bezier(.2,.8,.2,1) both}.tests .flash-reveal.ok{border-color:var(--green);background:var(--green-soft)}.tests .flash-reveal.bad{border-color:var(--wrong);background:var(--wrong-soft)}.tests .flash-verdict{font-weight:800;font-size:15px;font-family:Jua,sans-serif}.tests .flash-reveal.ok .flash-verdict{color:var(--green)}.tests .flash-reveal.bad .flash-verdict{color:var(--wrong)}.tests .flash-explain{margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--ink)}@keyframes flash-reveal-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.tests .flash-reveal{animation:none}}.tests .warn-bar{background:var(--amber-soft);border:1px solid var(--amber);border-radius:10px;padding:10px 16px;font-size:14px;color:var(--amber);margin-bottom:14px;font-weight:600}.tests .warn-bar.next-warn{margin-top:18px}.tests .score-banner{text-align:center;padding:28px 20px;border-radius:12px;margin-bottom:22px;border:2px solid}.tests .score-banner.pass{background:var(--green-soft);border-color:var(--green);color:var(--green)}.tests .score-banner.fail{background:var(--wrong-soft);border-color:var(--wrong);color:var(--wrong)}.tests .score-big{font-size:48px;font-weight:800;line-height:1}.tests .score-label{font-size:16px;font-weight:600;margin-top:6px;opacity:.85}.tests .xp-note{text-align:center;margin-bottom:18px;font-weight:700;color:var(--green)}.tests .chart-row{display:grid;grid-template-columns:180px 1fr 48px;align-items:center;gap:12px;margin-bottom:10px}.tests .chart-label{font-size:13px;font-weight:600;color:var(--muted);text-align:right;line-height:1.3}.tests .chart-bar-wrap{height:22px;background:var(--line);border-radius:99px;overflow:hidden}.tests .chart-bar{height:100%;border-radius:99px;transition:width .6s ease}.tests .chart-bar.green{background:var(--green)}.tests .chart-bar.amber{background:var(--amber)}.tests .chart-bar.red{background:var(--wrong)}.tests .chart-pct{font-size:13px;font-weight:700}.tests .chart-pct.green{color:var(--green)}.tests .chart-pct.amber{color:var(--amber)}.tests .chart-pct.red{color:var(--wrong)}.tests .chart-sub{font-size:11px;color:var(--muted);text-align:right;margin:-6px 0 10px;padding-right:60px}.tests .review-item{padding:14px 0;border-bottom:1px solid var(--line)}.tests .review-item:last-child{border-bottom:none}.tests .review-q{font-size:14px;font-weight:600;margin-bottom:6px}.tests .review-answer{font-size:13px;margin-bottom:4px}.tests .review-answer strong{color:var(--green)}.tests .review-answer.your-wrong strong{color:var(--wrong)}.tests .review-explain{font-size:13px;color:var(--muted);line-height:1.5}.tests .review-module{margin-top:10px;font-size:12px;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tests .review-module a,.tests .review-module .more-details{color:var(--accent);text-decoration:none;font-weight:700;border:2px solid var(--accent);border-radius:999px;padding:3px 12px;transition:background .15s}.tests .review-module .more-details{background:none;font:inherit;font-weight:700;cursor:pointer}.tests .review-module a:hover,.tests .review-module .more-details:hover{background:var(--accent-soft)}.tests .history-list{display:flex;flex-direction:column}.tests .history-row{display:flex;align-items:center;gap:6px;border-top:1px solid var(--line)}.tests .history-open{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:none;background:none;color:var(--ink);padding:11px 4px;cursor:pointer;font:inherit;font-size:14px;text-align:left;border-radius:8px;transition:background .15s}.tests .history-open:hover{background:var(--accent-soft)}.tests .history-date{color:var(--muted);font-size:13px;white-space:nowrap}.tests .history-exam{flex:1;min-width:0;color:var(--muted);font-size:13px;font-weight:600}.tests .history-score{font-weight:700;white-space:nowrap}.tests .history-chevron{color:var(--muted);flex-shrink:0}.tests .history-delete{flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;border:none;border-radius:8px;background:none;color:var(--muted);cursor:pointer;transition:color .15s,background .15s}.tests .history-delete:hover{color:var(--red);background:var(--red-soft)}.tests .xp-note.history-taken{color:var(--muted)}@media (max-width: 500px){.tests .history-exam{display:none}}.tests-detail-sheet__full{color:var(--accent);font-weight:700;text-decoration:none;font-size:var(--fs-sm)}.tests-detail-sheet__full:hover{text-decoration:underline}@media (max-width: 500px){.tests .chart-row{grid-template-columns:120px 1fr 40px}.tests .chart-label{font-size:11px}.tests .t-card{padding:18px 16px}}.tests .gen-card{text-align:center;padding-top:40px;padding-bottom:40px;font-family:Jua,sans-serif}@property --gen-p{syntax: "<number>"; inherits: false; initial-value: 0;}.tests .gen-ring{width:84px;height:84px;margin:8px auto 18px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--gen-p) * 1%),var(--accent-soft) 0);transition:--gen-p .7s cubic-bezier(.2,.8,.2,1)}.tests .gen-ring:before{content:"";grid-area:1 / 1;width:66px;height:66px;border-radius:50%;background:var(--card)}.tests .gen-ring-pct{grid-area:1 / 1;place-self:center;line-height:1;font-weight:800;font-size:var(--fs-sm);color:var(--ink)}.tests .gen-title{margin:0 0 4px}.tests .gen-sub{color:var(--muted);font-size:var(--fs-sm);margin:0 0 22px}.tests .gen-steps{list-style:none;margin:0 auto;padding:0;max-width:340px;text-align:left;display:flex;flex-direction:column;gap:12px}.tests .gen-step{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm);color:var(--muted);transition:color .3s,opacity .3s}.tests .gen-step.pending{opacity:.5}.tests .gen-step.active{color:var(--ink);font-weight:700}.tests .gen-step.done{color:var(--ink)}.tests .gen-step-mark{flex:none;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:800}.tests .gen-step.done .gen-step-mark{background:var(--green);color:#fff}.tests .gen-step.active .gen-step-mark{border:2px solid var(--accent)}.tests .gen-step.pending .gen-step-mark{border:2px solid var(--line)}.tests .gen-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:gen-pulse 1s ease-in-out infinite}@keyframes gen-pulse{0%,to{transform:scale(.7);opacity:.5}50%{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.tests .gen-dot{animation:none}}.side-sheet{width:var(--side-sheet-w, 320px);flex-shrink:0;background:var(--card);border-left:var(--line-width) solid var(--line);display:flex;flex-direction:column;overflow:hidden}.side-sheet__banner{padding:10px 16px;border-bottom:1px solid var(--line);background:var(--accent-soft);flex-shrink:0}.side-sheet__header{display:flex;align-items:flex-start;gap:10px;padding:14px 16px 10px;border-bottom:1px solid var(--line);flex-shrink:0}.side-sheet__titles{flex:1;min-width:0}.side-sheet__title{font-size:var(--fs-md);font-weight:700;color:var(--ink)}.side-sheet__sub{font-size:var(--fs-sm);color:var(--muted);margin-top:2px}.side-sheet__close{background:none;border:none;color:var(--muted);font-size:var(--fs-lg);line-height:1;cursor:pointer;padding:2px 4px}.side-sheet__close:hover{color:var(--ink)}.side-sheet__body{flex:1;overflow-y:auto;padding:14px 16px}.side-sheet__footer{padding:10px 16px;border-top:1px solid var(--line);flex-shrink:0}@media (max-width: 720px){.side-sheet:not(.side-sheet--overlay){width:100%;border-left:none;border-top:var(--line-width) solid var(--line)}}.side-sheet__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;background:#0000008c;display:flex;animation:side-sheet-fade .15s ease both}.side-sheet__scrim--right{justify-content:flex-end}.side-sheet__scrim--left{justify-content:flex-start}.side-sheet--overlay{width:min(var(--side-sheet-w, 320px),100vw);max-width:100%;height:100%;border-left:var(--line-width) solid var(--line);box-shadow:-8px 0 40px #0006;animation:side-sheet-slide-right .2s ease both}.side-sheet__scrim--left .side-sheet--overlay{border-left:none;border-right:var(--line-width) solid var(--line);box-shadow:8px 0 40px #0006;animation:side-sheet-slide-left .2s ease both}@keyframes side-sheet-fade{0%{opacity:0}to{opacity:1}}@keyframes side-sheet-slide-right{0%{transform:translate(100%)}to{transform:none}}@keyframes side-sheet-slide-left{0%{transform:translate(-100%)}to{transform:none}}@media (prefers-reduced-motion: reduce){.side-sheet__scrim,.side-sheet--overlay{animation:none}}.module-content__pill{display:inline-block;font-size:var(--fs-xs);font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:3px 12px;margin-bottom:10px}.module-content__title{font-size:var(--fs-lg);font-weight:800;color:var(--ink);margin:0 0 4px}.module-content__sub{font-size:var(--fs-sm);color:var(--muted);margin:0 0 14px}.module-content .ui-card,.module-content .section-card{margin-bottom:44px}.module-content .section-card>.ui-card{margin-bottom:0}.module-content>:last-child{margin-bottom:0}.module-content__hero{margin:0 0 14px}.module-content__hero img{width:100%;border-radius:12px;display:block}.module-content__hero figcaption{font-size:var(--fs-xs);color:var(--muted);margin-top:6px;text-align:center}.glossary-term{color:inherit;font-weight:inherit;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;text-decoration-thickness:1px;border-radius:3px}.glossary-term:hover{color:var(--accent);background:var(--accent-soft);text-decoration-style:solid}.glossary-term:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.glossary-term-sheet__fig{margin:0 0 14px}.glossary-term-sheet__fig img{width:100%;border-radius:10px;border:1px solid var(--line);background:var(--bg);display:block}.glossary-term-sheet__fig figcaption{font-size:var(--fs-xs);color:var(--muted);margin-top:6px;text-align:center;font-style:italic}.glossary-term-sheet__def{font-size:var(--fs-md);line-height:1.5;color:var(--ink);margin:0 0 14px}.glossary-term-sheet__desc{font-size:var(--fs-sm);line-height:1.6;color:var(--muted);margin:0}.glossary-term-sheet__links{display:flex;flex-direction:column;gap:6px}.glossary-term-sheet__links-label{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.glossary-term-sheet__links a{color:var(--accent);font-weight:700;text-decoration:none;font-size:var(--fs-sm)}.glossary-term-sheet__links a:hover{text-decoration:underline}.explain{margin-top:8px}.explain__tldr{margin:0;font-size:var(--fs-md);line-height:1.55;color:var(--ink)}.explain__toggle{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:0;border:none;background:none;font:inherit;font-size:var(--fs-xs);font-weight:700;color:var(--accent);cursor:pointer}.explain__toggle:hover{text-decoration:underline}.explain__caret{font-size:.85em;line-height:1}.explain__full{margin:6px 0 0;font-size:var(--fs-sm);line-height:1.55;color:var(--muted);animation:explain-open .2s ease}.explain__full--static{animation:none}@keyframes explain-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.explain__full{animation:none}}@font-face{font-family:Deltarune;src:url(/fonts/deltarune.ttf) format("truetype");font-display:swap}@font-face{font-family:Jua;src:url(/fonts/Jua-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #15121f;--card: #201b30;--ink: #ece9f6;--muted: #a49ec6;--line: #998cc5;--green: #2fbd8c;--green-soft: #143229;--amber: #e0974a;--amber-soft: #38280f;--accent: #a385e6;--accent-soft: #2c2447;--red: #e86c8d;--red-soft: #371d28;--wrong: #ef8a8a;--wrong-soft: #3a2020;--purple: #a98fd6;--purple-soft: #2a2342;--line-width: 4px;--card-border: var(--line-width) solid var(--line);--fs-xs: 12px;--fs-sm: 13px;--fs-md: 15px;--fs-lg: 18px;--fs-xl: 28px;color-scheme:dark}html[data-theme=light]{--bg: #f5f3ff;--card: #ffffff;--ink: #1e1a35;--muted: #7a76a0;--line: #e2defc;--green: #1ea878;--green-soft: #e4f8f1;--amber: #d07826;--amber-soft: #fef3e4;--accent: #7c5ccf;--accent-soft: #ede8ff;--red: #d44e73;--red-soft: #fde8f0;--wrong: #de6b6b;--wrong-soft: #fdeaea;--purple: #6b4fa5;--purple-soft: #eeebf6;color-scheme:light}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--fs-md);background:var(--bg);color:var(--ink);line-height:1.55;min-height:100dvh}a{color:var(--accent)}.wrap{max-width:860px;margin:0 auto;padding:28px 16px 64px}.center{display:grid;place-items:center;min-height:60vh;color:var(--muted)}.brand{font-family:Jua,sans-serif;font-weight:700;font-size:var(--fs-lg);color:var(--ink);margin-bottom:24px;display:flex;align-items:center;gap:8px}.page-title{font-size:var(--fs-xl);font-weight:800;margin-bottom:4px}.page-sub{font-size:var(--fs-md);color:var(--muted);margin-bottom:28px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.field input,.field select{font:inherit;padding:10px 12px;border-radius:10px;border:3px solid var(--line);background:var(--card);color:var(--ink)}.field input:focus,.field select:focus{outline:none;border-color:var(--accent)}.field--light label{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45)}.error{color:var(--red);font-size:var(--fs-md);font-weight:600;margin:6px 0}.text-light{color:#efecfb!important;text-shadow:0 1px 3px rgba(0,0,0,.45)}.text-dark{color:var(--ink)!important}.app-shell{display:flex;align-items:stretch;min-height:calc(100dvh - 64px)}.app-shell__page{flex:1;min-width:0}.page-fade--in{animation:page-fade-in .22s ease}.page-fade--out{animation:page-fade-out .16s ease forwards}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}@keyframes page-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.page-fade--in,.page-fade--out{animation:none}}.row{display:flex;align-items:center;gap:12px}.spread{justify-content:space-between}.muted{color:var(--muted)}
