.decision-stage{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;padding:1.5rem 1rem .5rem;box-sizing:border-box;-webkit-user-select:none;user-select:none}.decision-hint{margin:0;min-height:1.2em;text-align:center;font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-muted);line-height:1.5;max-width:32ch}.decision-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-border);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.decision-btn:hover:not(:disabled){background:var(--color-card-background-hover);border-color:var(--color-glow-anisota)}.decision-btn:disabled{cursor:default;opacity:.6}.eightball{width:180px;height:180px;border-radius:50%;border:1px solid var(--color-border);background:radial-gradient(circle at 38% 32%,var(--color-card-background-hover),var(--color-background-tertiary) 70%);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.eightball.is-shaking{animation:decision-shake .4s ease-in-out 2}.eightball-window{width:96px;height:96px;display:flex;align-items:center;justify-content:center;background:var(--color-background-secondary);border:1px solid var(--color-border)}.eightball-triangle{width:86px;height:86px;display:flex;align-items:center;justify-content:center;padding:.4rem;box-sizing:border-box;opacity:.4;transition:opacity .35s ease}.eightball-triangle.is-shown{opacity:1}.eightball-answer{text-align:center;font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-accent);line-height:1.3}.eightball-triangle:not(.is-shown) .eightball-answer{font-family:var(--font-family-mono);font-size:var(--font-size-1-5);color:var(--color-text-secondary)}.decision-coin{perspective:600px}.coin{position:relative;width:110px;height:110px;border:none;background:none;padding:0;cursor:pointer;transform-style:preserve-3d;transition:transform .25s ease}.coin.face-tails{transform:rotateY(180deg)}.coin.is-flipping{animation:decision-coin-flip 1.1s ease-out}.coin-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--color-glow-anisota);background:var(--color-card-background);backface-visibility:hidden}.coin-tails{transform:rotateY(180deg)}.coin-face svg{fill:none;stroke:var(--color-accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dice-tray{display:flex;gap:1rem;background:none;border:none;padding:.5rem;cursor:pointer}.die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px;width:76px;height:76px;padding:10px;box-sizing:border-box;background:var(--color-card-background);border:1px solid var(--color-border-light)}.die.is-rolling{animation:decision-roll .45s ease-in-out 1}.die-cell{width:100%;height:100%;background:transparent}.die-cell.on{background:var(--color-accent)}.wheel-frame{position:relative;width:240px;height:240px}.wheel-pointer{position:absolute;top:-2px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:14px solid var(--color-accent);z-index:2}.wheel-svg{width:100%;height:100%;display:block}.wheel-wedge path{stroke:var(--color-background-secondary);stroke-width:1.5;fill:var(--color-card-background)}.wheel-wedge.lean-yes path{fill:var(--color-card-background-hover)}.wheel-wedge.lean-no path{fill:var(--color-background-tertiary)}.wheel-wedge.lean-maybe path{fill:var(--color-card-background-active, var(--color-card-background))}.wheel-label{text-anchor:middle;dominant-baseline:middle;font-family:var(--font-family-base);font-size:11px;fill:var(--color-text-secondary)}.wheel-hub{fill:var(--color-background-secondary);stroke:var(--color-accent);stroke-width:1.5}.rune-stone{width:120px;height:140px;display:flex;align-items:center;justify-content:center;background:var(--color-background-tertiary);border:1px solid var(--color-border-light);cursor:pointer;transition:border-color .25s ease,background .25s ease}.rune-stone:hover{border-color:var(--color-glow-anisota)}.rune-stone.is-drawing{animation:decision-pulse .6s ease-in-out infinite}.rune-glyph{fill:none;stroke:var(--color-accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;animation:decision-fade-in .35s ease-out}.rune-empty{font-family:var(--font-family-mono);font-size:var(--font-size-0-9);letter-spacing:.1em;color:var(--color-text-muted);text-transform:lowercase}.pendulum-svg{width:200px;height:200px}.pendulum-mount{stroke:var(--color-text-muted);stroke-width:3}.pendulum-arm{transform-box:fill-box;transform-origin:100px 18px;transition:transform .9s cubic-bezier(.16,1,.3,1)}.pendulum-arm.is-swinging{animation:decision-swing 1.2s ease-in-out 2}.pendulum-string{stroke:var(--color-border-light);stroke-width:1.5}.pendulum-bob{fill:var(--color-card-background);stroke:var(--color-accent);stroke-width:2}.pendulum-mark{font-family:var(--font-family-base);font-size:12px;fill:var(--color-text-muted);text-anchor:middle}.oracle-card{width:150px;height:210px;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;background:var(--color-card-background);border:1px solid var(--color-border-light);cursor:pointer;transition:border-color .25s ease,transform .25s ease}.oracle-card:hover{border-color:var(--color-glow-anisota)}.oracle-card.is-flipping{animation:decision-card-flip .45s ease-in-out}.oracle-back{width:100%;height:100%;background:repeating-linear-gradient(45deg,transparent,transparent 8px,var(--color-border) 8px,var(--color-border) 9px);border:1px solid var(--color-border)}.oracle-face{display:flex;flex-direction:column;gap:.6rem;text-align:center;animation:decision-fade-in .35s ease-out}.oracle-title{font-family:var(--font-family-base);font-weight:500;font-size:var(--font-size-1);color:var(--color-accent)}.oracle-prompt{font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-text-secondary);line-height:1.45}.decision-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10001;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--color-overlay, rgba(0, 0, 0, .6));opacity:0;transition:opacity .25s ease}.decision-overlay.is-visible{opacity:1}.decision-modal{position:relative;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;background:var(--color-background-secondary);border:1px solid var(--color-border);padding:1.75rem 1.25rem 1.25rem;display:flex;flex-direction:column;align-items:center;text-align:center}.decision-close{position:absolute;top:.5rem;right:.5rem;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:.35rem;line-height:0;transition:color .15s ease}.decision-close:hover{color:var(--color-text)}.decision-modal-header{margin-bottom:.25rem}.decision-modal-title{font-family:var(--font-family-base);font-weight:500;font-size:var(--font-size-1-2);color:var(--color-text);margin:0}.decision-modal-sub{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-muted);margin:.4rem 0 0;line-height:1.5}.decision-verdict{margin:.25rem 0 .5rem;padding:.55rem .9rem;max-width:36ch;font-family:var(--font-family-base);font-size:var(--font-size-0-9);line-height:1.45;color:var(--color-text-secondary);border:1px solid var(--color-border);background:var(--color-card-background);animation:decision-fade-in .3s ease-out}.decision-verdict.lean-yes{border-color:var(--color-glow-anisota)}.decision-verdict.lean-no{border-color:var(--color-border-light)}.decision-modal-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1rem;width:100%}.decision-action{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-border);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.decision-action:hover{background:var(--color-card-background-hover)}.decision-action svg{color:var(--color-text-muted);transition:color .25s ease}.decision-action.go:hover{border-color:var(--color-glow-anisota)}.decision-action.go:hover svg{color:var(--color-glow-anisota)}.decision-action.is-suggested{border-color:var(--color-glow-anisota);box-shadow:0 0 14px var(--color-glow-anisota-hover)}.decision-action.is-suggested svg{color:var(--color-glow-anisota)}.decision-action.back{color:var(--color-text-secondary)}.decision-config{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.decision-config-title{font-family:var(--font-family-base);font-weight:500;font-size:var(--font-size-1-1);color:var(--color-text);margin:0 0 .35rem}.decision-config-sub{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-muted);margin:0 0 1.1rem;line-height:1.5}.decision-config-body{margin-top:1.25rem;transition:opacity .25s ease}.decision-config-body.is-dimmed{opacity:.4;pointer-events:none}.decision-config-group{margin-bottom:1.4rem}.decision-config-label{font-family:var(--font-family-base);font-size:var(--font-size-0-8);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.6rem}.decision-config-hint{margin-top:.6rem;font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-text-muted)}.decision-trigger-row{display:flex;flex-wrap:wrap;gap:.5rem}.decision-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);text-transform:capitalize;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.decision-pill:hover{background:var(--color-card-background-hover);color:var(--color-text)}.decision-pill.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.decision-pill.on svg{color:var(--color-glow-anisota)}@keyframes decision-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes decision-shake{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-6px) rotate(-3deg)}75%{transform:translate(6px) rotate(3deg)}}@keyframes decision-coin-flip{0%{transform:rotateY(0)}to{transform:rotateY(1980deg)}}@keyframes decision-roll{0%{transform:rotate(0) scale(1)}50%{transform:rotate(20deg) scale(.9)}to{transform:rotate(0) scale(1)}}@keyframes decision-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes decision-swing{0%{transform:rotate(0)}25%{transform:rotate(26deg)}50%{transform:rotate(-24deg)}75%{transform:rotate(18deg)}to{transform:rotate(-14deg)}}@keyframes decision-card-flip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}@media (prefers-reduced-motion: reduce){.eightball.is-shaking,.coin.is-flipping,.die.is-rolling,.rune-stone.is-drawing,.pendulum-arm.is-swinging,.oracle-card.is-flipping{animation:none}.wheel-svg{transition:transform .6s ease-out!important}.decision-fade-in,.rune-glyph,.oracle-face,.decision-verdict{animation:none}}.handle-typeahead{position:relative;width:100%}.handle-typeahead-dropdown{position:absolute;top:calc(100% + .25rem);left:0;right:0;background:var(--color-card-background);border:1px solid var(--color-border-light);box-shadow:0 4px 24px var(--color-shadow-dark);z-index:1000;animation:dropdownSlideIn .15s ease-out;max-height:320px;overflow-y:auto}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.handle-typeahead-option{display:flex;align-items:center;gap:.75rem;width:100%;background:transparent;border:none;color:var(--color-text-secondary);padding:.75rem;font-size:.9rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--color-border);box-sizing:border-box}.handle-typeahead-option:last-child{border-bottom:none}.handle-typeahead-option:hover,.handle-typeahead-option.focused{background:var(--color-button-hover);color:var(--color-text)}.handle-typeahead-avatar{width:40px;height:40px;flex-shrink:0}.handle-typeahead-avatar img{width:100%;height:100%;object-fit:cover}.handle-typeahead-avatar-placeholder{width:100%;height:100%;background:var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:#fff}.handle-typeahead-info{flex:1;min-width:0;text-align:left}.handle-typeahead-name{font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.15rem}.handle-typeahead-handle{font-size:.85rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.handle-typeahead-option:hover .handle-typeahead-name,.handle-typeahead-option.focused .handle-typeahead-name{color:var(--color-text)}.handle-typeahead-option:hover .handle-typeahead-handle,.handle-typeahead-option.focused .handle-typeahead-handle{color:var(--color-text-secondary)}@media (max-width: 768px){.handle-typeahead-avatar{width:36px;height:36px}.handle-typeahead-avatar-placeholder{font-size:1rem}.handle-typeahead-option{padding:.625rem;font-size:.875rem}.handle-typeahead-name{font-size:.9rem}.handle-typeahead-handle{font-size:.8rem}.handle-typeahead-dropdown{max-height:280px}}.account-switcher-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);color:#fca5a5;padding:12px;margin-bottom:16px;font-size:14px}.account-list,.account-section{display:flex;flex-direction:column}.account-section+.account-section{margin-top:1.25rem}.account-section-header{font-size:var(--font-size-0-85);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.5rem}.account-switcher-footer-actions{display:flex;gap:.75rem;width:100%}.account-switcher-footer-actions .account-switcher-add-btn{flex:1}.account-switcher-sign-out-all-btn{display:flex;align-items:center;gap:.35rem;padding:.75rem 1rem}.account-count-badge{font-size:var(--font-size-0-85);font-weight:600;opacity:.9}.account-list-empty{text-align:center;padding:2.5rem 1.25rem;color:var(--color-text-muted);font-size:var(--font-size-1)}.account-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-background-secondary);border:1px solid var(--color-border);cursor:pointer;transition:all .2s;position:relative}.account-item:hover{background:var(--color-card-background);border-color:var(--color-border-hover)}.account-item.active{border-color:var(--color-glow-anisota);background:var(--color-glow-anisota-dark)}.account-item.expired{opacity:.6;background:var(--color-background-secondary)}.account-item.expired:hover{background:var(--color-background-secondary);border-color:var(--color-border)}.account-item.signed-out{opacity:.65}.account-item.signed-out:hover{opacity:1}.account-item.signed-out .account-item-avatar img,.account-item.signed-out .account-item-avatar-placeholder{filter:grayscale(.6)}.account-item.signed-out:hover .account-item-avatar img,.account-item.signed-out:hover .account-item-avatar-placeholder{filter:none}.account-item-avatar{width:48px;height:48px;flex-shrink:0}.account-item-avatar img{width:100%;height:100%;object-fit:cover;border:1px solid var(--color-border);box-sizing:border-box}.account-item-avatar-placeholder{width:100%;height:100%;background:var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-1-25);font-weight:700;color:#fff;border:1px solid var(--color-border);box-sizing:border-box}.account-item-info{flex:1;min-width:0}.account-item-name{font-size:var(--font-size-1);font-weight:700;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-item-handle{font-size:var(--font-size-0-9);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-item-logout{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.account-item-logout:hover{color:#ef4444;background:#ef44441a}.account-item-relogin{background:none;border:none;color:var(--color-glow-anisota);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.account-item-relogin:hover{color:var(--color-glow-anisota);background:var(--color-glow-anisota-dark)}.account-item-remove{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.account-item-remove:hover{color:#ef4444;background:#ef44441a}.account-add-form{display:flex;flex-direction:column;gap:.75rem}.account-add-label{font-size:var(--font-size-0-9);color:var(--color-text);margin-bottom:-.25rem;font-family:var(--font-family)}.account-add-input:focus{outline:none;border-color:var(--color-glow-anisota);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-glow-anisota) 20%,transparent)}.account-add-info{font-size:var(--font-size-0-85);color:var(--color-text-muted);line-height:1.5;padding:.5rem;background:var(--color-glow-anisota-dark);border:1px solid color-mix(in srgb,var(--color-glow-anisota) 20%,transparent);box-sizing:border-box;text-align:center}.account-add-actions{display:flex;gap:.75rem}.account-add-actions .cancel-btn,.account-add-actions .save-btn{flex:1}.account-switcher-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}@media (max-width: 768px){.account-item{padding:.625rem}.account-item-avatar{width:2.5rem;height:2.5rem}.account-item-avatar-placeholder{font-size:var(--font-size-1-1)}.account-item-name{font-size:var(--font-size-0-95)}.account-item-handle{font-size:var(--font-size-0-85)}}.emoji-picker-container{display:flex;flex-direction:column;height:55dvh;max-height:55dvh;background:var(--color-card-background);color:var(--color-text);font-family:var(--font-family-base) overflow: hidden}.emoji-picker-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.emoji-picker-pinned{display:flex;gap:.5rem}.emoji-picker-pinned-emoji{background:transparent;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .1s ease}.emoji-picker-pinned-emoji:hover{background:var(--color-background-secondary);transform:scale(1.1)}.emoji-picker-pinned-emoji:active{transform:scale(.95)}.emoji-picker-search{flex:1;padding:.5rem .75rem;background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text);font-family:inherit;font-size:.875rem;outline:none}.emoji-picker-search:focus{border-color:var(--color-bluesky-blue)}.emoji-picker-search::placeholder{color:var(--color-text-muted)}.emoji-picker-close{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease;flex-shrink:0}.emoji-picker-close:hover{color:var(--color-text)}.emoji-picker-root{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.emoji-picker-viewport{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-background)}.emoji-picker-viewport::-webkit-scrollbar{width:8px}.emoji-picker-viewport::-webkit-scrollbar-track{background:var(--color-background)}.emoji-picker-viewport::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:4px;border:2px solid var(--color-background)}.emoji-picker-loading,.emoji-picker-empty{text-align:center;padding:2rem;color:var(--color-text-muted)}.emoji-picker-list{padding:.75rem 1rem 1rem}.emoji-picker-list button{background:transparent;border:none;font-size:1.75rem;cursor:pointer;transition:background .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;width:12.5%;aspect-ratio:1}.emoji-picker-list button:hover{background:var(--color-background-secondary);transform:scale(1.15)}.emoji-picker-list button:active{transform:scale(.95)}@media (max-width: 768px){.emoji-picker-list button{width:calc(100% / 7);font-size:1.6rem}}@media (max-width: 480px){.emoji-picker-container{height:300px;max-height:300px}.emoji-picker-list button{width:calc(100% / 6);font-size:1.5rem;padding:.4rem}.emoji-picker-pinned-emoji{font-size:1.35rem}}.expedition-corner-element,.notifications-corner-element{font-size:var(--font-size-1-4, 1.4rem);white-space:nowrap}.expedition-corner-content{display:inline-flex;align-items:center;gap:5px}.expedition-corner-sep{opacity:.3;font-weight:100}.expedition-corner-stamina{display:inline;margin-right:-.1rem}.expedition-corner-light{display:inline}.expedition-corner-light-unit{font-size:.85em;color:var(--color-text-muted)}.expedition-corner-light.fullCharge,.expedition-corner-light.charged{color:var(--color-text)}.expedition-corner-light.low{color:var(--color-warning)}.expedition-corner-light.critical{color:var(--color-error);animation:expedition-light-flicker 1.5s ease-in-out infinite}.expedition-corner-light.dead{color:var(--color-error);animation:expedition-light-flicker .8s ease-in-out infinite}.expedition-corner-time{opacity:.8;display:inline-flex;align-items:center}.expedition-corner-elapsed{font-weight:400;opacity:.6;font-style:italic}@keyframes expedition-light-flicker{0%,to{opacity:1}50%{opacity:.5}}body.fullscreen-mode .corner-element:has(.expedition-corner-element){opacity:1!important}.touch-menu-section.general-section,.touch-menu-section.expedition-section,.touch-menu-section.resources-section{background:var(--color-background-tertiary);border:1px solid var(--color-border);padding-bottom:0;margin-bottom:0}.touch-menu-section-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;font-size:var(--font-size-0-7, .7rem);text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:var(--color-background-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.touch-menu-section-header:active{opacity:.7}.touch-menu-section-chevron{transition:transform .2s ease;flex-shrink:0}.touch-menu-section.collapsed .touch-menu-section-chevron{transform:rotate(-90deg)}.touch-menu-section.collapsed .touch-menu-section-header{border-bottom:none}.touch-menu-section-items{overflow:hidden;transition:max-height .25s ease}.touch-menu-section.collapsed .touch-menu-section-items{max-height:0}.touch-menu-expedition-status{padding:.5rem 1rem;font-size:var(--font-size-0-75, .75rem);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--color-border);background:var(--color-background-secondary)}.expedition-status-summary{opacity:.7}.expedition-status-summary.critical,.expedition-status-summary.dead{color:var(--color-error)}.expedition-status-summary.low{color:var(--color-warning)}.observatory{display:flex;flex-direction:column;gap:20px;position:relative}.observatory button{font-family:var(--font-family-base, inherit);transition:opacity .15s ease,background .15s ease,border-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}@media (hover: hover){.observatory button:active{opacity:.8}}.observatory .settings-header{margin-bottom:0}.observatory-welcome{max-width:480px;margin:0 auto}.observatory-moon-slot{display:flex;align-items:center;justify-content:center;min-height:52px;margin-bottom:10px}.observatory-moon-grab{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.observatory-moon-grab.observatory-moon-dragging{cursor:grabbing}.observatory-moon-phase{text-align:center;font-family:IBM Plex Mono,monospace;font-size:.62rem;letter-spacing:.04em;color:var(--color-text-muted);min-height:1em;margin-top:4px;margin-bottom:12px;transition:opacity .3s ease}.observatory-moon-phase.moon-prelanding{opacity:0}.observatory-welcome .observatory-moon{display:block;margin:0;color:var(--color-text)}.observatory-moon.moon-prelanding,.observatory-moon-button.moon-prelanding{opacity:0}.observatory-moon-button{display:block;margin:0;padding:0;background:none;border:none;cursor:pointer;color:var(--color-text);transition:opacity .25s ease,transform .25s ease}.observatory-moon-button:hover{opacity:.78}@media (prefers-reduced-motion: no-preference){.observatory-moon-button:active{transform:scale(.94)}}.observatory-welcome .observatory-summary-time{margin-top:4px;margin-bottom:8px;font-size:14px;color:var(--color-text-muted);display:flex;justify-content:center}.observatory-camp-panel{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.observatory-camp-timer{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--color-text)}.observatory-camp-progress{padding:10px 0;border-top:1px solid var(--color-border)}.observatory-warning{padding:12px 16px;background:var(--color-background-secondary);border:1px solid var(--color-warning);font-size:15px;color:var(--color-warning)}.observatory-grid{display:flex;flex-wrap:wrap;gap:10px;width:100%}.observatory-tile{box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:6px;padding:18px 16px;cursor:pointer;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-weight:500;touch-action:manipulation;text-align:left;-webkit-tap-highlight-color:transparent}.observatory-tile-header{display:flex;align-items:center;gap:8px;min-width:0}.observatory-tile-label{white-space:nowrap}.observatory-tile-sublabel{font-size:.8em;font-weight:400;opacity:.8;white-space:normal;line-height:1.2}.observatory-tile-sm{flex:1 1 28%;font-size:14px}.observatory-tile-md{flex:1 1 40%;font-size:15px}.observatory-tile-lg{flex:1 1 52%;font-size:16px}.observatory-tile-half{flex:0 1 calc(50% - 5px);font-size:15px}.observatory-tile-full{flex:1 1 100%;font-size:16px}.observatory-tile-xl{flex:1 1 100%;font-size:16px;min-height:158px}.observatory-grid-editing .observatory-tile,.observatory-grid-editing .observatory-tile-divider,.observatory-grid-editing .observatory-tile-spacer,.observatory-grid-editing .observatory-tile-heading{position:relative;cursor:grab;touch-action:manipulation}.observatory-tile-dragging{box-shadow:0 8px 24px #00000059;cursor:grabbing}.observatory-tile-spacer{box-sizing:border-box;min-height:58px}.observatory-tile-spacer.observatory-tile-xl{min-height:158px}.observatory-grid-editing .observatory-tile-spacer{box-sizing:border-box;border:1px dashed var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer}.observatory-tile-spacer-editing-label{font-size:var(--font-size-0-7, .7rem);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.observatory-grid:not(.observatory-grid-editing) .observatory-tile-spacer-editing-label{display:none}.observatory-tile-heading{flex:0 0 100%;width:100%;display:flex;flex-direction:column;gap:2px;padding:.6rem 0 .1rem;text-align:left}.observatory-tile-heading-title{font-size:var(--font-size-1-2, 1.2rem);font-weight:600;color:var(--color-text);line-height:1.25}.observatory-tile-heading-subtitle{font-size:var(--font-size-0-85, .85rem);color:var(--color-text-muted);line-height:1.35}.observatory-tile-primary{background:var(--color-link-transparent);color:var(--color-text);border:1px solid var(--color-link);font-weight:600}@media (hover: hover){.observatory-tile-primary:hover:not(:disabled){background:var(--color-link);color:var(--color-text-inverse);border-color:var(--color-link-hover)}}.observatory-tile-primary:disabled{background:var(--color-button-background-disabled);color:var(--color-button-text-disabled);border-color:var(--color-border-disabled);cursor:not-allowed}.observatory-tile-featured{border:1px dashed var(--color-link);background:var(--color-card-background);color:var(--color-text);font-weight:600}@media (hover: hover){.observatory-tile-featured:hover{background:var(--color-link-transparent);border-style:solid}}.observatory-tile-pressed:not(:disabled){background:var(--color-card-background-active);border-color:var(--color-text-muted)}.observatory-tile-primary.observatory-tile-pressed:not(:disabled){background:var(--color-link);color:var(--color-text-inverse);border-color:var(--color-link-hover)}.observatory-tile-featured.observatory-tile-pressed:not(:disabled){background:var(--color-link-transparent);border-style:solid}.observatory-tile-bold{border:2px solid var(--color-text);font-weight:700}@media (hover: hover){.observatory-tile-bold:hover:not(:disabled){background:var(--color-card-background-active)}}.observatory-tile-glow{position:relative;border-color:var(--color-glow-anisota, var(--color-link))}.observatory-tile-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:0 0 10px color-mix(in srgb,var(--color-glow-anisota, var(--color-link)) 30%,transparent);animation:observatory-glow-pulse 4.5s ease-in-out infinite}@keyframes observatory-glow-pulse{0%,to{box-shadow:0 0 7px color-mix(in srgb,var(--color-glow-anisota, var(--color-link)) 20%,transparent)}50%{box-shadow:0 0 16px color-mix(in srgb,var(--color-glow-anisota, var(--color-link)) 42%,transparent)}}@media (prefers-reduced-motion: reduce){.observatory-tile-glow:after{animation:none;box-shadow:0 0 10px color-mix(in srgb,var(--color-glow-anisota, var(--color-link)) 30%,transparent)}}.observatory-tile-bare{border:none;background:transparent;padding:6px 2px}.observatory-tile-accent-primary{--tile-accent: var(--color-link)}.observatory-tile-accent-secondary{--tile-accent: var(--color-accent, var(--color-link))}.observatory-tile-accent-tertiary{--tile-accent: var(--color-glow-anisota, var(--color-link))}.observatory-tile-accent-primary,.observatory-tile-accent-secondary,.observatory-tile-accent-tertiary{border-color:var(--tile-accent)}.observatory-tile-accent-primary .observatory-tile-header,.observatory-tile-accent-secondary .observatory-tile-header,.observatory-tile-accent-tertiary .observatory-tile-header,.observatory-tile-accent-primary .observatory-tile-note-title,.observatory-tile-accent-secondary .observatory-tile-note-title,.observatory-tile-accent-tertiary .observatory-tile-note-title,.observatory-tile-accent-primary .observatory-tile-quote-attribution,.observatory-tile-accent-secondary .observatory-tile-quote-attribution,.observatory-tile-accent-tertiary .observatory-tile-quote-attribution,.observatory-tile-accent-primary.observatory-tile-reminder>svg,.observatory-tile-accent-secondary.observatory-tile-reminder>svg,.observatory-tile-accent-tertiary.observatory-tile-reminder>svg{color:var(--tile-accent)}.observatory-tile-glow.observatory-tile-accent-primary:after,.observatory-tile-glow.observatory-tile-accent-secondary:after,.observatory-tile-glow.observatory-tile-accent-tertiary:after{box-shadow:0 0 10px color-mix(in srgb,var(--tile-accent) 30%,transparent);animation:none}.observatory-accent-swatch{display:inline-block;width:14px;height:14px;vertical-align:-2px}.observatory-accent-swatch-primary{background:var(--color-link)}.observatory-accent-swatch-secondary{background:var(--color-accent, var(--color-link))}.observatory-accent-swatch-tertiary{background:var(--color-glow-anisota, var(--color-link))}.observatory-tile-accent-tinted,.observatory-tile-accent-inverted{--tile-accent: var(--color-accent, var(--color-link))}.observatory-tile-accent-tinted{border-color:var(--tile-accent)}.observatory-tile-accent-tinted .observatory-tile-header,.observatory-tile-accent-tinted .observatory-tile-note-title,.observatory-tile-accent-tinted .observatory-tile-quote-attribution,.observatory-tile-accent-tinted.observatory-tile-reminder>svg{color:var(--tile-accent)}.observatory-tile-accent-inverted{background:var(--tile-accent);border-color:var(--tile-accent);color:var(--color-text-inverse)}.observatory-tile-accent-inverted .observatory-tile-header,.observatory-tile-accent-inverted .observatory-tile-sublabel,.observatory-tile-accent-inverted .observatory-tile-note-title,.observatory-tile-accent-inverted .observatory-tile-note-body,.observatory-tile-accent-inverted .observatory-tile-quote-body,.observatory-tile-accent-inverted .observatory-tile-quote-attribution,.observatory-tile-accent-inverted .observatory-tile-reminder-body,.observatory-tile-accent-inverted.observatory-tile-reminder>svg{color:var(--color-text-inverse)}@media (hover: hover){.observatory-tile-accent-inverted:hover:not(:disabled){background:var(--tile-accent);border-color:var(--tile-accent);color:var(--color-text-inverse);opacity:.9}}.observatory-tile-glow.observatory-tile-accent-tinted:after,.observatory-tile-glow.observatory-tile-accent-inverted:after{box-shadow:0 0 10px color-mix(in srgb,var(--tile-accent) 30%,transparent);animation:none}.observatory-accent-swatch-tinted{box-sizing:border-box;background:transparent;border:2px solid var(--color-accent, var(--color-link))}.observatory-accent-swatch-inverted{background:var(--color-accent, var(--color-link))}.observatory-tile:disabled{background:var(--color-button-background-disabled);color:var(--color-button-text-disabled);border-color:var(--color-border-disabled);cursor:not-allowed;opacity:.7}.observatory-tile-widget{cursor:default;min-width:0}.observatory-tile-widget-clickable{cursor:pointer}.observatory-grid-editing .observatory-widget{pointer-events:none}.observatory-widget{display:flex;flex-direction:column;gap:6px;width:100%;min-width:0}.observatory-widget-patterns .patterns-indicator-compact{width:100%;justify-content:space-between}.observatory-widget-spells .observatory-spells-list{margin-top:2px;border:none;width:100%}.observatory-widget-spells .spell-compact-row{background:transparent;padding:.45rem .1rem;border-bottom:1px solid color-mix(in srgb,var(--color-border) 55%,transparent)}.observatory-widget-spells .spell-compact-row:last-child{border-bottom:none}@media (hover: hover){.observatory-widget-spells .spell-compact-row:hover{background:var(--color-background-tertiary)}}.observatory-spells-more,.observatory-spells-notice{font-size:.75em;color:var(--color-text-muted)}.observatory-spells-notice{color:var(--color-accent)}.observatory-widget-level-row{display:flex;align-items:center;gap:8px;min-width:0}.observatory-widget-level-label{font-weight:600;white-space:nowrap}.observatory-widget-level-detail{margin-left:auto;font-size:.8em;font-weight:400;color:var(--color-text-muted);text-align:right}.observatory-widget-progress-track{height:4px;width:100%;background:var(--color-border);overflow:hidden}.observatory-widget-progress-fill{height:100%;background:var(--color-link);transition:width .6s cubic-bezier(.2,.8,.2,1)}.observatory-widget-level-xp{font-size:.75em;font-weight:400;color:var(--color-text-muted)}.observatory-widget-activity-counters{display:flex;flex-wrap:wrap;gap:6px 20px}.observatory-widget-activity-counter{display:flex;flex-direction:column;gap:1px;min-width:0}.observatory-widget-activity-value{font-size:1.25em;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.2}.observatory-widget-activity-label{font-size:.72em;font-weight:400;color:var(--color-text-muted);white-space:nowrap}.observatory-widget-activity-headline{display:flex;align-items:center;gap:8px;min-width:0}.observatory-widget-activity-headline .observatory-widget-activity-value{font-size:1.35em}.observatory-widget-activity-headline .observatory-widget-activity-label{white-space:normal}.observatory-widget-activity-goal{font-size:.75em;font-weight:400;color:var(--color-text-muted)}.observatory-metric-chips{flex-wrap:wrap}.observatory-widget-heatmap-weeks{display:flex;gap:2px;width:100%}.observatory-widget-heatmap-week{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.observatory-widget-heatmap-cell{width:100%;aspect-ratio:1}.observatory-widget-heatmap-caption{font-size:.72em;font-weight:400;color:var(--color-text-muted)}.observatory-widget-tod-rows{display:flex;flex-direction:column;gap:2px;width:100%}.observatory-widget-tod-row{display:flex;gap:2px}.observatory-widget-tod-cell{flex:1;min-width:0;height:7px}.observatory-widget-tod-hours{display:flex;justify-content:space-between;font-size:.62em;color:var(--color-text-muted);opacity:.8;padding-right:22%}.observatory-customize-link{align-self:center;display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:4px 10px;font-family:var(--font-family-base);font-size:var(--font-size-0-8, .8rem);color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent}@media (hover: hover){.observatory-customize-link:hover{color:var(--color-text)}}.observatory-summary{font-size:14px;color:var(--color-text-muted);text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:16px}.observatory .settings-description{font-size:var(--font-size-0-85)}.observatory-summary-time{display:inline-flex;align-items:center;justify-content:center;gap:5px}.observatory-summary-count{font-size:12px;opacity:.7}@keyframes observatory-fade-in{0%{opacity:0;transform:translateY(5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.observatory .observatory-fade{opacity:0}.observatory .observatory-fade.observatory-visible{animation:observatory-fade-in .7s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--animation-delay, 0ms)}.observatory-skeleton{display:flex;flex-direction:column;gap:20px}.observatory-skeleton-exiting{position:absolute;top:0;left:0;right:0;pointer-events:none}.observatory-skeleton-fade{opacity:0;transform:translateY(5px) scale(.98);transition:opacity .45s cubic-bezier(.2,.8,.2,1),transform .45s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--animation-delay, 0ms) * .25)}.observatory-skeleton-visible .observatory-skeleton-fade{opacity:1;transform:translateY(0) scale(1)}.observatory-skeleton-exiting .observatory-skeleton-fade{opacity:0;transform:translateY(-5px) scale(.985);transition-duration:.45s,.45s;transition-timing-function:cubic-bezier(.4,0,1,1),cubic-bezier(.4,0,1,1);transition-delay:calc(var(--animation-delay, 0ms) * .5)}.observatory-skeleton-bar{background:currentColor;opacity:.08;animation:observatory-skeleton-pulse 2.2s ease-in-out infinite;animation-delay:calc(var(--animation-delay, 0ms) * .6)}@keyframes observatory-skeleton-pulse{0%,to{opacity:.08}50%{opacity:.17}}.observatory-skeleton-title{height:var(--font-size-2, 24px);width:58%;margin:0 auto 1rem}.observatory-skeleton-description{display:flex;flex-direction:column;align-items:center;gap:7px;padding:3px 0}.observatory-skeleton-line{height:11px}.observatory-skeleton-patterns{display:flex;align-items:center;gap:12px;padding:2px 0}.observatory-skeleton-patterns-label{display:flex;flex-direction:column;align-items:center;gap:6px}.observatory-skeleton-spark-row{display:flex;align-items:flex-end;gap:3px;height:25px;margin-top:5px}.observatory-skeleton-spark{width:4px}.observatory-skeleton-tile{cursor:default}.observatory-skeleton-icon{width:14px;height:14px;flex-shrink:0}.observatory-skeleton-label{height:12px;max-width:55%}.observatory-skeleton-sublabel{height:10px;max-width:90%;margin-top:2px}.observatory-skeleton-tile-primary{background:var(--color-link-transparent);border-color:var(--color-link)}.observatory-skeleton-divider-label{height:9px;width:76px}.observatory-canvas-shell{position:relative}.observatory-canvas-skeleton{flex:0 0 100%}.observatory-canvas-skeleton.observatory-skeleton-exiting{position:absolute;top:.75rem;left:.75rem;right:.75rem;width:auto;pointer-events:none}.observatory-canvas-fade{opacity:0;transform:translateY(5px) scale(.98);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--animation-delay, 0ms)}.observatory-canvas-arrived .observatory-canvas-fade{opacity:1;transform:translateY(0) scale(1)}.observatory.camp-transition-out{opacity:0;transform:translateY(6px) scale(.99);transition:opacity .32s cubic-bezier(.4,0,1,1),transform .32s cubic-bezier(.4,0,1,1);pointer-events:none}.observatory.camp-transition-in{animation:camp-settle-in .55s cubic-bezier(.2,.8,.2,1) forwards}.observatory.camp-transition-in .observatory-welcome{animation:camp-text-arrive .6s cubic-bezier(.2,.8,.2,1) .05s both}.observatory.camp-transition-in .observatory-grid{animation:camp-grid-arrive .55s cubic-bezier(.2,.8,.2,1) .12s both}@keyframes camp-settle-in{0%{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes camp-text-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes camp-grid-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chapter-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;background:transparent;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding:30dvh 1.5rem 16dvh 1.5rem;box-sizing:border-box;display:flex;justify-content:center;align-items:flex-start;scrollbar-width:none;-ms-overflow-style:none;animation:chapterOverlayIn .5s cubic-bezier(.2,.8,.2,1) both}@media (max-width: 600px){.chapter-overlay{padding:30dvh 1.25rem 16dvh 1.25rem}}.chapter-overlay::-webkit-scrollbar{display:none}.chapter-overlay-dismissing{animation:chapterOverlayOut .45s cubic-bezier(.4,0,1,1) both;pointer-events:none}.chapter-overlay .chapter-viewer{width:100%;max-width:430px;min-height:85dvh}.layout-page-content-hidden{visibility:hidden;pointer-events:none;opacity:0}.layout-page-content-reappearing{animation:pageContentReappear .6s cubic-bezier(.2,.8,.2,1) .1s both}@keyframes chapterOverlayIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes chapterOverlayOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes pageContentReappear{0%{visibility:visible;opacity:0;transform:translateY(6px)}to{visibility:visible;opacity:1;transform:translateY(0)}}.chapter-viewer{display:flex;flex-direction:column;gap:32px}.chapter-step .split-word{will-change:transform,opacity}.chapter-step-title .split-line{white-space:pre-wrap}.chapter-step-eyebrow{font-size:var(--font-size-0, .8em);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted, rgba(255, 255, 255, .35));margin:0 0 8px;text-align:center}.chapter-step-title{font-size:var(--font-size-2);font-weight:600;margin:0 0 20px;color:var(--color-text)}.chapter-step-body{display:flex;flex-direction:column;gap:16px;font-size:var(--font-size-1);line-height:1.6;color:var(--color-text-secondary, var(--color-text-muted));text-align:left}.chapter-step-body p{margin:0}.chapter-step-body p:first-child:first-letter{float:left;font-size:var(--font-size-3);line-height:.8;font-weight:400;color:var(--color-text);padding:.5rem;border:1px solid var(--color-accent);margin-right:.6rem;background:var(--color-card-background);margin-top:.55rem}.chapter-step .collection-grid{grid-template-columns:repeat(4,1fr)}.mode-select-grid{display:flex;flex-direction:column;gap:16px;margin-top:24px}@media (min-width: 600px){.mode-select-grid{flex-direction:row}.mode-select-option{flex:1}}.mode-select-option{display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08));color:var(--color-text);cursor:pointer;transition:border-color .2s ease,background .2s ease;font-family:inherit}.mode-select-option-enter{opacity:0;animation:modeOptionFadeIn .8s cubic-bezier(.2,.8,.2,1) forwards}@keyframes modeOptionFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (hover: hover){.mode-select-option:hover{border-color:var(--color-text-muted, rgba(255, 255, 255, .2))}}.mode-select-option-selected{border-color:var(--color-text);background:var(--color-bg-tertiary, rgba(255, 255, 255, .07))}.mode-select-option-name{font-size:1.15em;font-weight:600;letter-spacing:.01em}.mode-select-option-description{font-size:var(--font-size-0, .82em);line-height:1.45;color:var(--color-text-muted, rgba(255, 255, 255, .45))}.chapter-action-button{margin-top:24px;width:100%;text-align:center;align-items:center;justify-content:center}.chapter-checkbox-list{margin-top:24px;display:flex;flex-direction:column;gap:12px}.chapter-checkbox-row{flex:0 0 auto;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;text-align:left}.chapter-checkbox-text{display:flex;flex-direction:column;gap:6px;min-width:0}.chapter-checkbox-input{pointer-events:none;flex-shrink:0}.chapter-intention-sliders{margin-top:24px;display:flex;flex-direction:column;gap:28px}.intention-skeleton .intention-skeleton-labelrow{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.intention-skeleton .intention-skeleton-label{height:13px;width:38%}.intention-skeleton .intention-skeleton-value{height:13px;width:22%}.intention-skeleton .intention-skeleton-desc{display:block;height:10px;width:62%;margin-bottom:16px}.intention-skeleton .intention-skeleton-track{display:block;height:3px;width:100%;margin:.5rem 0}.intention-skeleton .intention-skeleton-markers{display:flex;justify-content:space-between;margin-top:.4rem}.intention-skeleton .intention-skeleton-mark{height:10px;width:34px}.chapter-step-loading{margin-top:28px;color:var(--color-text-muted, rgba(255, 255, 255, .45));font-size:.9em}.chapter-theme-chooser,.chapter-spell-list{margin-top:24px}.chapter-demo{margin-top:24px;opacity:0;animation:chapterDemoIn .8s cubic-bezier(.2,.8,.2,1) .35s forwards}@keyframes chapterDemoIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chapter-blend-demo{display:flex;flex-direction:column;align-items:center;gap:10px}.blend-demo-sources{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%}.blend-demo-feed{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08));font-size:var(--font-size-0, .82em);color:var(--color-text)}.blend-demo-dot{width:9px;height:9px;flex-shrink:0}.blend-demo-merge{display:flex;color:var(--color-text-muted, rgba(255, 255, 255, .45))}.blend-demo-result{width:100%;display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--color-card-background, rgba(255, 255, 255, .05));border:1px solid var(--color-text)}.blend-demo-result-name{font-size:var(--font-size-0, .82em);font-weight:600;letter-spacing:.02em;color:var(--color-text)}.blend-demo-result-dots{display:flex;flex-wrap:wrap;gap:6px}.blend-demo-result-dots .blend-demo-dot{width:16px;height:16px}.chapter-atmosphere-demo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 480px){.chapter-atmosphere-demo{grid-template-columns:1fr}}.atmo-demo-tile{display:flex;flex-direction:column;gap:6px;padding:14px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08));border-top:3px solid var(--app-color, var(--color-accent))}.atmo-demo-swatch{width:18px;height:18px;background:var(--app-color, var(--color-accent))}.atmo-demo-name{font-weight:600;font-size:1.02em;color:var(--color-text)}.atmo-demo-desc{font-size:var(--font-size-0, .78em);line-height:1.4;color:var(--color-text-muted, rgba(255, 255, 255, .45))}.chapter-feedback-demo{display:flex;flex-direction:column;gap:10px}.feedback-demo-card{display:flex;align-items:stretch;gap:14px;padding:14px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08))}.feedback-demo-vote{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:46px;padding:8px 6px;background:transparent;border:1px solid var(--color-border, rgba(255, 255, 255, .12));color:var(--color-text-muted, rgba(255, 255, 255, .5));cursor:pointer;font-family:inherit;transition:color .18s ease,border-color .18s ease,background .18s ease}.feedback-demo-vote-on{color:var(--color-accent, #8a9a6b);border-color:var(--color-accent, #8a9a6b);background:var(--color-accent-subtle, rgba(138, 154, 107, .12))}.feedback-demo-count{font-size:.95em;font-weight:600;font-variant-numeric:tabular-nums}.feedback-demo-main{display:flex;flex-direction:column;gap:8px;justify-content:center;min-width:0}.feedback-demo-title{font-weight:600;color:var(--color-text)}.feedback-demo-tags{display:flex;gap:6px}.feedback-demo-tag{font-size:var(--font-size-0, .72em);padding:2px 8px;background:var(--color-bg-tertiary, rgba(255, 255, 255, .07));color:var(--color-text-muted, rgba(255, 255, 255, .5))}.feedback-demo-hint{font-size:var(--font-size-0, .78em);color:var(--color-text-muted, rgba(255, 255, 255, .45));text-align:center}.chapter-postadviser-demo{display:flex;flex-direction:column;gap:12px}.adviser-demo-draft{display:flex;flex-direction:column;gap:6px;padding:14px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08))}.adviser-demo-draft-label{font-size:var(--font-size-0, .72em);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted, rgba(255, 255, 255, .45))}.adviser-demo-draft-text{margin:0;font-size:1.02em;line-height:1.5;color:var(--color-text)}.adviser-demo-note{display:flex;gap:12px;padding:14px;background:var(--color-card-background, rgba(255, 255, 255, .05));border:1px solid var(--color-accent, #8a9a6b)}.adviser-demo-note-icon{display:flex;flex-shrink:0;color:var(--color-accent, #8a9a6b)}.adviser-demo-note-body{display:flex;flex-direction:column;gap:6px;min-width:0}.adviser-demo-note-head{font-weight:600;color:var(--color-text)}.adviser-demo-note-text{font-size:var(--font-size-0, .85em);line-height:1.45;color:var(--color-text-muted, rgba(255, 255, 255, .55))}.adviser-demo-goals{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.adviser-demo-goal{font-size:var(--font-size-0, .72em);padding:2px 8px;background:var(--color-bg-tertiary, rgba(255, 255, 255, .07));color:var(--color-text-muted, rgba(255, 255, 255, .5))}.chapter-lab-demo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 480px){.chapter-lab-demo{grid-template-columns:repeat(2,1fr)}}.lab-demo-tile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px 10px;background:var(--color-bg-secondary, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08))}.lab-demo-icon{display:flex;color:var(--color-accent, #8a9a6b)}.lab-demo-name{font-size:var(--font-size-0, .82em);color:var(--color-text)}.chapter-nav-disabled{opacity:.25;pointer-events:none}.footer-controls-fixed.chapter-footer-mode{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem}.chapter-nav-controls{display:flex;align-items:center;justify-self:center;gap:1.4rem}.chapter-progress{display:flex;align-items:center;gap:7px;pointer-events:none;min-width:0;flex-wrap:wrap}.chapter-progress-left{justify-self:start;justify-content:flex-start}.chapter-progress-right{justify-self:end;justify-content:flex-end}.chapter-progress-dot{width:6px;height:6px;border-radius:50%;background:var(--color-border);transition:background .35s ease,box-shadow .35s ease,transform .35s ease}.chapter-progress-dot.done{background:var(--color-text-muted)}.chapter-progress-dot.active{background:var(--color-accent);box-shadow:0 0 6px color-mix(in srgb,var(--color-glow-anisota, var(--color-accent)) 65%,transparent);transform:scale(1.18)}@media (prefers-reduced-motion: reduce){.chapter-progress-dot{transition:none}}@media (min-width: 600px){.chapter-overlay .chapter-viewer{max-width:500px}}.camp-screen{padding:24px 20px;max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.camp-screen h2{font-size:20px;font-weight:600;margin:0;color:var(--color-text)}.camp-screen button{font-family:var(--font-family-base, inherit);transition:opacity .15s ease,background .15s ease}.camp-screen button:active{opacity:.8}.expedition-end-screen{padding:32px 20px 48px;max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.expedition-end-screen button{font-family:var(--font-family-base, inherit);transition:opacity .15s ease,background .15s ease}.expedition-end-screen button:active{opacity:.8}@keyframes end-screen-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.end-screen-fade{opacity:0}.end-screen-fade.end-screen-visible{animation:end-screen-fade-in .7s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--animation-delay, 0ms)}.end-screen-loading{color:var(--color-text-muted);text-align:center}.end-screen-header{text-align:center;padding:8px 0 4px}.end-screen-eyebrow{font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:16px}.end-screen-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:14px;border:1px solid var(--color-border)}.end-screen-icon-lost,.end-screen-icon-complete{color:var(--color-text-muted);background:var(--color-background-secondary)}.end-screen-title{font-size:22px;font-weight:600;margin:0;font-family:var(--font-family-base)}.end-screen-title-lost,.end-screen-title-complete{color:var(--color-text)}.end-screen-subtitle{font-size:13px;line-height:1.5;color:var(--color-text-muted);max-width:300px;margin:8px auto 0}.end-screen-duration-row{display:flex;align-items:center;justify-content:center;gap:0;padding:14px 16px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.end-screen-stat{display:flex;flex-direction:column;align-items:center;padding:0 20px}.end-screen-stat-value{font-size:20px;font-weight:600;color:var(--color-text)}.end-screen-stat-label{font-size:11px;color:var(--color-text-muted);margin-top:2px}.end-screen-stat-divider{width:1px;height:28px;background:var(--color-border);flex-shrink:0}.end-screen-card{padding:16px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.end-screen-card-title{font-weight:600;font-size:14px;color:var(--color-text);margin-bottom:12px;display:flex;align-items:center;gap:6px}.end-screen-loot-list{display:flex;flex-direction:column;gap:0;font-size:14px}.end-screen-loot-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--color-border)}.end-screen-loot-row:last-child{border-bottom:none}.end-screen-loot-row-left{display:flex;align-items:center;gap:8px;color:var(--color-text)}.end-screen-loot-row-icon{display:flex;align-items:center;opacity:.5}.end-screen-loot-row-value{font-weight:600;color:var(--color-text)}.end-screen-loot-row-highlight{color:var(--color-text)}.end-screen-energy-row{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--color-background-secondary);border:1px solid var(--color-border);font-size:13px}.end-screen-energy-label{color:var(--color-text-muted)}.end-screen-energy-value{font-weight:500;color:var(--color-text)}.end-screen-dismiss-btn{padding:16px;font-size:16px;font-weight:600;background:var(--color-button-background);color:var(--color-button-text);border:2px solid var(--color-border-light);cursor:pointer;width:100%;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-family-base, inherit);transition:opacity .15s ease,background .15s ease}.end-screen-dismiss-btn:active{opacity:.8}.end-screen-lost .end-screen-duration-row{border-top:2px solid var(--color-warning)}.end-screen-complete .end-screen-duration-row{border-top:2px solid var(--color-border)}.light-meter-bar{width:100%;height:4px;background:var(--color-background-tertiary);overflow:hidden;margin-top:8px}.light-meter-bar-fill{height:100%;transition:width .5s ease;background:var(--color-info)}.light-meter-bar-fill.low{background:var(--color-warning)}.light-meter-bar-fill.critical{background:var(--color-error);animation:expedition-light-pulse 1.5s ease-in-out infinite}.light-meter-bar-fill.dead{background:var(--color-error);animation:expedition-light-pulse .8s ease-in-out infinite}@keyframes expedition-light-pulse{0%,to{opacity:1}50%{opacity:.4}}.conditions-display{padding:12px 16px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.conditions-display.conditions-display-flat{padding:0;background:none;border:none}.conditions-display-heading{font-weight:600;font-size:13px;margin-bottom:10px;color:var(--color-text-secondary)}.conditions-display-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.condition-pill{display:flex;align-items:center;gap:5px;padding:4px 10px;font-size:13px;background:var(--color-background-tertiary);border:1px solid var(--color-border);color:var(--color-text)}.condition-pill span{font-weight:500}.conditions-display-modifiers{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12px;color:var(--color-text-secondary)}.conditions-display-modifier-line{display:flex;justify-content:space-between}.conditions-display-modifier-value{font-weight:500}.conditions-display-modifier-value.good{color:var(--color-success)}.conditions-display-modifier-value.bad{color:var(--color-error)}.conditions-display-description{margin-top:10px;font-size:12px;color:var(--color-text-muted)}.conditions-display-compact{display:flex;gap:4px;font-size:13px;flex-wrap:wrap}.condition-pill-compact{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:var(--color-background-secondary);border:1px solid var(--color-border);font-size:12px;color:var(--color-text)}@media (max-width: 400px){.expedition-corner-content{gap:3px}}.chronicle-page .settings-container{max-width:520px}.chronicle-header{margin-bottom:20px}.chronicle-search-bar{position:relative;display:flex;align-items:center;width:100%;max-width:320px;margin:0 auto 16px}.chronicle-search-bar .chronicle-search-icon{position:absolute;left:10px;color:var(--color-text-muted);pointer-events:none}.chronicle-search-bar .chronicle-search-input{width:100%;padding:7px 32px;background:var(--color-input-background);border:1px solid var(--color-input-border);color:var(--color-input-text);font-family:inherit;font-size:var(--font-size-0-85, 13px);outline:none;transition:border-color .15s ease}.chronicle-search-bar .chronicle-search-input::placeholder{color:var(--color-input-placeholder)}.chronicle-search-bar .chronicle-search-input:focus{border-color:var(--color-border-focus)}.chronicle-search-bar .chronicle-search-clear{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;padding:4px;background:none;border:none;color:var(--color-text-muted);cursor:pointer}.chronicle-search-bar .chronicle-search-clear:hover{color:var(--color-text)}@keyframes chronicle-fade-in{0%{opacity:0;transform:translateY(5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chronicle-page .chronicle-fade{opacity:0}.chronicle-page .chronicle-fade.chronicle-fade-visible{animation:chronicle-fade-in .6s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--animation-delay, 0ms)}@keyframes chronicle-skeleton-pulse{0%{opacity:1}50%{opacity:.45}to{opacity:1}}.chronicle-skeleton{display:flex;flex-direction:column;gap:28px;padding:8px 0 0 1rem}.chronicle-skeleton-group{display:flex;flex-direction:column;opacity:0;animation:chronicle-fade-in .45s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--skeleton-group) * .16s + 60ms)}.chronicle-skeleton-day-header{padding-bottom:10px;border-bottom:1px solid var(--color-border);margin-bottom:12px}.chronicle-skeleton-day-label{height:9px;background:currentColor;opacity:.07;animation:chronicle-skeleton-pulse 2.4s ease-in-out infinite;animation-delay:calc(var(--skeleton-group) * .32s)}.chronicle-skeleton-events{display:flex;flex-direction:column;padding-left:15px;border-left:2px solid var(--color-border)}.chronicle-skeleton-event{display:flex;gap:12px;padding:9px 8px 9px 0;align-items:center}.chronicle-skeleton-dot{width:30px;height:30px;flex-shrink:0;background:var(--color-background-secondary, var(--color-card-background));border:1px solid var(--color-border);opacity:.6;margin-left:-32px;animation:chronicle-skeleton-pulse 2.4s ease-in-out infinite;animation-delay:calc(var(--skeleton-event) * .2s + var(--skeleton-group) * .32s)}.chronicle-skeleton-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.chronicle-skeleton-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.chronicle-skeleton-label{height:11px;background:currentColor;opacity:.08;animation:chronicle-skeleton-pulse 2.4s ease-in-out infinite;animation-delay:calc(var(--skeleton-event) * .2s + var(--skeleton-group) * .32s + 60ms)}.chronicle-skeleton-time{width:48px;height:9px;flex-shrink:0;background:currentColor;opacity:.05;animation:chronicle-skeleton-pulse 2.4s ease-in-out infinite;animation-delay:calc(var(--skeleton-event) * .2s + var(--skeleton-group) * .32s + .1s)}.chronicle-skeleton-detail{height:9px;background:currentColor;opacity:.05;animation:chronicle-skeleton-pulse 2.4s ease-in-out infinite;animation-delay:calc(var(--skeleton-event) * .2s + var(--skeleton-group) * .32s + .13s)}.chronicle-error{padding:16px;text-align:center;color:var(--color-warning);font-size:14px}.chronicle-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:60px 20px;color:var(--color-text-muted);text-align:center}.chronicle-empty p{font-size:16px;font-weight:500;margin:8px 0 0;color:var(--color-text)}.chronicle-empty span{font-size:14px}.chronicle-timeline{display:flex;flex-direction:column;gap:20px;padding:0 0 0 1rem}.chronicle-day-group{display:flex;flex-direction:column}.chronicle-day-header{font-size:var(--font-size-0-8, 13px);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding-bottom:10px;border-bottom:1px solid var(--color-border);margin-bottom:12px}.chronicle-day-events{display:flex;flex-direction:column;padding-left:15px;border-left:2px solid var(--color-border)}.chronicle-event{display:flex;gap:12px;position:relative;align-items:center;cursor:pointer;transition:background .15s ease,border-color .15s ease;margin-left:-8px;padding:9px 8px;border:1px solid transparent;margin-right:-1px}.chronicle-event:hover{background:var(--color-card-background-hover, rgba(255,255,255,.03));border-color:var(--color-border)}.chronicle-event:hover .chronicle-event-dot{border-color:var(--color-border-light, #444);color:var(--color-text-secondary)}.chronicle-event:active{background:#ffffff0d}.chronicle-event:focus-visible{outline:1px solid var(--color-border-focus);outline-offset:-1px}.chronicle-event-dot{flex-shrink:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--color-background-secondary, var(--color-card-background));border:1px solid var(--color-border);color:var(--color-text-muted);margin-left:-32px;transition:border-color .12s ease,color .12s ease}.chronicle-event-content{flex:1;min-width:0}.chronicle-event-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.chronicle-event-label{font-size:var(--font-size-0-9, 14px);font-weight:500;color:var(--color-text);display:flex;align-items:center;gap:4px}.chronicle-event-time{font-size:var(--font-size-0-75, 12px);color:var(--color-text-muted);flex-shrink:0}.chronicle-event-detail{font-size:var(--font-size-0-8, 13px);color:var(--color-text-muted);margin-top:2px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chronicle-event-group{display:flex;flex-direction:column}.chronicle-event-group-header{display:flex;gap:12px;align-items:center;position:relative;box-sizing:border-box;text-align:left;width:calc(100% + 9px);background:transparent;border:1px solid transparent;cursor:pointer;color:inherit;font:inherit;transition:background .15s ease,border-color .15s ease;margin-left:-8px;padding:9px 8px;margin-right:-1px}.chronicle-event-group-header:hover{background:var(--color-card-background-hover, rgba(255,255,255,.03))!important;border-color:var(--color-border)!important}.chronicle-event-group-header:active{background:#ffffff0d}.chronicle-event-group-header:hover .chronicle-event-dot{border-color:var(--color-border-light, #444);color:var(--color-text-secondary)}.chronicle-event-group-chevron{flex-shrink:0;color:var(--color-text-muted);display:inline-flex;align-items:center;transition:color .12s ease}.chronicle-event-group-header:hover .chronicle-event-group-chevron{color:var(--color-text-secondary)}.chronicle-event-group-items{display:flex;flex-direction:column;margin-left:6px;padding-left:14px;border-left:1px solid var(--color-border-dark, var(--color-border))}.chronicle-event-group-items .chronicle-event{margin-left:-6px;padding-left:6px}.chronicle-event-group-items .chronicle-event-dot{width:26px;height:26px;margin-left:-27px}.chronicle-load-earlier{display:block;width:100%;padding:14px;margin-top:12px;background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-family:inherit;font-size:var(--font-size-0-85, 13px);cursor:pointer;text-align:center;transition:all .15s ease}.chronicle-load-earlier:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.chronicle-detail-content{display:flex;flex-direction:column;gap:4px}.chronicle-detail-section{padding:8px 0}.chronicle-detail-section+.chronicle-detail-section{border-top:1px solid var(--color-border-dark, var(--color-border))}.chronicle-detail-section-title{font-size:var(--font-size-0-8, 13px);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}.chronicle-detail-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;gap:12px}.chronicle-detail-label{font-size:var(--font-size-0-85, 13px);color:var(--color-text-muted);flex-shrink:0}.chronicle-detail-value{font-size:var(--font-size-0-85, 13px);color:var(--color-text);text-align:right}.chronicle-detail-post-text{font-size:var(--font-size-0-9, 14px);color:var(--color-text-secondary);line-height:1.55;white-space:pre-wrap;word-break:break-word}@media (max-width: 400px){.chronicle-event-dot,.chronicle-skeleton-dot{width:26px;height:26px;margin-left:-29px}.chronicle-skeleton-events,.chronicle-day-events{padding-left:16px}}.expedition-map{position:relative;border:1px solid var(--color-border);width:100%;background:var(--color-card-background)}.expedition-map-compact{max-width:280px;margin:0 auto}.expedition-map-viewport{position:relative;aspect-ratio:1}.expedition-marker{transition:opacity .15s ease}.expedition-marker:hover{opacity:.7}.expedition-map-tooltip{position:absolute;transform:translate(-50%,-100%) translateY(-12px);display:inline-flex;align-items:center;gap:4px;padding:4px 8px;min-width:180px;background:var(--color-card-background);border:1px solid var(--color-border);font-size:var(--font-size-0-75);color:var(--color-text-secondary);white-space:nowrap;pointer-events:none;opacity:0;animation:expedition-tooltip-in .15s ease forwards;z-index:5}.expedition-map-tooltip-extra{opacity:.45;font-size:.9em}.expedition-map-tooltip-list{white-space:normal;min-width:180px;max-width:220px}.expedition-map-tooltip-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.expedition-map-tooltip-items li{display:flex;align-items:center;gap:6px;font-size:var(--font-size-0-7);line-height:1.4}.expedition-map-tooltip-type{opacity:.45;font-size:.85em;flex-shrink:0}@keyframes expedition-tooltip-in{0%{opacity:0;transform:translate(-50%,-100%) translateY(-6px)}to{opacity:1;transform:translate(-50%,-100%) translateY(-12px)}}.expedition-position-pulse{animation:expedition-pulse 2.4s ease-in-out infinite}@keyframes expedition-pulse{0%,to{opacity:.15}50%{opacity:.04}}.expedition-map-legend{display:flex;gap:12px;justify-content:center;padding:7px 0;flex-wrap:wrap;border-top:1px solid var(--color-border)}.expedition-map-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-size-0-7);color:var(--color-text-muted);letter-spacing:.01em}.expedition-map-legend-dot{width:5px;height:5px;flex-shrink:0;opacity:.7}.expedition-map-legend-shape{width:10px;height:10px;flex-shrink:0;display:block;vertical-align:middle;opacity:.5;padding-top:2px}.expedition-map-modal .modal-body{overflow:visible}.expedition-map-modal-content,.expedition-map-loading{display:flex;flex-direction:column;min-height:200px}.expedition-map-skeleton-label{display:flex;align-items:center;justify-content:center;padding:7px 0;color:var(--color-text-muted);font-size:var(--font-size-0-7);font-style:italic;border-top:1px solid var(--color-border)}.expedition-map-empty{color:var(--color-text-muted);font-size:var(--font-size-0-85);text-align:center;margin-top:8px}.expedition-map-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--color-background);color:var(--color-text)}.expedition-map-page-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--color-border)}.expedition-map-page-title{display:flex;flex-direction:column;gap:2px}.expedition-map-page-header h1{font-size:var(--font-size-1-2);font-weight:600;margin:0}.expedition-map-page-subtitle{font-size:var(--font-size-0-9);font-weight:400;color:var(--color-text-muted);margin:0}.expedition-map-page-back{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px}.expedition-map-page-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px}.expedition-map-empty-page{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-0-9);line-height:1.6}.expedition-map-empty-page p{margin:4px 0}.pwa-install-modal .modal-content{max-width:420px}.pwa-install-modal .modal-header{border-bottom:1px solid var(--color-border)}.pwa-install-body{display:flex;flex-direction:column;gap:1.25rem}.pwa-install-text{margin:0;font-size:var(--font-size-1);line-height:1.5;color:var(--color-text-muted)}.pwa-install-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.85rem}.pwa-install-steps li{display:flex;align-items:center;gap:.75rem;font-size:var(--font-size-0-95);line-height:1.45;color:var(--color-text)}.pwa-step-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:0;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text)}.pwa-install-modal .modal-footer{flex-wrap:wrap}.pwa-install-action{display:inline-flex;align-items:center;gap:.4rem}.lab-badge-inline{display:inline-flex;align-items:center;gap:.3em;margin-left:.5em;padding:.15em .5em;border:1px solid var(--color-border);color:var(--color-text-muted);font-family:IBM Plex Mono,monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;vertical-align:middle;white-space:nowrap}.lab-badge-inline svg{color:var(--color-glow-anisota)}.lab-back{display:flex;width:fit-content;align-items:center;gap:.3rem;background:none;border:none;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;padding:0;margin:0 auto .75rem;transition:color .25s ease}.lab-back:hover{color:var(--color-text)}.lab-page .settings-description{margin-bottom:1.75rem}.wing-stage{width:100%}.wing-canvas{width:100%;aspect-ratio:1 / 1;border:1px solid var(--color-border);overflow:hidden;background:var(--color-background);animation:wing-rise .5s ease-out}.wing-svg{display:block;width:100%;height:100%}@keyframes wing-rise{0%{opacity:0;transform:translateY(6px) scale(.995)}to{opacity:1;transform:none}}.wing-caption{text-align:center;margin:1rem 0 1.5rem;display:flex;flex-direction:column;gap:.25rem}.wing-species{font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-1-2);color:var(--color-text)}.wing-meta{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);letter-spacing:.04em}.wing-actions{display:flex;gap:.6rem;align-items:stretch;margin-bottom:2rem}.wing-reroll{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-glow-anisota);font-family:var(--font-family-base);font-size:var(--font-size-1-2);cursor:pointer;transition:background .3s ease,box-shadow .3s ease}.wing-reroll:hover{background:var(--color-card-background-hover);box-shadow:0 0 18px var(--color-glow-anisota-hover)}.wing-reroll svg{color:var(--color-glow-anisota)}.wing-action{width:46px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-card-background);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.wing-action:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.lab-controls{display:flex;flex-direction:column;gap:1.5rem}.lab-control-group{border:1px solid var(--color-border);background:var(--color-background-tertiary);padding:1rem}.lab-control-title{font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.9rem;font-weight:var(--font-weight-bold)}.lab-palettes{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.lab-palette{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.6rem .3rem;background:var(--color-card-background);border:1px solid var(--color-border);cursor:pointer;transition:background .25s ease,border-color .25s ease}.lab-palette:hover{border-color:var(--color-border-light);background:var(--color-card-background-hover)}.lab-palette.on{border-color:var(--color-glow-anisota)}.lab-palette-swatch{display:flex;width:100%;height:18px;border:1px solid var(--color-border-dark)}.lab-palette-swatch span{flex:1}.lab-palette-label{font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-text-secondary)}.lab-palette.on .lab-palette-label{color:var(--color-text)}.lab-slider{display:block;margin-bottom:1rem}.lab-slider:last-child{margin-bottom:0}.lab-slider-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem}.lab-slider-label{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-secondary)}.lab-slider-hint{color:var(--color-text-muted);font-style:italic;margin-left:.4rem;font-size:var(--font-size-0-7)}.lab-slider-value{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.lab-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:2px;background:var(--color-border);outline:none;cursor:pointer}.lab-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.lab-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.lab-toggles{display:flex;flex-direction:column;gap:.85rem}.lab-toggle{display:flex;align-items:center;gap:.7rem;background:none;border:none;padding:0;cursor:pointer;text-align:left}.lab-toggle-track{position:relative;flex:0 0 auto;width:38px;height:20px;border:1px solid var(--color-border);background:var(--color-card-background);transition:border-color .25s ease}.lab-toggle-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--color-text-muted);transition:transform .25s ease,background .25s ease}.lab-toggle.on .lab-toggle-track{border-color:var(--color-glow-anisota)}.lab-toggle.on .lab-toggle-thumb{transform:translate(18px);background:var(--color-glow-anisota)}.lab-toggle-label{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-secondary)}.lab-toggle.on .lab-toggle-label{color:var(--color-text)}.glow-stage{width:100%;box-sizing:border-box}.forest-map-stage{width:100%;box-sizing:border-box;animation:wing-rise .5s ease-out}.forest-map-stage .expedition-map{box-sizing:border-box;background:var(--color-background-tertiary)}.forest-map-stage .expedition-map *{box-sizing:border-box}.glow-canvas{position:relative;box-sizing:border-box;width:100%;aspect-ratio:1 / 1;border:1px solid var(--color-border);overflow:hidden;background:#05060a;animation:wing-rise .5s ease-out;touch-action:none}.glow-host{position:absolute;top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;height:100%;cursor:grab;touch-action:none}.glow-host:active{cursor:grabbing}.glow-host canvas{display:block;width:100%;height:100%}.glow-veil{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem;background:#05060a;color:var(--color-text-muted);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-8);letter-spacing:.04em;pointer-events:none}.glow-veil .loading-dots{display:inline-block;width:1.4em;text-align:left}.glow-veil .loading-dots:after{content:"";animation:glow-dots 1.4s steps(4,end) infinite}@keyframes glow-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.glow-caption .wing-meta{letter-spacing:.05em}.moon-stage{width:100%;display:flex;justify-content:center;margin-top:1.75rem}.moon-disc-wrap{width:62%;max-width:300px;aspect-ratio:1 / 1;animation:moon-rise .6s ease-out;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.moon-disc-wrap.moon-dragging{cursor:grabbing}.moon-svg{display:block;width:100%;height:100%;overflow:visible;color:var(--color-text)}.moon-carved{shape-rendering:geometricPrecision}@keyframes moon-rise{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}.moon-caption{text-align:center;margin:1.1rem 0 1.5rem;display:flex;flex-direction:column;gap:.25rem}.moon-phase-name{font-family:var(--font-family-base);font-size:var(--font-size-1-2);color:var(--color-text)}.moon-meta{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);letter-spacing:.04em}.moon-caption-date{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.15rem;font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-text-secondary)}.moon-time{margin-bottom:1.5rem}.moon-live{font-family:IBM Plex Mono,monospace;font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-glow-anisota);border:1px solid var(--color-glow-anisota);padding:.05em .4em}.moon-scrub{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem}.moon-step,.moon-now{display:inline-flex;align-items:center;justify-content:center;gap:.1rem;padding:.55rem .2rem;background:var(--color-card-background);color:var(--color-text-secondary);border:1px solid var(--color-border);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.moon-step:hover,.moon-now:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.moon-now.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.moon-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1.5rem}.moon-stats-sky{grid-template-columns:repeat(2,1fr);margin-bottom:1rem}.moon-stat{border:1px solid var(--color-border);background:var(--color-background-tertiary);padding:.7rem .6rem;text-align:center}.moon-stat-label{font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin-bottom:.35rem}.moon-stat-value{font-family:var(--font-family-base);font-size:var(--font-size-1-1);color:var(--color-text)}.moon-stat-value-btn{display:inline-block;background:none;border:none;padding:0;cursor:pointer;border-bottom:1px dotted var(--color-border-light);transition:color .25s ease,border-color .25s ease}.moon-stat-value-btn:hover{border-color:var(--color-text-muted)}.moon-stat-sub{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);margin-top:.2rem}.moon-sky{margin-bottom:1.5rem}.moon-riseset{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.moon-rs-item{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.7rem .8rem;border:1px solid var(--color-border);background:var(--color-card-background);text-align:center}.moon-rs-label{font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.moon-rs-time{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-1);white-space:nowrap;color:var(--color-text)}.moon-loc-row{display:flex;flex-direction:column;align-items:center;gap:.45rem;margin-top:1rem}.moon-loc-link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.45rem .9rem;background:var(--color-card-background);border:1px solid var(--color-border);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-0-7);color:var(--color-text-secondary);transition:background .25s ease,color .25s ease,border-color .25s ease}.moon-loc-link:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.moon-loc-link:disabled{cursor:default;opacity:.6}.moon-loc-done{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-glow-anisota)}.moon-loc-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.7rem;padding:.5rem .5rem .25rem}.moon-loc-empty svg{color:var(--color-text-muted)}.moon-loc-empty p{margin:0;font-size:var(--font-size-0-9);color:var(--color-text-secondary);max-width:30ch;line-height:1.5}.moon-loc-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-glow-anisota);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .3s ease,box-shadow .3s ease}.moon-loc-btn:hover{background:var(--color-card-background-hover);box-shadow:0 0 14px var(--color-glow-anisota-hover)}.moon-loc-btn:disabled{cursor:default;opacity:.6}.moon-loc-error{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.moon-upcoming{display:flex;flex-direction:column;gap:.7rem}.moon-up-item{display:flex;align-items:center;gap:.7rem}.moon-up-glyph{flex:0 0 auto;width:18px;height:18px;border-radius:50%;border:1px solid var(--color-border-light)}.moon-glyph-new{background:var(--color-background-tertiary)}.moon-glyph-full{background:#e9e6da}.moon-glyph-first-quarter{background:linear-gradient(90deg,var(--color-background-tertiary) 50%,#e9e6da 50%)}.moon-glyph-last-quarter{background:linear-gradient(90deg,#e9e6da 50%,var(--color-background-tertiary) 50%)}.moon-up-name{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text)}.moon-up-date{margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-8);color:var(--color-text-secondary)}.moon-up-rel{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);min-width:6.5ch;text-align:right}.moon-footnote{margin-top:1.5rem;font-family:IBM Plex Mono,monospace;font-size:.62rem;line-height:1.5;letter-spacing:.02em;color:var(--color-text-faint);text-align:center}.moon-orbit{margin-bottom:1.5rem}.moon-orbit-stage{width:100%;display:flex;justify-content:center;margin-top:.5rem;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.moon-orbit-stage.moon-dragging{cursor:grabbing}.moon-orbit-svg{display:block;width:100%;max-width:360px;height:auto;overflow:visible;color:var(--color-text)}.moon-orbit-earth{animation:moon-orbit-breathe 7s ease-in-out infinite;transform-origin:center}@keyframes moon-orbit-breathe{0%,to{opacity:.94}50%{opacity:1}}.augury-stage{width:100%;display:flex;justify-content:center;margin-top:1.5rem}.augury-cocoon-wrap{width:46%;max-width:200px;aspect-ratio:200 / 320;background:none;border:none;padding:0;cursor:pointer;-webkit-user-select:none;user-select:none;animation:augury-rise .6s ease-out;transform-origin:50% 0}.augury-still{animation:augury-rise .6s ease-out,augury-sway 5.5s ease-in-out .6s infinite}.augury-stirring{animation:augury-shake .5s ease-in-out infinite;cursor:progress}.augury-revealed{animation:augury-rise .6s ease-out}.augury-cocoon-wrap:disabled{cursor:progress}.augury-svg{display:block;width:100%;height:100%;overflow:visible}.augury-carved{shape-rendering:geometricPrecision}.augury-cocoon-wrap:not(:disabled):hover .augury-body{fill:var(--color-card-background-hover)}.augury-moth{animation:augury-emerge .6s ease-out;transform-origin:100px 70px}@keyframes augury-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes augury-sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes augury-shake{0%,to{transform:rotate(-3deg) translate(-1px)}25%{transform:rotate(2.5deg) translate(1px)}50%{transform:rotate(-2deg) translate(-1px)}75%{transform:rotate(3deg) translate(1px)}}@keyframes augury-emerge{0%{opacity:0;transform:translateY(6px) scale(.9)}to{opacity:1;transform:none}}.augury-answer{min-height:3.4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;text-align:center;margin:1.25rem 0 1.4rem;padding:0 .5rem}.augury-omen{font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-1-2);color:var(--color-text);line-height:1.35}.augury-answer-yes .augury-omen,.augury-answer-maybe .augury-omen,.augury-answer-no .augury-omen{animation:augury-omen-in .55s ease-out}.augury-omen-idle,.augury-omen-wait{font-style:normal;font-size:var(--font-size-1);color:var(--color-text-muted)}.augury-omen-meta{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);letter-spacing:.04em;color:var(--color-text-muted)}@keyframes augury-omen-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.augury-ask{display:flex;gap:.6rem;align-items:stretch;margin-bottom:2rem}.augury-input{flex:1;min-width:0;padding:.7rem .85rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-border);font-family:var(--font-family-base);font-size:var(--font-size-0-9);transition:border-color .25s ease}.augury-input::placeholder{color:var(--color-text-muted)}.augury-input:focus{outline:none;border-color:var(--color-glow-anisota)}.augury-ask-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem 1.1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-glow-anisota);font-family:var(--font-family-base);font-size:var(--font-size-0-9);white-space:nowrap;cursor:pointer;transition:background .3s ease,box-shadow .3s ease}.augury-ask-btn:hover:not(:disabled){background:var(--color-card-background-hover);box-shadow:0 0 18px var(--color-glow-anisota-hover)}.augury-ask-btn:disabled{cursor:progress;opacity:.7}.augury-ask-btn svg{color:var(--color-glow-anisota)}.augury-log-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.9rem}.augury-log-head .lab-control-title{margin-bottom:0;display:inline-flex;align-items:center;gap:.5rem}.augury-log-count{font-weight:var(--font-weight-normal);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.05em .45em;letter-spacing:0}.augury-clear{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;padding:0;color:var(--color-text-muted);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);cursor:pointer;transition:color .25s ease}.augury-clear:hover{color:var(--color-text)}.augury-log-empty{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center;padding:1.25rem .5rem .75rem}.augury-log-empty svg{color:var(--color-text-muted)}.augury-log-empty p{margin:0;font-size:var(--font-size-0-9);color:var(--color-text-muted);max-width:30ch}.augury-log{list-style:none;margin:0;padding:0}.augury-log-item{display:flex;align-items:flex-start;gap:.7rem;padding:.7rem 0;border-top:1px solid var(--color-border)}.augury-log-item:first-child{border-top:none}.augury-log-dot{flex:0 0 auto;width:7px;height:7px;margin-top:.45rem;background:var(--color-text-muted)}.augury-log-yes .augury-log-dot{background:var(--color-glow-anisota)}.augury-log-no .augury-log-dot{background:var(--color-border-light)}.augury-log-body{flex:1;min-width:0}.augury-log-q{font-size:var(--font-size-0-7);color:var(--color-text-muted);font-style:italic;margin-bottom:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.augury-log-omen{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text);line-height:1.3}.augury-log-when{flex:0 0 auto;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);white-space:nowrap;margin-top:.1rem}.lab-skel-bar{background:var(--color-card-background-hover);display:block}.lab-skel-pulse{animation:lab-skel-pulse 1.8s ease-in-out infinite}@keyframes lab-skel-pulse{0%,to{opacity:.45}50%{opacity:.85}}.lab-skel-square{width:100%;aspect-ratio:1 / 1;background:var(--color-card-background-hover);border:1px solid var(--color-border)}.lab-skel-icon{width:3rem;height:3rem;flex:0 0 auto}.lab-skel-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.lab-skel-card{pointer-events:none}@media (prefers-reduced-motion: reduce){.wing-canvas,.glow-canvas,.moon-disc-wrap,.moon-orbit-earth,.augury-cocoon-wrap,.augury-still,.augury-stirring,.augury-revealed,.augury-moth,.augury-answer-yes .augury-omen,.augury-answer-maybe .augury-omen,.augury-answer-no .augury-omen{animation:none}.augury-input,.augury-ask-btn,.augury-clear,.moon-step,.moon-now,.moon-loc-btn,.moon-loc-link{transition:none}.lab-skel-pulse{animation:none;opacity:.6}.lab-slider input[type=range],.lab-toggle-thumb,.lab-toggle-track,.wing-reroll,.wing-action,.lab-palette,.fidget-chip,.fidget-btn,.fidget-enable{transition:none}}.fidget-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.fidget-lab .fidget-picker,.sigil-lab .fidget-picker{justify-content:center}.fidget-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .8rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.fidget-chip:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.fidget-chip svg{color:var(--color-text-muted);transition:color .25s ease}.fidget-chip.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.fidget-chip.on svg{color:var(--color-glow-anisota)}.fidget-chip:disabled{cursor:default}.lock-screen-toy-picker{justify-content:center;margin-top:1.1rem}.lock-screen-toy-picker.is-disabled{opacity:.4;pointer-events:none}.lock-screen-sensor-dot{width:5px;height:5px;flex:0 0 auto;background:var(--color-glow-anisota);opacity:.85}.lock-screen-rotation-summary{display:flex;align-items:baseline;gap:.6rem;margin-top:-.5rem;margin-bottom:.5rem;font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text-muted)}.lock-screen-rotation-summary .settings-link{background:none;border:0;padding:0;font:inherit;color:var(--color-glow-anisota)}.lock-screen-spell-note{margin-top:1.5rem}.fidget-stage{position:relative;width:100%;aspect-ratio:1 / 1;box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-background-tertiary);overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;animation:wing-rise .5s ease-out}.fidget-stage canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.fidget-stage canvas:active{cursor:grabbing}.fidget-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:2rem 1.5rem;text-align:center;background:var(--color-background-tertiary)}.fidget-overlay svg{color:var(--color-glow-anisota)}.fidget-overlay p{max-width:24ch;margin:0;color:var(--color-text-secondary);font-size:var(--font-size-0-9);line-height:1.5}.fidget-enable{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-glow-anisota);font-family:var(--font-family-base);font-size:var(--font-size-1);cursor:pointer;transition:background .3s ease,box-shadow .3s ease}.fidget-enable:hover{background:var(--color-card-background-hover);box-shadow:0 0 18px var(--color-glow-anisota-hover)}.fidget-error{color:var(--color-text-muted);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7)}.fidget-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.85rem;min-height:32px}.fidget-bar-stacked{flex-direction:column;align-items:stretch;gap:.6rem}.fidget-bar-stacked .fidget-controls{justify-content:flex-start}.fidget-readout{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);letter-spacing:.04em}.fidget-hint-text{font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.fidget-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;background:var(--color-card-background);color:var(--color-text-secondary);border:1px solid var(--color-border);font-family:var(--font-family-base);font-size:var(--font-size-0-8);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.fidget-btn:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.fidget-btn svg{color:var(--color-text-muted)}.fidget-btn.tb-fixed{justify-content:center}.tb-wave{min-width:8.25rem}.tb-sound{min-width:7rem}.tb-rec{min-width:7.5rem}.tb-play{min-width:6.5rem}.fidget-bar-readout{justify-content:flex-start;margin-bottom:.6rem}.fidget-controls{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.fidget-sliders{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem;margin-top:.85rem}.fidget-sliders .lab-slider{margin-bottom:0}@media (max-width: 520px){.fidget-sliders{grid-template-columns:1fr}}.fidget-stats{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:1px;margin-top:.85rem;border:1px solid var(--color-border);background:var(--color-border);animation:wing-rise .5s ease-out}.fidget-stat{display:flex;flex-direction:column;gap:.3rem;padding:.65rem .75rem;background:var(--color-background-tertiary)}.fidget-stat-value{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-9);color:var(--color-text);letter-spacing:.02em;font-variant-numeric:tabular-nums}.fidget-stat-label{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.fidget-stat-reset{align-items:center;justify-content:center;border:none;cursor:pointer;color:var(--color-text-muted);transition:background .25s ease,color .25s ease}.fidget-stat-reset svg{color:var(--color-text-muted);transition:color .25s ease}.fidget-stat-reset:hover{background:var(--color-card-background-hover);color:var(--color-text)}.fidget-stat-reset:hover svg,.fidget-stat-reset:hover .fidget-stat-label{color:var(--color-text)}@media (max-width: 520px){.fidget-stats{grid-template-columns:repeat(2,1fr)}.fidget-stat-reset{flex-direction:row;gap:.4rem}}.therm-tune{margin-top:.85rem;animation:wing-rise .35s ease-out}.therm-scale,.therm-keys{margin-bottom:0}.therm-keys{gap:.35rem}.therm-key{min-width:2.4rem;justify-content:center;padding:.4rem .5rem}.therm-sliders{margin-top:1.1rem}.therm-looper{margin-top:.85rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);padding:.85rem;animation:wing-rise .5s ease-out}.therm-transport{display:flex;flex-wrap:wrap;gap:.5rem}.therm-loopbar{margin-top:.85rem;height:2px;background:var(--color-border);overflow:hidden}.therm-loopbar-fill{height:100%;background:var(--color-glow-anisota);transform-origin:left center;transform:scaleX(0);transition:transform .12s linear}.therm-looper-hint{margin:.85rem 0 0;font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-0-8);color:var(--color-text-muted);line-height:1.5}.therm-tracks{margin-top:.85rem;display:flex;flex-direction:column;gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.therm-track{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;background:var(--color-background-tertiary);transition:opacity .25s ease}.therm-track.muted{opacity:.45}.therm-track-name{flex:0 0 auto;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.therm-track-spark-wrap{flex:1 1 auto;min-width:0;cursor:grab;touch-action:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);padding:0 .4rem}.therm-track-spark-wrap:active{cursor:grabbing}.therm-track-spark{display:block;width:100%;height:22px}.therm-track-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:.35rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.therm-track-btn:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.therm-track-btn.on{border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.fidget-tagline{margin-top:1.25rem;color:var(--color-text-secondary);font-size:var(--font-size-0-9);line-height:1.5}.cairn-styles{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.cairn-stage{aspect-ratio:3 / 4}.cairn-stage canvas{cursor:grab}.cairn-stage canvas:active{cursor:grabbing}.cairn-hint{color:var(--color-glow-anisota);font-style:italic}.pop-sizes{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.75rem}.pop-sizes .fidget-chip{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);padding:.35rem .6rem}.pop-controls{margin-top:.85rem}.pop-snd-summary{margin:.6rem 0 0;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);line-height:1.5;color:var(--color-text-muted);letter-spacing:.02em}.circle-stage canvas{cursor:crosshair;touch-action:none}.circle-grade{position:absolute;top:.75rem;right:.85rem;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;pointer-events:none;text-align:right;animation:circle-grade-in .32s ease-out}.circle-grade-pct{font-family:IBM Plex Mono,monospace;font-size:2.1rem;line-height:1;color:var(--color-text);letter-spacing:-.01em}.circle-grade-unit{font-size:1rem;color:var(--color-text-muted);margin-left:.1rem}.circle-grade-letter{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-9);color:var(--color-glow-anisota);letter-spacing:.08em}.circle-grade-label{font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.circle-grade-miss{font-family:var(--font-family-base);font-style:italic;font-size:var(--font-size-0-8);color:var(--color-text-muted)}@keyframes circle-grade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.circle-grade{animation:none}}.sigil-stage{cursor:default;box-shadow:inset 0 0 60px #00000059}.sigil-svg{display:block;width:100%;height:100%}.sigil-canvas{display:block;width:100%;height:100%;cursor:crosshair;touch-action:none}.sigil-path{stroke:var(--color-text);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px var(--color-glow-anisota))}.sigil-spine{stroke:var(--color-glow-anisota);stroke-width:1.75px;opacity:.85}.sigil-mark{stroke:var(--color-glow-anisota);stroke-width:2px;filter:drop-shadow(0 0 2px var(--color-glow-anisota))}.sigil-grid-line{stroke:var(--color-border);stroke-width:1px}.sigil-cell-num{fill:var(--color-text-muted);font-family:IBM Plex Mono,monospace;font-size:.05px;opacity:.55}.sigil-node{fill:var(--color-text-muted)}.sigil-ring-letter{fill:var(--color-text-secondary);font-family:IBM Plex Mono,monospace;font-size:.035px;letter-spacing:0}.sigil-monogram-letter{fill:var(--color-text);font-family:var(--font-family-base);font-weight:var(--font-weight-bold)}.sigil-empty{fill:var(--color-text-muted);font-family:var(--font-family-base);font-style:italic;font-size:.05px}.sigil-field{margin-top:.85rem}.sigil-input{width:100%;box-sizing:border-box;padding:.7rem .85rem;background:var(--color-background-tertiary);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1);outline:none;transition:border-color .25s ease}.sigil-input::placeholder{color:var(--color-text-muted)}.sigil-input:focus{border-color:var(--color-glow-anisota)}.sigil-trace{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.85rem}.sigil-trace-step{display:inline-flex;align-items:baseline;gap:.25rem;padding:.2rem .45rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);font-family:IBM Plex Mono,monospace}.sigil-trace-letter{color:var(--color-text);font-size:var(--font-size-0-9);text-transform:uppercase}.sigil-trace-num{color:var(--color-glow-anisota);font-size:var(--font-size-0-7)}.sigil-reduce{margin-top:.85rem;display:flex;flex-direction:column;gap:.4rem;padding:.8rem;border:1px solid var(--color-border);background:var(--color-background-tertiary)}.sigil-reduce-row{display:flex;align-items:baseline;gap:.75rem}.sigil-reduce-label{flex:0 0 5.5rem;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.sigil-reduce-letters{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-9);color:var(--color-text);letter-spacing:.12em;word-break:break-word}.sigil-reduce-letters .struck{color:var(--color-text-muted);text-decoration:line-through;opacity:.5}.sigil-reduce-letters.survive{color:var(--color-glow-anisota)}.sigil-actions{margin-top:.85rem;margin-bottom:1.5rem}.sigil-export.wing-action{flex:1}.sigil-planets{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.sigil-planet{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .3rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.sigil-planet:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.sigil-planet.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.sigil-planet-glyph{font-size:1.1rem;line-height:1}.sigil-planet.on .sigil-planet-glyph{color:var(--color-glow-anisota)}.sigil-planet-name{font-size:var(--font-size-0-7)}.sigil-planet-note{margin-top:.7rem;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);text-transform:lowercase}.sigil-seg{display:flex;gap:.5rem}.sigil-seg-btn{flex:1;display:inline-flex;align-items:baseline;justify-content:center;gap:.3rem;padding:.5rem .6rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.sigil-seg-btn:hover{background:var(--color-card-background-hover);color:var(--color-text)}.sigil-seg-btn.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.sigil-seg-hint{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.sigil-bar-btns{display:flex;gap:.5rem}.sigil-ghost-btn{margin-top:.8rem}.sigil-save{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.5rem}.sigil-save-name{flex:1;min-width:9rem;width:auto}.sigil-save-btn{white-space:nowrap}.sigil-save-btn:disabled{opacity:.5;cursor:not-allowed}.sigil-save-error{font-size:var(--font-size-0-7);color:var(--color-glow-anisota)}.sigil-save-hint{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.sigil-spin{animation:sigil-spin .8s linear infinite}@keyframes sigil-spin{to{transform:rotate(360deg)}}.sigil-library{margin-top:1.5rem;border-top:1px solid var(--color-border)}.sigil-library-head{display:flex;align-items:center;gap:.5rem;width:100%;padding:.9rem 0;background:none;border:none;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1);cursor:pointer}.sigil-library-head svg{color:var(--color-glow-anisota)}.sigil-library-count{padding:.05rem .45rem;border:1px solid var(--color-border);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.sigil-library-chev{margin-left:auto;color:var(--color-text-muted);transition:transform .25s ease}.sigil-library-chev.open{transform:rotate(180deg)}.sigil-library-body{padding-bottom:1rem}.sigil-library-empty{padding:1rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);color:var(--color-text-muted);font-size:var(--font-size-0-9);line-height:1.5}.sigil-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:.75rem}.sigil-card{display:flex;flex-direction:column;gap:.25rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);padding:.4rem}.sigil-card-thumb{aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;background:var(--color-background);border:1px solid var(--color-border);overflow:hidden}.sigil-card-thumb img{width:100%;height:100%;object-fit:contain}.sigil-card-thumb span{color:var(--color-text-muted)}.sigil-card-name{font-size:var(--font-size-0-8);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigil-card-method{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);text-transform:lowercase}.sigil-card-actions{display:flex;gap:.25rem;margin-top:.15rem}.sigil-card-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;padding:.3rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.sigil-card-btn:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.sigil-card-btn.danger:hover{color:var(--color-glow-anisota);border-color:var(--color-glow-anisota)}@media (prefers-reduced-motion: reduce){.sigil-input,.sigil-planet,.sigil-seg-btn,.sigil-card-btn,.sigil-library-chev{transition:none}.sigil-spin{animation:none}}.synth-stage canvas{cursor:crosshair}.fidget-btn.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.fidget-btn.on svg{color:var(--color-glow-anisota)}.fidget-btn:disabled{opacity:.4;cursor:not-allowed}.synth-transport{flex-wrap:wrap;gap:.6rem}.synth-transport-actions{display:inline-flex;gap:.4rem;margin-left:auto}.synth-tempo{display:inline-flex;align-items:center;gap:.55rem;min-width:130px;flex:1 1 130px;max-width:220px}.synth-tempo-value{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);white-space:nowrap}.synth-tempo-value small{margin-left:.15em;opacity:.7}.synth-tempo input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:2px;background:var(--color-border);outline:none;cursor:pointer}.synth-tempo input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.synth-tempo input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.synth-lab .fidget-picker,.synth-lab .synth-options{justify-content:center}.synth-options{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1.1rem}.synth-option{display:flex;flex-direction:column;align-items:center;gap:.4rem}.synth-option-label{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.synth-seg{display:inline-flex;border:1px solid var(--color-border)}.synth-seg-btn{padding:.4rem .7rem;background:var(--color-card-background);border:none;border-right:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-8);cursor:pointer;transition:background .25s ease,color .25s ease}.synth-seg-btn:last-child{border-right:none}.synth-seg-btn:hover{background:var(--color-card-background-hover);color:var(--color-text)}.synth-seg-btn.on{background:var(--color-card-background-hover);color:var(--color-text);box-shadow:inset 0 -2px 0 var(--color-glow-anisota)}.synth-rack{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-top:1.1rem;padding:1rem .5rem;border:1px solid var(--color-border);background:var(--color-background-tertiary)}.synth-knob{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex:1 1 auto;min-width:54px}.synth-knob-dial{position:relative;width:46px;height:46px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-card-background);cursor:ns-resize;touch-action:none;transition:border-color .25s ease,box-shadow .25s ease}.synth-knob-dial:hover,.synth-knob-dial:focus-visible{border-color:var(--color-glow-anisota);outline:none;box-shadow:0 0 12px var(--color-glow-anisota-hover)}.synth-knob-indicator{position:absolute;left:50%;top:50%;width:2px;height:40%;background:var(--color-glow-anisota);transform-origin:top center;transform:translate(-50%) rotate(0)}.synth-knob-label{font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:var(--color-text-secondary)}.synth-knob-value{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.synth-pad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;aspect-ratio:1 / 1;width:100%;box-sizing:border-box;touch-action:none;animation:wing-rise .5s ease-out}.synth-pad{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);color:var(--color-text-muted);cursor:pointer;user-select:none;-webkit-user-select:none;transition:background 90ms ease,border-color 90ms ease,box-shadow 90ms ease,transform 90ms ease}.synth-pad:hover{border-color:var(--color-border-light)}.synth-pad.hit{background:var(--color-glow-anisota);border-color:var(--color-glow-anisota);color:var(--color-background);box-shadow:0 0 18px var(--color-glow-anisota-hover);transform:scale(.97)}.synth-pad-key{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;opacity:.6}.synth-pad-name{font-family:var(--font-family-base);font-size:var(--font-size-0-7)}.synth-hidden-video{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media (prefers-reduced-motion: reduce){.synth-pad,.synth-knob-dial,.synth-seg-btn{transition:none}.synth-pad-grid{animation:none}}.fidget-btn.rec{border-color:var(--color-glow-like, var(--color-glow-anisota));color:var(--color-glow-like, var(--color-glow-anisota))}.fidget-btn.rec svg{color:var(--color-glow-like, var(--color-glow-anisota))}.studio-stage{aspect-ratio:16 / 9}.studio-pads{display:grid;gap:.4rem;margin-top:.85rem}.studio-pads.tone{grid-template-columns:repeat(13,1fr)}.studio-pads.drum{grid-template-columns:repeat(5,1fr)}.studio-pad{padding:.55rem .2rem;border:1px solid var(--color-border);background:var(--color-background-tertiary);color:var(--color-text-secondary);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background 90ms ease,color 90ms ease,border-color 90ms ease}.studio-pad:hover{border-color:var(--color-border-light);color:var(--color-text)}.studio-pad:active{background:var(--color-glow-anisota);border-color:var(--color-glow-anisota);color:var(--color-background)}.studio-pads.drum .studio-pad{font-family:var(--font-family-base);font-size:var(--font-size-0-8)}.studio-tracks{display:flex;flex-direction:column;gap:.5rem;margin-top:1.1rem}.studio-track{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border:1px solid var(--color-border);background:var(--color-card-background);transition:border-color .25s ease,background .25s ease}.studio-track.on{border-color:var(--color-glow-anisota);background:var(--color-card-background-hover)}.studio-track.muted{opacity:.5}.studio-track-pick{display:inline-flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:none;border:none;padding:0;cursor:pointer;color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);text-align:left}.studio-track.on .studio-track-pick{color:var(--color-text)}.studio-track-pick svg{color:var(--color-text-muted);flex:0 0 auto}.studio-track.on .studio-track-pick svg{color:var(--color-glow-anisota)}.studio-track-count{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.studio-wave{flex:0 0 auto}.studio-track-actions{display:inline-flex;gap:.3rem;flex:0 0 auto}.studio-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1px solid transparent;color:var(--color-text-muted);cursor:pointer;transition:color .25s ease,border-color .25s ease}.studio-icon:hover{color:var(--color-text);border-color:var(--color-border)}.studio-icon:disabled{opacity:.35;cursor:not-allowed}.studio-add{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.4rem}.studio-add .studio-scale{margin-left:auto}.studio-library{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.studio-save{display:flex;gap:.5rem}.studio-save .sigil-input{flex:1;margin:0}.studio-save .fidget-btn{flex:0 0 auto}.studio-status{margin-top:.6rem;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}.studio-saved{margin-top:1rem;display:flex;flex-direction:column;gap:.4rem}.studio-saved-head{display:inline-flex;align-items:center;gap:.4rem;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.2rem}.studio-saved-head svg{color:var(--color-glow-anisota)}.studio-saved-row{display:flex;align-items:center;gap:.4rem;border:1px solid var(--color-border);background:var(--color-card-background)}.studio-saved-load{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0;padding:.55rem .7rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .25s ease}.studio-saved-load:hover{background:var(--color-card-background-hover)}.studio-saved-name{font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-saved-meta{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted)}@media (prefers-reduced-motion: reduce){.studio-pad,.studio-track,.studio-icon,.studio-saved-load{transition:none}}.moon-tune-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}.moon-tune-label{flex:0 0 7.5rem;font-size:var(--font-size-0-8);color:var(--color-text-muted)}.moon-tune-row input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1 1 auto;height:2px;background:var(--color-border);outline:none;cursor:pointer}.moon-tune-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.moon-tune-row input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--color-glow-anisota);border:none;border-radius:0;cursor:pointer}.moon-tune-val{flex:0 0 3rem;text-align:right;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-8);color:var(--color-text)}.moon-tune-seg{display:flex;gap:0;border:1px solid var(--color-border)}.moon-tune-seg button{flex:1 1 auto;padding:.35rem .7rem;background:transparent;border:none;border-radius:0;color:var(--color-text-muted);font-size:var(--font-size-0-8);cursor:pointer;transition:background .2s ease,color .2s ease}.moon-tune-seg button+button{border-left:1px solid var(--color-border)}.moon-tune-seg button.on{background:var(--color-glow-anisota-hover);color:var(--color-text)}.moon-tune-foot{display:flex;align-items:center;gap:.75rem;margin-top:.9rem}.moon-tune-reset{padding:.35rem .8rem;background:transparent;border:1px solid var(--color-border);border-radius:0;color:var(--color-text-muted);font-size:var(--font-size-0-8);cursor:pointer}.moon-tune-reset:hover{color:var(--color-text);border-color:var(--color-text-muted)}.moon-tune-readout{flex:1 1 auto;overflow-x:auto;white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);-webkit-user-select:all;user-select:all}.post-card-modal-container.redact-container{display:flex;flex-direction:column;align-items:stretch;gap:.65rem}.redact-container .post-card.post-card-modal-card.redact-card{height:auto;min-height:60dvh;max-height:74dvh}.redact-container .post-card.post-card-modal-card.redact-card .card-inner,.redact-container .post-card.post-card-modal-card.redact-card .card-front{flex:1 1 auto;min-height:0}.redact-hint{text-align:center;font-size:.82rem;font-weight:200;font-style:italic;line-height:1.4;color:var(--color-text-secondary);padding:0 .5rem}.redact-body.post-card-body{padding-bottom:1rem}.redact-text{line-height:1.9;white-space:pre-wrap;word-break:break-word;user-select:none;-webkit-user-select:none}.redact-gap{white-space:pre-wrap}.redact-word{position:relative;cursor:pointer;border-radius:0;padding:.05em .06em;margin:0 -.02em;color:var(--color-text);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,color .12s ease;box-decoration-break:clone;-webkit-box-decoration-break:clone}@media (hover: hover){.redact-word:hover{background-color:color-mix(in srgb,var(--color-glow-anisota) 24%,transparent)}}.redact-word.is-redacted{color:transparent}.redact-word.is-redacted:after{content:"";position:absolute;top:.04em;bottom:.04em;left:-.04em;right:-.04em;background-color:var(--color-text);transform:rotate(var(--redact-rot, 0deg));transform-origin:left center;clip-path:var(--redact-clip, none);pointer-events:none;animation:redactStrokeIn .19s cubic-bezier(.2,.7,.25,1);transition:opacity .22s ease}.redact-word.is-redacted.redact-join-right:after{right:-.32em}.redact-word.is-redacted.redact-join-left:after{left:-.32em}@keyframes redactStrokeIn{0%{transform:rotate(var(--redact-rot, 0deg)) scaleX(.04);opacity:.5}to{transform:rotate(var(--redact-rot, 0deg)) scaleX(1);opacity:1}}.redact-text.is-peeking .redact-word.is-redacted{color:var(--color-text)}.redact-text.is-peeking .redact-word.is-redacted:after{opacity:0}@media (prefers-reduced-motion: reduce){.redact-word.is-redacted:after{animation:none}}.redact-footer .redact-count{font-size:.72rem;font-weight:200;font-style:italic;color:var(--color-text-muted);white-space:nowrap}.redact-toolbar{display:flex;align-items:center;justify-content:center;gap:.5rem}.redact-tool{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:0;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.redact-tool:hover:not(:disabled){border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.redact-tool:disabled{opacity:.4;cursor:default}.redact-tool-save.is-saved{border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.redact-tool-peek.is-peeking{border-color:var(--color-glow-anisota);color:var(--color-glow-anisota);background:color-mix(in srgb,var(--color-glow-anisota) 12%,var(--color-card-background))}.redact-spin{animation:redact-spin .9s linear infinite}@keyframes redact-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.redact-spin{animation-duration:1.8s}}.redact-toast{align-self:center;font-size:.8rem;font-weight:200;color:var(--color-text);background:var(--color-card-background);border:1px solid var(--color-border);padding:.4rem .75rem;text-align:center}.redact-toast.is-error{border-color:var(--color-error);color:var(--color-error)}.redact-lab-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0 0 1.25rem}.redact-lab-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;border-radius:0;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-size:.85rem;font-weight:200;cursor:pointer;transition:border-color .15s ease,color .15s ease,opacity .15s ease}.redact-lab-btn:hover:not(:disabled){border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.redact-lab-btn:disabled{opacity:.45;cursor:default}.redact-lab-btn-ghost{background:transparent}.redact-lab-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.3rem;text-align:center;max-width:32rem;margin:1.5rem auto;font-size:.88rem;font-weight:200;font-style:italic;line-height:1.6;color:var(--color-text-secondary)}.redact-lab-note svg{vertical-align:middle;opacity:.8}.redact-post-item .settings-menu-info{min-width:0}.redact-post-snippet{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.redact-piece-line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200}.flush-modal .modal-content{max-width:500px}.flush-link{color:var(--color-link);text-decoration:none;border-bottom:1px solid var(--color-link);transition:all .2s ease}.flush-link:hover{color:var(--color-link-hover);border-bottom-color:var(--color-link-hover)}.flush-modal-content{display:flex;flex-direction:column;gap:24px;position:relative;min-height:500px}.flush-modal-content.loading{pointer-events:none}.flush-emoji-picker{display:flex;flex-direction:column;gap:12px}.flush-emoji-label{font-size:14px;font-weight:500;color:var(--color-text)}.flush-emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:8px;max-height:240px;overflow-y:auto;padding:4px}.flush-emoji-button{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--color-button-background);border:1px solid var(--color-border-light);cursor:pointer;transition:all .2s ease}.flush-emoji-button:hover:not(:disabled){background:var(--color-button-background-hover);border-color:var(--color-border-bright);transform:scale(1.05)}.flush-emoji-button.selected{background:var(--color-button-background-active);border-color:var(--color-border-bright);box-shadow:0 0 0 1px var(--color-border-bright)}.flush-emoji-button:disabled{opacity:.5;cursor:not-allowed}.flush-text-input{display:flex;flex-direction:column;gap:8px}.flush-text-label{font-size:14px;font-weight:500;color:var(--color-text)}.flush-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--color-border-light);transition:border-color .2s ease}.flush-input-wrapper:focus-within{border-color:var(--color-border-bright)}.flush-input-prefix{display:flex;align-items:center;padding:12px 16px;font-size:16px;font-family:var(--font-family);background:var(--color-background-secondary);color:var(--color-text-secondary);border-right:1px solid var(--color-border-light);white-space:nowrap}.flush-status-input{flex:1;padding:12px;font-size:16px;font-family:var(--font-family);background:var(--color-input-background);color:var(--color-text);border:none;outline:none;box-sizing:border-box}.flush-status-input:disabled{opacity:.6;cursor:not-allowed}.flush-character-count{font-size:12px;color:var(--color-text-secondary);text-align:right}.flush-modal-content .success-message{display:flex;align-items:center;justify-content:center;flex:1;padding:24px;text-align:center;animation:fadeIn calc(.3s / var(--animation-modals, 1)) ease-in-out}.flush-modal-content .success-text{font-size:16px;font-weight:500;color:var(--color-text)}.flush-modal-content .error{padding:12px;background:var(--color-error-background, rgba(255, 68, 68, .1));color:var(--color-error-text, #ff4444);border:1px solid var(--color-error-border, #ff4444);font-size:14px;font-weight:500;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.flush-submit-button{padding:14px 24px;font-size:16px;font-weight:600;font-family:var(--font-family);background:var(--color-button-background);color:var(--color-button-text);border:1px solid var(--color-border-light);cursor:pointer;transition:all .2s ease;position:relative}.flush-submit-button:hover:not(:disabled){background:var(--color-button-background-hover);border-color:var(--color-border-bright)}.flush-submit-button:active:not(:disabled){transform:scale(.98)}.flush-submit-button:disabled{opacity:.6;cursor:not-allowed}.flush-submit-button.posting{pointer-events:none}.flush-submit-button .loading-dots{display:inline-block}.composer-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-overlay, rgba(0, 0, 0, .4));display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn calc(.2s / var(--animation-modals, 1)) ease-in-out}.composer-loading-overlay.composer-loading-blocking{cursor:wait}.composer-loading-content{padding:24px;background:var(--color-modal-background);border:1px solid var(--color-border-light);text-align:center;min-width:260px}.composer-loading-text{font-size:14px;font-weight:500;color:var(--color-text)}@media (max-width: 600px){.flush-modal-content{min-height:450px}.flush-emoji-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px}.flush-emoji-button{width:40px;height:40px;font-size:20px}.flush-modal .modal-content{max-width:100%}}.work-social{max-width:40rem;margin:1.5rem auto 0;padding-top:1.25rem;border-top:1px solid var(--color-border)}.work-engage{display:flex;align-items:center;gap:1.5rem}.work-engage-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .1rem;border:none;background:none;color:var(--color-text-secondary);font-size:.85rem;font-weight:200;cursor:pointer;transition:color .15s ease,opacity .15s ease}.work-engage-btn:hover:not(:disabled){color:var(--color-text)}.work-engage-btn:disabled{opacity:.5;cursor:default}.work-engage-btn.is-liked{color:var(--color-glow-like, #e0719b)}.work-engage-btn.is-reposted{color:var(--color-glow-repost, #5aa469)}.work-engage-count{font-variant-numeric:tabular-nums;font-style:italic}.work-comments{margin-top:1.5rem}.work-comments-head{font-size:.8rem;font-weight:500;letter-spacing:.02em;color:var(--color-text-secondary);margin-bottom:.85rem}.work-comment-composer{margin-bottom:1.25rem}.work-comment-input{width:100%;resize:vertical;min-height:2.6rem;padding:.6rem .7rem;border-radius:0;border:1px solid var(--color-input-border, var(--color-border));background:var(--color-input-background, var(--color-card-background));color:var(--color-input-text, var(--color-text));font-family:inherit;font-size:.9rem;font-weight:200;line-height:1.5}.work-comment-input:focus{outline:none;border-color:var(--color-glow-anisota)}.work-comment-composer-row{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.work-comment-error{margin-right:auto;font-size:.78rem;font-weight:200;font-style:italic;color:var(--color-error)}.work-comment-post{display:inline-flex;align-items:center;justify-content:center;min-width:4rem;padding:.4rem .9rem;border-radius:0;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-size:.85rem;font-weight:200;cursor:pointer;transition:border-color .15s ease,color .15s ease,opacity .15s ease}.work-comment-post:hover:not(:disabled){border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.work-comment-post:disabled{opacity:.45;cursor:default}.work-comments-signin,.work-comments-empty{font-size:.85rem;font-weight:200;font-style:italic;color:var(--color-text-muted);padding:.5rem 0 1rem}.work-comments-list{display:flex;flex-direction:column;gap:1.1rem}.work-comment{display:flex;gap:.7rem;align-items:flex-start}.work-comment-avatar-btn{flex:0 0 auto;padding:0;border:none;background:none;cursor:pointer}.work-comment-avatar{display:block;width:2rem;height:2rem;object-fit:cover;border-radius:0;background:var(--color-background-secondary, var(--color-border))}.work-comment-avatar-empty{border:1px solid var(--color-border)}.work-comment-body{flex:1 1 auto;min-width:0}.work-comment-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.15rem}.work-comment-name{font-size:.85rem;font-weight:500;color:var(--color-text)}.work-comment-time{font-size:.74rem;font-style:italic;color:var(--color-text-muted)}.work-comment-delete{margin-left:auto;display:inline-flex;padding:.2rem;border:none;background:none;color:var(--color-text-muted);cursor:pointer;transition:color .15s ease}.work-comment-delete:hover{color:var(--color-error)}.work-comment-text{font-size:.92rem;font-weight:200;line-height:1.55;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.work-skel-bar{display:block;background:var(--color-border);border-radius:0}.work-skel-pulse{animation:work-skel-pulse 1.6s ease-in-out infinite;animation-delay:calc(var(--sk, 0) * 90ms)}@keyframes work-skel-pulse{0%,to{opacity:.35}50%{opacity:.7}}.work-spin{animation:work-spin .9s linear infinite}@keyframes work-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.work-skel-pulse{animation:none;opacity:.5}.work-spin{animation-duration:1.8s}}.work-comment-skeleton{pointer-events:none}.work-page-byline{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.35ch;margin:-.5rem 0 1.25rem;color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-1);font-weight:200;font-style:italic}.work-page-byline-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;color:var(--color-accent);font:inherit;cursor:pointer}.work-page-byline-link:hover{text-decoration:underline}.work-page-intro{max-width:40rem;margin:0 auto 1.5rem;text-align:center}.work-page-explainer{max-width:40rem;margin:0 auto 1.5rem;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-9);font-weight:200;font-style:italic;line-height:1.55;text-align:center}.work-page-engage{max-width:40rem;margin:1.5rem auto 0;padding-top:1.25rem;border-top:1px solid var(--color-border);justify-content:center}.work-page-meta{max-width:40rem;margin:1.1rem auto 1.5rem;text-align:center}.work-page-meta .poem-meta-stats,.work-page .poem-actions{justify-content:center}.work-page .work-social{border-top:none;padding-top:0}.sigil-display{width:100%;max-width:30rem;margin:.5rem auto 1.5rem;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:1.5rem;overflow:hidden;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--color-glow-anisota) 9%,transparent) 0%,transparent 62%),var(--color-card-background);border:1px solid var(--color-border)}.sigil-display img,.sigil-display svg{width:100%;height:100%;object-fit:contain}.sigil-display .sigil-path{fill:none;stroke:var(--color-glow-anisota);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.sigil-display .sigil-mark{fill:none;stroke:var(--color-glow-anisota);stroke-width:2.5px}.sigil-display-skeleton{background:var(--color-card-background)}.work-skeleton{pointer-events:none}.work-skel-lines{display:flex;flex-direction:column;gap:.6rem;margin:.5rem 0 1.5rem}.work-skel-lines-center{align-items:center}.work-skel-meta{margin:1.25rem 0 1.75rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.work-skel-row{display:flex;flex-wrap:wrap;gap:1.1rem;margin-top:.85rem}.work-skel-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}.work-reveal{animation:work-reveal .46s cubic-bezier(.2,.8,.2,1) both}@keyframes work-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.work-reveal{animation:work-reveal-fade .24s ease both}@keyframes work-reveal-fade{0%{opacity:0}to{opacity:1}}}.redaction-render{max-width:40rem;margin:0 auto 1.5rem;font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-size:1.15rem;font-weight:200;line-height:1.9;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.redaction-render-word{position:relative}.redaction-render-word.is-redacted{color:transparent}.redaction-render-word.is-redacted:after{content:"";position:absolute;top:.04em;bottom:.04em;left:-.04em;right:-.04em;background-color:var(--color-text);transform:rotate(var(--redact-rot, 0deg));transform-origin:center;clip-path:var(--redact-clip, none);pointer-events:none}.redaction-render-word.is-redacted.redact-join-right:after{right:-.32em}.redaction-render-word.is-redacted.redact-join-left:after{left:-.32em}.redaction-render-skeleton{display:flex;flex-direction:column;gap:.75rem}.redaction-found{text-align:center}.poem-stat-btn{border:none;background:none;cursor:pointer;font:inherit;color:var(--color-glow-anisota);transition:opacity .15s ease}.poem-stat-btn:hover{opacity:.8}.work-card-header,.work-card-back-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.work-card-kind{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-style:italic;letter-spacing:.02em;color:var(--color-text-secondary)}.work-card-by{font-size:.78rem;font-style:italic;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-card-body{display:flex;flex-direction:column}.work-card-poetry-body{padding:0}.work-card-field{position:relative;width:100%;box-sizing:border-box;flex:1 1 auto;min-height:16rem;overflow:hidden;background:radial-gradient(circle at 38% 30%,color-mix(in srgb,var(--color-text) 4%,transparent) 0%,transparent 60%),var(--color-card-background)}.work-card-tile{position:absolute;transform:rotate(var(--rot, 0deg));transform-origin:top left;padding:.24em .42em;font-size:clamp(.7rem,2.7vw,1.02rem);line-height:1;white-space:nowrap;color:#1a1a1a;border:1px solid rgba(0,0,0,.18);background:linear-gradient(#fbf7ee,#efe7d6);box-shadow:0 1px #fff9 inset,0 2px 5px #00000073}.work-card-field.is-faithful{container-type:inline-size}.work-card-field.is-faithful .work-card-tile{font-size:var(--tile-font);transform:translate(-50%,-50%) rotate(var(--rot, 0deg));transform-origin:center}.work-card-poem-fallback{margin:auto;text-align:center;font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200;font-size:1.3rem;line-height:1.85;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.work-card-image-body,.work-card-glyph-body{padding:0;justify-content:center}.work-card-image{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:16rem;overflow:hidden;background:radial-gradient(circle at 38% 30%,color-mix(in srgb,var(--color-text) 4%,transparent) 0%,transparent 60%),var(--color-card-background)}.work-card-image img{display:block;width:100%;height:100%;object-fit:contain}.work-card-glyph{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:16rem;color:var(--color-text-muted);background:radial-gradient(circle at 38% 30%,color-mix(in srgb,var(--color-text) 4%,transparent) 0%,transparent 60%),var(--color-card-background)}.work-card-redaction-body{justify-content:flex-start}.work-card-redaction-text{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200;font-size:1.05rem;line-height:1.85;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.work-card-redaction-fallback{text-align:center;margin:auto 0}.work-card-title{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:500;font-size:1.1rem;color:var(--color-text);margin-bottom:.75rem}.work-card-source{font-size:.72rem;font-style:italic;color:var(--color-text-muted)}.work-card-back-title{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:500;font-size:1.05rem;color:var(--color-text)}.work-card-back-body{display:flex;flex-direction:column;gap:.9rem}.work-card-back-poem{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200;font-size:1.15rem;line-height:1.8;color:var(--color-text);text-align:center;white-space:pre-wrap;word-break:break-word}.work-card-back-row{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem;font-weight:200;color:var(--color-text)}.work-card-back-label{font-style:italic;color:var(--color-text-secondary)}.work-card-engage-wrap{padding-top:.5rem;border-top:1px solid var(--color-border)}.work-card-engage-wrap .work-engage{justify-content:center}.work-card-open{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.25rem;padding:.5rem 1rem;border-radius:0;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-size:.85rem;font-weight:200;cursor:pointer;transition:border-color .15s ease,color .15s ease}.work-card-open:hover{border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.settings-search-trigger{display:flex;align-items:center;gap:.625rem;padding:.55rem .875rem;margin:auto;background:transparent;border:1px solid var(--color-border-light);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:.875rem;text-align:left;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-top:1.4rem}.settings-search-trigger:hover{background:var(--color-card-background-hover);border-color:var(--color-border);color:var(--color-text)}.settings-search-trigger:active{background:var(--color-card-background-active)}.settings-search-trigger:focus-visible{outline:none;border-color:var(--color-link)}.settings-search-trigger-icon{flex-shrink:0;opacity:.6;color:currentColor}.settings-search-trigger-text{flex:1;min-width:0}.settings-search-trigger-kbd{display:inline-flex;align-items:center;padding:1px 5px;background:transparent;border:1px solid var(--color-border-light);font-family:var(--font-family-base);font-size:.7rem;font-weight:500;color:var(--color-text-secondary)}.settings-search-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:color-mix(in srgb,var(--color-text) 8%,transparent);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:max(1rem,env(safe-area-inset-top,0px)) 1rem 1rem;box-sizing:border-box;animation:settings-search-fade-in calc(.3s / var(--animation-modals, 1)) cubic-bezier(.2,1,.3,1) forwards;overflow-y:auto;overscroll-behavior:contain}.settings-search-modal{background:var(--color-modal-background);border:2px solid var(--color-border);width:90dvw;max-width:500px;max-height:60dvh;font-family:var(--font-family-base);color:var(--color-text);display:flex;flex-direction:column;margin-top:auto;margin-bottom:auto;animation:settings-search-slide-in calc(.3s / var(--animation-modals, 1)) cubic-bezier(.2,1,.3,1) forwards;will-change:transform,opacity;overflow:hidden}.settings-search-modal>[cmdk-label]{display:none}@keyframes settings-search-fade-in{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}}@keyframes settings-search-slide-in{0%{transform:translateY(-20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.settings-search-modal-input-row{display:flex;align-items:center;gap:.625rem;padding:.875rem 1rem;border-bottom:1px solid var(--color-border);background:transparent}.settings-search-modal-icon{flex-shrink:0;opacity:.6;color:var(--color-text)}.settings-search-modal-input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font-family-base);font-size:var(--font-size-1, 1rem);color:var(--color-text);padding:0;margin:0}.settings-search-modal-input::placeholder{color:var(--color-input-placeholder)}.settings-search-esc-hint{flex-shrink:0;padding:2px 6px;background:var(--color-background-tertiary);border:1px solid var(--color-border);font-family:var(--font-family-base);font-size:.7rem;color:var(--color-text-secondary)}.settings-search-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0;overscroll-behavior:contain}.settings-search-list::-webkit-scrollbar{display:none}.settings-search-empty{padding:2rem 1rem;text-align:center;color:var(--color-text-secondary);font-size:.9rem}.settings-search-group{border-bottom:1px solid var(--color-border)}.settings-search-group:last-child{border-bottom:none}.settings-search-group [cmdk-group-heading]{padding:.625rem 1rem .375rem;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary);background:var(--color-background-tertiary)}.settings-search-item{display:flex;align-items:flex-start;gap:.625rem;padding:.75rem 1rem;cursor:pointer;color:var(--color-text);border-bottom:1px solid var(--color-border-light);transition:background .1s ease}.settings-search-group [cmdk-group-items]>.settings-search-item:last-child{border-bottom:none}.settings-search-item[data-selected=true],.settings-search-item:hover{background:var(--color-card-background-hover)}.settings-search-item-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;margin-top:1px;color:var(--color-link)}.settings-search-item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.settings-search-item-label{font-size:.95rem;font-weight:500;line-height:1.2}.settings-search-item-desc{font-size:.8rem;line-height:1.3;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.settings-search-item-meta{flex-shrink:0;align-self:center;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);padding-left:.5rem}.settings-search-footer{display:flex;gap:1rem;padding:.5rem 1rem;border-top:1px solid var(--color-border);background:var(--color-background-tertiary);font-size:.7rem;color:var(--color-text-secondary)}.settings-search-footer-hint{display:inline-flex;align-items:center;gap:.3rem}@media (max-width: 600px){.settings-search-footer{display:none}}.setting-flash{animation:setting-flash-anim 1.6s ease-out}@keyframes setting-flash-anim{0%{box-shadow:0 0 color-mix(in srgb,var(--color-link) 70%,transparent);background-color:color-mix(in srgb,var(--color-link) 20%,transparent)}60%{box-shadow:0 0 0 6px color-mix(in srgb,var(--color-link) 0%,transparent);background-color:color-mix(in srgb,var(--color-link) 8%,transparent)}to{box-shadow:0 0 0 0 transparent;background-color:transparent}}.harvest-comparison{padding:.75rem;background:var(--color-card-background);border:1px solid var(--color-border);margin:.5rem 0}.harvest-comparison-label{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:.5rem;font-weight:500}.harvest-comparison-values{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.harvest-comparison-user{display:flex;align-items:baseline;gap:.25rem}.harvest-comparison-value{font-size:1.5rem;font-weight:600;color:var(--color-text)}.harvest-comparison-unit{font-size:.9rem;color:var(--color-text-secondary)}.harvest-comparison-avg{display:flex;align-items:baseline;gap:.25rem;font-size:.85rem;color:var(--color-text-secondary)}.harvest-comparison-avg-label{opacity:.7}.harvest-comparison-avg-value{font-weight:500}.harvest-comparison-text{font-size:.9rem;margin-top:.5rem;padding:.5rem;background:var(--color-background);border-left:3px solid var(--color-border)}.harvest-comparison-above .harvest-comparison-text{color:var(--color-success);border-left-color:var(--color-success);background:color-mix(in srgb,var(--color-success) 10%,transparent)}.harvest-comparison-below .harvest-comparison-text{color:var(--color-text-secondary);border-left-color:var(--color-border)}.harvest-comparison-average .harvest-comparison-text{color:var(--color-text);border-left-color:var(--color-link)}.harvest-comparison-bar{position:relative;height:4px;background:var(--color-border);margin-top:.75rem;overflow:visible}.harvest-comparison-bar-fill{height:100%;background:var(--color-link);transition:width .3s ease}.harvest-comparison-bar-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--color-link);transition:left .3s ease}.harvest-comparison-compact{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.85rem;background:var(--color-card-background);border:1px solid var(--color-border);margin-left:.5rem}.harvest-comparison-compact .harvest-comparison-text{margin:0;padding:0;background:none;border:none;font-size:inherit}.harvest-comparison-compact.harvest-comparison-above{background:color-mix(in srgb,var(--color-success) 10%,transparent);border-color:var(--color-success);color:var(--color-success)}.harvest-comparison-compact.harvest-comparison-below{background:var(--color-card-background);border-color:var(--color-border);color:var(--color-text-secondary)}.harvest-comparison-compact.harvest-comparison-average{background:var(--color-card-background);border-color:var(--color-link);color:var(--color-text)}@media (max-width: 768px){.harvest-comparison-values{flex-direction:column;align-items:flex-start;gap:.5rem}.harvest-comparison-value{font-size:1.25rem}}.comparison-dot-plot{width:100%;margin-top:12px;padding:0 4px}.comparison-dot-plot.compact{margin-top:8px}.comparison-dot-plot-track{position:relative;width:100%;height:32px;background:linear-gradient(to right,var(--color-border) 0%,var(--color-border) 100%);background-size:100% 2px;background-position:center;background-repeat:no-repeat}.comparison-dot{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:2}.comparison-dot.user-dot{z-index:3}.dot-marker{width:10px;height:10px;background:var(--color-text);border:2px solid var(--color-card-background);transition:all .2s ease;cursor:help}.comparison-dot.average-dot .dot-marker{background:var(--color-text-tertiary)}.comparison-dot.user-dot .dot-marker{background:var(--color-primary)}.comparison-dot.user-dot.above .dot-marker{background:var(--color-success)}.comparison-dot.user-dot.below .dot-marker{background:var(--color-text-secondary)}.dot-marker:hover{transform:scale(1.3)}.dot-label{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-size:11px;color:var(--color-text-secondary);white-space:nowrap;pointer-events:none}.comparison-dot.user-dot .dot-label{top:20px}.comparison-dot-connector{position:absolute;top:50%;transform:translateY(-50%);height:2px;background:var(--color-border-light);z-index:1;opacity:.4}.comparison-dot-plot-labels{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px;font-size:12px}.label-avg{color:var(--color-text-tertiary)}.label-separator{color:var(--color-text-tertiary);opacity:.5}.label-user{color:var(--color-text-secondary);font-weight:500}.label-user.above{color:var(--color-success)}.label-user.below{color:var(--color-text-secondary)}@media (max-width: 768px){.comparison-dot-plot-track{height:28px}.dot-marker{width:8px;height:8px}.dot-label{font-size:10px}.comparison-dot-plot-labels{font-size:11px}}.harvest-section{margin-bottom:60px;width:100%}.harvest-section-title{font-size:28px;font-weight:700;margin-bottom:10px;color:var(--color-text)}.harvest-section-description{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px;text-align:center}.harvest-section-grid{position:relative}.harvest-section-simple{display:flex;flex-direction:column;gap:1.5rem;max-width:100%;align-items:center}.harvest-section-simple>.harvest-card{width:100%}.harvest-card{min-height:400px;position:relative;perspective:1000px;transition:border-color .2s ease;padding:15px}.harvest-card-inner{position:relative;width:100%;min-height:400px;height:100%;transition:transform .6s;transform-style:preserve-3d}.harvest-card.flipped .harvest-card-inner{transform:rotateY(180deg)}.harvest-card-front,.harvest-card-back{position:absolute;width:100%;height:100%;min-height:400px;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;display:flex;flex-direction:column;background:var(--color-card-background);border:2px solid var(--color-border);box-sizing:border-box;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:opacity 0s linear .3s;opacity:1}.harvest-card-back{transform:rotateY(180deg)}.harvest-card:not(.flipped) .harvest-card-back{opacity:0;pointer-events:none}.harvest-card.flipped .harvest-card-front{opacity:0;pointer-events:none}.harvest-card-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--color-border);flex-shrink:0}.harvest-card-title{font-size:16px;font-weight:600;margin:0;color:var(--color-text);flex:1}.harvest-card-header-actions{display:flex;gap:8px;align-items:center}.harvest-card-flip-button,.harvest-card-share-button,.harvest-card-metric-cycle-button{background:transparent;border:1px solid var(--color-border);padding:6px 8px;cursor:pointer;color:var(--color-text-secondary);transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.harvest-card-flip-button{animation:flipButtonPulse 3s ease-in-out infinite}@keyframes flipButtonPulse{0%,to{box-shadow:0 0 0 0 transparent;border-color:var(--color-border)}50%{box-shadow:0 0 8px 2px var(--color-glow-anisota);border-color:var(--color-glow-anisota)}}.harvest-card-flip-button svg,.harvest-card-share-button svg,.harvest-card-metric-cycle-button svg{color:var(--color-text-secondary);stroke:currentColor;fill:none}.harvest-card-flip-button:hover,.harvest-card-share-button:hover,.harvest-card-metric-cycle-button:hover{background:var(--color-button-hover);color:var(--color-text);border-color:var(--color-border-light)}.harvest-card-flip-button:hover svg,.harvest-card-share-button:hover svg,.harvest-card-metric-cycle-button:hover svg{color:var(--color-text)}.harvest-card-share-button:disabled,.harvest-card-metric-cycle-button:disabled{opacity:.5;cursor:not-allowed}.harvest-card-share-button:disabled:hover,.harvest-card-metric-cycle-button:disabled:hover{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.harvest-card-share-container,.harvest-card-metric-cycle-container{position:relative;display:flex;align-items:center}.harvest-card-share-menu,.harvest-card-metric-cycle-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--color-card-background);border:1px solid var(--color-border);min-width:180px;z-index:1000;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column}.harvest-card-share-option,.harvest-card-metric-cycle-option{background:transparent;border:none;padding:10px 14px;cursor:pointer;color:var(--color-text);transition:background .2s ease;text-align:left;display:flex;align-items:center;gap:8px;font-family:inherit;font-size:14px;border-bottom:1px solid var(--color-border)}.harvest-card-share-option:last-child,.harvest-card-metric-cycle-option:last-child{border-bottom:none}.harvest-card-share-option:hover,.harvest-card-metric-cycle-option:hover{background:var(--color-button-hover)}.harvest-card-metric-cycle-option.active{background:var(--color-card-background-active);font-weight:600}.harvest-card-share-option svg{width:16px;height:16px;flex-shrink:0;color:var(--color-text-secondary)}.harvest-card-metric-indicator{position:absolute;bottom:12px;left:12px;font-size:12px;color:var(--color-text-secondary);opacity:.7;pointer-events:none;z-index:10;line-height:1.3}.harvest-card-comparison-indicator{position:absolute;bottom:12px;right:12px;font-size:13px;color:var(--color-glow-anisota);opacity:.85;pointer-events:none;z-index:10;line-height:1.3;text-align:right}.card-controls{display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px;border-bottom:1px solid var(--color-border);background:var(--color-background-secondary)}.card-control-group{display:flex;align-items:center;gap:8px}.card-control-label{font-size:13px;color:var(--color-text-secondary);white-space:nowrap;font-weight:500}.harvest-card-body{flex:1;overflow:visible;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0}.harvest-card-body>*{max-height:100%;width:100%}.harvest-card-body::-webkit-scrollbar{width:8px}.harvest-card-body::-webkit-scrollbar-track{background:var(--color-background-secondary)}.harvest-card-body::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-background-secondary)}.harvest-card-body::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}.harvest-card-loading,.harvest-card-error,.harvest-card-empty{text-align:center;color:var(--color-text-secondary);font-size:14px;padding:40px 20px}.harvest-card-error{color:var(--color-error)}.harvest-card-metadata{padding:20px;flex:1;min-height:0}.harvest-card-metadata-item{margin-bottom:12px;font-size:14px;line-height:1.5}.harvest-card-metadata-item strong{color:var(--color-text);display:block;margin-bottom:4px}.count-visualization{text-align:center;width:100%}.count-value{font-size:48px;font-weight:700;color:var(--color-text);margin-bottom:12px}.count-description,.count-literary,.count-alt-text{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.count-comparison{margin-top:16px}.count-dot-plot{margin-top:12px;padding:0 8px}.spectrum-visualization{width:90%;padding:20px 0}.spectrum-d3-container{width:100%;display:flex;justify-content:center;align-items:center}.spectrum-d3-container svg{display:block;width:100%;height:auto;overflow:visible}.spectrum-description{text-align:center;font-size:14px;color:var(--color-text-secondary);margin-top:20px}.list-visualization{width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;height:100%}.list-visualization::-webkit-scrollbar{width:8px}.list-visualization::-webkit-scrollbar-track{background:var(--color-background-secondary)}.list-visualization::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-background-secondary)}.list-visualization::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}.list-container{display:flex;flex-direction:column;overflow:visible}.list-container.list-container-emoji{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:16px;overflow:visible}.list-container.list-container-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;overflow:visible}.list-container-grid .harvest-list-item{border:1px solid var(--color-border);border-right:0;border-bottom:0}.list-container-grid .harvest-list-item:nth-child(2n){border-right:1px solid var(--color-border)}.list-container-grid .harvest-list-item:nth-last-child(-n+2){border-bottom:1px solid var(--color-border)}.list-container-grid .harvest-list-item:last-child{border-bottom:1px solid var(--color-border)}.list-item-emoji-grid{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15px 15px 10px;background:var(--color-background-secondary);border:1px solid var(--color-border);transition:background .2s ease,transform .15s ease}.list-item-emoji-grid:hover{background:var(--color-card-background-hover);transform:translateY(-2px)}.list-item-emoji-icon{font-size:36px;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",sans-serif;font-variant-emoji:emoji}.list-item-emoji-count{font-size:14px;font-weight:600;color:var(--color-text)}.list-metadata{display:flex;gap:16px;justify-content:center;align-items:center;padding:8px 16px;flex-shrink:0;border-top:1px solid var(--color-border);background:var(--color-background-secondary);grid-column:1 / -1}.list-metadata-item{display:flex;align-items:baseline;gap:6px}.list-metadata-label{font-size:11px;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.list-metadata-value{font-size:14px;font-weight:600;color:var(--color-text)}.harvest-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-background-secondary);border-top:1px solid var(--color-border);border-right:0px;border-left:0px;border-bottom:0px;transition:background .2s ease;flex-shrink:0}.harvest-list-item:last-child{border-bottom:1px solid var(--color-border)}.harvest-list-item:hover{background:var(--color-card-background-hover)}.harvest-list-item-clickable{cursor:pointer}.harvest-list-item-clickable:active{transform:scale(.98)}.harvest-list-item-rank{font-size:14px;font-weight:700;color:var(--color-text-secondary);min-width:24px;text-align:center}.harvest-list-item-avatar{width:40px;height:40px;overflow:hidden;flex-shrink:0}.harvest-list-item-avatar img{width:100%;height:100%;object-fit:cover}.harvest-list-item-content{flex:1;min-width:0}.harvest-list-item-key,.harvest-list-item-display-name{font-size:14px;font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.harvest-list-item-label{font-size:12px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.harvest-list-item-handle{font-size:12px;color:var(--color-text-secondary)}.harvest-list-item-value,.harvest-list-item-count{font-size:16px;font-weight:700;color:var(--color-text);white-space:nowrap}.harvest-list-item-icon{display:flex;align-items:center;justify-content:center;min-width:40px;flex-shrink:0}.harvest-list-item-name{font-size:14px;font-weight:600;color:var(--color-text)}.harvest-list-item-details{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.harvest-list-item-action-button{padding:6px 16px;font-size:13px;font-weight:600;color:var(--color-text);background:var(--color-border);border:1px solid var(--color-border);cursor:pointer;transition:background-color .15s ease,border-color .15s ease;font-family:inherit;white-space:nowrap}.harvest-list-item-action-button:hover{background:var(--color-button-hover);border-color:var(--color-text-secondary)}.harvest-list-item-action-button:active{transform:scale(.98)}.harvest-list-item-rarity{display:flex;align-items:center;justify-content:center;min-width:40px}.harvest-list-item-breakdown{font-size:11px;color:var(--color-text-secondary);margin-top:4px;display:flex;flex-wrap:wrap;gap:8px}.harvest-list-item-post{display:flex;align-items:flex-start;gap:12px;padding:16px 12px}.harvest-list-item-post .harvest-list-item-rank{flex-shrink:0;margin-top:2px}.harvest-list-item-post .harvest-list-item-content{flex:1;min-width:0}.harvest-list-item-post-text{font-size:14px;line-height:1.4;color:var(--color-text);margin-bottom:8px;word-wrap:break-word}.harvest-list-item-post-meta{display:flex;flex-direction:column;gap:4px}.harvest-list-item-post-date{font-size:11px;color:var(--color-text-muted);font-weight:400}.harvest-list-item-post .harvest-list-item-breakdown{margin-top:6px}.harvest-list-item-post .harvest-list-item-rarity{flex-shrink:0;margin-top:2px}.progress-ring-foreground{fill:var(--color-glow-anisota)}.wordcloud-visualization,.bubble-visualization,.heatmap-visualization,.bar-chart-visualization,.treemap-visualization,.ridgeline-visualization,.sankey-visualization{width:100%;height:100%;min-height:300px;display:flex;flex-direction:column;position:relative;box-sizing:border-box}.wordcloud-visualization svg,.heatmap-visualization svg,.bar-chart-visualization svg,.treemap-visualization svg,.ridgeline-visualization svg,.sankey-visualization svg{width:100%;height:100%;max-width:100%;max-height:100%;flex:1;object-fit:contain}.wordcloud-visualization{padding:20px}.network-graph-visualization{width:100%;height:100%;min-height:500px;display:flex;flex-direction:column;position:relative;box-sizing:border-box}.network-graph-metrics{display:flex;gap:20px;padding:12px 16px;background:var(--color-background-secondary);border-bottom:1px solid var(--color-border);font-size:13px}.network-graph-metrics .metric{display:flex;gap:6px}.network-graph-metrics .metric .label{color:var(--color-text-secondary);font-weight:500}.network-graph-metrics .metric .value{color:var(--color-text);font-weight:600}.network-graph-visualization svg{flex:1;cursor:grab}.network-graph-visualization svg:active{cursor:grabbing}.network-graph-legend{display:flex;gap:20px;padding:12px 16px;border-top:1px solid var(--color-border);font-size:12px}.network-graph-legend .legend-item{display:flex;align-items:center;gap:8px}.network-graph-legend .legend-color{width:12px;height:12px}.network-graph-visualization .links line{transition:stroke-opacity .2s ease}.network-graph-visualization .nodes circle{transition:r .2s ease,fill .2s ease}.network-graph-visualization .nodes circle:hover{r:10;stroke-width:2}.network-graph-visualization.error,.network-graph-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:300px}.network-graph-error-message,.network-graph-empty-message{color:var(--color-text-secondary);font-size:14px}.network-graph-visualization.hierarchical-bundling path{transition:stroke .2s ease,stroke-opacity .2s ease,stroke-width .2s ease}.network-graph-visualization.hierarchical-bundling text{transition:fill .2s ease,font-weight .2s ease;-webkit-user-select:none;user-select:none;cursor:pointer}.network-graph-visualization.hierarchical-bundling circle{transition:r .2s ease,stroke-width .2s ease}.network-graph-visualization.hierarchical-bundling circle:hover{stroke-width:2.5}.wordcloud-visualization.error,.bubble-visualization.error,.heatmap-visualization.error,.bar-chart-visualization.error,.treemap-visualization.error,.ridgeline-visualization.error,.sankey-visualization.error,.wordcloud-visualization.empty,.bubble-visualization.empty,.heatmap-visualization.empty,.bar-chart-visualization.empty,.treemap-visualization.empty,.ridgeline-visualization.empty,.sankey-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:200px}.bubble-svg-wrapper{flex:1;width:100%;min-height:0;position:relative;overflow:visible}.bubble-svg-wrapper svg{width:100%;height:100%;max-width:100%;max-height:100%;scale:1.1;overflow:visible}.bubble-visualization image{transition:opacity .2s ease}.bubble-visualization circle{transition:stroke-width .2s ease,stroke .2s ease}.bubble-visualization .tooltip{filter:drop-shadow(0 2px 8px var(--color-shadow));pointer-events:none}.bubble-metadata{display:flex;gap:16px;justify-content:center;align-items:center;padding:8px 16px;flex-shrink:0;border-top:1px solid var(--color-border)}.bubble-metadata-item{display:flex;align-items:baseline;gap:6px}.bubble-metadata-label{font-size:9px;font-weight:500;color:var(--color-text-secondary);letter-spacing:.5px}.bubble-metadata-comparison{font-size:12px;font-weight:400;color:var(--color-glow-anisota)}.bubble-metadata-value{font-size:14px;font-weight:600;color:var(--color-text)}.heatmap-description,.treemap-description{text-align:center;font-size:12px;color:var(--color-text-secondary);margin-top:8px}.treemap-legend{display:flex;flex-wrap:wrap;gap:12px;padding:12px 16px;background:var(--color-background-secondary);border-top:1px solid var(--color-border);justify-content:center;font-size:11px}.treemap-legend-item{display:flex;align-items:center;gap:6px}.treemap-legend-color{width:14px;height:14px;flex-shrink:0}.treemap-legend-item span{color:var(--color-text-secondary);font-weight:500}.multi-count-visualization{width:100%;height:100%;display:grid;gap:0;margin:0;padding:0}.multi-count-visualization.grid-1x2{grid-template-columns:repeat(2,1fr);grid-template-rows:1fr}.multi-count-visualization.grid-2x2{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.multi-count-visualization.grid-2x3{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr)}.multi-count-visualization.grid-3x2{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.multi-count-visualization.grid-3x3{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.multi-count-visualization.grid-auto{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-auto-rows:1fr}.multi-count-item{background:var(--color-card-background);padding:20px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:background .2s ease;position:relative;border:1px solid var(--color-border);margin:-1px 0 0 -1px;min-height:0}.multi-count-item:hover{background:var(--color-background-secondary);z-index:1}.multi-count-item.dimmed{opacity:.3;pointer-events:none}.multi-count-item.dimmed .multi-count-value,.multi-count-item.dimmed .multi-count-label,.multi-count-item.dimmed .multi-count-description{color:var(--color-text-muted)}.multi-count-item.multicount-placeholder{opacity:.4;pointer-events:none}.multi-count-item.multicount-placeholder .multicount-value,.multi-count-item.multicount-placeholder .multicount-label{color:var(--color-text-muted)}.multi-count-value{font-size:32px;font-weight:700;color:var(--color-text);margin-bottom:6px;line-height:1}.multi-count-label{font-size:13px;font-weight:500;color:var(--color-text-secondary);margin-bottom:3px}.multi-count-description{font-size:11px;color:var(--color-text-muted);margin-top:4px;display:none}.multi-count-comparison-line{font-size:10px;color:var(--color-glow-anisota);margin-top:6px;font-weight:500;letter-spacing:.02em}.multi-count-comparison{margin-top:8px;width:100%}.multi-count-dot-plot{margin-top:8px;padding:0 4px;width:100%}.multi-count-visualization.animating .multi-count-value{animation:pulse .3s ease}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.multi-count-visualization.error,.multi-count-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:200px;background:transparent}.multi-count-error-message,.multi-count-empty-message{text-align:center;color:var(--color-text-secondary);font-size:14px;padding:40px 20px}.multi-count-error-message{color:var(--color-error)}.settings-section .harvest-card{padding:0}.placeholder-visualization{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;min-height:200px}.placeholder-message{font-size:24px;font-weight:600;color:var(--color-text-muted);margin-bottom:12px;letter-spacing:.05em}.placeholder-description{font-size:14px;color:var(--color-text-secondary);line-height:1.5;max-width:400px}@media (max-width: 768px){.harvest-section-title{font-size:24px}.wordcloud-visualization{padding:20px 0}.count-value{font-size:36px}.harvest-card-header{padding:12px}.card-controls{flex-direction:column;align-items:flex-start}.multi-count-value{font-size:28px}.multi-count-label{font-size:12px}.multi-count-description{font-size:10px}.multi-count-item{padding:16px 12px}.multi-count-visualization.grid-2x3,.multi-count-visualization.grid-3x3{grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr}.list-container.list-container-emoji{grid-template-columns:repeat(3,1fr);gap:12px;padding:12px}.list-container.list-container-grid{grid-template-columns:repeat(2,1fr)}.list-item-emoji-icon{font-size:28px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",sans-serif;font-variant-emoji:emoji}.list-item-emoji-count{font-size:12px}.list-metadata{padding:4px 8px;gap:8px}.list-metadata-item{gap:3px}.list-metadata-label{font-size:8px;letter-spacing:.3px}.list-metadata-value{font-size:10px}.list-metadata-comparison{font-size:9px}.harvest-list-item-breakdown{font-size:.6rem;gap:3px}.bubble-metadata{padding:4px 8px;gap:8px}.bubble-metadata-item{gap:3px}.bubble-metadata-label{font-size:8px;letter-spacing:.3px}.bubble-metadata-value{font-size:10px}.bubble-metadata-comparison{display:none}.bubble-visualization,.bubble-svg-wrapper{overflow:visible}.bubble-svg-wrapper svg{display:block}}.pie-chart-visualization{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;overflow:hidden}.pie-chart-visualization.empty,.pie-chart-visualization.error{display:flex;align-items:center;justify-content:center;padding:40px}.pie-chart-empty-message,.pie-chart-error-message{color:var(--color-text-secondary);font-size:14px;text-align:center}.pie-chart-svg{width:100%;height:100%;display:block}.pie-chart-svg .center-text text{font-family:var(--font-family-base)}.pie-chart-tooltip{position:absolute;top:16px;left:16px;pointer-events:none;background:var(--color-card-background);border:1px solid var(--color-border);padding:8px 12px;z-index:1000;box-shadow:0 4px 12px var(--color-shadow)}.pie-chart-tooltip-label{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:4px}.pie-chart-tooltip-value{font-size:12px;color:var(--color-text-secondary)}.engagement-timeline-tooltip{position:absolute;top:16px;left:16px;pointer-events:none;background:var(--color-card-background);border:1px solid var(--color-border);padding:8px 12px;z-index:1000;box-shadow:0 4px 12px var(--color-shadow);font-family:var(--font-family-base);font-size:12px;color:var(--color-text)}@media (max-width: 768px){.pie-chart-tooltip{font-size:12px;padding:6px 10px}.pie-chart-tooltip-label{font-size:12px}.pie-chart-tooltip-value{font-size:11px}}.calendar-heatmap-tooltip{position:absolute;top:16px;left:16px;pointer-events:none;background:var(--color-card-background);border:1px solid var(--color-border);padding:8px 12px;z-index:1000;box-shadow:0 4px 12px var(--color-shadow);font-family:var(--font-family-base);font-size:12px;color:var(--color-text)}.calendar-tooltip-date{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:4px}.calendar-tooltip-value{font-size:12px;color:var(--color-text-secondary)}@media (max-width: 768px){.calendar-heatmap-tooltip{font-size:12px;padding:6px 10px}.calendar-tooltip-date{font-size:12px}.calendar-tooltip-value{font-size:11px}}.ridgeline-visualization{position:relative;width:100%;height:auto;min-height:250px}.ridgeline-visualization svg{width:100%;height:auto;display:block}.ridgeline-visualization .domain{stroke:var(--color-text-muted);stroke-width:1px}.ridgeline-visualization .tick line{stroke:var(--color-text-muted);stroke-opacity:.3}.ridgeline-visualization .tick text{font-family:var(--font-family-base);fill:var(--color-text-secondary)}.ridgeline-visualization path{transition:opacity .2s ease,fill-opacity .2s ease}.ridgeline-visualization path:hover{opacity:.9;filter:brightness(1.1)}.ridgeline-visualization.loading{display:flex;align-items:center;justify-content:center}.progress-ring-visualization{width:100%;height:100%;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.progress-ring-visualization svg{flex:1;max-width:100%;max-height:100%;min-height:200px}.progress-ring-visualization.error,.progress-ring-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:300px}.progress-ring-error-message,.progress-ring-empty-message{color:var(--color-text-secondary);font-size:14px;text-align:center}.progress-ring-error-message{color:var(--color-error)}.scatterplot-visualization{position:relative;width:100%;height:100%;min-height:300px;display:flex;flex-direction:column;overflow:hidden}.scatterplot-visualization svg{flex:1;width:100%;min-height:0}.scatterplot-visualization .x-axis,.scatterplot-visualization .y-axis{font-family:var(--font-family-base)}.scatterplot-visualization .x-axis text,.scatterplot-visualization .y-axis text{fill:var(--color-text-secondary);font-size:11px}.scatterplot-visualization .x-axis line,.scatterplot-visualization .y-axis line{stroke:var(--color-border)}.scatterplot-stats{display:flex;gap:20px;padding:10px 20px;background:var(--color-background-secondary);border-top:1px solid var(--color-border);font-size:12px;justify-content:center;flex-shrink:0}.scatterplot-stat{display:flex;gap:6px;align-items:center}.scatterplot-stat-label{color:var(--color-text-secondary);font-weight:500}.scatterplot-stat-value{color:var(--color-text);font-weight:600}.scatterplot-stat-comparison{color:var(--color-accent);font-weight:500;font-size:12px}.scatterplot-visualization.error,.scatterplot-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:300px}.scatterplot-error-message,.scatterplot-empty-message{color:var(--color-text-secondary);font-size:14px;text-align:center}.stacked-bar-visualization{width:100%;height:100%}.calendar-heatmap-visualization{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.calendar-heatmap-visualization svg{max-width:100%;max-height:100%;margin-bottom:1rem}.calendar-heatmap-visualization .month-label{font-family:var(--font-family-base)}.calendar-heatmap-visualization .day{stroke:none;stroke-width:0}.calendar-heatmap-visualization .day:hover{stroke:var(--color-text);stroke-width:1.5;opacity:.9}.calendar-heatmap-visualization.error,.calendar-heatmap-visualization.empty{display:flex;align-items:center;justify-content:center;height:100%}.calendar-heatmap-error-message,.calendar-heatmap-empty-message{color:var(--color-text-secondary);font-size:14px;text-align:center}.stacked-bar-visualization{width:100%;height:100%;display:flex;flex-direction:column}.stacked-bar-visualization svg{width:100%;height:auto}.stacked-bar-visualization.error,.stacked-bar-visualization.empty{display:flex;align-items:center;justify-content:center;min-height:300px}.stacked-bar-error-message,.stacked-bar-empty-message{color:var(--color-text-secondary);font-size:14px;text-align:center}.stacked-bar-tooltip{position:absolute;top:16px;left:16px;pointer-events:none;background:var(--color-card-background);border:1px solid var(--color-border);padding:8px 12px;z-index:1000;box-shadow:0 4px 12px var(--color-shadow);font-family:var(--font-family-base);font-size:13px;line-height:1.4;max-width:220px}.stacked-bar-tooltip .tooltip-stat-line{display:flex;justify-content:space-between;gap:12px;margin-top:4px;color:var(--color-text-secondary)}.stacked-bar-tooltip .tooltip-stat-value{font-weight:600;color:var(--color-text)}.rarity-legend-visualization{width:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto}.rarity-legend-header{margin-bottom:24px}.rarity-legend-title{font-size:18px;font-weight:600;color:var(--color-text);margin:0 0 12px}.rarity-legend-description{font-size:13px;line-height:1.5;color:var(--color-text-secondary);margin:0}.rarity-legend-list{display:flex;flex-direction:column}.rarity-legend-item{display:flex;align-items:center;gap:16px;padding:12px;background:var(--color-background-secondary);border:1px solid var(--color-border);transition:background .2s ease}.rarity-legend-item:hover{background:var(--color-card-background-hover)}.rarity-legend-icon-container{display:flex;align-items:center;justify-content:center;min-width:40px;flex-shrink:0}.rarity-legend-content{flex:1;min-width:0}.rarity-legend-name{font-size:15px;font-weight:600;color:var(--color-text);margin-bottom:4px}.rarity-legend-details{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-secondary);flex-wrap:wrap}.rarity-legend-range{font-weight:500}.rarity-legend-separator{opacity:.5}.rarity-legend-desc{font-style:italic}.rarity-legend-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--color-border)}.rarity-legend-note{font-size:12px;color:var(--color-text-muted);margin:0;text-align:center;font-style:italic}.harvest-minigame-card-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:20px}.harvest-minigame-card-stat{display:flex;flex-direction:column;align-items:center;padding:20px 16px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.harvest-minigame-card-stat-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px;text-align:center}.harvest-minigame-card-stat-value{font-size:24px;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.harvest-minigame-card-timing{display:flex;justify-content:center;gap:32px;padding:20px;border-top:1px solid var(--color-border)}.harvest-minigame-card-timing-item{display:flex;flex-direction:column;align-items:center}.harvest-minigame-card-timing-label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.harvest-minigame-card-timing-value{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.harvest-minigame-card-timing-perfect{color:var(--color-glow-anisota)}.harvest-minigame-card-timing-early{color:var(--color-text-secondary)}.harvest-minigame-card-timing-late{color:var(--color-text-muted)}.harvest-minigame-card-timing-missed{color:var(--color-error)}.harvest-minigame-card-score-section:not(:first-child){padding-top:16px;border-top:1px solid var(--color-border)}.harvest-minigame-card-subsection-title{font-size:14px;font-weight:600;color:var(--color-text);padding:20px}.harvest-minigame-card-timing-explanation{font-size:13px;color:var(--color-text-secondary);margin:0;padding:12px;background:var(--color-background-secondary);border:1px solid var(--color-border);line-height:1.5}.harvest-minigame-card-timing-stats{display:flex;justify-content:space-around;gap:16px;padding:16px 20px;background:var(--color-background-secondary);border:1px solid var(--color-border)}.harvest-minigame-card-timing-stat{display:flex;flex-direction:column;align-items:center;gap:6px}.harvest-minigame-card-timing-stat-count{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.harvest-minigame-card-timing-stat-label{font-size:11px;color:var(--color-text-secondary);text-align:center}.harvest-list-item-total{background:var(--color-background-secondary);border-top:2px solid var(--color-border);font-weight:600}.harvest-list-item-total .harvest-list-item-name{font-weight:600;font-size:15px}.harvest-list-item-total .harvest-list-item-value{font-size:18px;font-weight:700}@media (max-width: 768px){.calendar-heatmap-visualization{padding:16px 0;overflow-x:hidden;justify-content:center}.harvest-minigame-card-stats-grid{grid-template-columns:1fr;gap:10px;padding:16px}.harvest-minigame-card-stat{padding:16px 12px}.harvest-minigame-card-stat-value{font-size:20px}.harvest-minigame-card-timing{gap:16px;padding:16px}.harvest-minigame-card-timing-value{font-size:18px}.harvest-minigame-card-timing-stats{flex-direction:column;gap:12px;padding:12px 16px;margin:0 16px}.harvest-minigame-card-timing-stat-count{font-size:18px}.harvest-minigame-card-timing-explanation{margin:0 16px 12px}.harvest-minigame-card-subsection-title{padding:0 16px}}.cred-gauge-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:280px;margin:0 auto}.cred-gauge-container svg{width:100%;height:auto}.cred-score-timestamp{font-size:11px;color:var(--color-text-muted);text-align:center;margin-top:8px;opacity:.8}.cred-breakdown{display:flex;flex-direction:column;gap:32px;padding:20px}.cred-score-section{display:flex;flex-direction:column;gap:16px}.cred-score-description{text-align:center;font-size:.8rem;padding:0 1rem}.cred-score-comparison{text-align:center;font-size:.9rem;font-weight:600;color:var(--color-glow-anisota);margin-top:-10px;margin-bottom:12px;letter-spacing:.02em}.cred-section-title{font-size:14px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.cred-score-item{display:flex;flex-direction:column;gap:8px}.cred-score-label{font-size:14px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.cred-score-bar{height:24px;background:var(--color-border-dark);position:relative;overflow:hidden;border-radius:4px}.cred-score-fill{height:100%;transition:width .8s ease-out,background-color .3s ease;border-radius:4px;opacity:.9}.cred-score-value{font-size:24px;font-weight:600;color:var(--color-text)}.cred-category-list{display:flex;flex-direction:column;gap:8px}.cred-category-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:4px;font-size:13px}.cred-category-item span:first-child{color:var(--color-text-secondary)}.cred-category-item span:last-child{color:var(--color-text);font-weight:600}@media (max-width: 768px){.cred-gauge-container{padding:20px 10px;max-width:180px}.cred-score-comparison{font-size:.75rem;margin-top:-5px;margin-bottom:8px}.cred-score-description{font-size:.7rem;padding:0 .5rem}.cred-score-timestamp{font-size:9px;margin-top:6px}}.alt-text-card{background:var(--color-card-background);border:1px solid var(--color-border);padding:24px;transition:box-shadow .2s ease}.alt-text-card:hover{box-shadow:0 4px 24px var(--color-shadow)}.alt-text-card-body{display:flex;flex-direction:column;gap:20px}.alt-text-score-main{text-align:center;padding:20px 0}.alt-text-score-value{font-size:56px;font-weight:700;color:var(--color-link);line-height:1}.alt-text-score-label{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.alt-text-progress-bar{width:100%;height:8px;background:var(--color-border);position:relative;overflow:hidden}.alt-text-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-link),var(--color-link-hover));transition:width .5s ease}.alt-text-progress-bar-small{width:100%;height:4px;background:var(--color-border);position:relative;overflow:hidden;margin-top:8px}.alt-text-progress-bar-small .alt-text-progress-fill{height:100%}.alt-text-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;padding:16px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.alt-text-stat-item{text-align:center}.alt-text-stat-value{font-size:24px;font-weight:700;color:var(--color-text);line-height:1}.alt-text-stat-label{font-size:12px;color:var(--color-text-secondary);margin-top:6px}.alt-text-quality-indicator{text-align:center;padding:12px;background:var(--color-background-secondary);font-size:14px;font-weight:600}.alt-text-quality-indicator .quality-excellent{color:var(--color-success)}.alt-text-quality-indicator .quality-good{color:var(--color-link)}.alt-text-quality-indicator .quality-fair{color:var(--color-warning)}.alt-text-quality-indicator .quality-poor{color:var(--color-error)}.alt-text-quality-indicator .quality-none{color:var(--color-text-secondary)}.alt-text-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:16px}.alt-text-breakdown-item{background:var(--color-background-secondary);padding:16px;border:1px solid var(--color-border)}.breakdown-type-label{font-size:14px;color:var(--color-text-secondary);margin-bottom:8px;font-weight:600}.breakdown-score{font-size:32px;font-weight:700;color:var(--color-link);line-height:1;margin-bottom:4px}.breakdown-stats{font-size:12px;color:var(--color-text-secondary);margin-bottom:12px}.alt-text-tips{display:flex;flex-direction:column;gap:16px;margin-top:16px}.alt-text-tip{display:flex;gap:12px;align-items:flex-start;padding:12px;background:var(--color-card-background);border-left:3px solid var(--color-link)}.alt-text-tip svg{flex-shrink:0;color:var(--color-link);margin-top:2px}.alt-text-tip div{font-size:14px;line-height:1.5;color:var(--color-text)}.alt-text-tip strong{color:var(--color-text);font-weight:600}@media (max-width: 768px){.alt-text-card{padding:16px}.alt-text-score-value{font-size:42px}.alt-text-stats-grid{grid-template-columns:repeat(2,1fr)}.alt-text-breakdown-grid{grid-template-columns:1fr}.breakdown-score{font-size:24px}}.inkblot-modetabs{display:flex;gap:.5rem;margin:0 0 1rem}.inkblot-modetab{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.inkblot-modetab:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.inkblot-modetab.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.inkblot-modetab svg{color:var(--color-text-muted)}.inkblot-modetab.on svg{color:var(--color-glow-anisota)}.inkblot-stage{display:flex;justify-content:center;margin:.5rem 0 1rem}.inkblot-canvas{position:relative;width:100%;max-width:420px;aspect-ratio:1 / 1;background:var(--color-card-background);border:1px solid var(--color-border-light);box-shadow:0 1px 0 var(--color-border-light),inset 0 0 60px #00000008;overflow:hidden}.inkblot-canvas-el{display:block;width:100%;height:100%}.inkblot-canvas-el.is-paint{touch-action:none}.inkblot-fold{position:absolute;pointer-events:none;opacity:.5}.inkblot-fold-v{top:0;bottom:0;left:50%;width:1px;background:repeating-linear-gradient(to bottom,var(--color-border) 0,var(--color-border) 4px,transparent 4px,transparent 9px);transform:translate(-.5px)}.inkblot-fold-h{left:0;right:0;top:50%;height:1px;background:repeating-linear-gradient(to right,var(--color-border) 0,var(--color-border) 4px,transparent 4px,transparent 9px);transform:translateY(-.5px)}.inkblot-foldshade{position:absolute;pointer-events:none;background:var(--color-overlay, rgba(0, 0, 0, .28))}.inkblot-foldshade.region-right{top:0;bottom:0;left:50%;right:0;box-shadow:inset 6px 0 14px -6px #0006}.inkblot-foldshade.region-bottom{left:0;right:0;top:50%;bottom:0;box-shadow:inset 0 6px 14px -6px #0006}.inkblot-foldshade.region-bottomleft{left:0;right:50%;top:50%;bottom:0}.inkblot-fold-crease{position:absolute;background:var(--color-border);opacity:.8;pointer-events:none}.inkblot-fold-crease.crease-v{top:0;bottom:0;left:50%;width:1px;transform:translate(-.5px)}.inkblot-fold-crease.crease-h{left:0;right:0;top:50%;height:1px;transform:translateY(-.5px)}.inkblot-symmetry{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}.inkblot-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;align-items:center;margin-bottom:.75rem}.inkblot-iconbtn{padding:.5rem;justify-content:center;color:var(--color-text)}.inkblot-iconbtn svg{display:block}.inkblot-reroll,.inkblot-foldbtn{color:var(--color-text)}.inkblot-foldbtn:not(:disabled) svg{color:var(--color-glow-anisota)}.inkblot-fold-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.6rem}.inkblot-fold-hint{color:var(--color-text-muted);font-size:var(--font-size-0-8);font-style:italic}.inkblot-save{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.25rem}.inkblot-input{flex:1 1 160px;min-width:0;padding:.45rem .6rem;background:var(--color-background-tertiary);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9)}.inkblot-input::placeholder{color:var(--color-text-muted)}.inkblot-input:focus{outline:none;border-color:var(--color-glow-anisota)}.inkblot-save-btn{color:var(--color-text)}.inkblot-save-error{color:var(--color-glow-anisota);font-size:var(--font-size-0-8)}.inkblot-save-hint{color:var(--color-text-muted);font-size:var(--font-size-0-8)}.inkblot-lab .lab-palette-swatch{display:inline-flex}.inkblot-gallery{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--color-border-light)}.inkblot-gallery-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.inkblot-refresh{color:var(--color-text-muted)}.inkblot-gallery-empty{color:var(--color-text-muted);font-size:var(--font-size-0-9);padding:1rem 0}.inkblot-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.85rem}.inkblot-card{display:flex;flex-direction:column;gap:.45rem;padding:.6rem;background:var(--color-card-background);border:1px solid var(--color-border-light);cursor:pointer;text-align:left;transition:background .2s ease,border-color .2s ease}.inkblot-card:hover{background:var(--color-card-background-hover);border-color:var(--color-border)}.inkblot-card-thumb{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;background:var(--color-background-tertiary);overflow:hidden}.inkblot-card-thumb img{width:100%;height:100%;object-fit:contain}.inkblot-card-noimg{color:var(--color-text-muted)}.inkblot-card-name{color:var(--color-text-secondary);font-size:var(--font-size-0-8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inkblot-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0000008c}.inkblot-modal-card{position:relative;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;padding:1.5rem;background:var(--color-card-background);border:1px solid var(--color-border)}.inkblot-modal-close{position:absolute;top:.75rem;right:.75rem;display:inline-flex;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;transition:color .2s ease}.inkblot-modal-close:hover{color:var(--color-text)}.inkblot-modal-thumb{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;max-height:280px;margin:0 auto .75rem;background:var(--color-background-tertiary);border:1px solid var(--color-border-light);overflow:hidden}.inkblot-modal-thumb img{width:100%;height:100%;object-fit:contain}.inkblot-modal-name{color:var(--color-text);font-size:var(--font-size-1-1);text-align:center;margin-bottom:1rem}.inkblot-perceive{display:flex;flex-direction:column;gap:.6rem}.inkblot-perceive-label{color:var(--color-text);font-size:var(--font-size-1-0)}.inkblot-perceive-input{width:100%;resize:vertical;padding:.6rem;background:var(--color-background-tertiary);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);line-height:1.5}.inkblot-perceive-input::placeholder{color:var(--color-text-muted)}.inkblot-perceive-input:focus{outline:none;border-color:var(--color-glow-anisota)}.inkblot-perceive-row{display:flex;align-items:center;justify-content:space-between}.inkblot-perceive-count{color:var(--color-text-muted);font-size:var(--font-size-0-7)}.inkblot-perceive-submit{color:var(--color-text)}.inkblot-perceive-error{color:var(--color-glow-anisota);font-size:var(--font-size-0-8)}.inkblot-perceive-hint{color:var(--color-text-muted);font-size:var(--font-size-0-8)}.inkblot-reveal{display:flex;flex-direction:column;gap:.75rem}.inkblot-reveal-head{display:flex;align-items:center;gap:.4rem;color:var(--color-text-secondary);font-size:var(--font-size-0-9)}.inkblot-reveal-loading,.inkblot-reveal-empty{display:flex;align-items:center;gap:.4rem;color:var(--color-text-muted);font-size:var(--font-size-0-9)}.inkblot-reveal-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.inkblot-perception{display:flex;flex-direction:column;gap:.3rem;padding:.65rem .75rem;background:var(--color-background-tertiary);border:1px solid var(--color-border-light)}.inkblot-perception-author{display:flex;align-items:center;gap:.4rem}.inkblot-perception-avatar{width:18px;height:18px;border-radius:50%;object-fit:cover}.inkblot-perception-handle{color:var(--color-text-muted);font-size:var(--font-size-0-7)}.inkblot-perception-text{color:var(--color-text);font-size:var(--font-size-0-9);line-height:1.5;white-space:pre-wrap;word-break:break-word}.inkblot-spin{animation:inkblot-spin .9s linear infinite}@keyframes inkblot-spin{to{transform:rotate(360deg)}}@media (max-width: 480px){.inkblot-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.inkblot-lab .settings-description{margin-bottom:1.75rem}.carving-viewtabs{display:flex;gap:.5rem;margin:.5rem 0 1rem}.carving-viewtab{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.carving-viewtab:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.carving-viewtab.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.carving-viewtab.on svg{color:var(--color-glow-anisota)}.carving-viewtab svg{color:var(--color-text-muted)}.carving-stage{position:relative;width:100%;aspect-ratio:1 / 1;box-sizing:border-box;border:1px solid var(--color-border);background:#b9a888;overflow:hidden;touch-action:none;border-radius:0;box-shadow:inset 0 0 40px #281c1259;animation:wing-rise .5s ease-out}.carving-block,.carving-print{width:100%;height:100%;display:block}.carving-block{cursor:crosshair}.carving-mirror-line{position:absolute;top:0;bottom:0;left:50%;width:1px;background:repeating-linear-gradient(to bottom,rgba(245,239,226,.35) 0,rgba(245,239,226,.35) 6px,transparent 6px,transparent 12px);pointer-events:none}.carving-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.85rem 0 1.25rem}.carving-actions .fidget-btn:disabled{opacity:.45;cursor:not-allowed}.carving-toggle-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.carving-swatches{display:flex;flex-wrap:wrap;gap:.6rem}.carving-swatch{width:34px;height:34px;border-radius:50%;border:2px solid var(--color-border);cursor:pointer;padding:0;transition:transform .15s ease,border-color .2s ease,box-shadow .2s ease}.carving-swatch:hover{transform:scale(1.08);border-color:var(--color-border-light)}.carving-swatch.on{border-color:var(--color-glow-anisota);box-shadow:0 0 0 2px var(--color-card-background),0 0 14px var(--color-glow-anisota)}.carving-save{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.carving-save-name{flex:1 1 14rem;min-width:0;padding:.5rem .7rem;background:var(--color-background-tertiary);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);outline:none;transition:border-color .2s ease}.carving-save-name:focus{border-color:var(--color-glow-anisota)}.carving-save-name::placeholder{color:var(--color-text-muted)}.carving-save-btn{flex:0 0 auto}.carving-save-btn:disabled{opacity:.5;cursor:not-allowed}.carving-save-error{flex-basis:100%;color:#c2603f;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7)}.carving-save-hint{color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-0-7)}.carving-spin{animation:carving-spin .9s linear infinite;color:var(--color-text-muted)}@keyframes carving-spin{to{transform:rotate(360deg)}}.carving-library{border:1px solid var(--color-border);background:var(--color-card-background)}.carving-library-head{display:flex;align-items:center;gap:.55rem;width:100%;padding:.7rem .85rem;background:transparent;border:none;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1);cursor:pointer}.carving-library-head svg{color:var(--color-text-muted)}.carving-library-count{margin-left:.1rem;padding:.05rem .45rem;border:1px solid var(--color-border);border-radius:0;color:var(--color-text-secondary);font-size:var(--font-size-0-7)}.carving-library-chev{margin-left:auto;transition:transform .25s ease}.carving-library-chev.open{transform:rotate(180deg)}.carving-library-body{padding:.5rem .85rem .95rem;border-top:1px solid var(--color-border-light)}.carving-library-empty{padding:1rem .25rem;color:var(--color-text-muted);font-size:var(--font-size-0-9);line-height:1.5}.carving-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.85rem;margin-top:.4rem}.carving-card{display:flex;flex-direction:column;border:1px solid var(--color-border);background:var(--color-background-tertiary)}.carving-card-thumb{aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;overflow:hidden}.carving-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.carving-card-thumb span{color:var(--color-text-muted)}.carving-card-name{padding:.4rem .5rem .1rem;color:var(--color-text);font-size:var(--font-size-0-8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.carving-card-actions{display:flex;gap:.3rem;padding:.35rem .5rem .5rem}.carving-card-btn{display:inline-flex;align-items:center;justify-content:center;padding:.35rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.carving-card-btn:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.carving-card-btn.danger:hover{color:#c2603f;border-color:#c2603f}@media (prefers-reduced-motion: reduce){.carving-stage,.carving-spin{animation:none}}.carving-lab .settings-description{margin-bottom:1.75rem}.nightsky-page{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;z-index:9999;background:#05060f;overflow:hidden;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;animation:nightsky-in .48s ease-out}.nightsky-page.look-around{cursor:grab;touch-action:none}.nightsky-page.look-around:active{cursor:grabbing}@keyframes nightsky-in{0%{opacity:0}to{opacity:1}}.nightsky-immersive-canvas{display:block;width:100%;height:100%}.nightsky-hud{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.6rem;padding:14px max(14px,env(safe-area-inset-right,0px)) max(14px,calc(env(safe-area-inset-bottom,0px) + 12px)) max(14px,env(safe-area-inset-left,0px));pointer-events:none;opacity:0;transform:translateY(12px);transition:opacity .46s ease,transform .46s ease}.nightsky-page.hud-on .nightsky-hud{opacity:1;transform:translateY(0)}.nightsky-page.hud-on .nightsky-hud .nightsky-exit,.nightsky-page.hud-on .nightsky-hud .nightsky-hud-controls{pointer-events:auto}.nightsky-exit{display:inline-flex;align-items:center;gap:.4em;padding:.5em .85em;font-family:var(--font-family-base);font-size:var(--font-size-0-9);letter-spacing:.02em;color:#e8ecffeb;background:#0e102280;border:1px solid rgba(150,160,220,.25);border-radius:0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .12s ease}.nightsky-exit:hover{background:#1c203cb3;border-color:#b4beff73}.nightsky-exit:active{transform:scale(.96)}.nightsky-hud-controls{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem;padding:.42em .7em;background:#0e10226b;border:1px solid rgba(150,160,220,.18);border-radius:0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.nightsky-toggle{display:inline-flex;align-items:center;gap:.35em;padding:.4em .7em;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.03em;text-transform:lowercase;color:#d8def8c7;background:#14182e66;border:1px solid rgba(150,160,220,.2);border-radius:0;cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease,transform .12s ease}.nightsky-toggle:hover{border-color:#b4beff73}.nightsky-toggle:active{transform:scale(.95)}.nightsky-toggle.is-on{color:#f0f3fff5;background:#46569680;border-color:#b4c3ff99}.nightsky-toggle svg{opacity:.85}.nightsky-activity{display:inline-flex;align-items:center;gap:.45em;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.04em;text-transform:lowercase;color:#c8d0f5b3}.nightsky-activity input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:92px;height:14px;background:transparent;cursor:pointer}.nightsky-activity input[type=range]::-webkit-slider-runnable-track{height:3px;background:#96a0dc59;border-radius:0}.nightsky-activity input[type=range]::-moz-range-track{height:3px;background:#96a0dc59;border-radius:0}.nightsky-activity input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:7px;height:14px;margin-top:-5.5px;background:#d8def8f2;border:0;border-radius:0}.nightsky-activity input[type=range]::-moz-range-thumb{width:7px;height:14px;background:#d8def8f2;border:0;border-radius:0}.nightsky-make{display:inline-flex;align-items:center;gap:.35em;padding:.4em .7em;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.03em;color:#e8ecffe6;background:#1c203c80;border:1px solid rgba(150,160,220,.22);border-radius:0;cursor:pointer;transition:border-color .16s ease,transform .12s ease}.nightsky-make:hover{border-color:#b4beff80}.nightsky-make:active{transform:scale(.95)}.nightsky-corner{position:absolute;top:max(16px,calc(env(safe-area-inset-top,0px) + 10px));bottom:auto;display:flex;flex-direction:column;gap:2px;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.03em;color:#ced6f899;pointer-events:none;max-width:42vw;transition:opacity .3s ease,transform .36s ease}.nightsky-corner-left{left:max(16px,env(safe-area-inset-left,0px));align-items:flex-start}.nightsky-corner-right{right:max(16px,env(safe-area-inset-right,0px));align-items:flex-end;text-align:right}.nightsky-corner-total{display:inline-flex;align-items:center;gap:.4em;color:#e0e6ffd1}.nightsky-corner-total svg{color:#bec8ffbf}.nightsky-corner-item{color:#c8d0f599}.nightsky-corner-count{font-variant-numeric:tabular-nums;color:#e8ecffe6}.nightsky-corner-dim{color:#aab4dc73;font-style:italic}.nightsky-immersive-caption{position:absolute;left:50%;bottom:max(64px,calc(env(safe-area-inset-bottom,0px) + 56px));transform:translate(-50%);padding:.4em 1.1em;font-family:var(--font-family-base);font-size:var(--font-size-1, 1.05rem);letter-spacing:.03em;color:#ecf0fff0;text-shadow:0 1px 12px rgba(20,30,80,.8);pointer-events:none;white-space:nowrap;animation:nightsky-imm-caption 3.2s ease-out forwards}@keyframes nightsky-imm-caption{0%{opacity:0;transform:translate(-50%) translateY(10px)}12%{opacity:1;transform:translate(-50%) translateY(0)}82%{opacity:1}to{opacity:0}}.nightsky-corner,.nightsky-corner-total,.nightsky-corner-item,.nightsky-corner-count,.nightsky-corner-dim,.nightsky-immersive-caption,.nightsky-exit,.nightsky-make,.nightsky-hud-controls,.nightsky-toggle,.nightsky-activity{transition-property:color,background,background-color,border-color,opacity,transform;transition-duration:.7s;transition-timing-function:ease}.nightsky-page.daylight .nightsky-corner,.nightsky-page.daylight .nightsky-corner-item{color:#1c2230b8}.nightsky-page.daylight .nightsky-corner-total,.nightsky-page.daylight .nightsky-corner-count{color:#10141eeb}.nightsky-page.daylight .nightsky-corner-total svg{color:#283250d1}.nightsky-page.daylight .nightsky-corner-dim{color:#2832468c}.nightsky-page.daylight .nightsky-immersive-caption{color:#121824f2;text-shadow:0 1px 12px rgba(255,255,255,.55)}.nightsky-page.daylight .nightsky-exit,.nightsky-page.daylight .nightsky-make{color:#141a26eb;background:#fafcff80;border-color:#28375a52}.nightsky-page.daylight .nightsky-hud-controls{background:#fafcff6b;border-color:#28375a40}.nightsky-page.daylight .nightsky-toggle{color:#1a202ed6;background:#f5f8ff6b;border-color:#28375a47}.nightsky-page.daylight .nightsky-toggle.is-on{color:#0e121cf5;background:#96b4f599;border-color:#3c5aa08c}.nightsky-page.daylight .nightsky-activity{color:#263044d1}.nightsky-page.daylight .nightsky-activity input[type=range]::-webkit-slider-runnable-track{background:#28375a59}.nightsky-page.daylight .nightsky-activity input[type=range]::-moz-range-track{background:#28375a59}.nightsky-page.daylight .nightsky-activity input[type=range]::-webkit-slider-thumb{background:#1c2438f2}.nightsky-page.daylight .nightsky-activity input[type=range]::-moz-range-thumb{background:#1c2438f2}.nightsky-guide-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;background:#0006;pointer-events:auto;z-index:3;animation:nightsky-guide-fade .2s ease-out}@keyframes nightsky-guide-fade{0%{opacity:0}to{opacity:1}}.nightsky-guide{width:min(440px,100%);max-height:min(72vh,580px);display:flex;flex-direction:column;background:#0a0c1af0;border:1px solid rgba(150,160,220,.28);border-radius:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:nightsky-guide-rise .26s ease-out}@keyframes nightsky-guide-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.nightsky-guide-head{display:flex;align-items:center;justify-content:space-between;padding:.7em .9em;font-family:var(--font-family-base);font-size:var(--font-size-1, 1.05rem);letter-spacing:.04em;text-transform:lowercase;color:#e8ecffeb;border-bottom:1px solid rgba(150,160,220,.18)}.nightsky-guide-close{display:inline-flex;padding:.25em;color:#ced6f8b3;background:transparent;border:0;border-radius:0;cursor:pointer}.nightsky-guide-close:hover{color:#e8ecfff2}.nightsky-guide-sub{padding:.5em .9em .3em;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.04em;text-transform:lowercase;color:#bec8ff99}.nightsky-guide-list{list-style:none;margin:0;padding:0 0 .4em;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.nightsky-guide-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name when" "hint count";gap:.1em .6em;padding:.55em .9em;border-top:1px solid rgba(150,160,220,.08)}.nightsky-guide-name{grid-area:name;font-family:var(--font-family-base);font-size:var(--font-size-0-9);letter-spacing:.02em;color:#e8ecffeb}.nightsky-guide-hint{grid-area:hint;font-family:var(--font-family-base);font-size:var(--font-size-0-7);font-style:italic;color:#bec8f08c}.nightsky-guide-when{grid-area:when;align-self:center;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.05em;text-transform:lowercase;color:#aab4dc80}.nightsky-guide-count{grid-area:count;align-self:center;justify-self:end;font-variant-numeric:tabular-nums;font-size:var(--font-size-0-9);color:#e8ecffe6}.nightsky-guide-item.unseen .nightsky-guide-name,.nightsky-guide-item.unseen .nightsky-guide-hint{color:#96a0c861;letter-spacing:.16em;font-style:normal}@media (prefers-reduced-motion: reduce){.nightsky-page{animation:none}.nightsky-immersive-caption{animation:nightsky-imm-caption-rm 3.2s linear forwards}@keyframes nightsky-imm-caption-rm{0%,90%{opacity:1}to{opacity:0}}}.petri-lab .settings-description{max-width:46ch;margin-bottom:1.75rem}.petri-stage{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:0 0 1.5rem}.petri-dish{position:relative;width:min(384px,86vw);aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;background:var(--color-card-background);box-shadow:0 14px 38px #2824183d,0 2px 6px #2824182e,inset 0 0 0 1px #ffffff59;touch-action:none;-webkit-user-select:none;user-select:none}.petri-canvas{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:50%;overflow:hidden}.petri-canvas canvas{display:block;width:100%!important;height:100%!important;border-radius:50%}.petri-dish-rim{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;pointer-events:none;box-shadow:inset 0 0 0 5px #ffffff1a,inset 0 0 0 6px #786e5029,inset 0 10px 28px #ffffff2e,inset 0 -16px 34px #3c34202e}.petri-dish-rim:after{content:"";position:absolute;top:8%;left:12%;width:46%;height:30%;border-radius:50%;background:radial-gradient(ellipse at 30% 30%,#ffffff73,#fff0);filter:blur(2px)}.petri-stage.micro .petri-dish{box-shadow:0 12px 36px #14181c66,inset 0 0 0 1px #fff3}.petri-eyepiece{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;pointer-events:none;box-shadow:inset 0 0 60px 30px #1216148c;background:radial-gradient(circle at 50% 50%,#0000 52%,#0e121080)}.petri-reticle{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.petri-reticle:before,.petri-reticle:after{content:"";position:absolute;background:#dcebdc47}.petri-reticle:before{left:50%;top:18%;bottom:18%;width:1px;transform:translate(-.5px)}.petri-reticle:after{top:50%;left:18%;right:18%;height:1px;transform:translateY(-.5px)}.petri-scalebar{position:absolute;left:16%;bottom:14%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;color:#dcebdc99;font-size:.6rem;letter-spacing:.05em}.petri-scalebar span{display:block;width:48px;height:2px;background:#dcebdc8c}.petri-scalebar:after{content:"50 µm"}.petri-ripple{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:2px solid currentColor;pointer-events:none;animation:petri-ripple .65s ease-out forwards}@keyframes petri-ripple{0%{transform:scale(.4);opacity:.8}to{transform:scale(3.4);opacity:0}}.petri-readout{display:flex;align-items:center;gap:.75rem;font-size:.78rem;color:var(--color-text-muted);letter-spacing:.02em}.petri-gen{font-variant-numeric:tabular-nums}.petri-incubating{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-accent)}.petri-spin{animation:petri-spin .9s linear infinite}@keyframes petri-spin{to{transform:rotate(360deg)}}.petri-rack{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.petri-dropper{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:0 .55rem;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:0;background:var(--color-card-background);color:var(--color-text-secondary);font-family:var(--font-family-base);cursor:pointer;text-align:left;transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}.petri-dropper:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light)}.petri-dropper.on{border-color:var(--drop);box-shadow:inset 0 0 0 1px var(--drop)}.petri-dropper-bulb{grid-row:1 / 3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#4a4630;background:var(--drop);box-shadow:inset 0 -4px 8px #0000001f,inset 0 3px 6px #fff6}.petri-dropper-name{font-size:.82rem;font-weight:600;color:var(--color-text)}.petri-dropper-blurb{font-size:.68rem;color:var(--color-text-muted)}.petri-color{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;font-size:.78rem;color:var(--color-text-secondary)}.petri-color-label{color:var(--color-text-secondary)}.petri-color-swatch{position:relative;width:28px;height:28px;border:1px solid var(--color-border);overflow:hidden;cursor:pointer;flex:0 0 auto}.petri-color-swatch input[type=color]{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;width:calc(100% + 8px);height:calc(100% + 8px);border:none;padding:0;background:none;cursor:pointer;opacity:0}.petri-color-hex{font-variant-numeric:tabular-nums;letter-spacing:.03em;color:var(--color-text-muted);font-size:.72rem}.petri-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem}.petri-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border:1px solid var(--color-border);border-radius:0;background:var(--color-card-background);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-8, .8rem);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.petri-btn svg{color:var(--color-text-muted)}.petri-btn:hover:not(:disabled){background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.petri-btn:disabled{opacity:.5;cursor:default}.petri-btn.danger:hover:not(:disabled){border-color:var(--color-error, #c47f7f);color:var(--color-error, #a85a5a)}.petri-btn.danger:hover:not(:disabled) svg{color:var(--color-error, #a85a5a)}.petri-save{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1.25rem 0 1rem}.petri-save-name{flex:1 1 180px;min-width:0;padding:.5rem .7rem;border:1px solid var(--color-input-border, var(--color-border));border-radius:0;background:var(--color-input-background, var(--color-card-background));color:var(--color-input-text, var(--color-text));font-family:var(--font-family-base);font-size:.85rem}.petri-save-name:focus{outline:none;border-color:var(--color-border-focus, var(--color-accent))}.petri-save-btn{flex:0 0 auto}.petri-save-error{font-size:.75rem;color:#a85a5a}.petri-save-hint{font-size:.72rem;color:var(--color-text-muted)}.petri-library{margin-top:.5rem;border-top:1px solid var(--color-border);padding-top:.75rem}.petri-library-head{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem 0;background:none;border:none;cursor:pointer;color:var(--color-text);font-size:.9rem}.petri-library-count{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .4rem;border-radius:0;background:var(--color-card-background-active, var(--color-card-background));font-size:.72rem}.petri-library-chev{margin-left:auto;transition:transform .18s ease}.petri-library-chev.open{transform:rotate(180deg)}.petri-library-body{padding-top:.5rem}.petri-library-empty{font-size:.82rem;color:var(--color-text-muted);padding:.5rem 0 .75rem}.petri-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.petri-card{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem;border:1px solid var(--color-border);border-radius:0;background:var(--color-card-background)}.petri-card-thumb{width:100%;aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;background:var(--color-card-background-active, var(--color-card-background));display:grid;place-items:center;box-shadow:inset 0 0 0 1px #786e502e}.petri-card-thumb img{width:100%;height:100%;object-fit:cover}.petri-card-name{font-size:.78rem;font-weight:600;color:var(--color-text);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.petri-card-meta{font-size:.66rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.petri-card-actions{display:flex;gap:.3rem;margin-top:.15rem}.petri-card-btn{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--color-border);border-radius:0;background:var(--color-card-background);color:var(--color-text-secondary);cursor:pointer;transition:background .25s ease,border-color .25s ease,color .25s ease}.petri-card-btn:hover{background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.petri-card-btn.danger:hover{border-color:var(--color-error, #c47f7f);color:var(--color-error, #a85a5a)}@media (max-width: 520px){.petri-rack{grid-template-columns:1fr 1fr}}.maze-stage{position:relative;width:100%;box-sizing:border-box;padding:.75rem;border:1px solid var(--color-border);background:var(--color-card-background);border-radius:0;margin-bottom:1rem;touch-action:none}.maze-canvas{display:block;width:100%;height:auto;border-radius:0;touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.maze-solved{position:absolute;left:50%;bottom:1.25rem;transform:translate(-50%);display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;background:var(--color-card-background);border:1px solid var(--color-glow-anisota);border-radius:0;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);box-shadow:0 0 18px -4px var(--color-glow-anisota);animation:maze-pop .32s ease}.maze-solved svg{color:var(--color-glow-anisota)}.maze-solved-title{font-weight:var(--font-weight-bold)}.maze-solved-stats{color:var(--color-text-muted);font-size:var(--font-size-0-8)}@keyframes maze-pop{0%{opacity:0;transform:translate(-50%) translateY(6px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.maze-actions{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.maze-reroll{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;border-radius:0;transition:background .25s ease,border-color .25s ease,color .25s ease}.maze-reroll:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light)}.maze-reroll svg{color:var(--color-text-muted);transition:color .25s ease}.maze-reroll:hover svg{color:var(--color-glow-anisota)}.maze-action{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:0;transition:background .25s ease,border-color .25s ease,color .25s ease}.maze-action:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light);color:var(--color-text)}.maze-action.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.maze-action.on svg{color:var(--color-glow-anisota)}.maze-chips{display:flex;flex-wrap:wrap;gap:.5rem}.maze-lab .settings-description{margin-bottom:1.75rem}.bacteria-page{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;z-index:9999;background:#0a1310;overflow:hidden;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;animation:bacteria-in .48s ease-out}@keyframes bacteria-in{0%{opacity:0}to{opacity:1}}.bacteria-canvas{display:block;width:100%;height:100%}.bacteria-stats{position:absolute;top:max(12px,env(safe-area-inset-top,0px));left:max(12px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:.3rem;padding:.55rem .75rem;background:#08120e9e;border:1px solid rgba(120,190,150,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none;transition:opacity .46s ease}.bacteria-page:not(.hud-on) .bacteria-stats{opacity:.7}.bacteria-stat-main{display:flex;align-items:baseline;gap:.4rem}.bacteria-count{font-family:IBM Plex Mono,monospace;font-size:1.6rem;font-weight:var(--font-weight-bold);color:#ebf8effa;line-height:1}.bacteria-count-label{font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.1em;color:#b0d6bcd9}.bacteria-stat-row{display:flex;flex-wrap:wrap;gap:.1rem .7rem;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:#bedcc8b8}.bacteria-stat-row b{color:#e4f4e8f2;font-weight:var(--font-weight-bold)}.bacteria-hud{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:10px;padding:12px max(12px,env(safe-area-inset-right,0px)) max(12px,calc(env(safe-area-inset-bottom,0px) + 10px)) max(12px,env(safe-area-inset-left,0px));pointer-events:none;opacity:0;transform:translateY(14px);transition:opacity .42s ease,transform .42s ease}.bacteria-page.hud-on .bacteria-hud{opacity:1;transform:translateY(0);pointer-events:auto}.bacteria-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;padding:.5rem .7rem;background:#08120e80;border:1px solid rgba(120,190,150,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.bacteria-exit{display:inline-flex;align-items:center;gap:.4em;padding:.5em .8em;font-family:var(--font-family-base);font-size:var(--font-size-0-9);color:#e4f4e8eb;background:#0e1c168c;border:1px solid rgba(120,190,150,.25);border-radius:0;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .12s ease}.bacteria-exit:hover{background:#162a22b3;border-color:#96dcb473}.bacteria-exit:active{transform:scale(.96)}.bacteria-chips{display:inline-flex;flex-wrap:wrap;gap:.35rem}.bacteria-chip{display:inline-flex;align-items:center;gap:.35em;padding:.42em .7em;font-family:var(--font-family-base);font-size:var(--font-size-0-8);color:#d2e6dad1;background:#0e1c1680;border:1px solid rgba(120,190,150,.2);border-radius:0;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.bacteria-chip:hover{background:#162a229e;color:#e4f4e8f2}.bacteria-chip.on{color:#07120d;background:var(--color-glow-anisota, #9fe6b0);border-color:var(--color-glow-anisota, #9fe6b0)}.bacteria-transport{display:inline-flex;align-items:center;gap:.4rem}.bacteria-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:#d2e6dad9;background:#0e1c1680;border:1px solid rgba(120,190,150,.2);border-radius:0;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.bacteria-icon:hover{background:#162a229e;border-color:#96dcb466}.bacteria-icon.on{color:#07120d;background:var(--color-glow-anisota, #9fe6b0);border-color:var(--color-glow-anisota, #9fe6b0)}.bacteria-time{display:inline-flex;align-items:center;gap:.45rem}.bacteria-time input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:96px;height:2px;background:#96c8aa4d;outline:none;cursor:pointer}.bacteria-time input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-glow-anisota, #9fe6b0);border:none;border-radius:0;cursor:pointer}.bacteria-time input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--color-glow-anisota, #9fe6b0);border:none;border-radius:0;cursor:pointer}.bacteria-time-value{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:#bedcc8cc;min-width:2.6em}.bacteria-zoom{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:#bedcc8cc;min-width:3em;text-align:center}.bacteria-kinds{display:inline-flex;align-items:center;align-self:flex-start;flex-wrap:wrap;gap:.35rem;padding:.4rem .6rem;background:#08120e80;border:1px solid rgba(120,190,150,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.bacteria-kinds-label{font-family:var(--font-family-base);font-size:var(--font-size-0-8);font-style:italic;color:#b4d6beb3;margin-right:.2rem}.bacteria-tune{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem;max-height:min(52dvh,460px);overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;padding:.8rem;background:#08120e9e;border:1px solid rgba(120,190,150,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);-webkit-overflow-scrolling:touch}.bacteria-tune input[type=range]{touch-action:none}.bacteria-tune-group{background:#0e1c166b;border:1px solid rgba(120,190,150,.14);padding:.8rem}.bacteria-tune-title{font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.08em;color:#b4d6beb3;font-weight:var(--font-weight-bold);margin-bottom:.7rem}.bacteria-tune .lab-slider-label,.bacteria-tune .lab-palette-label{color:#d6eadee6}.bacteria-tune .lab-slider-hint{color:#aac8b699}.bacteria-tune .lab-slider-value{color:#aac8b6cc}.bacteria-tune .lab-slider input[type=range]{background:#96c8aa47}.bacteria-tune .lab-palette{background:#0e1c1680;border-color:#78be9633}.bacteria-tune .lab-palette.on{border-color:var(--color-glow-anisota, #9fe6b0)}@media (max-width: 540px){.bacteria-bar{gap:.4rem .5rem}.bacteria-time input[type=range]{width:72px}.bacteria-count{font-size:1.4rem}}@media (prefers-reduced-motion: reduce){.bacteria-page,.bacteria-hud,.bacteria-stats{animation:none;transition:none}}.venation-stage{position:relative;box-sizing:border-box;width:100%;aspect-ratio:1 / 1;margin-bottom:1rem;border:1px solid var(--color-border);overflow:hidden;background:var(--color-background);animation:wing-rise .5s ease-out;transition:border-color .25s ease}.venation-stage.is-glow{box-shadow:inset 0 0 60px #00000059}.venation-canvas{display:block;box-sizing:border-box;width:100%;height:100%;cursor:crosshair;touch-action:none}.venation-theme-backlit{background:#07090c;border-color:#1a2530}.venation-theme-engraving{background:#efe7d6;border-color:#cdbfa6}.venation-theme-anisota{background:#0b0a10;border-color:#241f33}.venation-hint{position:absolute;left:0;right:0;bottom:0;padding:.45rem .7rem;font-family:var(--font-family-base);font-size:var(--font-size-0-7);letter-spacing:.02em;text-align:center;color:var(--color-text-muted);background:linear-gradient(to top,#00000073,#0000);pointer-events:none}.venation-theme-engraving .venation-hint{color:#6b5d44;background:linear-gradient(to top,#efe7d6d9,#efe7d600)}.venation-shapes .fidget-chip{gap:.4rem}.venation-glyph{flex:0 0 auto;color:var(--color-glow-anisota);overflow:visible}.venation-actions{display:flex;gap:.6rem;align-items:stretch;margin-bottom:2rem}.venation-primary{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1rem;background:var(--color-card-background);color:var(--color-text);border:1px solid var(--color-glow-anisota);font-family:var(--font-family-base);font-size:var(--font-size-1);cursor:pointer;transition:background .25s ease,box-shadow .25s ease}.venation-primary:hover{background:var(--color-card-background-hover);box-shadow:0 0 18px var(--color-glow-anisota-hover)}.venation-primary svg{color:var(--color-glow-anisota)}.venation-action{width:46px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-card-background);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.venation-action:hover:not(:disabled){background:var(--color-card-background-hover);color:var(--color-text);border-color:var(--color-border-light)}.venation-action:disabled{opacity:.4;cursor:default}.venation-count{display:inline-flex;align-items:center;padding:0 .6rem;font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);white-space:nowrap}@media (prefers-reduced-motion: reduce){.venation-stage{animation:none;transition:none}.venation-primary,.venation-action{transition:none}}.venation-lab .settings-description{margin-bottom:1.75rem}.moth-lab .settings-description{margin-bottom:1.5rem}.moth-hud{display:flex;align-items:stretch;justify-content:space-between;gap:.5rem;margin-bottom:.85rem}.moth-hud-cell{display:inline-flex;align-items:center;gap:.4rem;min-width:4.5rem;padding:.45rem .7rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-mono, var(--font-family-base));font-size:var(--font-size-0-9);font-variant-numeric:tabular-nums}.moth-hud-cell:last-child{justify-content:flex-end}.moth-hud-cell svg{color:var(--color-text-muted);flex-shrink:0}.moth-hud-cell:first-child svg{color:var(--color-error, #d2674a)}.moth-face{display:inline-flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem;flex-shrink:0;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.moth-face:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light)}.moth-face:active{transform:scale(.94)}.moth-face--won{border-color:var(--color-glow-anisota);color:var(--color-glow-anisota);box-shadow:0 0 16px -4px var(--color-glow-anisota)}.moth-face--lost{border-color:var(--color-error, #d2674a);color:var(--color-error, #d2674a)}.moth-stage{position:relative;width:100%;box-sizing:border-box;padding:.6rem;border:1px solid var(--color-border);background:var(--color-card-background);margin-bottom:1rem}.moth-grid{display:grid;gap:3px;width:100%;touch-action:manipulation}.moth-cell{position:relative;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);background:var(--color-button-background, var(--color-card-background-hover));color:var(--color-text);font-family:var(--font-family-mono, var(--font-family-base));font-size:clamp(.7rem,3.4vw,1rem);font-weight:var(--font-weight-bold, 700);line-height:1;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:background .14s ease,border-color .14s ease,transform 90ms ease}.moth-cell:hover:not(.revealed){background:var(--color-card-background-hover);border-color:var(--color-border-light)}.moth-cell:active:not(.revealed){transform:scale(.93)}.moth-cell.revealed{background:var(--color-background-secondary, var(--color-background));border-color:var(--color-border-dark, var(--color-border));cursor:default}.moth-cell.flagged{color:var(--color-glow-anisota)}.moth-flag-icon{filter:drop-shadow(0 0 4px var(--color-glow-anisota))}.moth-cell.flame{color:var(--color-error, #d2674a);background:var(--color-error-background, rgba(210, 103, 74, .12));border-color:var(--color-error-border, var(--color-error, #d2674a))}.moth-cell.blast{background:var(--color-error, #d2674a);color:var(--color-text-inverse, #fff);animation:moth-singe .32s ease}@keyframes moth-singe{0%{transform:scale(.6);opacity:.4}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.moth-cell.adj-1{color:#6f9f6a}.moth-cell.adj-2{color:#8aa84e}.moth-cell.adj-3{color:#c79a3e}.moth-cell.adj-4{color:#d2873e}.moth-cell.adj-5{color:#d2674a}.moth-cell.adj-6{color:#c2506a}.moth-cell.adj-7{color:#a64f86}.moth-cell.adj-8{color:#8f5fa6}.moth-grid--won .moth-cell:not(.revealed),.moth-grid--lost .moth-cell:not(.flame):not(.revealed){opacity:.55}.moth-banner{position:absolute;left:50%;bottom:1rem;transform:translate(-50%);display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);animation:moth-pop .32s ease}.moth-banner--won{border-color:var(--color-glow-anisota);box-shadow:0 0 18px -4px var(--color-glow-anisota)}.moth-banner--won svg{color:var(--color-glow-anisota)}.moth-banner--lost{border-color:var(--color-error, #d2674a)}.moth-banner--lost svg{color:var(--color-error, #d2674a)}.moth-banner-title{font-weight:var(--font-weight-bold)}.moth-banner-stats{color:var(--color-text-muted);font-size:var(--font-size-0-8)}@keyframes moth-pop{0%{opacity:0;transform:translate(-50%) translateY(6px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.moth-actions{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.moth-mode{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.moth-mode:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light)}.moth-mode svg{color:var(--color-text-muted)}.moth-mode.on{border-color:var(--color-glow-anisota);color:var(--color-text)}.moth-mode.on svg{color:var(--color-glow-anisota)}.moth-mode-hint{color:var(--color-text-muted);font-size:var(--font-size-0-8)}.moth-chips{display:flex;flex-wrap:wrap;gap:.5rem}.moth-chips .fidget-chip{flex-direction:column;align-items:flex-start;gap:.15rem}.moth-chip-meta{font-size:var(--font-size-0-7, .7rem);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.wm-page{--wm-dock-h: 3.5rem;--wm-band-h: 140px;--wm-footer-h: calc(2rem + max(1rem, env(safe-area-inset-bottom, 0px))) ;--wm-edge-left: max(1.5rem, env(safe-area-inset-left, 0px));--wm-edge-right: max(1.5rem, env(safe-area-inset-right, 0px));position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:pan-y}.wm-field{position:absolute;top:calc(env(safe-area-inset-top,0px) + 46px);left:var(--wm-edge-left);right:var(--wm-edge-right);bottom:calc(var(--wm-dock-h) + var(--wm-band-h) + 8px + var(--wm-footer-h));z-index:1;pointer-events:none}.wm-magnet,.wm-bank-tile,.wm-drawer-tile,.wm-drawer-hit{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.wm-surface{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;overflow:hidden;touch-action:none}.wm-note{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:22rem;padding:0 1.5rem;text-align:center;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-1-1)}.wm-note-inline{position:static;transform:none;margin:1.5rem auto}.wm-hint{position:absolute;left:50%;top:calc(env(safe-area-inset-top,0px) + 62px);transform:translate(-50%);display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .7rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);white-space:nowrap;animation:wm-fade-late .42s ease-out;transition:opacity .36s ease,transform .36s ease}.wm-hint.is-out{animation:none;opacity:0;transform:translate(-50%,-8px);pointer-events:none}.wm-hint svg{color:var(--color-glow-anisota)}@keyframes wm-fade-late{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.wm-magnet,.wm-drawer-tile,.wm-bank-tile,.wm-ghost,.wm-return-ghost,.poem-tile{font-family:var(--font-family-base);font-weight:600;letter-spacing:.01em;color:#1a1714;background:linear-gradient(#fbf7ee,#efe7d6);border:1px solid rgba(0,0,0,.18);box-shadow:0 1px #fff9 inset,0 2px 5px #00000073}.wm-magnet.is-fragment,.wm-drawer-tile.is-fragment,.wm-bank-tile.is-fragment,.wm-ghost.is-fragment,.wm-return-ghost.is-fragment,.poem-tile.is-fragment{background:linear-gradient(#efe7d6,#e3d8c2);color:#4a3f30;font-style:italic}.poem-page-error{margin:1rem 0;padding:1rem 1.1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-1)}.poem-field{position:relative;width:100%;box-sizing:border-box;aspect-ratio:3 / 4;container-type:inline-size;margin:.5rem 0 1.5rem;overflow:hidden;background:radial-gradient(circle at 38% 30%,color-mix(in srgb,var(--color-text) 4%,transparent) 0%,transparent 60%),var(--color-card-background);border:1px solid var(--color-border)}.poem-tile{position:absolute;transform:rotate(var(--rot, 0deg));transform-origin:top left;padding:.28em .5em;font-size:1.1rem;font-size:clamp(.6rem,3.7cqw,1.2rem);line-height:1;white-space:nowrap;border:1px solid rgba(0,0,0,.18);background:linear-gradient(#fbf7ee,#efe7d6);box-shadow:0 1px #fff9 inset,0 2px 5px #00000073;-webkit-tap-highlight-color:transparent}.poem-tile.has-source{cursor:pointer;transition:box-shadow .22s ease}.poem-tile.has-source:hover,.poem-tile.has-source:focus-visible{outline:none;box-shadow:0 1px #fff9 inset,0 0 0 1px var(--color-glow-anisota-hover),0 0 10px 1px var(--color-glow-anisota-hover),0 0 22px 4px var(--color-glow-anisota-dark)}.poem-tile:disabled{cursor:default;opacity:1;color:#1a1714;background:linear-gradient(#fbf7ee,#efe7d6)}.poem-tile.is-fragment:disabled{color:#4a3f30;background:linear-gradient(#efe7d6,#e3d8c2)}.poem-field.is-faithful .poem-tile{font-size:var(--tile-font);transform:translate(-50%,-50%) rotate(var(--rot, 0deg));transform-origin:center}.poem-field-skeleton{background:var(--color-card-background)}.poem-tile-skeleton{position:absolute;height:1.7rem;transform:rotate(-2deg);background:linear-gradient(90deg,color-mix(in srgb,var(--color-text) 7%,transparent) 25%,color-mix(in srgb,var(--color-text) 14%,transparent),color-mix(in srgb,var(--color-text) 7%,transparent) 75%);background-size:200% 100%;animation:wm-shimmer 1.3s ease-in-out infinite;animation-delay:calc(var(--skeleton-index, 0) * 90ms)}.poem-text{margin:0 0 1.5rem;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1-3);font-weight:200;line-height:1.5}.poem-page-about{max-width:34rem;margin:0 auto .5rem}.poem-tap-hint{margin:.25rem auto 1.75rem;text-align:center;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-1);font-weight:200;font-style:italic}.poem-meta{margin-bottom:1.75rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.poem-meta-by{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-9);font-style:italic}.poem-meta-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;color:var(--color-accent);font:inherit;cursor:pointer}.poem-meta-link:hover{text-decoration:underline}.poem-meta-stats{display:flex;flex-wrap:wrap;gap:1.1rem;margin-top:.7rem}.poem-stat{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9)}.poem-stat svg{color:var(--color-text-muted)}.poem-meta-hint{margin-top:.7rem;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-8);font-style:italic}.poem-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}.poem-action{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-95);cursor:pointer;transition:color .2s ease,border-color .2s ease}.poem-action:hover{color:var(--color-text);border-color:var(--color-border-light)}.poem-action-primary{color:var(--color-text);border-color:var(--color-accent)}.poem-action-primary:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-card-background))}@media (prefers-reduced-motion: reduce){.poem-tile-skeleton{animation:none}.poem-tile.has-source{transition:none}}.wm-drawer-tile,.wm-bank-tile{padding:.3em .55em;font-size:clamp(.92rem,4vw,1.2rem);line-height:1;white-space:nowrap}.wm-magnet{position:absolute;transform:translate(-50%,-50%) rotate(calc(var(--rot, 0deg) + var(--sway, 0deg)));padding:.28em .5em;font-size:clamp(1rem,4.6vw,1.45rem);line-height:1;cursor:grab;touch-action:none;white-space:nowrap;-webkit-touch-callout:none;animation:wm-snap .28s cubic-bezier(.2,.8,.2,1) both}.wm-magnet.is-dragging{cursor:grabbing;will-change:left,top;transform:translate(-50%,-50%) rotate(calc(var(--rot, 0deg) + var(--sway, 0deg))) scale(1.05);box-shadow:0 1px #fff9 inset,0 8px 18px #0000008c;animation:none}.wm-magnet.is-settling{animation:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease-out}.wm-magnet.is-exiting{animation:wm-fade-out .36s ease forwards;pointer-events:none}.wm-magnet.is-arriving{animation-delay:calc(var(--arrive-i, 0) * 45ms)}.wm-magnet.has-source{cursor:pointer}@keyframes wm-snap{0%{transform:translate(-50%,-50%) rotate(calc(var(--rot, 0deg) + 7deg)) scale(1.09);box-shadow:0 1px #fff9 inset,0 12px 24px #0009}to{transform:translate(-50%,-50%) rotate(var(--rot, 0deg)) scale(1);box-shadow:0 1px #fff9 inset,0 2px 5px #00000073}}.wm-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:none}.wm-drawer-layer.is-hidden{opacity:0}.wm-drawer-layer.is-exiting{animation:wm-fade-out .36s ease forwards}.wm-drawer-tile{position:absolute;top:0;left:0;transform:translate(var(--cx, 0),var(--cy, 0)) translate(-50%,-50%) rotate(var(--rot, 0deg));pointer-events:none}.wm-drawer-layer.is-dealing .wm-drawer-tile{animation:wm-deal .46s cubic-bezier(.18,.72,.2,1) both;animation-delay:var(--d, 0ms)}.wm-drawer-layer.is-dealing .wm-drawer-tile.is-settled{animation:none}@keyframes wm-deal{0%{opacity:0;transform:translate(calc(var(--cx) + var(--ix, 0)),calc(var(--cy) + var(--iy, -40vh))) translate(-50%,-50%) rotate(var(--dspin, 0deg)) scale(1.12)}55%{opacity:1}to{opacity:1;transform:translate(var(--cx),var(--cy)) translate(-50%,-50%) rotate(var(--rot, 0deg)) scale(1)}}.wm-drawer-hit{position:fixed;left:0;right:0;bottom:calc(var(--wm-dock-h) + var(--wm-footer-h));height:var(--wm-band-h);z-index:21;cursor:pointer;pointer-events:auto}.wm-drawer-hit.is-hidden{pointer-events:none}.wm-return-hint{position:fixed;left:var(--wm-edge-left);right:var(--wm-edge-right);bottom:calc(var(--wm-dock-h) + var(--wm-footer-h));height:var(--wm-band-h);z-index:30;display:flex;align-items:center;justify-content:center;border:1px dashed color-mix(in srgb,var(--color-glow-anisota) 70%,transparent);background:color-mix(in srgb,var(--color-glow-anisota) 8%,transparent);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);pointer-events:none;animation:wm-fade-in .14s ease-out both}.wm-loading{position:absolute;top:calc(env(safe-area-inset-top,0px) + 46px);left:var(--wm-edge-left);right:var(--wm-edge-right);bottom:calc(var(--wm-dock-h) + var(--wm-band-h) + 8px + var(--wm-footer-h));z-index:16;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;pointer-events:none;transition:opacity .48s ease}.wm-loading.is-out{opacity:0}.wm-moon{width:68px;height:68px;color:var(--color-text);animation:wm-moon-breathe 5s ease-in-out infinite}@keyframes wm-moon-breathe{0%,to{opacity:.78}50%{opacity:1}}.wm-loading-text{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-1-1)}.wm-dock{position:absolute;left:0;right:0;bottom:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:var(--wm-dock-h);padding:14px var(--wm-edge-right) calc(16px + var(--wm-footer-h)) var(--wm-edge-left);background:linear-gradient(to top,var(--color-background) 72%,var(--color-background) 82%,transparent)}.wm-dock-info{display:flex;flex-direction:column;min-width:0;line-height:1.2;gap:.1rem}.wm-dock-title{color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1-1)}.wm-dock-stat{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-8);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wm-dock-stat-skeleton{display:inline-block;width:9.5rem;max-width:60vw;height:.78em;margin-top:.18em;border-radius:2px;background:linear-gradient(90deg,color-mix(in srgb,var(--color-text) 7%,transparent) 25%,color-mix(in srgb,var(--color-text) 14%,transparent),color-mix(in srgb,var(--color-text) 7%,transparent) 75%);background-size:200% 100%;animation:wm-shimmer 1.3s ease-in-out infinite;font-size:var(--font-size-0-8)}@keyframes wm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.wm-dock-controls{display:flex;gap:.4rem;flex-shrink:0}.wm-tool{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease,opacity .2s ease}.wm-tool:hover:not(:disabled){color:var(--color-text);border-color:var(--color-border-light)}.wm-tool:disabled{color:color-mix(in srgb,var(--color-text-secondary) 38%,var(--color-card-background));border-color:color-mix(in srgb,var(--color-border) 55%,var(--color-card-background));cursor:default}.wm-tool-icon{display:inline-flex;animation:wm-tool-swap .24s cubic-bezier(.2,.8,.2,1) both}@keyframes wm-tool-swap{0%{opacity:0;transform:scale(.6) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media (prefers-reduced-motion: reduce){.wm-tool-icon{animation:none}}.wm-tool-save.is-saved{color:var(--color-success, #6fbf73);border-color:color-mix(in srgb,var(--color-success, #6fbf73) 55%,var(--color-border));opacity:1}.wm-spin{animation:wm-spin .9s linear infinite}@keyframes wm-spin{to{transform:rotate(360deg)}}.wm-tools{position:relative;display:inline-flex}.wm-tools-catcher{position:fixed;top:0;right:0;bottom:0;left:0;z-index:51}.wm-tools-menu{position:absolute;bottom:100%;right:0;margin-bottom:.4rem;z-index:53;display:flex;flex-direction:column;gap:.4rem;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.96);transform-origin:bottom center;transition:opacity .2s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear .22s}.wm-tools-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .2s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s}.wm-tools-toggle.is-open{color:var(--color-text);border-color:var(--color-accent)}@media (prefers-reduced-motion: reduce){.wm-tools-menu{transition:opacity .12s ease,visibility 0s linear .12s;transform:none}.wm-tools-menu.is-open{transition:opacity .12s ease,visibility 0s;transform:none}}.wm-toast{position:absolute;left:50%;bottom:calc(var(--wm-dock-h) + var(--wm-footer-h) + 10px);transform:translate(-50%);z-index:52;max-width:88vw;padding:.42rem .8rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:wm-fade-in .18s ease-out both}.wm-toast.is-error{border-color:color-mix(in srgb,var(--color-error, #d66) 55%,var(--color-border));color:var(--color-text)}.wm-overlay{position:absolute;top:0;left:0;right:0;bottom:var(--wm-footer-h);z-index:40;display:flex;flex-direction:column;padding:calc(52px + env(safe-area-inset-top,0px)) var(--wm-edge-right) 0 var(--wm-edge-left)}.wm-overlay-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:color-mix(in srgb,var(--color-background) 58%,transparent);backdrop-filter:blur(2.5px);-webkit-backdrop-filter:blur(2.5px);animation:wm-fade-in .2s ease-out both}.wm-overlay.is-closing .wm-overlay-scrim{animation:wm-fade-out .36s ease-in both}.wm-overlay.is-closing{pointer-events:none}.wm-overlay-head,.wm-overlay-hint{animation:wm-fade-in .22s ease-out both}.wm-overlay.is-closing .wm-overlay-head,.wm-overlay.is-closing .wm-overlay-hint{animation:none;opacity:0;transition:opacity .3s ease}@keyframes wm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes wm-fade-out{0%{opacity:1}to{opacity:0}}.wm-overlay-head{display:flex;align-items:center;justify-content:space-between;padding:.25rem .25rem .1rem}.wm-overlay-title{color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1-1)}.wm-overlay-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:none;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease}.wm-overlay-close:hover{color:var(--color-text);border-color:var(--color-border-light)}.wm-overlay-grid{flex:1;min-height:0;overflow-y:auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:.5rem;padding:.4rem .25rem calc(var(--wm-dock-h) + 24px + var(--wm-footer-h));touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.wm-overlay.is-anim .wm-overlay-grid{overflow:visible}.wm-bank-tile{position:relative;cursor:grab;touch-action:pan-y;transform:rotate(var(--bank-rot, 0deg))}.wm-overlay:not(.is-anim) .wm-bank-tile{transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s ease}.wm-bank-tile.is-lifted{transform:rotate(var(--bank-rot, 0deg)) scale(1.09);box-shadow:0 1px #fff9 inset,0 9px 20px #00000080;z-index:6}.wm-bank-tile.is-lifting{opacity:0}.wm-overlay-hint{flex-shrink:0;text-align:left;padding:0 .25rem .7rem;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-8)}.wm-library-modal{min-height:80dvh}.wm-library-modal .wm-poem-line{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}.wm-poem-option{flex:1;min-width:0}.wm-poem-row{display:flex;align-items:stretch;gap:.4rem}.wm-poem-share{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:44px;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease}.wm-poem-share:hover{color:var(--color-text);border-color:var(--color-border-light)}.wm-poem-share.is-copied{color:var(--color-success, #6fbf73);border-color:color-mix(in srgb,var(--color-success, #6fbf73) 55%,var(--color-border))}.wm-ghost{position:fixed;z-index:60;transform:translate(-50%,-50%) rotate(calc(-2deg + var(--sway, 0deg))) scale(1.06);padding:.3em .55em;font-size:clamp(1rem,4.6vw,1.4rem);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:0 1px #fff9 inset,0 10px 22px #0009}.wm-return-ghost{position:fixed;z-index:58;transform:translate(-50%,-50%);padding:.28em .5em;font-size:clamp(1rem,4.6vw,1.45rem);line-height:1;white-space:nowrap;pointer-events:none;box-shadow:0 1px #fff9 inset,0 6px 16px #00000080}@media (prefers-reduced-motion: reduce){.wm-overlay-scrim,.wm-overlay.is-closing .wm-overlay-scrim,.wm-overlay-head,.wm-overlay-hint,.wm-hint,.wm-magnet,.wm-moon,.wm-dock-stat-skeleton,.wm-spin,.wm-magnet.is-arriving,.wm-drawer-layer.is-dealing .wm-drawer-tile{animation:none}.wm-magnet.is-settling{transition:none}}.poetry-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--color-border)}.poetry-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:.4rem .2rem .55rem;color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-95);cursor:pointer;transition:color .2s ease,border-color .2s ease}.poetry-tab:hover{color:var(--color-text-secondary)}.poetry-tab.is-active{color:var(--color-text);border-bottom-color:var(--color-accent)}.poetry-source-section{margin-top:1.1rem}.poetry-source-label{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-8);font-style:italic;margin-bottom:.5rem}.poetry-source-note{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-85);font-style:italic;padding:.5rem .2rem}.poetry-source-glyph{color:var(--color-text-muted);margin-right:.4rem;vertical-align:-2px}.poetry-search{display:flex;align-items:center;gap:.5rem;padding:.55rem .7rem;background:var(--color-card-background);border:1px solid var(--color-border)}.poetry-search-icon{color:var(--color-text-muted);flex-shrink:0}.poetry-search-input{flex:1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;outline:none;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-95)}.poetry-search-input::placeholder{color:var(--color-text-muted)}.poetry-search-results{margin-top:.5rem}.poetry-avatar{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-right:.6rem;background:var(--color-card-background-secondary, var(--color-card-background));border:1px solid var(--color-border);color:var(--color-text-muted);overflow:hidden}.poetry-avatar img{width:100%;height:100%;object-fit:cover}.poetry-settings-body{display:flex;flex-direction:column}.poetry-setting{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--color-border)}.poetry-setting:last-child{border-bottom:none}.poetry-setting-toggle{cursor:pointer}.poetry-setting-text{min-width:0}.poetry-setting-name{color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-1)}.poetry-setting-desc{color:var(--color-text-muted);font-family:var(--font-family-base);font-size:var(--font-size-0-8);font-style:italic;margin-top:.15rem}.poetry-stepper{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.poetry-step{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease}.poetry-step:hover:not(:disabled){color:var(--color-text);border-color:var(--color-border-light)}.poetry-step:disabled{color:color-mix(in srgb,var(--color-text-secondary) 38%,var(--color-card-background));border-color:color-mix(in srgb,var(--color-border) 55%,var(--color-card-background));cursor:default}.poetry-step-value{min-width:2ch;text-align:center;color:var(--color-text);font-family:var(--font-family-mono, monospace);font-size:var(--font-size-1)}.poetry-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;flex-shrink:0;background:var(--color-card-background);border:1px solid var(--color-border);cursor:pointer;position:relative;transition:border-color .2s ease,background .2s ease}.poetry-checkbox:hover{border-color:var(--color-border-light)}.poetry-checkbox:checked{background:var(--color-accent);border-color:var(--color-accent)}.poetry-checkbox:checked:after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid var(--color-background);border-width:0 2px 2px 0;transform:rotate(45deg)}.pf-filter{display:flex;gap:0;margin:3.25rem auto 1.5rem;border:1px solid var(--color-border)}.pf-filter-btn{flex:1 1 0;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .5rem;border:none;border-right:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.85rem;font-weight:200;cursor:pointer;transition:color .15s ease,background-color .15s ease}.pf-filter-btn:last-child{border-right:none}.pf-filter-btn:hover{color:var(--color-text)}.pf-filter-btn.is-active{color:var(--color-glow-anisota);background:color-mix(in srgb,var(--color-glow-anisota) 12%,transparent)}.pf-filter-select{display:flex;justify-content:center;margin:3.25rem auto 1.5rem}.pf-select-wrap{position:relative;display:inline-flex;align-items:center}.pf-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:14rem;padding:.6rem 2.5rem .6rem .95rem;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-family:var(--font-family-base);font-size:.95rem;font-weight:200;cursor:pointer;transition:border-color .15s ease}.pf-select:hover{border-color:var(--color-border-light)}.pf-select:focus{outline:none;border-color:var(--color-accent)}.pf-select-chevron{position:absolute;right:.85rem;color:var(--color-text-muted);pointer-events:none}.pf-list{display:flex;flex-direction:column;gap:1rem}.pf-card{border:1px solid var(--color-border);background:var(--color-card-background);padding:1rem 1.1rem .6rem}.pf-card-open{display:block;width:100%;text-align:left;padding:0;border:none;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.pf-card:hover,.pf-card:focus-within{background:var(--color-card-background)}.pf-card-open:hover,.pf-card-open:focus,.pf-card-open:active{background:none}.pf-card-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.75rem}.pf-card-avatar{width:2rem;height:2rem;object-fit:cover;border-radius:0;background:var(--color-background-secondary, var(--color-border));flex:0 0 auto}.pf-card-avatar-empty{border:1px solid var(--color-border)}.pf-card-by{min-width:0;display:flex;flex-direction:column;gap:.1rem}.pf-card-name{font-size:.88rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pf-card-meta{display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;font-style:italic;color:var(--color-text-muted)}.pf-card-title{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:500;font-size:1.05rem;color:var(--color-text);margin-bottom:.3rem}.pf-card-text{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200;font-size:1.1rem;line-height:1.6;color:var(--color-text);white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}.pf-card-field{position:relative;width:100%;box-sizing:border-box;aspect-ratio:3 / 4;container-type:inline-size;margin:.2rem 0 .3rem;overflow:hidden;background:radial-gradient(circle at 38% 30%,color-mix(in srgb,var(--color-text) 4%,transparent) 0%,transparent 60%),var(--color-background);border:1px solid var(--color-border)}.pf-card-tile{position:absolute;transform:rotate(var(--rot, 0deg));transform-origin:top left;padding:.22em .4em;font-family:var(--font-family-base);font-size:.85rem;font-size:clamp(.6rem,3.7cqw,1.2rem);line-height:1;white-space:nowrap;color:#1a1714;border:1px solid rgba(0,0,0,.18);background:linear-gradient(#fbf7ee,#efe7d6);box-shadow:0 1px #fff9 inset,0 2px 5px #00000073}.pf-card-tile.is-fragment{background:linear-gradient(#efe7d6,#e3d8c2);color:#4a3f30;font-style:italic}.pf-card-field.is-faithful .pf-card-tile{font-size:var(--tile-font);transform:translate(-50%,-50%) rotate(var(--rot, 0deg));transform-origin:center}.pf-card-redaction{font-family:var(--font-serif, "Crimson Pro", Georgia, serif);font-weight:200;font-size:1.05rem;line-height:1.85;color:var(--color-text);white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}.pf-card-engage{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.pf-card-skeleton{pointer-events:none}.pf-card-field-skeleton{width:100%;box-sizing:border-box;aspect-ratio:3 / 4;margin-top:.75rem;border:1px solid var(--color-border);background:var(--color-background)}.pf-note{max-width:34rem;margin:2rem auto;text-align:center;font-size:.9rem;font-weight:200;font-style:italic;line-height:1.6;color:var(--color-text-secondary)}.pf-more{display:flex;justify-content:center;margin:1.5rem auto 0}.pf-more-btn{padding:.5rem 1.2rem;border-radius:0;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text);font-size:.85rem;font-weight:200;cursor:pointer;transition:border-color .15s ease,color .15s ease,opacity .15s ease}.pf-more-btn:hover:not(:disabled){border-color:var(--color-glow-anisota);color:var(--color-glow-anisota)}.pf-more-btn:disabled{opacity:.5;cursor:default}.pf-card-image{margin:.2rem 0 .3rem;overflow:hidden;border:1px solid var(--color-border);background:var(--color-background)}.pf-card-image img{display:block;width:100%;max-height:22rem;object-fit:contain}.pf-card-glyph{display:flex;align-items:center;justify-content:center;min-height:8rem;margin:.2rem 0 .3rem;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text-muted)}.flock-signin-note{margin:-.5rem 0 1.5rem;padding:.7rem .9rem;border:1px solid var(--color-border);background:var(--color-card-background);color:var(--color-text-muted);font-size:var(--font-size-0-9)}.flock-incubating{margin-top:2rem}.flock-incubating-head{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.75rem}.flock-incubating-item{display:flex;flex-direction:column;gap:.15rem;padding:.6rem 0;border-top:1px solid var(--color-border-dark);opacity:.6}.flock-incubating-name{color:var(--color-text-secondary);font-size:var(--font-size-0-9)}.flock-incubating-desc{color:var(--color-text-muted);font-size:var(--font-size-0-8)}.tl-root{position:relative}.tl-board{border:1px solid var(--color-border);background:var(--color-background)}.tl-row{display:flex;align-items:stretch;border-bottom:1px solid var(--color-border);min-height:64px}.tl-row:last-child{border-bottom:none}.tl-row-label{flex:0 0 54px;width:54px;border:none;outline:none;text-align:center;font-family:var(--font-family-base);font-size:var(--font-size-1-1);font-weight:600;color:#1a1a1a;padding:.25rem}.tl-row-label:focus{box-shadow:inset 0 0 0 2px #00000059}.tl-lane{flex:1 1 auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:4px;padding:5px;min-width:0}.tl-chip{width:52px;height:52px;flex:0 0 auto;overflow:hidden;background:var(--color-card-background);border:1px solid var(--color-border);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.tl-chip img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.tl-chip.dragging{opacity:.3}.tl-chip-enter{animation:tl-chip-in .34s ease-out both}@keyframes tl-chip-in{0%{opacity:0;transform:scale(.6) translateY(6px)}to{opacity:1;transform:none}}.tl-chip-skel{cursor:default;border-color:var(--color-border-light);background:var(--color-border);animation:tl-skel-pulse 1s ease-in-out infinite}@keyframes tl-skel-pulse{0%,to{background:var(--color-border-dark)}50%{background:var(--color-text-muted)}}@media (prefers-reduced-motion: reduce){.tl-chip-enter{animation:none}.tl-chip-skel{animation:none;background:var(--color-border-light)}}.tl-chip-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--color-text-muted);font-size:var(--font-size-1-2);font-family:var(--font-family-base)}.tl-tray-head{display:flex;align-items:center;justify-content:space-between;margin:1.25rem 0 .5rem}.tl-tray-title{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-text);font-size:var(--font-size-0-95)}.tl-tray-count{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);color:var(--color-text-muted);border:1px solid var(--color-border);padding:.05rem .4rem}.tl-tray-actions{display:flex;gap:.4rem}.tl-action{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .7rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-family-base);font-size:var(--font-size-0-85);cursor:pointer;transition:border-color .2s ease,color .2s ease}.tl-action:hover:not(:disabled){border-color:var(--color-glow-anisota);color:var(--color-text)}.tl-action:disabled{opacity:.5;cursor:default}.tl-pool-toggle{border-color:var(--color-glow-anisota);color:var(--color-text)}.tl-pool-toggle svg{color:var(--color-glow-anisota)}.tl-bank-status{margin:0 0 .5rem;min-height:1.1rem;color:var(--color-text-muted);font-size:var(--font-size-0-8)}.tl-bank-status-busy{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-glow-anisota)}.tl-bank-status-error{color:var(--color-error)}.tl-bank{display:flex;flex-wrap:wrap;align-content:flex-start;gap:4px;padding:6px;min-height:70px;border:1px dashed var(--color-border-light);background:var(--color-card-background)}.tl-bank-empty{color:var(--color-text-muted);font-size:var(--font-size-0-85);padding:.6rem}.tl-discard-head{display:inline-flex;align-items:center;gap:.35rem;margin:1rem 0 .4rem;color:var(--color-text-muted);font-size:var(--font-size-0-85)}.tl-discard{display:flex;flex-wrap:wrap;gap:4px;padding:6px;min-height:46px;border:1px dashed var(--color-border-dark);background:var(--color-background)}.tl-discard .tl-chip{width:38px;height:38px;opacity:.7}.tl-discard-hint{color:var(--color-text-muted);font-size:var(--font-size-0-8);padding:.4rem}.tl-share{margin-top:1.75rem;border:1px solid var(--color-border);background:var(--color-card-background);padding:.9rem}.tl-share-head{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-7);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.75rem}.tl-share-people{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.9rem}.tl-share-row{display:flex;align-items:baseline;gap:.5rem}.tl-share-tier{flex:0 0 auto;min-width:2.6rem;color:var(--color-text-secondary);font-size:var(--font-size-0-85)}.tl-share-pills{display:flex;flex-wrap:wrap;gap:.3rem}.tl-pill{padding:.2rem .5rem;background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-75);cursor:pointer;transition:opacity .15s ease,border-color .15s ease,color .15s ease}.tl-pill:hover{border-color:var(--color-glow-anisota)}.tl-pill.off{opacity:.4;text-decoration:line-through;border-style:dashed}.tl-share-text{display:block;width:100%;box-sizing:border-box;resize:vertical;min-height:7rem;padding:.7rem;background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);line-height:1.5}.tl-share-text:focus{outline:none;border-color:var(--color-glow-anisota)}.tl-share-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.tl-share-count{font-family:IBM Plex Mono,monospace;font-size:var(--font-size-0-75);color:var(--color-text-muted)}.tl-share-count.over,.tl-share-over{color:var(--color-error)}.tl-share-actions{display:flex;gap:.4rem}.tl-action-primary{border-color:var(--color-glow-anisota);color:var(--color-text)}.tl-footer{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 2rem}.tl-foot-btn{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem .9rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);cursor:pointer;transition:border-color .2s ease,background .2s ease}.tl-foot-btn:hover:not(:disabled){border-color:var(--color-glow-anisota)}.tl-foot-btn:disabled{opacity:.45;cursor:default}.tl-ghost{position:fixed;width:52px;height:52px;margin:-26px 0 0 -26px;pointer-events:none;z-index:9999;overflow:hidden;border:1px solid var(--color-glow-anisota);box-shadow:0 6px 18px #0006;transform:scale(1.08)}.tl-ghost img{width:100%;height:100%;object-fit:cover;display:block}.tl-spin{animation:tl-spin .9s linear infinite}@keyframes tl-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.tl-spin{animation:none}}.achievement-card{background:var(--card-background);border:1px solid var(--border-color);padding:1rem;transition:all .2s ease;position:relative;overflow:hidden}.achievement-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.achievement-card.locked{opacity:.6;filter:grayscale(50%)}.achievement-card.unlocked{opacity:1}.achievement-card-category-followers{border-left:3px solid #8b5cf6}.achievement-card-category-level{border-left:3px solid #f59e0b}.achievement-card-category-social{border-left:3px solid #3b82f6}.achievement-card-category-collection{border-left:3px solid #10b981}.achievement-card-icon{text-align:center;margin-bottom:.5rem;color:var(--text-primary);display:flex;justify-content:center;align-items:center;height:32px}.achievement-card-icon svg{width:24px;height:24px}.achievement-card.locked .achievement-card-icon{opacity:.4}.achievement-card-content{display:flex;flex-direction:column;gap:.5rem}.achievement-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.achievement-card-name{font-size:1.25rem;font-weight:700;margin:0;color:var(--text-primary)}.achievement-card-verified{color:#4caf50;font-size:1.2rem}.achievement-card-unverified{color:#ff9800;font-size:1.2rem}.achievement-card-status{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.4;font-style:italic}.achievement-card-progress{margin-top:.5rem}.achievement-card-progress-bar{width:100%;height:6px;background:var(--border-color);position:relative;overflow:hidden}.achievement-card-progress-fill{height:100%;background:var(--accent-color);transition:width .3s ease}.achievement-card-progress-text{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem;display:block;text-align:right}.achievement-card-claim-button{margin-top:.75rem;width:100%;padding:.5rem;background:var(--accent-color);color:#fff;border:none;cursor:pointer;font-weight:600;transition:all .2s ease}.achievement-card-claim-button:hover:not(:disabled){background:var(--accent-color-hover);transform:translateY(-1px)}.achievement-card-claim-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.achievement-card{padding:.75rem}.achievement-card-icon{height:28px;margin-bottom:.5rem}.achievement-card-icon svg{width:20px;height:20px}.achievement-card-name{font-size:1.1rem}.achievement-card-status{font-size:.8rem}}@media (max-width: 480px){.achievement-card{padding:.5rem}.achievement-card-icon{height:24px;margin-bottom:.5rem}.achievement-card-icon svg{width:18px;height:18px}.achievement-card-name{font-size:1rem}.achievement-card-status{font-size:.75rem;line-height:1.3}}.achievements-stats{display:flex;gap:2rem;margin-bottom:1.5rem}.achievement-stat{display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem;background:var(--card-background);border:1px solid var(--border-color)}.achievement-stat-value{font-size:1.75rem;font-weight:700;color:var(--accent-color)}.achievement-stat-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.achievements-claimable-banner{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:var(--accent-color);color:#fff;animation:banner-pulse 2s infinite}@keyframes banner-pulse{0%,to{opacity:1}50%{opacity:.9}}.achievements-claimable-text{font-weight:600;font-size:1rem}.claim-all-banner{background:var(--card-background);border:2px solid var(--accent-color);padding:1.5rem;margin-bottom:1.5rem;text-align:center}.claim-all-banner p{margin:0 0 1rem;color:var(--text-primary);font-size:1rem}.lists-filters{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.achievements-progress-bar{margin-bottom:2rem}.achievements-progress-text{font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:600}.achievements-progress-track{width:100%;height:8px;background:var(--border-color);position:relative;overflow:hidden}.achievements-progress-fill{height:100%;background:var(--accent-color);transition:width .5s ease}.achievements-section{margin-bottom:3rem}.achievements-section-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.achievements-loading,.achievements-empty{text-align:center;padding:4rem 2rem;color:var(--text-secondary);font-size:1.1rem}@media (max-width: 1024px){.achievements-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (max-width: 768px){.achievements-stats{flex-direction:column;gap:1rem}.achievement-stat{flex-direction:row;justify-content:space-between;padding:.75rem 1rem}.achievement-stat-value{font-size:1.5rem}.lists-filters{gap:.5rem}.achievements-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.achievements-section{margin-bottom:2rem}.achievements-section-title{font-size:1.1rem}}@media (max-width: 480px){.achievements-claimable-banner{flex-direction:column;text-align:center;padding:1rem}.achievements-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}.harvest-search-modal .modal-content{max-width:500px}.harvest-search-modal-form{display:flex;flex-direction:column;gap:1rem}.harvest-search-modal-form .search-input-container{display:flex;width:100%;gap:10px}.harvest-search-modal-form .search-input-container .login-card-input.search-input{flex:1;text-align:left;max-width:none;min-width:0;margin:0}.harvest-search-modal-form .search-input-container .search-input::placeholder{text-align:left}.harvest-search-modal-form .search-submit-button{padding:.5rem .75rem;min-width:70px;max-width:90px;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:.4rem;white-space:nowrap;font-size:var(--font-size-0-9);margin:0}.harvest-search-modal-form .search-submit-button:disabled{opacity:.5;cursor:not-allowed}.harvest-search-modal-suggestions{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.harvest-search-modal-suggestion{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-card-background);border:1px solid var(--color-border);cursor:pointer;transition:all .2s ease;text-align:left;font-family:var(--font-family-base)}.harvest-search-modal-suggestion:hover{background:var(--color-card-background-hover);border-color:var(--color-glow-anisota);transform:translate(2px)}.harvest-search-modal-avatar{width:40px;height:40px;object-fit:cover;flex-shrink:0}.harvest-search-modal-suggestion-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.harvest-search-modal-suggestion-name{font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.harvest-search-modal-suggestion-handle{font-size:.875rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.harvest-search-modal-loading,.harvest-search-modal-info{font-size:.875rem;color:var(--color-text-muted);text-align:center;margin:0;font-style:italic}.harvest-search-modal-suggestions::-webkit-scrollbar{width:8px}.harvest-search-modal-suggestions::-webkit-scrollbar-track{background:var(--color-card-background)}.harvest-search-modal-suggestions::-webkit-scrollbar-thumb{background:var(--color-text-muted);transition:background .2s ease}.harvest-search-modal-suggestions::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}body.harvest-landing-background{position:relative;overflow-x:hidden;background-color:var(--color-background)}body.harvest-landing-background #root{background:transparent!important}body.harvest-landing-background:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:url(/harvest-background.png);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.15;z-index:0;pointer-events:none}@media (max-width: 768px){body.harvest-landing-background:before{background-position:left center}}.harvest-landing-page{opacity:0;transition:opacity .3s ease;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box;position:relative;z-index:1}.harvest-landing-page.page-entering{opacity:1}.harvest-landing-container{max-width:700px;width:100%;margin:0 auto;text-align:center;position:relative;z-index:1;align-content:center;justify-content:center;display:flex;flex-direction:column;align-items:center}.harvest-credit-description{font-style:italic;color:var(--color-accent);margin-top:2rem}.harvest-hero{margin-bottom:2rem}.harvest-brand{font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 1rem}.harvest-title{font-size:4rem;font-weight:700;margin:0 0 1.5rem;line-height:1.1;color:var(--color-text);letter-spacing:-.02em}.harvest-subtitle{font-size:1.25rem;line-height:1.6;max-width:600px;margin:0 auto}.harvest-learn-more{display:inline;background:none;border:none;padding:0;margin:0;color:var(--color-glow-anisota);text-decoration:underline;font-size:inherit;font-family:inherit;line-height:inherit;cursor:pointer;transition:opacity .2s ease}.harvest-learn-more:hover{opacity:.8}.harvest-actions{display:flex;flex-direction:row;gap:1rem;align-items:center;justify-content:center;width:100%;max-width:600px;margin:0 auto}.harvest-actions .post-card-button{flex:1;margin:0}@media (max-width: 768px){.harvest-brand{font-size:.8125rem}.harvest-title{font-size:2.5rem}.harvest-subtitle{font-size:1.125rem}.harvest-landing-page{padding:1.5rem}.harvest-actions{flex-direction:column;max-width:100%}.harvest-actions .post-card-button{width:100%;max-width:100%}}@media (max-width: 480px){.harvest-brand{font-size:.75rem}.harvest-title{font-size:2rem}.harvest-subtitle{font-size:1rem}}.harvest-error-card{max-width:600px;margin:4rem auto;padding:2.5rem;background:var(--color-card-background);border:1px solid var(--color-border);text-align:center}.harvest-error-header{margin-bottom:2rem}.harvest-error-header h2{font-size:1.75rem;font-weight:600;margin:0;color:var(--color-text)}.harvest-error-content{text-align:left}.harvest-error-message{font-size:1rem;line-height:1.6;color:var(--color-text-muted);margin:0 0 2rem;text-align:center}.harvest-error-actions{margin:2rem 0;padding:1.5rem;background:var(--color-background);border:1px solid var(--color-border)}.harvest-error-actions h3{font-size:.9375rem;font-weight:600;margin:0 0 1rem;color:var(--color-text)}.harvest-error-suggestions{list-style:none;padding:0;margin:0}.harvest-error-suggestions li{margin-bottom:1rem;padding-left:1.5rem;position:relative;color:var(--color-text-muted);line-height:1.6}.harvest-error-suggestions li:last-child{margin-bottom:0}.harvest-error-suggestions li:before{content:"→";position:absolute;left:0;color:var(--color-accent)}.harvest-error-suggestions strong{color:var(--color-text);font-weight:500}.harvest-error-link{color:var(--color-accent);text-decoration:none;font-family:IBM Plex Mono,monospace;font-size:.875rem;border-bottom:1px solid transparent;transition:border-color .2s ease}.harvest-error-link:hover{border-bottom-color:var(--color-accent)}.harvest-error-support{margin:2rem 0;padding:1.5rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center}.harvest-error-support-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--color-card-background);color:var(--color-accent);text-decoration:none;font-weight:500;font-size:1rem;border:1px solid var(--color-border);transition:all .2s ease}.harvest-error-support-link:hover{background:var(--color-background);border-color:var(--color-accent)}.harvest-error-buttons{display:flex;gap:1rem;margin-top:2rem;justify-content:center}.harvest-retry-button{background:var(--color-accent)!important;color:var(--color-background)!important}.harvest-retry-button:hover{opacity:.9}.resource-button-secondary{background:var(--color-card-background)!important;border:1px solid var(--color-border)!important}.resource-button-secondary:hover{background:var(--color-background)!important}.harvest-error-technical{margin-top:2rem;padding:1rem;background:var(--color-background);border:1px solid var(--color-border);text-align:left}.harvest-error-technical summary{cursor:pointer;font-size:.875rem;color:var(--color-text-muted);-webkit-user-select:none;user-select:none}.harvest-error-technical summary:hover{color:var(--color-text)}.harvest-error-technical code{display:block;margin-top:1rem;padding:1rem;background:var(--color-card-background);border:1px solid var(--color-border);font-family:IBM Plex Mono,monospace;font-size:.8125rem;color:var(--color-text-muted);overflow-x:auto;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.harvest-error-card{padding:2rem 1.5rem}.harvest-error-buttons{flex-direction:column}.harvest-error-buttons .resource-button{width:100%}}.harvest-info-modal .modal-body,.harvest-faq-content{padding:0}.harvest-faq-section{padding:1.5rem;border-bottom:1px solid var(--color-border)}.harvest-faq-section:last-child{border-bottom:none}.harvest-faq-section.harvest-faq-collapsible{padding:0}.harvest-faq-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:none;border:none;cursor:pointer;text-align:left;transition:background-color .2s ease;font-family:var(--font-family-base)}.harvest-faq-header:hover{background:none!important}.harvest-faq-header:active:not(:disabled){background:none!important}.harvest-faq-header h3{font-size:1.125rem;font-weight:600;margin:0;color:var(--color-text);font-family:var(--font-family-base)}.harvest-faq-chevron{flex-shrink:0;color:var(--color-text-muted);transition:transform .3s ease;transform:rotate(0)}.harvest-faq-chevron.open{transform:rotate(180deg)!important}.harvest-faq-body{max-height:0;overflow:hidden;transition:max-height .3s ease}.harvest-faq-body.open{max-height:1000px}.harvest-faq-body-content{padding:0 1.5rem 1.5rem;font-family:var(--font-family-base)}.harvest-faq-section h3{font-size:1.125rem;font-weight:600;color:var(--color-text);font-family:var(--font-family-base)}.harvest-faq-section p{font-size:1rem;line-height:1.6;color:var(--color-text-muted);margin:0 0 1rem;font-family:var(--font-family-base)}.harvest-faq-section p:last-child{margin-bottom:0}.harvest-faq-section ul{list-style:none;padding:0;margin:0;font-family:var(--font-family-base)}.harvest-faq-section li{padding-left:1.5rem;margin-bottom:.75rem;position:relative;color:var(--color-text-muted);line-height:1.6;font-family:var(--font-family-base)}.harvest-faq-section li:last-child{margin-bottom:0}.harvest-faq-section li:before{content:"—";position:absolute;left:0;color:var(--color-accent)}.harvest-faq-section li strong{color:var(--color-text);font-weight:600}.harvest-faq-section a{color:var(--color-glow-anisota);text-decoration:underline;border-bottom:1px solid transparent;transition:border-color .2s ease}.harvest-faq-section a:hover{border-bottom-color:var(--color-accent)}@media (max-width: 768px){.harvest-faq-section{padding:1.25rem}.harvest-faq-section h3{font-size:1rem}.harvest-faq-section p,.harvest-faq-section li{font-size:.9375rem}}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.harvest-minigame-wrapper{margin:2rem auto 1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.harvest-minigame-container{position:relative;width:360px;height:360px;background:var(--color-background-secondary);border:2px solid var(--color-border);-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background-image:repeating-linear-gradient(0deg,transparent,transparent calc(100% / 6 - 1px),rgba(128,128,128,.1) calc(100% / 6 - 1px),rgba(128,128,128,.1) calc(100% / 6)),repeating-linear-gradient(90deg,transparent,transparent calc(100% / 6 - 1px),rgba(128,128,128,.1) calc(100% / 6 - 1px),rgba(128,128,128,.1) calc(100% / 6));background-size:100% 100%}.harvest-minigame-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000059;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:1000}.harvest-minigame-start-button{padding:1rem 2rem;font-size:1.25rem;font-weight:700;font-family:var(--font-family-base);background:var(--color-glow-anisota);color:var(--color-background);border:2px solid var(--color-glow-anisota);cursor:pointer;transition:all .2s ease}.harvest-minigame-start-button:hover{background:transparent;color:var(--color-glow-anisota);transform:scale(1.05)}.harvest-minigame-start-button:active{transform:scale(.95)}.harvest-minigame-round-info{font-family:var(--font-family-base);font-size:1rem;color:var(--color-text-secondary);margin:0}.harvest-minigame-round-end{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}.harvest-minigame-round-end h3{font-family:var(--font-family-base);font-size:2rem;font-weight:700;color:var(--color-glow-anisota);margin:0 0 1.5rem}.harvest-minigame-round-score{margin-bottom:1.5rem}.harvest-minigame-round-score-label{font-family:var(--font-family-base);font-size:.875rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.harvest-minigame-round-score-value{font-family:var(--font-family-base);font-size:3rem;font-weight:700;color:var(--color-glow-anisota);font-variant-numeric:tabular-nums}.harvest-record{position:absolute;cursor:pointer;transition:transform .15s ease,opacity .1s ease;transform:translate(-50%,-50%);transform-origin:center;display:flex;align-items:center;justify-content:center;padding:6%;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}@media (hover: hover) and (pointer: fine){.harvest-record:hover{transform:translate(-50%,-50%) scale(1.15);z-index:10}}.harvest-record:active{transform:translate(-50%,-50%) scale(.85);transition:none}@media (hover: none) and (pointer: coarse){.harvest-record{transition:none}}.harvest-record-sparkle{animation:sparkleRotate 3s linear infinite}@media (hover: hover) and (pointer: fine){.harvest-record-sparkle:hover{animation:sparkleRotate 1.5s linear infinite}}@keyframes sparkleRotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.harvest-phase-growing{opacity:.7;animation:growPulse .5s ease-in-out}.harvest-phase-peak{opacity:1;animation:peakGlow .4s ease-in-out infinite alternate}.harvest-phase-decay{opacity:.5;filter:grayscale(.3)}@keyframes growPulse{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}to{opacity:.7}}@keyframes peakGlow{0%{filter:brightness(1)}to{filter:brightness(1.3)}}.harvest-record-rare{animation:rarePulse 1.5s ease-in-out infinite}.harvest-record-rare.harvest-phase-peak{animation:rarePeakGlow .3s ease-in-out infinite alternate}@keyframes rarePulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.4)}}@keyframes rarePeakGlow{0%{filter:brightness(1.2)}to{filter:brightness(1.6)}}.harvest-catch-effect{position:absolute;pointer-events:none;transform:translate(-50%,-50%);font-family:var(--font-family-base);animation:harvestPop .8s cubic-bezier(.34,1.56,.64,1) forwards;z-index:100}.harvest-catch-points{font-size:1.5rem;font-weight:700;text-shadow:0 0 10px currentColor}.harvest-catch-timing{font-size:.75rem;font-weight:600;text-align:center;margin-top:.25rem;opacity:.8}.harvest-catch-perfect .harvest-catch-points{font-size:1.75rem;text-shadow:0 0 20px currentColor}.harvest-catch-perfect .harvest-catch-timing{font-size:.875rem;font-weight:700}@keyframes harvestPop{0%{transform:translate(-50%,-50%) scale(.5);opacity:1}40%{transform:translate(-50%,-80px) scale(1.2);opacity:1}to{transform:translate(-50%,-120px) scale(1);opacity:0}}.harvest-minigame-score{display:flex;gap:2rem;align-items:center;justify-content:center;font-family:var(--font-family-base);flex-wrap:wrap}.harvest-minigame-timer{font-size:1.5rem;font-weight:700;color:var(--color-glow-anisota);font-variant-numeric:tabular-nums;letter-spacing:.05em}.harvest-minigame-loading-time{font-size:1rem;font-weight:600;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.harvest-minigame-current-score{font-size:1.125rem;font-weight:600;color:var(--color-text)}.harvest-minigame-high-score{font-size:.875rem;color:var(--color-text-muted);font-weight:500}.harvest-minigame-back-links{margin-top:1rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.harvest-minigame-link-button{font-family:var(--font-family-base);font-size:.875rem;font-weight:600;color:var(--color-text-secondary);background:transparent;border:none;padding:0;cursor:pointer;transition:color .2s ease}.harvest-minigame-link-button:hover{color:var(--color-glow-anisota)}.harvest-minigame-link-button:active{transform:scale(.95)}.harvest-minigame-link-separator{font-family:var(--font-family-base);font-size:.875rem;color:var(--color-text-muted);-webkit-user-select:none;user-select:none}@media (max-width: 768px){.harvest-minigame-wrapper{width:100%;display:flex;flex-direction:column;align-items:center}.harvest-minigame-container{width:min(85vw,340px);height:min(85vw,340px)}.harvest-minigame-score{gap:1rem}.harvest-minigame-timer{font-size:1.25rem}.harvest-minigame-current-score{font-size:1rem}.harvest-minigame-high-score{font-size:.8rem}.harvest-minigame-round-end h3{font-size:1.5rem;margin:0 0 1rem}.harvest-minigame-round-score{margin-bottom:1rem}.harvest-minigame-round-score-value{font-size:2.25rem}.harvest-minigame-start-button{padding:.75rem 1.5rem;font-size:1rem}}@media (max-width: 400px){.harvest-minigame-container{width:min(80vw,320px);height:min(80vw,320px)}.harvest-minigame-round-end h3{font-size:1.25rem;margin:0 0 .75rem}.harvest-minigame-round-score{margin-bottom:.75rem}.harvest-minigame-round-score-label{font-size:.75rem;margin-bottom:.25rem}.harvest-minigame-round-score-value{font-size:1.75rem}.harvest-minigame-start-button{padding:.625rem 1.25rem;font-size:.875rem}.harvest-minigame-round-info{font-size:.875rem}}@media (prefers-reduced-motion: reduce){.harvest-record-rare,.harvest-phase-growing,.harvest-phase-peak{animation:none}.harvest-catch-effect{animation:harvestPopReduced .4s ease-out forwards}@keyframes harvestPopReduced{0%{opacity:1}to{opacity:0;transform:translate(-50%,-60px)}}}.harvest-user-container{max-width:900px;margin:0 auto}.harvest-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.harvest-minigame-header h2{font-size:2rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem}.harvest-minigame-header p{font-size:1rem;color:var(--color-text-secondary);margin:0 0 1rem}.harvest-loading-time-display{font-size:1.25rem;font-weight:600;color:var(--color-glow-anisota);margin-top:.75rem;font-variant-numeric:tabular-nums;letter-spacing:.05em}.harvest-loading-timer{font-size:4rem;font-weight:700;color:var(--color-glow-anisota);margin-bottom:1.5rem;font-variant-numeric:tabular-nums;letter-spacing:.05em;transition:transform .15s cubic-bezier(.34,1.56,.64,1);display:inline-block}.harvest-loading-timer.tick{animation:timerTick .15s cubic-bezier(.34,1.56,.64,1)}@keyframes timerTick{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.harvest-loading p{font-size:1.125rem;margin-bottom:.5rem;color:var(--color-text)}.harvest-loading-subtext{font-size:.875rem;color:var(--color-text-muted)}.harvest-loading-messages{margin-top:1.5rem;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.harvest-loading-message{font-size:1.125rem;color:var(--color-text);font-weight:500;margin:0;transition:opacity .3s ease,transform .3s ease;animation:messageEnter .6s ease}.harvest-loading-message-fade{opacity:0;transform:translateY(-10px)}.harvest-loading-message-static{animation:none}.harvest-loading-estimate{font-size:.9rem;color:var(--color-text-secondary);font-weight:500;margin:.25rem 0 0;opacity:.8}.harvest-loading-estimate-note{font-size:.8rem;color:var(--color-text-muted);font-weight:400;margin-left:.25rem}.harvest-loading-submessage{font-size:.875rem;color:var(--color-text-muted);margin:.25rem 0 0}.harvest-loading-submessage{font-size:.875rem;color:var(--color-text-muted);margin:0;font-weight:400}@keyframes messageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.harvest-error{text-align:center;padding:3rem 1rem}.harvest-error h2{font-size:1.5rem;margin-bottom:1rem;color:var(--color-text)}.harvest-error p{margin-bottom:1.5rem;color:var(--color-text-secondary)}.harvest-error button{padding:.75rem 2rem;background:var(--color-link);color:var(--color-background);border:2px solid var(--color-link);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:var(--font-family-base)}.harvest-error button:hover{background:var(--color-background);color:var(--color-link)}.harvest-header{display:flex;align-items:center;margin-bottom:1rem;gap:1rem;justify-content:center}.harvest-search-button{gap:.5rem;background:transparent;font-size:.9375rem;font-weight:500;display:flex;align-items:center;padding:.5rem .75rem;cursor:pointer;transition:all .2s ease;border-radius:0;height:100%}.harvest-search-button:hover{border-color:var(--color-link);color:var(--color-link);background:color-mix(in srgb,var(--color-link) 5%,transparent)}.harvest-search-button svg{flex-shrink:0}.harvest-year-selector{display:flex;align-items:center;gap:.75rem}.harvest-year-selector label{font-weight:600;color:var(--color-text);white-space:nowrap}.harvest-year-selector .custom-dropdown{min-width:120px}.harvest-user-hero{margin-bottom:2rem;padding:1rem 0;text-align:center}.harvest-hero-header{margin-bottom:1rem}.harvest-hero-subtitle{font-size:1.5rem;margin:0}.harvest-hero-main{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.harvest-user-avatar{width:50px;height:50px;object-fit:cover;border:2px solid var(--color-border);flex-shrink:0}.harvest-hero-text{text-align:center;flex:0 1 auto}.harvest-user-title{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-text)}.harvest-user-handle{font-size:.9375rem;color:var(--color-text-secondary);margin:.125rem 0 0}.harvest-user-description{font-size:.9375rem;line-height:1.5;color:var(--color-text-secondary);margin:0 auto 1rem;max-width:300px}.harvest-user-for{line-height:1.5;color:var(--color-text-secondary);font-style:italic}.harvest-actions{display:flex;justify-content:center;gap:.5rem;margin:1rem 0}.harvest-cta-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;background:transparent;color:var(--color-text);border:2px solid var(--color-border);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.harvest-cta-primary{border-color:color-mix(in srgb,var(--color-glow-anisota) 60%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--color-glow-anisota) 20%,transparent)}.harvest-cta-primary:hover{border-color:color-mix(in srgb,var(--color-glow-anisota) 80%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--color-glow-anisota) 40%,transparent);background:color-mix(in srgb,var(--color-glow-anisota) 5%,transparent)}.harvest-cta-secondary{border-color:var(--color-border)}.harvest-cta-secondary:hover{background:var(--color-card-background-hover);border-color:var(--color-border-light)}.harvest-enhanced-text{margin:8px 0 0;font-size:14px;color:var(--color-text-secondary);opacity:.8}.harvest-cache-info{margin:8px 0 0;font-size:13px;color:var(--color-text-secondary);opacity:.75}.harvest-share-container{position:relative;display:inline-block}.harvest-share-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background:var(--color-card-background);border:1px solid var(--color-border);min-width:200px;z-index:10}.harvest-share-option{width:100%;padding:.75rem 1rem;background:transparent;color:var(--color-text);border:none;border-bottom:1px solid var(--color-border);text-align:left;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;gap:.5rem}.harvest-share-option:hover:not(:disabled){background:var(--color-card-background-hover)}.harvest-share-option:last-child{border-bottom:none}.harvest-share-option-locked{color:var(--color-text-muted);cursor:not-allowed;opacity:.6}.harvest-overview h2,.harvest-highlights h2,.harvest-section h2{font-size:1.75rem;font-weight:700;color:var(--color-text);text-align:center}.harvest-overview{margin-bottom:1.5rem}.harvest-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.harvest-stat-card{padding:1.5rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center}.harvest-stat-value{font-size:2rem;font-weight:700;color:var(--color-glow-anisota);margin-bottom:.5rem}.harvest-stat-label{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.harvest-highlights{margin-bottom:3rem;background:none;border:none;padding:0}.harvest-highlights h2{font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;color:var(--color-text)}.harvest-cardstack-container{min-height:400px}.harvest-section{margin-bottom:3rem}.harvest-section h3{font-size:1.25rem;font-weight:600;color:var(--color-text)}.harvest-patterns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.harvest-pattern-card{padding:2rem 1.5rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center;transition:border-color .2s ease}.harvest-pattern-card:hover{border-color:var(--color-glow-anisota)}.harvest-pattern-card h3{font-size:.875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.harvest-pattern-value{font-size:1.75rem;font-weight:700;color:var(--color-glow-anisota);margin-bottom:.75rem;line-height:1.2}.harvest-pattern-detail{font-size:.9375rem;color:var(--color-text-muted);line-height:1.4}.harvest-interactions-list{display:flex;flex-direction:column;gap:1rem}.harvest-interaction-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-card-background);border:2px solid var(--color-border)}.harvest-interaction-rank{font-size:1.25rem;font-weight:700;color:var(--color-link);min-width:40px}.harvest-interaction-avatar{width:50px;height:50px;object-fit:cover;flex-shrink:0}.harvest-interaction-info{flex:1;min-width:0}.harvest-interaction-name{font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.harvest-interaction-handle{font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.harvest-interaction-count{font-size:.9375rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.harvest-content-subsection{margin-bottom:2rem}.harvest-emoji-list{display:flex;flex-wrap:wrap;gap:1rem}.harvest-emoji-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--color-card-background);border:2px solid var(--color-border);min-width:80px}.harvest-emoji{font-size:2rem}.harvest-emoji-count{font-size:.875rem;color:var(--color-text-secondary)}.harvest-words-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.harvest-word-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--color-card-background);border:2px solid var(--color-border)}.harvest-word{font-weight:600;color:var(--color-text)}.harvest-word-count{font-size:.875rem;color:var(--color-text-secondary)}.harvest-facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.harvest-fact-card{padding:1.5rem;background:var(--color-card-background);border:2px solid var(--color-border);text-align:center}.harvest-fact-value{font-size:2rem;font-weight:700;color:var(--color-link);margin-bottom:.5rem}.harvest-fact-label{font-size:.875rem;color:var(--color-text-secondary)}.harvest-cta{margin:3rem 0;padding:2rem;background:var(--color-card-background);border:2px solid var(--color-link);text-align:center}.harvest-cta h2{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--color-text)}.harvest-cta p{margin-bottom:1.5rem;color:var(--color-text-secondary)}.harvest-footer{text-align:center;padding:2rem 0;color:var(--color-text-secondary);font-size:.875rem}.harvest-footer p{margin-bottom:.5rem}.settings-page.harvest-user-page{padding-top:12dvh}.settings-page.harvest-minigame-page{padding-top:15dvh}@media (max-width: 768px){.settings-page.harvest-user-page{margin-top:1rem}.harvest-user-title{font-size:1.25rem}.harvest-hero-main{gap:.875rem}.harvest-share-menu{left:130%}.harvest-user-avatar{width:50px;height:50px}.harvest-user-handle,.harvest-user-description{font-size:.875rem}.harvest-header{align-items:stretch}.harvest-search-button,.harvest-year-selector{justify-content:center}.harvest-stats-grid{grid-template-columns:repeat(2,1fr)}.harvest-patterns-grid{grid-template-columns:1fr}.harvest-interaction-item{flex-wrap:wrap}.harvest-loading p{font-size:.8rem;margin-bottom:.5rem;color:var(--color-text)}.harvest-interaction-count{width:100%;text-align:left;margin-left:90px}}.harvest-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.harvest-info-card{padding:1.25rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center;transition:all .2s ease}.harvest-info-card:hover{background:var(--color-card-background-hover);border-color:var(--color-glow-anisota)}.harvest-info-value{font-size:1.5rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem;font-variant-numeric:tabular-nums}.harvest-info-label{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.harvest-interaction-stats{text-align:right;display:flex;flex-direction:column;gap:.5rem}.harvest-interaction-count{font-size:1rem;font-weight:600;color:var(--color-text);white-space:nowrap}.harvest-interaction-breakdown{display:flex;flex-direction:column;gap:.125rem;font-size:.75rem;color:var(--color-text-muted)}.harvest-interaction-breakdown span{white-space:nowrap}.harvest-interaction-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.harvest-summary-stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;background:var(--color-background);border:1px solid var(--color-border)}.harvest-summary-value{font-size:1.5rem;font-weight:700;color:var(--color-glow-anisota);font-variant-numeric:tabular-nums}.harvest-summary-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.harvest-extremes{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.harvest-extreme-post{padding:1.5rem;background:var(--color-background);border:1px solid var(--color-border)}.harvest-extreme-post h3{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:1rem;font-family:var(--font-family-base)}.harvest-extreme-text{font-size:.9375rem;line-height:1.6;color:var(--color-text);margin-bottom:1rem;font-family:var(--font-family-base)}.harvest-extreme-date{font-size:.8125rem;color:var(--color-text-muted)}.harvest-records-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1rem}.harvest-record-card{padding:1.25rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center;transition:all .2s ease;position:relative}.harvest-record-card:hover{background:var(--color-card-background-hover);border-color:var(--color-glow-anisota)}.harvest-record-value{font-size:1.75rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem;font-variant-numeric:tabular-nums}.harvest-record-label{font-size:.875rem;color:var(--color-text-muted);margin-bottom:.25rem}.harvest-record-percent{font-size:.75rem;color:var(--color-glow-anisota);font-weight:600}@media (max-width: 768px){.harvest-extremes{grid-template-columns:1fr}.harvest-records-grid,.harvest-info-grid{grid-template-columns:repeat(2,1fr)}.harvest-interaction-summary{grid-template-columns:repeat(3,1fr)}}.harvest-stat-card.harvest-stat-enhanced,.harvest-info-card.harvest-info-enhanced{border-color:var(--color-glow-anisota);background:linear-gradient(135deg,var(--color-background) 0%,color-mix(in srgb,var(--color-glow-anisota) 5%,transparent) 100%)}.harvest-stat-card.harvest-stat-enhanced:hover,.harvest-info-card.harvest-info-enhanced:hover{box-shadow:0 4px 12px color-mix(in srgb,var(--color-glow-anisota) 20%,transparent)}.harvest-monthly-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-top:1.5rem}.harvest-month-card{padding:1.25rem;background:var(--color-background);border:1px solid var(--color-border);text-align:center;transition:all .2s ease}.harvest-month-card:hover{background:var(--color-card-background-hover);border-color:var(--color-glow-anisota);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.harvest-month-card h3{font-size:.875rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.harvest-month-stat{font-size:1.75rem;font-weight:700;color:var(--color-glow-anisota);margin-bottom:.25rem;font-variant-numeric:tabular-nums}.harvest-month-label{font-size:.75rem;color:var(--color-text-muted);margin-bottom:.5rem}.harvest-month-posts{font-size:.875rem;color:var(--color-text);margin-bottom:.25rem}.harvest-month-avg{font-size:.75rem;color:var(--color-text-muted)}.harvest-month-highlights{display:flex;gap:2rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);flex-wrap:wrap}.harvest-highlight-item{font-size:.875rem;color:var(--color-text)}.harvest-highlight-item strong{color:var(--color-glow-anisota);font-weight:600}.harvest-top-posts-list{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.harvest-top-post-card{display:flex;gap:1rem;padding:1.5rem;background:var(--color-background);border:1px solid var(--color-border);transition:all .2s ease}.harvest-top-post-card:hover{background:var(--color-card-background-hover);border-color:var(--color-glow-anisota);transform:translate(4px)}.harvest-post-rank{font-size:1.5rem;font-weight:700;color:var(--color-glow-anisota);flex-shrink:0;width:50px;text-align:center}.harvest-post-content{flex:1;min-width:0}.harvest-post-text{font-size:.9375rem;line-height:1.5;color:var(--color-text);margin-bottom:.75rem;word-wrap:break-word;overflow-wrap:break-word}.harvest-post-metrics{display:flex;gap:1.25rem;flex-wrap:wrap;margin-bottom:.5rem}.harvest-metric{font-size:.8125rem;color:var(--color-text-muted);font-weight:500}.harvest-post-date{font-size:.75rem;color:var(--color-text-muted)}.harvest-timeline{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.harvest-timeline-item{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;background:var(--color-background);border:1px solid var(--color-border);border-left:3px solid var(--color-glow-anisota);transition:all .2s ease}.harvest-timeline-item:hover{background:var(--color-card-background-hover);transform:translate(4px)}.harvest-timeline-date{font-size:.8125rem;color:var(--color-text-muted);font-weight:500;min-width:120px}.harvest-timeline-handle{font-size:.9375rem;color:var(--color-text);font-weight:600;font-family:Courier New,monospace}@media (max-width: 768px){.harvest-actions{flex-direction:column;gap:.75rem;width:100%;align-items:stretch;flex-flow:wrap}.harvest-share-container{display:block}.harvest-monthly-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.harvest-month-card{padding:1rem}.harvest-month-stat{font-size:1.5rem}.harvest-month-highlights{flex-direction:column;gap:.75rem}.harvest-top-post-card{flex-direction:column;padding:1.25rem}.harvest-post-rank{text-align:left;width:auto}.harvest-post-metrics{gap:.75rem}.harvest-timeline-item{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem}.harvest-timeline-date{min-width:auto}}.harvest-filter-note{font-size:.875rem;color:var(--color-text-secondary, #888);font-style:italic;margin:.25rem 0 .75rem;opacity:.8}.harvest-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.harvest-toggle-comparisons{padding:.5rem 1rem;font-size:.9rem;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;transition:all .2s}.harvest-toggle-comparisons:hover{background:var(--color-background);border-color:var(--color-link)}.harvest-comparison-info{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:1rem;padding:.75rem;background:var(--color-card-background);border-left:3px solid var(--color-link)}.harvest-comparison-summary{background:var(--color-card-background);padding:2rem;border:1px solid var(--color-border)}.harvest-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:1.5rem}.harvest-stat-card{position:relative;display:flex;flex-direction:column;gap:.25rem}@media (max-width: 768px){.harvest-section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.harvest-toggle-comparisons{width:100%}.harvest-comparison-grid{grid-template-columns:1fr}}.harvest-minigame-page{min-height:100vh}.harvest-minigame-page .settings-container{max-width:800px;padding:0 1rem;box-sizing:border-box}.harvest-minigame-page-header{text-align:center}.harvest-minigame-page-title{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem}.harvest-minigame-page-description{font-size:1.125rem;color:var(--color-text-secondary);margin-bottom:.5rem}.harvest-minigame-learn-link{display:block;margin:0 auto;background:none;border:none;color:var(--color-glow-anisota);font-size:.9375rem;cursor:pointer;padding:0;font-family:inherit;text-decoration:underline;transition:opacity .2s ease}.harvest-minigame-learn-link:hover{opacity:.8}.harvest-minigame-page-content{display:flex;flex-direction:column;align-items:center;gap:2rem}.harvest-minigame-instructions{max-width:800px;margin-top:2rem;padding:2rem;background:var(--color-card-background);border:2px solid var(--color-border)}.harvest-minigame-instructions-content{padding:0}.harvest-minigame-auth-notice{padding:1rem;margin-bottom:1.5rem;background:var(--color-background-secondary);border:2px solid var(--color-border);text-align:center}.harvest-minigame-auth-notice p{margin:0;font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.harvest-minigame-instructions-content .harvest-minigame-instruction-grid{margin-bottom:2rem}.harvest-minigame-instructions-content .harvest-minigame-shapes-info{padding-top:1.5rem;border-top:2px solid var(--color-border);margin-bottom:1.5rem}.harvest-minigame-bonuses-info{padding-top:1.5rem;border-top:2px solid var(--color-border);text-align:center}.harvest-minigame-bonuses-info p{margin:.5rem 0;font-size:.9375rem;color:var(--color-text-secondary)}.harvest-minigame-bonuses-info strong{color:var(--color-text);font-weight:600}.harvest-minigame-instructions h3{font-size:1.5rem;font-weight:700;color:var(--color-text);margin-bottom:1.5rem;text-align:center}.harvest-minigame-instruction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.harvest-minigame-instruction{display:flex;gap:1rem;align-items:flex-start}.harvest-minigame-instruction-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;line-height:1;opacity:.9}.harvest-minigame-instruction-icon-peak{animation:instructionPeakGlow .6s ease-in-out infinite alternate}.harvest-minigame-instruction-icon-decay{opacity:.5;filter:grayscale(.3)}.harvest-minigame-instruction-icon-rare{animation:instructionRarePulse 1.5s ease-in-out infinite}@keyframes instructionPeakGlow{0%{filter:brightness(1)}to{filter:brightness(1.5)}}@keyframes instructionRarePulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.6)}}.harvest-minigame-instruction p{margin:0;font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.harvest-minigame-instruction strong{color:var(--color-text);font-weight:600}.harvest-minigame-shapes-info{padding-top:1.5rem;border-top:2px solid var(--color-border);text-align:center}.harvest-minigame-shapes-info p{margin:.5rem 0;font-size:.9375rem;color:var(--color-text-secondary)}.harvest-minigame-shapes-info strong{color:var(--color-text);font-weight:600}.harvest-minigame-stats{width:100%;max-width:100%;margin-top:2rem;padding:2rem;background:var(--color-card-background);border:2px solid var(--color-border);box-sizing:border-box}.harvest-minigame-stats h3{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0 0 1.5rem;text-align:center}.harvest-minigame-stats h4{font-size:1.125rem;font-weight:600;color:var(--color-text);margin:1.5rem 0 1rem;text-align:center}.harvest-minigame-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.harvest-minigame-stat{display:flex;flex-direction:column;align-items:center;padding:1rem;background:var(--color-background-secondary);border:1px solid var(--color-border)}.harvest-minigame-stat-label{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem;text-align:center}.harvest-minigame-stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.harvest-minigame-stat-perfect{color:var(--color-glow-anisota)}.harvest-minigame-stat-early{color:var(--color-text-secondary)}.harvest-minigame-stat-late{color:var(--color-text-muted)}.harvest-minigame-stats-section{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--color-border)}.harvest-minigame-save-status{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--color-border);text-align:center}.harvest-minigame-save-status p{margin:.5rem 0;font-size:.9375rem;color:var(--color-text-secondary)}.harvest-minigame-save-success{color:var(--color-success)!important;font-weight:600}.harvest-minigame-save-note{opacity:.8}.harvest-minigame-stats-footer{width:100%;max-width:800px;margin:2rem auto;padding:2rem;background:var(--color-card-background);border:2px solid var(--color-border)}.harvest-minigame-stats-footer h3{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;text-align:center}.harvest-minigame-stats-description{font-size:.9375rem;color:var(--color-text-secondary);text-align:center;margin:0 0 1.5rem}@media (max-width: 768px){.harvest-minigame-page .settings-container{max-width:100%;padding:0 1rem}.harvest-minigame-page-title{font-size:2rem}.harvest-minigame-page-description{font-size:1rem}.harvest-minigame-instructions{padding:1.5rem}.harvest-minigame-instruction-grid{grid-template-columns:1fr;gap:1rem}.harvest-minigame-stats,.harvest-minigame-stats-footer{padding:1.5rem}.harvest-minigame-stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.harvest-minigame-stat{padding:.75rem}.harvest-minigame-stat-value{font-size:1.25rem}}@media (prefers-reduced-motion: reduce){.harvest-minigame-instruction-icon-peak,.harvest-minigame-instruction-icon-rare{animation:none}}.harvest-visualizer-page .harvest-learn-more{background:none;border:none;color:var(--color-link);cursor:pointer;text-decoration:underline;font:inherit;padding:0;margin-left:.25rem}.harvest-visualizer-page .harvest-learn-more:hover{opacity:.8}.harvest-visualizer-page code{background:var(--color-background-secondary);padding:.2rem .4rem;font-family:Monaco,Courier New,monospace;font-size:.9em}.paste-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.paste-modal{background:var(--color-background);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;box-shadow:0 20px 60px #0000004d}.paste-modal h2{margin:0 0 1rem;color:var(--color-text);font-size:1.5rem}.paste-modal-description{color:var(--color-text-secondary);margin-bottom:1rem;line-height:1.5}.paste-modal-example{background:var(--color-background-secondary);padding:1rem;font-family:Monaco,Courier New,monospace;font-size:.85rem;overflow-x:auto;margin-bottom:1.5rem;color:var(--color-text);line-height:1.4}.paste-modal-textarea{width:100%;min-height:300px;padding:1rem;font-family:Monaco,Courier New,monospace;font-size:.9rem;background:var(--color-background-secondary);color:var(--color-text);border:2px solid var(--color-border);resize:vertical;margin-bottom:1rem}.paste-modal-textarea:focus{outline:none;border-color:var(--color-link)}.paste-modal-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:color-mix(in srgb,var(--color-error) 10%,transparent);color:var(--color-error);margin-bottom:1rem;font-size:.9rem}.paste-modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.paste-modal-button{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.paste-modal-button:disabled{opacity:.5;cursor:not-allowed}.paste-modal-button-primary{background:var(--color-link);color:#fff}.paste-modal-button-primary:hover:not(:disabled){opacity:.9}.paste-modal-button-secondary{background:var(--color-background-secondary);color:var(--color-text)}.paste-modal-button-secondary:hover{background:var(--color-background-tertiary)}@media (max-width: 768px){.paste-modal{padding:1.5rem;max-height:95vh}.paste-modal h2{font-size:1.25rem}.paste-modal-example{font-size:.75rem;padding:.75rem}.paste-modal-textarea{min-height:200px;font-size:.85rem}}.mothing-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:var(--color-background);color:var(--color-text);overflow:hidden}body:has(.mothing-page) .footer-controls-fixed .interactive-corner-item.active{color:var(--color-accent)}.mothing-canvas-host{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none;cursor:grab}.mothing-canvas-host:active{cursor:grabbing}.mothing-canvas{display:block;width:100%;height:100%}.mothing-fade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#000;opacity:1;pointer-events:none;transition:opacity 1.8s ease-out}.mothing-fade.clear{opacity:0}@media (prefers-reduced-motion: reduce){.mothing-fade{transition:opacity .6s ease-out}}.mothing-grain{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;z-index:3;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");background-size:160px 160px;animation:mothing-grain-shift .5s steps(1) infinite}@keyframes mothing-grain-shift{0%{background-position:0 0}20%{background-position:-41px 17px}40%{background-position:23px -38px}60%{background-position:-29px -11px}80%{background-position:13px 31px}to{background-position:0 0}}@media (prefers-reduced-motion: reduce){.mothing-grain{animation:none}}.mothing-controls{position:absolute;top:0;right:0;bottom:0;width:320px;max-width:86vw;display:flex;flex-direction:column;background:var(--color-background);border-left:1px solid var(--color-border);transform:translate(100%);transition:transform .4s ease-out;z-index:10}.mothing-controls.open{transform:translate(0)}.mothing-controls-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;padding-top:max(16px,env(safe-area-inset-top));border-bottom:1px solid var(--color-border)}.mothing-controls-title{font-size:var(--font-size-1-1);font-weight:500;color:var(--color-text)}.mothing-controls-header-actions{display:flex;align-items:center;gap:4px}.mothing-controls-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-radius:0;color:var(--color-text-muted);cursor:pointer;transition:color .25s ease-out}.mothing-controls-icon-btn:hover{color:var(--color-text)}.mothing-controls-icon-btn.active{color:var(--color-accent)}.mothing-controls-body{flex:1;overflow-y:auto;padding:16px 18px calc(20px + env(safe-area-inset-bottom))}.mothing-presets{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.mothing-preset-btn{padding:9px 10px;background:var(--color-card-background);border:1px solid var(--color-border);border-radius:0;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-0-9);font-weight:200;cursor:pointer;transition:border-color .25s ease-out,background .25s ease-out}.mothing-preset-btn:hover{border-color:var(--color-accent);background:var(--color-card-background-hover)}.mothing-controls-group{margin-bottom:18px}.mothing-controls-group-label{font-size:var(--font-size-0-8);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:10px}.mothing-control-row{margin-bottom:14px}.mothing-control-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.mothing-control-row-head label{font-size:var(--font-size-0-9);font-weight:200;color:var(--color-text);cursor:pointer}.mothing-control-value{font-family:var(--font-family-mono);font-size:var(--font-size-0-8);color:var(--color-text-muted)}@media (max-width: 600px){.mothing-controls{top:auto;left:0;right:0;width:100%;max-width:none;height:auto;max-height:62vh;border-left:none;border-top:1px solid var(--color-border);transform:translateY(100%)}.mothing-controls.open{transform:translateY(0)}}.mothing-hint{position:absolute;left:0;right:0;z-index:10;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 78px);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:0 20px;font-size:var(--font-size-0-9);font-weight:200;color:var(--color-text-muted);text-shadow:0 1px 8px rgba(0,0,0,.9);pointer-events:none;opacity:1;transition:opacity 1.6s ease-out}.mothing-hint.hidden{opacity:0}.mothing-hint-soft{font-style:italic;opacity:.7}.mothing-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--color-background);font-weight:200;color:var(--color-text-muted);text-align:center;padding:0 24px}.mothing-veil p{margin:0}.mothing-inventory{position:absolute;top:0;right:0;bottom:0;width:320px;max-width:86vw;display:flex;flex-direction:column;background:var(--color-background);border-left:1px solid var(--color-border);z-index:12}.mothing-inventory-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;padding-top:max(16px,env(safe-area-inset-top));border-bottom:1px solid var(--color-border)}.mothing-inventory-title{font-size:var(--font-size-1-1);font-weight:500;color:var(--color-text)}.mothing-inventory-body{flex:1;overflow-y:auto;padding:16px 18px calc(20px + env(safe-area-inset-bottom))}.mothing-inventory-empty{margin:0;font-size:var(--font-size-0-9);font-weight:200;font-style:italic;color:var(--color-text-muted)}.mothing-inventory-group{margin-bottom:18px}.mothing-inventory-group-label{font-size:var(--font-size-0-8);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:10px}.mothing-inventory-item{padding:9px 10px;margin-bottom:6px;background:var(--color-card-background);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-0-9);font-weight:200}@media (max-width: 600px){.mothing-inventory{top:auto;left:0;right:0;width:100%;max-width:none;height:auto;max-height:62vh;border-left:none;border-top:1px solid var(--color-border)}}@media (prefers-reduced-motion: reduce){.mothing-hint{transition:none}}
