.settings-container{position:fixed;top:var(--space-sm);right:var(--space-sm);z-index:150}.settings-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.2);border-radius:var(--radius-sm);background:#80808026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#808080cc;font-size:1.1rem;cursor:pointer;transition:all var(--transition-fast);line-height:1;padding:0;letter-spacing:1px}.settings-btn:hover{border-color:#80808059;color:#505050;background:#80808040}.settings-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:0;overflow:hidden;animation:settingsFadeIn .15s ease}@keyframes settingsFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.settings-menu-header{padding:10px 14px;font-size:.78rem;color:#00000080;border-bottom:1px solid rgba(0,0,0,.08);letter-spacing:.02em}.settings-font-section{padding:10px 14px}.settings-font-label{font-size:.78rem;color:#00000080;margin-bottom:8px}.settings-font-options{display:flex;gap:4px}.settings-font-btn{flex:1;padding:6px 2px;background:none;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#0000008c;font-size:.72rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.settings-font-btn:hover{background:#0000000a;color:#000000e6}.settings-font-btn--active{border-color:#0006;color:#0a0a0a;background:#0000000f}.settings-font-btn--active:hover{background:#0000001a}.settings-action-section{border-top:1px solid rgba(0,0,0,.08);padding:10px 14px}.settings-action-btn{display:block;width:100%;padding:8px 12px;background:none;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#0009;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;text-align:center;transition:all var(--transition-fast)}.settings-action-btn:hover:not(:disabled){background:#0000000a;color:#000000e6;border-color:#0003}.settings-action-btn:disabled{opacity:.3;cursor:not-allowed}.settings-action-row{display:flex;gap:6px}.settings-action-btn--half{flex:1}.settings-bgm-list{display:flex;flex-direction:column;gap:2px;margin-top:4px}.settings-bgm-item{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;background:none;border:none;color:#0009;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;text-align:left;border-radius:0;transition:background var(--transition-fast)}.settings-bgm-item:hover{background:#0000000a;color:#000000e6}.settings-bgm-item--active{color:#0a0a0a;background:#0000000f}.settings-bgm-item--active:hover{background:#0000001a}.settings-bgm-playing{font-size:.75rem;animation:settingsBgmPulse 1.5s ease infinite}@keyframes settingsBgmPulse{0%,to{opacity:1}50%{opacity:.4}}.settings-bgm-stop{display:block;width:100%;margin-top:6px;padding:6px 10px;background:none;border:none;color:#00000073;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;text-align:center;border-radius:0;transition:all var(--transition-fast)}.settings-bgm-stop:hover{background:#f8717114;color:#dc2626e6}.settings-ambience-tag{display:flex;align-items:center;gap:8px;padding:4px 0 6px;font-size:.82rem;color:#000000b3}.settings-ambience-indicator{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade8080;animation:settingsBgmPulse 1.5s ease infinite;flex-shrink:0}.settings-ambience-volume{display:flex;align-items:center;gap:8px;padding:4px 0}.settings-ambience-vol-icon{font-size:.85rem;line-height:1;width:18px;text-align:center;flex-shrink:0}.settings-ambience-slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:#0000001f;outline:none;cursor:pointer}.settings-ambience-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#0009;border:none;cursor:pointer}.settings-ambience-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#0009;border:none;cursor:pointer}.settings-ambience-slider::-moz-range-track{height:4px;border-radius:2px;background:#0000001f}.settings-ambience-vol-value{font-size:.72rem;color:#0006;min-width:22px;text-align:right;font-variant-numeric:tabular-nums}.settings-ambience-tag--stopped{color:#0006}.settings-ambience-indicator--stopped{background:#0003;box-shadow:none;animation:none}.settings-bgm-restart{display:block;width:100%;margin-top:6px;padding:6px 10px;background:none;border:none;color:#00000073;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;text-align:center;border-radius:0;transition:all var(--transition-fast)}.settings-bgm-restart:hover{background:#4ade8014;color:#16a34ae6}.settings-toggle-section{padding:8px 14px}.settings-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:10px}.settings-toggle-label{font-size:.82rem;color:#000000a6}.settings-toggle-input{position:absolute;opacity:0;width:0;height:0}.settings-toggle-track{position:relative;width:36px;height:20px;background:#0000001f;border-radius:10px;transition:background .2s;flex-shrink:0}.settings-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#00000059;transition:transform .2s,background .2s}.settings-toggle-input:checked+.settings-toggle-track{background:#0a0a0a}.settings-toggle-input:checked+.settings-toggle-track:after{transform:translate(16px);background:#fff}.settings-model-selector{display:flex;gap:4px;margin-top:8px}.settings-model-btn{flex:1;padding:5px 2px;background:none;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#0000008c;font-size:.72rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.settings-model-btn:hover{background:#0000000a;color:#000000e6}.settings-model-btn--active{border-color:#0006;color:#0a0a0a;background:#0000000f}.settings-model-btn--active:hover{background:#0000001a}.settings-select{width:100%;padding:7px 10px;margin-top:4px;background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#0a0a0a;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;outline:none;transition:border-color var(--transition-fast)}.settings-select:hover,.settings-select:focus{border-color:#00000040}.settings-select option{background:#fff;color:#0a0a0a}.settings-home-section{border-top:1px solid rgba(0,0,0,.08)}.settings-home-btn{display:block;width:100%;padding:10px 14px;background:none;border:none;color:#0000008c;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.settings-home-btn:hover{background:#0000000a;color:#000000e6}.settings-home-confirm{padding:10px 14px}.settings-home-confirm-text{font-size:.78rem;color:#dc2626e6;margin-bottom:10px;line-height:1.4}.settings-home-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.settings-home-confirm-btn{padding:5px 14px;border-radius:0;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);border:1px solid rgba(0,0,0,.1)}.settings-home-confirm-btn--cancel{background:none;color:#0000008c}.settings-home-confirm-btn--cancel:hover{background:#0000000a;color:#000000d9}.settings-home-confirm-btn--ok{background:#dc262614;border-color:#dc26264d;color:#dc2626f2}.settings-home-confirm-btn--ok:hover{background:#dc262626}.settings-metaso-user{display:flex;align-items:center;gap:8px}.settings-metaso-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.settings-metaso-info{flex:1;overflow:hidden;display:flex;flex-direction:column;gap:2px}.settings-metaso-name{font-size:.82rem;color:#000c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:3px}.settings-metaso-name--pro{color:#b8860b;font-weight:600}.settings-metaso-pro-badge{font-size:.78rem;line-height:1;flex-shrink:0}.settings-metaso-credits{font-size:.7rem;color:#0006;font-variant-numeric:tabular-nums}.settings-metaso-recharge{margin-left:6px;padding:1px 6px;background:#00000014;border:1px solid rgba(0,0,0,.2);border-radius:2px;color:#000c;font-size:.65rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast)}.settings-metaso-recharge:hover{background:#00000026;color:#0a0a0a}.settings-metaso-logout{padding:3px 8px;background:none;border:1px solid rgba(0,0,0,.12);border-radius:0;color:#00000080;font-size:.72rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.settings-metaso-logout:hover{background:#dc26260f;color:#dc2626e6;border-color:#dc26264d}.settings-metaso-login-btn{background:#0000000f;border-color:#0003;color:#000c}.settings-metaso-login-btn:hover:not(:disabled){background:#0000001f;color:#0a0a0a;border-color:#00000059}@media(max-width:768px){.settings-btn{width:32px;height:32px;font-size:1rem}.settings-menu{min-width:180px;right:0}.settings-fullscreen-btn{display:none}}.upload-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fff;padding:var(--space-lg);position:relative;overflow:hidden}.upload-ripple-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.upload-container{width:100%;max-width:720px;display:flex;flex-direction:column;gap:var(--space-lg);position:relative;z-index:1}.upload-container>*{animation:entFadeUp .5s cubic-bezier(.16,1,.3,1) both}.upload-container>*:nth-child(1){animation-delay:0s}.upload-container>*:nth-child(2){animation-delay:.06s}.upload-container>*:nth-child(3){animation-delay:.12s}.upload-container>*:nth-child(4){animation-delay:.18s}.upload-container>*:nth-child(5){animation-delay:.24s}.upload-container>*:nth-child(6){animation-delay:.3s}.upload-container>*:nth-child(7){animation-delay:.36s}.upload-container>*:nth-child(8){animation-delay:.42s}.upload-container>*:nth-child(9){animation-delay:.48s}.upload-container>*:nth-child(10){animation-delay:.54s}@keyframes entFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.upload-header{text-align:center;margin-bottom:var(--space-sm);display:flex;flex-direction:column;align-items:center;gap:10px}.upload-eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.35em;color:#0000004d;font-weight:400;font-family:var(--font-sans)}.upload-title{font-family:var(--font-sans);font-size:2.1rem;font-weight:600;letter-spacing:-.02em;color:#0a0a0a}.upload-header-rule{width:36px;height:1px;background:#0000002e;margin-top:2px}.upload-random-btn{width:100%;padding:16px;border:1px solid rgba(0,0,0,.12);border-radius:0;background:#00000008;color:#000000b3;font-size:1rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all .25s ease;letter-spacing:.08em;position:relative;overflow:hidden}.upload-random-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000000a;opacity:0;transition:opacity .3s ease}.upload-random-btn:hover:not(:disabled){border-color:#00000059;color:#0a0a0a;transform:translateY(-1px)}.upload-random-btn:hover:not(:disabled):before{opacity:1}.upload-random-btn:active:not(:disabled){transform:translateY(0)}.upload-random-btn:disabled{opacity:.3;cursor:not-allowed}.upload-random-btn--loading{color:#00000059}.upload-tabs{display:flex;gap:2px;background:#0000000a;border-radius:0;padding:3px}.upload-tab{flex:1;padding:10px 16px;border:none;border-radius:0;background:transparent;color:#00000059;font-size:.9rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:color .25s ease,background .25s ease}.upload-tab:hover{color:#000000a6}.upload-tab--active{background:#0000000f;color:#0a0a0a}.upload-browser{display:flex;border:1px solid rgba(0,0,0,.1);border-radius:0;overflow:hidden;min-height:320px;max-height:420px}.upload-browser-categories{width:140px;min-width:140px;display:flex;flex-direction:column;border-right:1px solid rgba(0,0,0,.08);background:#00000004;overflow-y:auto}.upload-category-btn{display:flex;align-items:center;gap:7px;padding:12px 14px;border:none;background:transparent;color:#00000073;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;transition:color .2s ease,background .2s ease;text-align:left;white-space:nowrap;position:relative}.upload-category-btn:after{content:"";position:absolute;left:0;top:25%;bottom:25%;width:2px;background:#0a0a0a;opacity:0;transition:opacity .2s ease}.upload-category-btn:hover{background:#00000008;color:#000000bf}.upload-category-btn--active{background:#0000000d;color:#0a0a0a}.upload-category-btn--active:after{opacity:1}.upload-category-emoji{font-size:1rem;line-height:1}.upload-category-name{overflow:hidden;text-overflow:ellipsis}.upload-browser-games{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto}.upload-game-btn{padding:10px 14px;border:1px solid transparent;border-radius:0;background:transparent;color:#0000008c;font-size:.85rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s ease;text-align:left}.upload-game-btn:hover:not(:disabled){background:#00000008;color:#0a0a0a}.upload-game-btn--selected{background:#0000000f;border-color:#0000001f;color:#0a0a0a}.upload-game-btn--loading{color:#0000004d;cursor:wait}.upload-game-btn:disabled{cursor:not-allowed;opacity:.5}.upload-selected-indicator{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:0;background:#00000008;border:1px solid rgba(0,0,0,.1);color:#000c;font-size:.85rem;font-family:var(--font-sans)}.upload-selected-icon{color:#0a0a0a;font-size:1rem}.upload-selected-chars{margin-left:auto;color:#0000004d;font-size:.75rem}.upload-dropzone{border:1.5px dashed rgba(0,0,0,.15);border-radius:0;padding:var(--space-2xl) var(--space-lg);text-align:center;cursor:pointer;transition:border-color .25s ease,background .25s ease;background:transparent}.upload-dropzone:hover{border-color:#0000004d;background:#00000005}.upload-dropzone--active{border-color:#0006;background:#00000008}.upload-dropzone--loaded{border-style:solid;border-color:#0000001f}.upload-dropzone-empty,.upload-dropzone-loaded{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.upload-dropzone-icon-empty{font-size:1.6rem;color:#0003;line-height:1}.upload-dropzone-icon{font-size:1.4rem;color:#0a0a0a;line-height:1}.upload-dropzone-label{font-size:.95rem;color:#00000073}.upload-dropzone-filename{font-size:.95rem;color:#000c;font-weight:500;word-break:break-all}.upload-dropzone-hint{font-size:.75rem;color:#00000040}.upload-char-limit--warn{color:#b45309}.upload-char-limit--over{color:var(--color-danger)}.upload-limit-hint{font-size:.72rem;color:#0000004d;margin-top:2px}.upload-url-divider{display:flex;align-items:center;gap:12px;color:#00000040;font-size:.78rem;font-family:var(--font-sans);margin:4px 0}.upload-url-divider:before,.upload-url-divider:after{content:"";flex:1;height:1px;background:#0000001a}.upload-url-row{display:flex;gap:8px}.upload-url-input{flex:1;background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:0;padding:10px 14px;font-size:.88rem;color:#0a0a0a;font-family:var(--font-sans);outline:none;transition:border-color .2s ease}.upload-url-input:focus{border-color:#0000004d}.upload-url-input::placeholder{color:#00000040}.upload-url-input:disabled{opacity:.5}.upload-url-btn{padding:10px 20px;border:none;border-radius:0;background:#00000014;color:#0a0a0a;font-size:.88rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background .2s ease,opacity .2s ease;white-space:nowrap}.upload-url-btn:hover:not(:disabled){background:#00000026}.upload-url-btn:disabled{opacity:.35;cursor:not-allowed}.upload-form{display:flex;flex-direction:column;gap:var(--space-md)}.upload-field{display:flex;flex-direction:column;gap:var(--space-xs)}.upload-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#00000059;font-weight:500}.upload-input{background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:0;padding:10px 14px;font-size:.9rem;color:#0a0a0a;font-family:var(--font-sans);outline:none;transition:border-color .2s ease}.upload-input:focus{border-color:#0000004d}.upload-input::placeholder{color:#00000040}.upload-mode-selector{display:flex;gap:8px}.upload-mode-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 12px;background:#00000005;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#00000073;cursor:pointer;transition:all .2s ease;font-family:var(--font-sans)}.upload-mode-btn:hover{background:#0000000a;border-color:#0003;color:#000000b3}.upload-mode-btn--active{border-color:#0006;background:#0000000d;color:#000000e6}.upload-mode-btn--active:hover{background:#00000012}.upload-mode-btn-title{font-size:.9rem;font-weight:600;letter-spacing:.02em}.upload-mode-btn-desc{font-size:.72rem;opacity:.55}.upload-options{display:flex;flex-direction:column;gap:var(--space-sm)}.upload-option-label{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:0;background:#00000005;border:1px solid rgba(0,0,0,.08);cursor:pointer;transition:background .2s ease,border-color .2s ease}.upload-option-label:hover{background:#0000000a;border-color:#00000026}.upload-option-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;min-width:16px;border:1.5px solid rgba(0,0,0,.3);border-radius:2px;background:transparent;cursor:pointer;position:relative;transition:border-color .2s ease,background .2s ease}.upload-option-checkbox:checked{background:#0a0a0a;border-color:#0a0a0a}.upload-option-checkbox:checked:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}.upload-option-text{font-size:.88rem;font-weight:500;color:#000000b3;font-family:var(--font-sans)}.upload-option-hint{font-size:.72rem;color:#0000004d;margin-left:auto;font-family:var(--font-sans)}.upload-model-selector{display:flex;gap:6px;padding:0 14px 2px}.upload-model-btn{flex:1;padding:6px 4px;background:none;border:1px solid rgba(0,0,0,.1);border-radius:0;color:#00000080;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s ease}.upload-model-btn:hover{background:#0000000a;color:#000c;border-color:#0003}.upload-model-btn--active{border-color:#0006;color:#000000e6;background:#0000000d}.upload-model-btn--active:hover{background:#00000012}.upload-error{font-size:.8rem;color:var(--color-danger);text-align:center}.upload-shared-banner{padding:10px 14px;border-radius:0;background:#60a5fa14;border:1px solid rgba(96,165,250,.25);color:#3b82f6;font-size:.82rem;line-height:1.5;text-align:center}.upload-start-wrap{position:relative}.upload-start-btn{width:100%;padding:14px;border:none;border-radius:0;background:#0a0a0a;color:#fff;font-size:.92rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:opacity .2s ease,transform .2s ease;letter-spacing:.02em}.upload-start-btn:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.upload-start-btn:active:not(:disabled){transform:translateY(0);opacity:.75}.upload-start-btn:disabled{background:#00000014;color:#00000040;cursor:not-allowed}.upload-start-btn--pulse:not(:disabled){animation:startBtnPulse 1.6s ease both}@keyframes startBtnPulse{0%{box-shadow:0 0 #0000004d}20%{box-shadow:0 0 0 8px #00000014}50%{box-shadow:0 0 #0000}70%{box-shadow:0 0 0 5px #0000000d}to{box-shadow:0 0 #0000}}.upload-start-gear{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;font-size:.92em;color:#fff6;transition:color .15s ease;vertical-align:middle}.upload-start-gear:hover{color:#fffc}.upload-start-gear--active{color:#ffffffb3}.upload-start-dropdown{position:absolute;right:0;bottom:calc(100% + 8px);min-width:200px;padding:14px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:0;z-index:20;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.upload-start-dropdown-label{display:block;font-size:.78rem;color:#00000073;margin-bottom:8px;letter-spacing:.03em}.upload-start-dropdown-select{width:100%;padding:8px 10px;background:#00000008;border:1px solid rgba(0,0,0,.12);border-radius:0;color:#0a0a0a;font-size:.88rem;font-family:var(--font-sans);cursor:pointer;outline:none;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.upload-start-dropdown-select:focus{border-color:#0000004d}.upload-start-dropdown-input{width:100%;padding:8px 10px;background:#00000008;border:1px solid rgba(0,0,0,.12);border-radius:0;color:#0a0a0a;font-size:.88rem;font-family:var(--font-sans);outline:none;box-sizing:border-box}.upload-start-dropdown-input:focus{border-color:#0000004d}.upload-start-dropdown-input::placeholder{color:#00000040}.upload-start-dropdown-select option{background:#fff;color:#0a0a0a}.upload-restore-btn{width:100%;padding:13px;border:1px solid rgba(0,0,0,.12);border-radius:0;background:transparent;color:#00000073;font-size:.88rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.upload-restore-btn:hover:not(:disabled){border-color:#00000040;color:#000000bf}.upload-restore-btn:disabled{opacity:.3;cursor:not-allowed}.upload-launching-view{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;animation:launchFadeIn .5s ease both}@keyframes launchFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.upload-launching-orb{position:relative;width:64px;height:64px}.upload-launching-orb-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid transparent;border-top-color:#00000080;border-right-color:#0000001a;animation:uploadOrbSpin 2s linear infinite}.upload-launching-orb-ring:nth-child(2){top:10px;right:10px;bottom:10px;left:10px;border-top-color:#00000040;animation-duration:3s;animation-direction:reverse}.upload-launching-orb-core{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;background:#00000014;animation:uploadOrbPulse 2.5s ease-in-out infinite}@keyframes uploadOrbSpin{to{transform:rotate(360deg)}}@keyframes uploadOrbPulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.upload-launching-title{font-size:1rem;font-weight:500;color:#0009;letter-spacing:.02em}.upload-launching-subtitle{font-size:.8rem;color:#0000004d;animation:uploadSubPulse 3s ease-in-out infinite}@keyframes uploadSubPulse{0%,to{opacity:.35}50%{opacity:.8}}.upload-browser-categories::-webkit-scrollbar,.upload-browser-games::-webkit-scrollbar{width:3px}.upload-browser-categories::-webkit-scrollbar-track,.upload-browser-games::-webkit-scrollbar-track{background:transparent}.upload-browser-categories::-webkit-scrollbar-thumb,.upload-browser-games::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.upload-browser-categories::-webkit-scrollbar-thumb:hover,.upload-browser-games::-webkit-scrollbar-thumb:hover{background:#0003}@media(max-width:768px){.upload-screen{padding:var(--space-md)}.upload-title{font-size:1.6rem}.upload-browser{min-height:280px;max-height:360px}.upload-browser-categories{width:52px;min-width:52px}.upload-category-name{display:none}.upload-category-btn{justify-content:center;padding:12px 8px}}.upload-autosave-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000073;animation:autosaveOverlayIn .25s ease both}@keyframes autosaveOverlayIn{0%{opacity:0}to{opacity:1}}.upload-autosave-card{width:90%;max-width:360px;padding:28px 24px 22px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:0;text-align:center;animation:autosaveCardIn .3s cubic-bezier(.16,1,.3,1) both;animation-delay:.05s}@keyframes autosaveCardIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.upload-autosave-title{font-size:1.05rem;font-weight:600;color:#0a0a0a;margin-bottom:8px;letter-spacing:.01em}.upload-autosave-meta{font-size:.82rem;color:#00000073;margin-bottom:22px;line-height:1.5}.upload-autosave-actions{display:flex;gap:10px}.upload-autosave-btn{flex:1;padding:12px 16px;border:1px solid rgba(0,0,0,.12);border-radius:0;background:transparent;color:#00000080;font-size:.88rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all .2s ease}.upload-autosave-btn:hover{border-color:#00000040;color:#000c}.upload-autosave-btn--primary{background:#0a0a0a;color:#fff;border-color:#0a0a0a;font-weight:600}.upload-autosave-btn--primary:hover{opacity:.85;color:#fff;border-color:#0a0a0a}.scene-image-container{position:relative;width:100%;margin-top:var(--space-md);border-radius:var(--radius-lg);overflow:hidden}.scene-image{width:100%;display:block;border-radius:var(--radius-lg);cursor:pointer;opacity:0;transition:opacity .5s ease}.scene-image--loaded{opacity:1}.scene-image-video{width:100%;display:block;border-radius:var(--radius-lg);cursor:pointer}.scene-image-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000e6;display:flex;align-items:center;justify-content:center;cursor:pointer;animation:sceneOverlayIn .25s ease}@keyframes sceneOverlayIn{0%{opacity:0}to{opacity:1}}.scene-image-overlay-img,.scene-image-overlay-video{max-width:95vw;max-height:95vh;object-fit:contain;border-radius:var(--radius-sm)}.scene-image-live-btn-wrap{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;height:34px;border-radius:17px;background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2}.scene-image-live-btn{display:flex;align-items:center;justify-content:center;min-width:50px;height:100%;padding:0 14px;border:none;border-radius:17px 0 0 17px;background:transparent;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:background .2s}.scene-image-live-btn:only-child{border-radius:17px}.scene-image-live-btn:hover:not(:disabled){background:#ffffff1f}.scene-image-live-btn:disabled{cursor:wait}.scene-image-live-divider{width:1px;height:18px;background:#ffffff40;flex-shrink:0}.scene-image-live-send{display:flex;align-items:center;justify-content:center;width:34px;height:100%;border:none;border-radius:0 17px 17px 0;background:transparent;color:#ffffffb3;cursor:pointer;transition:background .2s,color .2s;padding:0}.scene-image-live-send:hover:not(:disabled){background:#ffffff1f;color:#fff}.scene-image-live-send:disabled{cursor:default}.scene-image-live-send--sent{color:#4ade80}.scene-image-confirm{position:absolute;bottom:calc(100% + 8px);right:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 14px;background:#141419eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);border-radius:10px;white-space:nowrap;animation:sceneConfirmIn .15s ease both}@keyframes sceneConfirmIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.scene-image-confirm-text{font-size:12px;color:#ffffffd9;font-weight:500}.scene-image-confirm-actions{display:flex;gap:8px}.scene-image-confirm-yes,.scene-image-confirm-no{padding:4px 14px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.scene-image-confirm-yes{background:#ffffff59;color:#fff}.scene-image-confirm-yes:hover{background:#ffffff80}.scene-image-confirm-no{background:#ffffff1a;color:#ffffffb3}.scene-image-confirm-no:hover{background:#ffffff2e}.scene-image-live-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:liveSpinnerSpin .8s linear infinite}@keyframes liveSpinnerSpin{to{transform:rotate(360deg)}}.mg-intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#000000b3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:mgIntroFadeIn .3s ease-out;cursor:pointer}@keyframes mgIntroFadeIn{0%{opacity:0}to{opacity:1}}.mg-intro-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 40px;border-radius:20px;background:#141423f2;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 60px #00000080;min-width:280px;cursor:default;animation:mgIntroCardIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes mgIntroCardIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.mg-intro-icon{font-size:48px;line-height:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.mg-intro-type{font-size:22px;font-weight:700;color:#fff;letter-spacing:2px}.mg-intro-diff-section{display:flex;flex-direction:column;align-items:center;gap:8px;margin:4px 0}.mg-intro-diff-label{font-size:12px;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:3px}.mg-intro-diff-row{display:flex;align-items:center;gap:10px}.mg-intro-diff-badge{display:inline-block;padding:5px 20px;border-radius:20px;font-size:16px;font-weight:700;color:#fff;background:var(--diff-color);box-shadow:0 2px 12px color-mix(in srgb,var(--diff-color) 40%,transparent)}.mg-intro-diff-badge--old{text-decoration:line-through;opacity:.45;font-size:14px;padding:4px 14px}.mg-intro-diff-badge--new{animation:mgDiffPop .5s cubic-bezier(.34,1.56,.64,1) .2s both}@keyframes mgDiffPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.mg-intro-diff-arrow{font-size:18px;color:#ffffff80;font-weight:700}.mg-intro-charm-info{font-size:13px;color:#fbbf24cc;font-weight:600}.mg-intro-shop-link{font-size:14px;font-weight:700;color:#fbbf24b3;text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:color .2s}.mg-intro-shop-link:hover{color:#fbbf24}.mg-intro-start-btn{margin-top:4px;padding:10px 40px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;letter-spacing:2px}.mg-intro-start-btn:hover{background:#ffffff26;border-color:#ffffff59;transform:translateY(-1px)}.mg-intro-start-btn:active{transform:translateY(0)}.mg-intro-hint{font-size:11px;color:#ffffff40}.mg-tut-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;display:flex;align-items:center;justify-content:center;background:#000000b3;animation:mgTutFadeIn .3s ease-out;padding:16px}@keyframes mgTutFadeIn{0%{opacity:0}to{opacity:1}}.mg-tut-card{max-width:420px;width:100%;background:#fff;border-radius:0;border:1px solid rgba(0,0,0,.1);padding:28px 24px 22px;animation:mgTutCardIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes mgTutCardIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.mg-tut-hero-icon{font-size:2.6rem;line-height:1;text-align:center;margin-bottom:-4px}.mg-tut-title{margin:0 0 4px;text-align:center;font-size:1.2rem;font-weight:700;letter-spacing:.08em;color:#0a0a0a}.mg-tut-subtitle{margin:0 0 20px;text-align:center;font-size:.78rem;color:#00000073;line-height:1.5}.mg-tut-section{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.mg-tut-step{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:0;background:#00000008;border:1px solid rgba(0,0,0,.06)}.mg-tut-step-icon{font-size:1.3rem;line-height:1;flex-shrink:0;margin-top:2px}.mg-tut-step-body{display:flex;flex-direction:column;gap:2px}.mg-tut-step-body strong{font-size:.85rem;color:#0a0a0a}.mg-tut-step-body span{font-size:.78rem;color:#00000080;line-height:1.5}.mg-tut-outcomes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:16px}.mg-tut-outcome{display:flex;align-items:center;justify-content:center;padding:7px 4px;border-radius:0;background:#00000005;border:1px solid rgba(0,0,0,.06)}.mg-tut-outcome-tag{font-size:.78rem;font-weight:700;letter-spacing:.03em}.mg-tut-outcome--crit-success .mg-tut-outcome-tag{color:#ca8a04}.mg-tut-outcome--success .mg-tut-outcome-tag{color:#16a34a}.mg-tut-outcome--failure .mg-tut-outcome-tag{color:#dc2626}.mg-tut-outcome--crit-failure .mg-tut-outcome-tag{color:#9333ea}.mg-tut-hint-box{margin-bottom:18px;padding:10px 14px;border-radius:0;background:#fbbf240f;border:1px solid rgba(251,191,36,.2);font-size:.78rem;color:#0000008c;text-align:center;line-height:1.5}.mg-tut-hint-box em{font-style:normal;color:#ca8a04;font-weight:600}.mg-tut-btn{display:block;width:100%;padding:10px 0;border:none;border-radius:0;font-size:.88rem;font-weight:600;letter-spacing:.06em;color:#fff;cursor:pointer;background:#0a0a0a;transition:opacity .15s ease}.mg-tut-btn:hover{opacity:.85}.mg-tut-btn:active{opacity:.75}@media(max-width:480px){.mg-tut-card{padding:22px 18px 18px}.mg-tut-title{font-size:1.05rem}}.power-bar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:mgFadeIn .25s ease-out}@keyframes mgFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.power-bar-container{display:flex;flex-direction:column;align-items:center;gap:12px;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;padding:20px 28px;border-radius:16px;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1)}.power-bar-title{font-size:14px;color:#fff9;letter-spacing:2px}.power-bar-track{position:relative;width:280px;height:32px;border-radius:16px;background:#ffffff14;overflow:hidden;border:1px solid rgba(255,255,255,.12)}.power-bar-sweet{position:absolute;top:0;height:100%;border-radius:16px;background:linear-gradient(90deg,transparent,rgba(74,222,128,.25) 20%,rgba(74,222,128,.4) 50%,rgba(74,222,128,.25) 80%,transparent)}.power-bar-critical{position:absolute;top:0;height:100%;border-radius:16px;background:linear-gradient(90deg,transparent,rgba(251,191,36,.3) 20%,rgba(251,191,36,.5) 50%,rgba(251,191,36,.3) 80%,transparent)}.power-bar-cursor{position:absolute;top:-2px;width:4px;height:36px;border-radius:2px;background:#fff;box-shadow:0 0 8px #fff9,0 0 16px #ffffff4d;transition:background .2s}.power-bar-cursor--locked{background:#fbbf24;box-shadow:0 0 12px #fbbf24cc}.power-bar-hint{font-size:12px;color:#fff6;margin-top:-4px}.power-bar-result{display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transform:scale(.5) translateY(10px)}.power-bar-result--visible{animation:mgResultSpringIn .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes mgResultSpringIn{0%{opacity:0;transform:scale(.5) translateY(10px)}60%{opacity:1;transform:scale(1.08) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.power-bar-result-tag{display:inline-block;padding:4px 16px;border-radius:20px;font-size:16px;font-weight:700;letter-spacing:2px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}@media(max-width:600px){.power-bar-track{width:220px;height:28px}.power-bar-cursor{height:32px;top:-2px}.power-bar-container{padding:16px 20px}}.timing-ring-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:mgFadeIn .25s ease-out}.timing-ring-container{display:flex;flex-direction:column;align-items:center;gap:12px;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;padding:24px 32px;border-radius:16px;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1)}.timing-ring-title{font-size:14px;color:#fff9;letter-spacing:2px}.timing-ring-round{font-size:12px;color:#ffffff73;font-family:JetBrains Mono,Fira Code,monospace}.timing-ring-arena{position:relative;width:180px;height:180px}.timing-ring-target{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:3px solid rgba(74,222,128,.5);box-shadow:0 0 12px #4ade8033,inset 0 0 12px #4ade801a}.timing-ring-critical{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px dashed rgba(251,191,36,.4)}.timing-ring-outer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:3px solid rgba(255,255,255,.7);box-shadow:0 0 16px #fff3;transition:border-color .2s}.timing-ring-outer--hit{border-color:#4ade80;box-shadow:0 0 24px #4ade8099}.timing-ring-outer--miss{border-color:#f87171;box-shadow:0 0 24px #f8717199}.timing-ring-hits{display:flex;gap:8px}.timing-ring-hit-dot{width:12px;height:12px;border-radius:50%;background:#ffffff26;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.timing-ring-hit-dot--perfect{background:#fbbf24;border-color:#fbbf24;box-shadow:0 0 8px #fbbf2480}.timing-ring-hit-dot--good{background:#4ade80;border-color:#4ade80;box-shadow:0 0 8px #4ade8080}.timing-ring-hit-dot--miss{background:#f87171;border-color:#f87171;box-shadow:0 0 8px #f8717180}.timing-ring-hint{font-size:12px;color:#fff6}.timing-ring-result{display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transform:scale(.5) translateY(10px)}.timing-ring-result--visible{animation:mgResultSpringIn .5s cubic-bezier(.34,1.56,.64,1) forwards}.timing-ring-result-tag{display:inline-block;padding:4px 16px;border-radius:20px;font-size:16px;font-weight:700;letter-spacing:2px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}@media(max-width:600px){.timing-ring-arena{width:150px;height:150px}.timing-ring-container{padding:18px 24px}}.flash-choice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:mgFadeIn .25s ease-out}.flash-choice-container{display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:auto;-webkit-user-select:none;user-select:none;padding:24px 32px;border-radius:16px;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);min-width:280px}.flash-choice-title{font-size:14px;color:#fff9;letter-spacing:2px}.flash-choice-progress{font-size:12px;color:#ffffff73;font-family:JetBrains Mono,Fira Code,monospace}.flash-choice-question{font-size:16px;font-weight:600;color:#ffffffe6;text-align:center;animation:flashQuestionIn .3s ease-out;min-height:28px}@keyframes flashQuestionIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.flash-choice-timer{width:100%;height:4px;border-radius:2px;background:#ffffff1a;overflow:hidden}.flash-choice-timer-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#4ade80,#22c55e);transition:width .1s linear}.flash-choice-timer-fill--danger{background:linear-gradient(90deg,#f87171,#ef4444)}.flash-choice-buttons{display:flex;gap:12px;width:100%}.flash-choice-btn{flex:1;padding:10px 8px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#ffffff0f;color:#ffffffd9;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.flash-choice-btn:hover{background:#ffffff1f;border-color:#ffffff4d}.flash-choice-btn:active{transform:scale(.96)}.flash-choice-btn:disabled{cursor:default;opacity:.5}.flash-choice-btn--correct{border-color:#4ade80;background:#4ade8033;color:#4ade80}.flash-choice-btn--wrong{border-color:#f87171;background:#f8717133;color:#f87171}.flash-choice-score{display:flex;gap:12px;font-size:13px;color:#ffffff80;font-family:JetBrains Mono,Fira Code,monospace}.flash-choice-score-correct{color:#4ade80}.flash-choice-score-wrong{color:#f87171}.flash-choice-result{display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transform:scale(.5) translateY(10px)}.flash-choice-result--visible{animation:mgResultSpringIn .5s cubic-bezier(.34,1.56,.64,1) forwards}.flash-choice-result-detail{font-size:13px;color:#ffffffa6;font-family:JetBrains Mono,Fira Code,monospace}.flash-choice-result-tag{display:inline-block;padding:4px 16px;border-radius:20px;font-size:16px;font-weight:700;letter-spacing:2px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}@media(max-width:600px){.flash-choice-container{padding:18px 20px;min-width:240px}.flash-choice-question{font-size:14px}.flash-choice-btn{padding:8px 6px;font-size:13px}}.qte-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;align-items:center;justify-content:center;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:qteOverlayIn .3s ease;touch-action:none}@keyframes qteOverlayIn{0%{opacity:0}to{opacity:1}}.qte-container{display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:420px;padding:0 20px;user-select:none;-webkit-user-select:none}.qte-title{font-size:14px;font-weight:600;color:#ffffff80;letter-spacing:.15em;text-transform:uppercase}.qte-progress{font-size:12px;color:#ffffff59}.qte-sequence{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;min-height:80px}.qte-key{width:56px;height:56px;border-radius:14px;border:2px solid rgba(255,255,255,.15);background:#ffffff0a;display:flex;align-items:center;justify-content:center;font-size:22px;color:#ffffff59;transition:all .2s ease;position:relative}.qte-key--active{border-color:#fffc;background:#ffffff1a;color:#fff;transform:scale(1.15);box-shadow:0 0 20px #ffffff26;animation:qteKeyPulse .8s ease-in-out infinite}@keyframes qteKeyPulse{0%,to{box-shadow:0 0 20px #ffffff26}50%{box-shadow:0 0 30px #ffffff4d}}.qte-key--done{border-color:#4ade8080;background:#4ade801a;color:#4ade80cc}.qte-key--miss{border-color:#f8717180;background:#f871711a;color:#f87171cc;animation:qteKeyShake .3s ease}@keyframes qteKeyShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.qte-timer{width:100%;height:4px;border-radius:2px;background:#ffffff14;overflow:hidden}.qte-timer-fill{height:100%;border-radius:2px;background:#fff9;transition:width .1s linear}.qte-timer-fill--danger{background:#f87171}.qte-dpad{display:grid;grid-template-areas:".    up   ." "left mid  right" ".    down .";grid-template-columns:64px 64px 64px;grid-template-rows:64px 64px 64px;gap:6px;touch-action:none}.qte-dpad-btn{width:64px;height:64px;border-radius:16px;border:2px solid rgba(255,255,255,.15);background:#ffffff0d;color:#ffffff80;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.qte-dpad-btn:active{background:#ffffff26;transform:scale(.92)}.qte-dpad-btn--expected{border-color:#fff9;color:#fff;background:#ffffff1a;animation:qteDpadPulse .6s ease-in-out infinite}@keyframes qteDpadPulse{0%,to{box-shadow:0 0 8px #ffffff1a}50%{box-shadow:0 0 18px #ffffff40}}.qte-dpad-btn--up{grid-area:up}.qte-dpad-btn--down{grid-area:down}.qte-dpad-btn--left{grid-area:left}.qte-dpad-btn--right{grid-area:right}.qte-dpad-btn--center{grid-area:mid;border-radius:50%}.qte-feedback{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:910}.qte-feedback--correct{animation:qteFeedCorrect .3s ease}.qte-feedback--wrong{animation:qteFeedWrong .3s ease}@keyframes qteFeedCorrect{0%{background:#4ade8033}to{background:transparent}}@keyframes qteFeedWrong{0%{background:#f8717140}to{background:transparent}}.qte-score{display:flex;gap:16px;font-size:13px;font-weight:600}.qte-score-hit{color:#4ade80}.qte-score-miss{color:#f87171}.qte-result{opacity:0;transform:scale(.5);transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;align-items:center;gap:8px}.qte-result--visible{opacity:1;transform:scale(1)}.qte-result-tag{display:inline-block;padding:6px 24px;border-radius:20px;font-size:18px;font-weight:800;color:#fff;letter-spacing:2px}.qte-result-detail{font-size:13px;color:#ffffff80}.qte-hint{font-size:11px;color:#fff3;text-align:center}@media(min-width:769px){.qte-dpad{display:none}}@media(max-width:768px){.qte-key{width:48px;height:48px;font-size:20px;border-radius:12px}.qte-sequence{gap:8px}.qte-hint{display:none}}.bm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;align-items:center;justify-content:center;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:bmOverlayIn .3s ease;touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}@keyframes bmOverlayIn{0%{opacity:0}to{opacity:1}}.bm-container{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:280px;padding:0 20px;pointer-events:none}.bm-intense-1{animation:bmShake1 .15s ease infinite}.bm-intense-2{animation:bmShake2 .1s ease infinite}.bm-intense-3{animation:bmShake3 .08s ease infinite}@keyframes bmShake1{0%,to{transform:translate(0)}50%{transform:translate(1px)}}@keyframes bmShake2{0%,to{transform:translate(0)}25%{transform:translate(-2px,1px)}75%{transform:translate(2px,-1px)}}@keyframes bmShake3{0%,to{transform:translate(0)}20%{transform:translate(-3px,2px)}40%{transform:translate(2px,-2px)}60%{transform:translate(-2px,-1px)}80%{transform:translate(3px,1px)}}.bm-title{font-size:22px;font-weight:800;color:#fff;letter-spacing:4px;text-shadow:0 0 20px rgba(255,255,255,.3);animation:bmTitlePulse .5s ease-in-out infinite}@keyframes bmTitlePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.85}}.bm-timer{width:100%;height:4px;border-radius:2px;background:#ffffff14;overflow:hidden}.bm-timer-fill{height:100%;border-radius:2px;background:#fff9;transition:width .1s linear}.bm-timer-fill--danger{background:#f87171;animation:bmTimerBlink .4s ease infinite}@keyframes bmTimerBlink{0%,to{opacity:1}50%{opacity:.5}}.bm-bar-wrap{position:relative;width:60px;height:280px;border-radius:30px;background:#ffffff0f;border:2px solid rgba(255,255,255,.12);overflow:hidden}.bm-bar-fill{position:absolute;bottom:0;left:0;right:0;border-radius:0 0 28px 28px;transition:height .05s linear}.bm-threshold{position:absolute;left:0;right:0;height:0;border-top:1px dashed rgba(255,255,255,.2);z-index:2}.bm-threshold-label{position:absolute;left:calc(100% + 8px);top:-8px;font-size:10px;color:#ffffff4d;white-space:nowrap}.bm-threshold--crit{border-color:#fbbf2466}.bm-threshold--crit .bm-threshold-label{color:#fbbf2480}.bm-threshold--good{border-color:#4ade8066}.bm-threshold--good .bm-threshold-label{color:#4ade8080}.bm-threshold--fail{border-color:#f871714d}.bm-threshold--fail .bm-threshold-label{color:#f8717166}.bm-max-line{position:absolute;left:4px;right:4px;height:2px;border-radius:1px;background:#ffffff80;z-index:3;box-shadow:0 0 6px #ffffff4d;transition:bottom .1s ease}.bm-hit-flash{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:910;animation:bmHitFlash .12s ease}@keyframes bmHitFlash{0%{background:#ffffff14}to{background:transparent}}.bm-tap-count{font-size:28px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(255,255,255,.2)}.bm-time-text{font-size:13px;color:#fff6;font-variant-numeric:tabular-nums}.bm-result{opacity:0;transform:scale(.5);transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;align-items:center;gap:8px}.bm-result--visible{opacity:1;transform:scale(1)}.bm-result-tag{display:inline-block;padding:6px 24px;border-radius:20px;font-size:18px;font-weight:800;color:#fff;letter-spacing:2px}.bm-result-detail{font-size:13px;color:#ffffff80}@media(max-width:768px){.bm-bar-wrap{width:52px;height:240px}.bm-title{font-size:20px}.bm-tap-count{font-size:24px}}.dice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:diceOverlayFadeIn .25s ease-out}@keyframes diceOverlayFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.dice-container{display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none}.dice-threshold{display:flex;align-items:baseline;gap:6px;padding:5px 16px;border-radius:20px;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);animation:diceThresholdIn .4s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes diceThresholdIn{0%{opacity:0;transform:translateY(8px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.dice-threshold-label{font-size:12px;color:#ffffff8c;letter-spacing:1px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.dice-threshold-value{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:18px;font-weight:700;color:#fffffff2;text-shadow:0 1px 4px rgba(0,0,0,.6)}.dice-threshold--pop{display:inline-block;animation:diceThresholdPop .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes diceThresholdPop{0%{transform:scale(1)}40%{transform:scale(1.45)}70%{transform:scale(.95)}to{transform:scale(1)}}.dice-3d-scene--counting{opacity:.25;transition:opacity .3s ease}.dice-3d-scene{--dice-size: 120px;--dice-half: 60px;width:var(--dice-size);height:var(--dice-size);perspective:400px;position:relative}.dice-3d-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d}.dice-3d-face{position:absolute;width:var(--dice-size);height:var(--dice-size);display:flex;align-items:center;justify-content:center;border-radius:16px;background:radial-gradient(ellipse at 35% 25%,rgba(255,255,255,.1),transparent 50%),linear-gradient(160deg,#1e1e38,#141428);box-shadow:inset 0 2px #ffffff26,inset 0 -2px #00000080,inset 2px 0 #ffffff0f,inset -2px 0 #00000040,0 10px 40px #0000008c;backface-visibility:hidden}.dice-3d-face:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,transparent 40%);pointer-events:none}.dice-3d-face:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:10px;background:radial-gradient(circle at 8% 8%,rgba(255,255,255,.1) 2.5px,transparent 2.5px),radial-gradient(circle at 92% 8%,rgba(255,255,255,.1) 2.5px,transparent 2.5px),radial-gradient(circle at 8% 92%,rgba(255,255,255,.1) 2.5px,transparent 2.5px),radial-gradient(circle at 92% 92%,rgba(255,255,255,.1) 2.5px,transparent 2.5px);pointer-events:none}.dice-3d-face--front{transform:rotateY(0) translateZ(var(--dice-half))}.dice-3d-face--back{transform:rotateY(180deg) translateZ(var(--dice-half))}.dice-3d-face--right{transform:rotateY(90deg) translateZ(var(--dice-half))}.dice-3d-face--left{transform:rotateY(-90deg) translateZ(var(--dice-half))}.dice-3d-face--top{transform:rotateX(90deg) translateZ(var(--dice-half))}.dice-3d-face--bottom{transform:rotateX(-90deg) translateZ(var(--dice-half))}.dice-number{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:44px;font-weight:700;color:#ffffffe6;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.6);transition:color .3s ease;position:relative;z-index:1}.dice-3d-cube--spinning{animation:diceTumble 1s linear infinite}.dice-3d-cube--spinning .dice-3d-face{box-shadow:inset 0 2px #ffffff26,inset 0 -2px #00000080,inset 2px 0 #ffffff0f,inset -2px 0 #00000040,0 10px 40px #0000008c,0 0 18px #78a0ff1f}@keyframes diceTumble{0%{transform:rotateX(0) rotateY(0) rotate(0)}25%{transform:rotateX(90deg) rotateY(90deg) rotate(45deg)}50%{transform:rotateX(180deg) rotateY(180deg) rotate(0)}75%{transform:rotateX(270deg) rotateY(270deg) rotate(-45deg)}to{transform:rotateX(360deg) rotateY(360deg) rotate(0)}}.dice-3d-cube--landed{animation:diceSlam .55s cubic-bezier(.22,1.2,.36,1) forwards}@keyframes diceSlam{0%{transform:rotateX(35deg) rotateY(-30deg) scale(.85)}45%{transform:rotateX(-6deg) rotateY(4deg) scale(1.15)}75%{transform:rotateX(2deg) rotateY(-1deg) scale(.97)}to{transform:rotateX(0) rotateY(0) scale(1)}}.dice-shadow{width:80px;height:14px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.35),transparent 70%);margin-top:4px;transition:transform .3s ease,opacity .3s ease}.dice-shadow--spinning{animation:diceShadowPulse .5s ease-in-out infinite alternate}@keyframes diceShadowPulse{0%{transform:scaleX(1);opacity:.5}to{transform:scaleX(.6);opacity:.2}}.dice-result-badge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 20px;border-radius:14px;background:#0000008c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transform:scale(.5) translateY(10px)}.dice-result-badge--visible{animation:diceResultSpringIn .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes diceResultSpringIn{0%{opacity:0;transform:scale(.5) translateY(10px)}60%{opacity:1;transform:scale(1.08) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.dice-result-detail{font-size:13px;color:#ffffffa6;font-family:JetBrains Mono,Fira Code,monospace;text-shadow:0 1px 4px rgba(0,0,0,.6)}.dice-result-tag{display:inline-block;padding:4px 16px;border-radius:20px;font-size:16px;font-weight:700;letter-spacing:2px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.dice-overlay--critical_success .dice-number,.dice-overlay--critical_success .dice-threshold-value{color:#fbbf24}.dice-overlay--critical_success .dice-result-tag{background:linear-gradient(135deg,#f59e0b,#fbbf24);box-shadow:0 0 20px #fbbf2466}.dice-overlay--critical_success .dice-3d-scene{animation:diceGlowGold 1.5s ease-in-out infinite .55s}.dice-overlay--critical_success .dice-3d-face{box-shadow:inset 0 2px #ffffff26,inset 0 -2px #00000080,0 10px 40px #0000008c,0 0 24px #fbbf2440}@keyframes diceGlowGold{0%,to{filter:drop-shadow(0 0 12px rgba(251,191,36,.15))}50%{filter:drop-shadow(0 0 28px rgba(251,191,36,.5))}}.dice-overlay--success .dice-number{color:#4ade80}.dice-overlay--success .dice-result-tag{background:linear-gradient(135deg,#22c55e,#4ade80)}.dice-overlay--failure .dice-number{color:#f87171}.dice-overlay--failure .dice-result-tag{background:linear-gradient(135deg,#ef4444,#f87171)}.dice-overlay--critical_failure .dice-number,.dice-overlay--critical_failure .dice-threshold-value{color:#a855f7}.dice-overlay--critical_failure .dice-result-tag{background:linear-gradient(135deg,#9333ea,#a855f7);box-shadow:0 0 20px #a855f766}.dice-overlay--critical_failure .dice-3d-face{box-shadow:inset 0 2px #ffffff26,inset 0 -2px #00000080,0 10px 40px #0000008c,0 0 24px #a855f740}.dice-overlay--critical_failure .dice-3d-scene{filter:drop-shadow(0 0 16px rgba(168,85,247,.35))}.dice-overlay--critical_failure .dice-container{animation:diceShake .45s ease-in-out .55s 2}@keyframes diceShake{0%,to{transform:translate(0)}20%{transform:translate(-8px) rotate(-1.5deg)}40%{transform:translate(8px) rotate(1.5deg)}60%{transform:translate(-5px) rotate(-1deg)}80%{transform:translate(5px) rotate(1deg)}}.dice-skip-hint{font-size:12px;color:#ffffff59;text-shadow:0 1px 3px rgba(0,0,0,.5);margin-top:2px;opacity:0;transition:opacity .3s ease}.dice-skip-hint--visible{opacity:1}.dice-charm-bonus{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:14px;font-weight:700;color:#4ade80;text-shadow:0 1px 3px rgba(0,0,0,.4)}.dice-charm-name{font-size:11px;color:#4ade80b3;text-shadow:0 1px 3px rgba(0,0,0,.4)}.dice-threshold-eq{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:18px;font-weight:700;color:#fffffff2;text-shadow:0 1px 4px rgba(0,0,0,.6)}.dice-shop-link{font-size:14px;font-weight:700;color:#fbbf24b3;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin-left:8px;transition:color .2s;text-shadow:0 1px 3px rgba(0,0,0,.5)}.dice-shop-link:hover{color:#fbbf24}@media(max-width:600px){.dice-3d-scene{--dice-size: 90px;--dice-half: 45px;perspective:300px}.dice-number{font-size:32px}.dice-threshold-value{font-size:15px}.dice-threshold-label{font-size:11px}.dice-shadow{width:60px;height:10px}.dice-result-detail{font-size:11px}.dice-result-tag{font-size:14px;padding:3px 12px}.dice-result-badge{padding:8px 14px}}.charm-shop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9200;display:flex;align-items:center;justify-content:center;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:charmShopFadeIn .35s ease-out}@keyframes charmShopFadeIn{0%{opacity:0}to{opacity:1}}.charm-shop-panel{position:relative;width:92%;max-width:420px;max-height:90vh;overflow-y:auto;padding:0;border-radius:20px;background:linear-gradient(165deg,#1a1a2e,#0f0f1a 60%,#151520);border:1px solid rgba(212,175,55,.15);box-shadow:0 0 60px #d4af3714,0 25px 60px #00000080,inset 0 1px #ffffff0d;animation:charmShopSlideIn .4s cubic-bezier(.34,1.4,.64,1)}@keyframes charmShopSlideIn{0%{opacity:0;transform:translateY(40px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.charm-shop-head{position:relative;padding:32px 24px 20px;text-align:center;overflow:hidden}.charm-shop-head:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.4),transparent)}.charm-shop-sigil{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:12px;font-size:22px;line-height:1}.charm-shop-title{display:block;font-size:22px;font-weight:700;color:#fff;letter-spacing:4px;margin-bottom:10px;font-family:serif}.charm-shop-subtitle{display:block;margin:0;font-size:12.5px;line-height:1.7;color:#ffffff80;letter-spacing:.5px}.charm-shop-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border:none;background:#ffffff0f;border-radius:50%;color:#ffffff59;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;z-index:2}.charm-shop-close:hover{background:#ffffff1f;color:#ffffffb3}.charm-shop-cards{display:flex;flex-direction:column;gap:2px;padding:16px 16px 20px}.charm-card{position:relative;display:flex;align-items:center;gap:16px;padding:18px 16px;border-radius:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);transition:background .25s,border-color .25s,box-shadow .25s;overflow:hidden}.charm-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;opacity:0;transition:opacity .3s;pointer-events:none}.charm-card:hover{background:#ffffff0d;border-color:#d4af3726}.charm-card:hover:before{opacity:1}.charm-card--equipped{border-color:#d4af3740;background:#d4af370f;box-shadow:0 0 20px #d4af370f}.charm-card-tier{display:inline-block;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:1px 5px;border-radius:3px;background:#ffffff0f;color:#fff6;vertical-align:middle;margin-left:6px;position:relative;top:-1px}.charm-card-tier--ii{color:#6ee7b7d9;background:#34d3991a}.charm-card-tier--iii{color:#a78bfae6;background:#8b5cf61f}.charm-card-icon-wrap{flex-shrink:0;width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.charm-card-icon{width:38px;height:38px}.charm-card-info{flex:1;min-width:0}.charm-card-name{font-size:15px;font-weight:600;color:#fff;margin-bottom:3px;letter-spacing:.5px}.charm-card-bonus{font-size:12px;color:#e2c87a;font-weight:500;display:flex;align-items:center;gap:4px}.charm-card-bonus:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#e2c87a;flex-shrink:0}.charm-card-action{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px}.charm-card-price{font-size:17px;font-weight:700;color:#fff;letter-spacing:-.5px;line-height:1}.charm-card-price-unit{font-size:11px;font-weight:400;color:#ffffff73;margin-left:1px}.charm-card-btn{padding:7px 20px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:transform .15s,opacity .15s,box-shadow .2s;white-space:nowrap;letter-spacing:.5px}.charm-card-btn:active{transform:scale(.94)}.charm-card-btn--buy{background:linear-gradient(135deg,#d4af37,#b8962e);color:#0f0f1a;box-shadow:0 2px 12px #d4af3740}.charm-card-btn--buy:hover{box-shadow:0 4px 20px #d4af3759}.charm-card-btn--equip{background:#ffffff14;color:#ffffffd9;border:1px solid rgba(255,255,255,.12)}.charm-card-btn--equip:hover{background:#ffffff24;border-color:#d4af3759;color:#fff}.charm-card-btn--equipped{background:#d4af371f;color:#e2c87a;border:1px solid rgba(212,175,55,.25);cursor:pointer;font-size:11px}@keyframes charmShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.charm-shop-panel:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;height:2px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,transparent 0%,rgba(212,175,55,.3) 25%,rgba(212,175,55,.6) 50%,rgba(212,175,55,.3) 75%,transparent 100%);background-size:200% 100%;animation:charmShimmer 4s linear infinite;pointer-events:none}.charm-shop-footer{text-align:center;padding:0 24px 20px;font-size:11px;color:#ffffff59;line-height:1.5}@media(max-width:480px){.charm-shop-panel{max-width:100%;width:94%;border-radius:16px}.charm-shop-head{padding:24px 20px 16px}.charm-shop-cards{padding:12px 12px 16px}.charm-card{gap:12px;padding:14px 12px}.charm-card-icon-wrap{width:48px;height:48px}.charm-card-icon{width:32px;height:32px}.charm-card-name{font-size:14px}.charm-card-btn{padding:6px 16px;font-size:11px}.charm-card-price{font-size:15px}}.dice-tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;display:flex;align-items:center;justify-content:center;background:#000000b3;animation:diceTutorialFadeIn .3s ease-out;padding:16px}@keyframes diceTutorialFadeIn{0%{opacity:0}to{opacity:1}}.dice-tutorial-card{max-width:420px;width:100%;background:#fff;border-radius:0;border:1px solid rgba(0,0,0,.1);padding:28px 24px 22px;animation:diceTutorialCardIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes diceTutorialCardIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.dice-tutorial-title{margin:0 0 4px;text-align:center;font-size:1.2rem;font-weight:700;letter-spacing:.08em;color:#0a0a0a}.dice-tutorial-subtitle{margin:0 0 20px;text-align:center;font-size:.78rem;color:#00000073;line-height:1.5}.dice-tutorial-section{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.dice-tutorial-step{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:0;background:#00000008;border:1px solid rgba(0,0,0,.06)}.dice-tutorial-step-icon{font-size:1.3rem;line-height:1;flex-shrink:0;margin-top:2px}.dice-tutorial-step-body{display:flex;flex-direction:column;gap:2px}.dice-tutorial-step-body strong{font-size:.85rem;color:#0a0a0a}.dice-tutorial-step-body span{font-size:.78rem;color:#00000080;line-height:1.5}.dice-tutorial-step-body em{font-style:normal;color:#16a34a;font-weight:600}.dice-tutorial-example{margin-bottom:18px}.dice-tutorial-bar{display:flex;height:32px;border-radius:0;overflow:hidden;border:1px solid rgba(0,0,0,.1)}.dice-tutorial-bar-success{background:linear-gradient(135deg,#22c55e,#4ade80);display:flex;align-items:center;justify-content:center;position:relative}.dice-tutorial-bar-fail{flex:1;background:linear-gradient(135deg,#ef4444,#f87171);display:flex;align-items:center;justify-content:center}.dice-tutorial-bar-label{font-size:.68rem;font-weight:600;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.4);white-space:nowrap}.dice-tutorial-bar-caption{text-align:center;font-size:.7rem;color:#00000059;margin-top:6px}.dice-tutorial-outcomes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.dice-tutorial-outcome{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 6px;border-radius:0;background:#00000005;border:1px solid rgba(0,0,0,.06)}.dice-tutorial-outcome-tag{font-size:.82rem;font-weight:700;letter-spacing:.05em}.dice-tutorial-outcome-desc{font-size:.68rem;color:#00000073}.dice-tutorial-outcome--crit-success .dice-tutorial-outcome-tag{color:#ca8a04}.dice-tutorial-outcome--success .dice-tutorial-outcome-tag{color:#16a34a}.dice-tutorial-outcome--failure .dice-tutorial-outcome-tag{color:#dc2626}.dice-tutorial-outcome--crit-failure .dice-tutorial-outcome-tag{color:#9333ea}.dice-tutorial-btn{display:block;width:100%;padding:10px 0;border:none;border-radius:0;font-size:.88rem;font-weight:600;letter-spacing:.06em;color:#fff;cursor:pointer;background:#0a0a0a;transition:opacity .15s ease}.dice-tutorial-btn:hover{opacity:.85}.dice-tutorial-btn:active{opacity:.75}@media(max-width:480px){.dice-tutorial-card{padding:22px 18px 18px}.dice-tutorial-title{font-size:1.05rem}.dice-tutorial-bar-label{font-size:.6rem}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.33"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.header-stats{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;position:sticky;top:0;z-index:50;padding:0 var(--space-lg);overflow:hidden}.header-stats-inner{display:flex;align-items:center;gap:var(--space-lg);overflow-x:auto;width:100%;scrollbar-width:none}.header-stats-inner::-webkit-scrollbar{display:none}.header-stat{display:flex;align-items:center;gap:var(--space-xs);white-space:nowrap;flex-shrink:0;animation:fadeIn .3s ease both}.header-stat-icon{font-size:.85rem}.header-stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.header-stat-value{font-size:.85rem;font-weight:600;color:var(--color-text-primary)}.header-save-status{flex-shrink:0;margin-left:auto;font-size:.7rem;color:var(--color-text-muted);opacity:.6;white-space:nowrap;transition:opacity .4s ease}.header-save-status--fade{animation:saveFadeOut 2s ease forwards}@keyframes saveFadeOut{0%{opacity:.6}70%{opacity:.6}to{opacity:0}}.header-stats-loading{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--color-accent);animation:shimmer 1.5s infinite;background-size:200% 100%;background-image:linear-gradient(90deg,transparent 0%,var(--color-accent) 50%,transparent 100%)}@media(max-width:768px){.header-stats{padding:0 var(--space-md);padding-right:48px}.header-stats-inner{gap:var(--space-md)}.header-stat-label{display:none}.header-stat-value{font-size:.8rem}}.narrative-view{padding-bottom:var(--space-md)}.narrative-content{animation:fadeIn .5s ease both;font-family:var(--font-body);font-size:.95rem;line-height:1.85;color:var(--color-text-primary)}.narrative-content--loading{opacity:.6}.narrative-content h1,.narrative-content h2,.narrative-content h3,.narrative-content h4{color:var(--color-text-primary);margin-top:1.2em;margin-bottom:.5em;line-height:1.3}.narrative-content h1{font-size:1.4rem;font-weight:700}.narrative-content h2{font-size:1.2rem;font-weight:600}.narrative-content h3{font-size:1.05rem;font-weight:600}.narrative-content h4{font-size:.95rem;font-weight:600}.narrative-content p{margin-bottom:.8em}.narrative-content strong{color:var(--color-accent);font-weight:600}.narrative-content em{color:#e0c97f;font-style:normal}[data-theme-mode=light] .narrative-content em{color:#6b5a1e}.narrative-content blockquote{border-left:3px solid var(--color-accent-dim);padding-left:var(--space-md);margin:var(--space-md) 0;color:var(--color-text-primary);font-style:italic;opacity:.92}.narrative-content ul,.narrative-content ol{padding-left:1.5em;margin-bottom:.8em}.narrative-content li{margin-bottom:.3em}.narrative-content hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-lg) 0}.narrative-content table{width:100%;border-collapse:collapse;margin:var(--space-md) 0;font-size:.85rem}.narrative-content th,.narrative-content td{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);text-align:left}.narrative-content th{background:var(--glass-bg);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;font-size:.75rem;letter-spacing:.04em}.narrative-content code{font-family:var(--font-mono);font-size:.85em;background:var(--glass-bg);padding:2px 6px;border-radius:3px}.narrative-content pre{background:var(--glass-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md);overflow-x:auto;margin:var(--space-md) 0}.narrative-content pre code{background:none;padding:0}.narrative-quote-hint{color:#b4a0d2bf;font-size:.85rem;letter-spacing:.5px;margin:var(--space-sm) 0 0;animation:fadeIn .6s ease both}.narrative-typing{display:flex;gap:4px;padding:var(--space-md) 0}.narrative-typing-dot{width:6px;height:6px;background:var(--color-text-muted);border-radius:50%;animation:pulse 1.2s ease infinite}.narrative-typing-dot:nth-child(2){animation-delay:.2s}.narrative-typing-dot:nth-child(3){animation-delay:.4s}.narrative-cursor{display:inline-block;width:2px;height:1.1em;background:var(--color-accent);vertical-align:text-bottom;animation:cursorBlink 1s step-end infinite}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@media(max-width:768px){.narrative-content{font-size:.92rem;line-height:1.75}.narrative-content h1{font-size:1.25rem}.narrative-content h2{font-size:1.1rem}.narrative-content table{display:block;overflow-x:auto}}.action-pad{padding:var(--space-md) 0 var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);animation:fadeIn .3s ease both}.action-choices{display:flex;flex-direction:column;gap:var(--space-xs)}.action-choice-btn{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:10px var(--space-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--color-text-primary);font-size:.88rem;font-family:var(--font-body);cursor:pointer;text-align:left;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-choice-btn:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-dim)}.action-choice-btn:active:not(:disabled){transform:scale(.99)}.action-choice-btn:disabled{opacity:.4;cursor:not-allowed}.action-choice-id{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;font-size:.75rem;font-weight:600;background:#ffffff0f;border-radius:var(--radius-sm);color:var(--color-accent);flex-shrink:0}.action-choice-text{flex:1;line-height:1.4}.action-input-form{display:flex;gap:var(--space-sm);margin-top:var(--space-xs)}.action-input{flex:1;padding:11px var(--space-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:#ffffff08;color:var(--color-text-primary);font-size:.88rem;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast)}.action-input:focus{border-color:var(--color-accent)}.action-input::placeholder{color:var(--color-text-muted)}.action-input:disabled{opacity:.4}.action-send-btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:var(--color-accent);color:#000;font-size:1rem;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.action-send-btn:hover:not(:disabled){opacity:.85}.action-send-btn:disabled{background:#ffffff0f;color:var(--color-text-muted);cursor:not-allowed}.action-timer-bar{height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}.action-timer-bar-fill{height:100%;border-radius:3px;background:var(--color-accent);transition:width 1s linear}.action-timer-bar-fill--danger{background:#ef4444;animation:timerPulse .6s ease-in-out infinite}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.5}}.action-countdown-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:500;width:100px;height:100px;border-radius:50%;background:#ef4444d9;display:flex;align-items:center;justify-content:center;animation:countdownPulse 1s ease-in-out infinite;pointer-events:none}.action-countdown-number{font-size:3rem;font-weight:700;color:#fff;line-height:1}@keyframes countdownPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.15);opacity:.8}}.action-timer-toast{position:fixed;top:18%;left:50%;transform:translate(-50%);z-index:500;padding:10px 24px;border-radius:999px;background:#f59e0be6;color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;pointer-events:none;box-shadow:0 4px 20px #f59e0b66;animation:timerToastIn .3s ease-out,timerToastOut .3s ease-in 1.2s forwards}@keyframes timerToastIn{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes timerToastOut{0%{opacity:1}to{opacity:0}}.action-autoselect-toast{position:fixed;top:18%;left:50%;transform:translate(-50%);z-index:500;padding:10px 24px;border-radius:999px;background:#ef4444e0;color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis;pointer-events:none;box-shadow:0 4px 20px #ef444466;animation:autoSelectIn .3s ease-out,autoSelectOut .4s ease-in 2s forwards}@keyframes autoSelectIn{0%{opacity:0;transform:translate(-50%) translateY(-12px) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes autoSelectOut{0%{opacity:1}to{opacity:0}}.action-slider{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-slider-label{font-size:.85rem;color:var(--color-text-secondary)}.action-slider-value{font-size:1.8rem;font-weight:700;color:var(--color-accent);line-height:1.2}.action-slider-unit{font-size:.9rem;font-weight:400;margin-left:4px;color:var(--color-text-muted)}.action-slider-range{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff1a;border-radius:3px;outline:none}.action-slider-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:none}.action-slider-range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:none}.action-slider-bounds{width:100%;display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted)}.action-multi-select{display:flex;flex-direction:column;gap:var(--space-sm)}.action-multi-label{font-size:.85rem;color:var(--color-text-secondary)}.action-multi-chips{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.action-chip{padding:6px 14px;border:1px solid var(--color-border-light);border-radius:999px;background:var(--glass-bg);color:var(--color-text-primary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-chip:hover:not(:disabled){border-color:var(--color-accent)}.action-chip--selected{border-color:var(--color-accent);background:var(--color-accent-dim);color:var(--color-accent);font-weight:600}.action-chip:disabled{opacity:.35;cursor:not-allowed}.action-quick-reply{overflow:hidden}.action-quick-reply-scroll{display:flex;gap:var(--space-xs);overflow-x:auto;white-space:nowrap;padding-bottom:4px;-ms-overflow-style:none;scrollbar-width:none}.action-quick-reply-scroll::-webkit-scrollbar{display:none}.action-bubble{flex-shrink:0;padding:8px 16px;border:1px solid var(--color-border-light);border-radius:999px;background:var(--glass-bg);color:var(--color-text-primary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-bubble:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-dim)}.action-bubble:active:not(:disabled){transform:scale(.96)}.action-bubble:disabled{opacity:.4;cursor:not-allowed}.action-vote{display:flex;flex-direction:column;gap:var(--space-sm)}.action-vote-label{font-size:.9rem;color:var(--color-text-secondary);text-align:center}.action-vote-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.action-vote-btn{padding:16px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);text-align:center}.action-vote-btn--no{background:#ef444426;color:#f87171;border-color:#ef44444d}.action-vote-btn--no:hover:not(:disabled){background:#ef444440;border-color:#f87171}.action-vote-btn--yes{background:#22c55e26;color:#4ade80;border-color:#22c55e4d}.action-vote-btn--yes:hover:not(:disabled){background:#22c55e40;border-color:#4ade80}.action-vote-btn:active:not(:disabled){transform:scale(.97)}.action-vote-btn:disabled{opacity:.4;cursor:not-allowed}.action-confirm-btn{align-self:flex-end;padding:8px 20px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--color-accent);font-size:.88rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-confirm-btn:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-dim)}.action-confirm-btn:disabled{opacity:.35;cursor:not-allowed}@media(max-width:768px){.action-choice-btn,.action-input{padding:13px var(--space-md)}.action-send-btn{width:46px;height:46px}.action-chip{padding:9px 16px}.action-bubble{padding:10px 18px}.action-vote-btn{padding:20px;font-size:1.1rem}.action-slider-range::-webkit-slider-thumb{width:24px;height:24px}.action-slider-range::-moz-range-thumb{width:24px;height:24px}.action-confirm-btn{padding:10px 24px}}.action-matrix-btn{margin-top:8px;padding:10px 16px;border:1px dashed var(--color-border-light);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;opacity:.7;transition:opacity .2s,border-color .2s;width:100%;text-align:center}.action-matrix-btn:hover{opacity:1;border-color:var(--color-accent)}.timer-tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;display:flex;align-items:center;justify-content:center;background:#000000b3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:timerTutorialFadeIn .3s ease-out;padding:16px}@keyframes timerTutorialFadeIn{0%{opacity:0}to{opacity:1}}.timer-tutorial-card{max-width:400px;width:100%;background:linear-gradient(170deg,#1e1e38,#141428);border-radius:16px;border:1px solid rgba(255,255,255,.1);padding:28px 24px 22px;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0d,inset 0 1px #ffffff14;animation:timerTutorialCardIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes timerTutorialCardIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.timer-tutorial-title{margin:0 0 4px;text-align:center;font-size:1.2rem;font-weight:700;letter-spacing:.08em;color:#ffffffeb}.timer-tutorial-subtitle{margin:0 0 20px;text-align:center;font-size:.78rem;color:#fff6;line-height:1.5}.timer-tutorial-steps{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.timer-tutorial-step{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.timer-tutorial-step-icon{font-size:1.3rem;line-height:1;flex-shrink:0;margin-top:2px}.timer-tutorial-step-body{display:flex;flex-direction:column;gap:2px}.timer-tutorial-step-body strong{font-size:.85rem;color:#ffffffe0}.timer-tutorial-step-body span{font-size:.78rem;color:#ffffff80;line-height:1.5}.timer-tutorial-btn{display:block;width:100%;padding:10px 0;border:none;border-radius:10px;font-size:.88rem;font-weight:600;letter-spacing:.06em;color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#f97316);box-shadow:0 4px 14px #f59e0b59;transition:transform .15s ease,box-shadow .15s ease;font-family:var(--font-sans)}.timer-tutorial-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #f59e0b73}.timer-tutorial-btn:active{transform:translateY(0);box-shadow:0 2px 8px #f59e0b4d}@media(max-width:480px){.timer-tutorial-card{padding:22px 18px 18px}.timer-tutorial-title{font-size:1.05rem}}.action-voice-area{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0 4px}.action-voice-btn{width:64px;height:64px;border-radius:50%;border:2px solid var(--color-border-light);background:var(--color-surface-elevated, rgba(255,255,255,.06));color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent;touch-action:none;padding:0}.action-voice-btn--recording{border-color:#ef4444;background:#ef444426;color:#ef4444;transform:scale(1.1);animation:voicePulse 1s ease-in-out infinite}.action-voice-btn--transcribing{opacity:.6;pointer-events:none}.action-voice-btn--error{border-color:#f59e0b;color:#f59e0b}.action-voice-hint{font-size:.75rem;color:var(--color-text-muted)}.action-voice-spinner{animation:voiceSpin .8s linear infinite}@keyframes voicePulse{0%,to{box-shadow:0 0 #ef44444d}50%{box-shadow:0 0 0 12px #ef444400}}@keyframes voiceSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-voice-preview{width:100%;display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--color-accent, #60a5fa);border-radius:var(--radius-sm, 8px);background:var(--glass-bg, rgba(255,255,255,.04));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease}.action-voice-preview-text{margin:0;font-size:.92rem;line-height:1.5;color:var(--color-text-primary);word-break:break-word}.setup-form{width:100%;max-width:540px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-xl) 0 var(--space-2xl);animation:fadeInUp .5s ease both}.setup-form-title{font-size:1.15rem;font-weight:600;color:var(--color-text-primary);text-align:center;letter-spacing:-.01em}.setup-form-fields{display:flex;flex-direction:column;gap:var(--space-lg)}.setup-field{display:flex;flex-direction:column;gap:var(--space-sm)}.setup-field-label{font-size:.8rem;font-weight:500;color:var(--color-text-secondary);letter-spacing:.02em}.setup-field-required{color:var(--color-accent);margin-left:2px}.setup-field-input{padding:11px var(--space-md);background:#ffffff0a;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:.9rem;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.setup-field-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-dim)}.setup-field-input::placeholder{color:var(--color-text-muted)}.setup-field-input:disabled{opacity:.4}.setup-field-textarea{padding:11px var(--space-md);background:#ffffff0a;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:.9rem;font-family:var(--font-body);outline:none;resize:vertical;min-height:72px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.setup-field-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-dim)}.setup-field-textarea::placeholder{color:var(--color-text-muted)}.setup-field-textarea:disabled{opacity:.4}.setup-field-options{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.setup-option:not(.setup-option--rich){padding:8px 18px;background:#ffffff0a;border:1px solid var(--color-border-light);border-radius:var(--radius-xl);color:var(--color-text-secondary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast)}.setup-option:not(.setup-option--rich):hover:not(:disabled){border-color:#fff3;color:var(--color-text-primary);background:#ffffff0f}.setup-option:not(.setup-option--rich).setup-option--selected{border-color:var(--color-accent);background:var(--color-accent-dim);color:var(--color-accent)}.setup-option--rich{flex:1 1 100%;display:flex;flex-direction:column;gap:4px;padding:var(--space-md);background:#ffffff05;border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.setup-option--rich:hover:not(:disabled){border-color:#fff3;background:#ffffff0a}.setup-option--rich.setup-option--selected{border-color:var(--color-accent);background:var(--color-accent-dim)}.setup-option--rich.setup-option--selected .setup-option-label{color:var(--color-accent)}.setup-option-label{font-size:.9rem;font-weight:600;color:var(--color-text-primary);transition:color var(--transition-fast)}.setup-option-desc{font-size:.78rem;color:var(--color-text-muted);line-height:1.5}.setup-option:disabled{opacity:.4;cursor:not-allowed}.setup-form-submit{width:100%;padding:13px;border:none;border-radius:var(--radius-sm);background:var(--color-accent);color:#000;font-size:.9rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.02em;margin-top:var(--space-sm)}.setup-form-submit:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.setup-form-submit:active:not(:disabled){transform:translateY(0)}.setup-form-submit:disabled{background:#ffffff14;color:var(--color-text-muted);cursor:not-allowed}@media(max-width:768px){.setup-form{padding:var(--space-md) 0 var(--space-xl)}}.art-style-picker{width:100%;max-width:540px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg) 0 0;animation:fadeInUp .5s ease both}.art-style-picker-label{font-size:.8rem;font-weight:500;color:var(--color-text-secondary);letter-spacing:.02em}.art-style-picker-grid{display:flex;flex-wrap:wrap;gap:6px}.art-style-pill{padding:5px 14px;background:#ffffff0a;border:1px solid var(--color-border-light);border-radius:var(--radius-xl);color:var(--color-text-secondary);font-size:.78rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.art-style-pill:hover:not(:disabled){border-color:#fff3;color:var(--color-text-primary);background:#ffffff0f}.art-style-pill--active{border-color:var(--color-accent);background:var(--color-accent-dim);color:var(--color-accent)}.art-style-pill:disabled{opacity:.4;cursor:not-allowed}.widget-kv{display:flex;flex-direction:column;gap:1px}.widget-kv-row{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;gap:var(--space-sm);border-bottom:1px solid rgba(255,255,255,.03)}.widget-kv-row:last-child{border-bottom:none}.widget-kv-key{font-size:.8rem;color:var(--color-text-muted);flex-shrink:0}.widget-kv-value{font-size:.85rem;font-weight:500;color:var(--color-text-primary);text-align:right;word-break:break-word}.widget-kv-row--changed{animation:kvRowFlash 1.2s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-kv-row--changed .widget-kv-value{animation:kvValuePop .5s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-kv-row--new{animation:kvRowSlideIn .4s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-kv-delta{display:inline-block;font-size:.7rem;font-weight:600;margin-left:5px;padding:0 4px;border-radius:3px;vertical-align:middle;animation:kvDeltaLife 2s ease forwards;animation-delay:var(--delay, 0s);animation-fill-mode:both}.widget-kv-delta--up{color:var(--color-success);background:#34d3991f}.widget-kv-delta--down{color:var(--color-danger);background:#f871711f}@keyframes kvRowFlash{0%{background:transparent}10%{background:var(--color-accent-dim)}to{background:transparent}}@keyframes kvValuePop{0%{transform:scale(1)}10%{transform:scale(1.15)}50%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes kvRowSlideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes kvDeltaLife{0%{opacity:1;transform:translateY(-2px)}15%{opacity:1;transform:translateY(0)}75%{opacity:1}to{opacity:0}}.widget-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:2px}.widget-list-item{font-size:.83rem;color:var(--color-text-primary);padding:4px 0;padding-left:var(--space-md);position:relative;line-height:1.5}.widget-list-item:before{content:"•";position:absolute;left:2px;color:var(--color-accent);font-size:.7rem}.widget-list-item--new{animation:kvRowSlideIn .4s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-list-toggle{list-style:none;text-align:center;padding:2px 0}.widget-list-toggle-btn{font-size:.75rem;color:var(--color-text-muted);background:#ffffff0a;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:3px 12px;cursor:pointer;transition:all var(--transition-fast)}.widget-list-toggle-btn:hover{color:var(--color-text-secondary);background:#ffffff14;border-color:var(--color-border-light)}.widget-list-rich{display:flex;align-items:flex-start;gap:10px;padding:8px 4px;border-bottom:1px solid rgba(255,255,255,.04)}.widget-list-rich:last-child{border-bottom:none}.widget-list-rich-icon{font-size:1.25rem;line-height:1;flex-shrink:0;margin-top:1px}.widget-list-rich-body{display:flex;flex-direction:column;gap:2px;min-width:0}.widget-list-rich-name{font-size:.85rem;font-weight:600;color:var(--color-text-primary);line-height:1.4}.widget-list-rich-desc{font-size:.78rem;color:var(--color-text-muted);line-height:1.4}.widget-list-rich--new{animation:kvRowSlideIn .4s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-table-wrap{overflow-x:auto}.widget-table{width:100%;border-collapse:collapse;font-size:.8rem}.widget-table th{padding:6px 10px;text-align:left;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:#ffffff05;border-bottom:1px solid var(--color-border)}.widget-table td{padding:6px 10px;color:var(--color-text-primary);border-bottom:1px solid rgba(255,255,255,.03)}.widget-table tr:last-child td{border-bottom:none}.widget-progress{display:flex;flex-direction:column;gap:var(--space-sm)}.widget-progress-item{display:flex;flex-direction:column;gap:4px}.widget-progress-header{display:flex;justify-content:space-between;align-items:baseline}.widget-progress-label{font-size:.8rem;color:var(--color-text-secondary)}.widget-progress-value{font-size:.75rem;font-weight:600;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.widget-progress-track{width:100%;height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden}.widget-progress-fill{height:100%;border-radius:3px;transition:width var(--transition-slow)}.widget-progress-bar-none{width:100%;height:2px;border-radius:1px;opacity:.25}.widget-progress-item--changed{animation:kvRowFlash 1.2s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-progress-item--changed .widget-progress-value{animation:kvValuePop .5s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-progress-item--changed .widget-progress-fill{animation:progressBarGlow 1s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}@keyframes progressBarGlow{0%{filter:brightness(1);box-shadow:none}10%{filter:brightness(1.6);box-shadow:0 0 8px currentColor}to{filter:brightness(1);box-shadow:none}}.widget-countdown-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 0}.widget-countdown-label{font-size:.78rem;color:var(--color-text-muted);letter-spacing:.03em}.widget-countdown-value{font-size:1.4rem;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums;line-height:1}.widget-countdown-sep{font-weight:400;opacity:.4;margin:0 1px}.widget-countdown-suffix{font-size:.75rem;font-weight:500;color:var(--color-text-muted);margin-left:2px}.widget-countdown-phases{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.widget-countdown-phase{font-size:.72rem;line-height:1}.widget-countdown-phase--current{color:var(--color-text-secondary);font-weight:600}.widget-countdown-phase--next{color:var(--color-text-muted);opacity:.7}.widget-countdown-item--changed{animation:kvRowFlash 1.2s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-countdown-item--changed .widget-countdown-value{animation:kvValuePop .5s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-countdown-item--urgent{animation:countdownPulse 1.8s ease-in-out infinite}.widget-countdown-item--urgent .widget-countdown-value{color:var(--color-danger, #f87171)}@keyframes countdownPulse{0%,to{background:transparent}50%{background:#f8717114}}.widget-grid-map{display:grid;gap:4px;max-width:100%}.widget-grid-cell{min-width:0;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#ffffff08;border:1px solid var(--color-border);border-radius:4px;padding:4px 4px 3px;transition:all var(--transition-fast)}.widget-grid-cell--current{background:var(--color-accent-dim);border-color:var(--color-accent);box-shadow:0 0 8px var(--color-accent-glow)}.widget-grid-cell--empty{background:transparent;border-color:transparent;min-height:0}.widget-grid-cell-icon{font-size:1.1rem;line-height:1;flex-shrink:0}.widget-grid-cell-label{font-size:.6rem;text-align:center;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;line-height:1.2}.widget-grid-cell--current .widget-grid-cell-icon{filter:drop-shadow(0 0 4px var(--color-accent-glow))}.widget-grid-cell--current .widget-grid-cell-label{color:var(--color-accent);font-weight:600}.widget-tree{font-size:.83rem}.widget-tree-node{padding:2px 0}.widget-tree-node-label{display:flex;align-items:center;gap:2px;color:var(--color-text-primary);line-height:1.6}.widget-tree-connector{color:var(--color-text-muted);font-family:monospace;white-space:pre}.widget-tree-relation{font-size:.7rem;color:var(--color-text-muted);font-style:italic}.widget-feed{display:flex;flex-direction:column;gap:var(--space-sm)}.widget-feed-post{padding:var(--space-sm);background:#ffffff05;border-radius:var(--radius-sm);border-left:2px solid var(--color-accent-dim)}.widget-feed-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.widget-feed-author{font-size:.8rem;font-weight:600;color:var(--color-accent)}.widget-feed-time{font-size:.7rem;color:var(--color-text-muted)}.widget-feed-content{font-size:.83rem;color:var(--color-text-primary);line-height:1.5}.widget-card{padding:var(--space-sm)}.widget-card-title{font-size:.9rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-sm)}.widget-card-body{font-size:.83rem;color:var(--color-text-secondary);line-height:1.6}.widget-card-body p{margin-bottom:.5em}.widget-card-body strong{color:var(--color-text-primary)}.widget-log{display:flex;flex-direction:column;gap:2px;max-height:300px;overflow-y:auto}.widget-log-entry{display:flex;gap:var(--space-sm);padding:3px 0;font-size:.78rem;line-height:1.5;border-bottom:1px solid rgba(255,255,255,.02)}.widget-log-entry:last-child{border-bottom:none}.widget-log-time{color:var(--color-text-muted);flex-shrink:0;font-variant-numeric:tabular-nums;min-width:50px}.widget-log-text{color:var(--color-text-primary)}.widget-generic{font-size:.83rem;color:var(--color-text-secondary);line-height:1.5}.widget-generic-item{padding:3px 0;border-bottom:1px solid rgba(255,255,255,.03)}.widget-generic-item:last-child{border-bottom:none}.screen-device{border-radius:10px;overflow:hidden;background:#1a1a1a;box-shadow:inset 0 0 0 1px #ffffff14,0 4px 24px #0006}.screen-titlebar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.06);-webkit-user-select:none;user-select:none;position:relative}.screen-titlebar-dot{width:10px;height:10px;border-radius:50%}.screen-titlebar-dot--red{background:#ff5f57}.screen-titlebar-dot--yellow{background:#febc2e}.screen-titlebar-dot--green{background:#28c840}.screen-titlebar-name{position:absolute;left:54px;right:54px;text-align:center;font-size:.75rem;color:#ffffff8c;font-weight:500;letter-spacing:.02em;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-titlebar-icon{margin-right:5px;font-size:.8rem}.screen-content{overflow-y:visible}.screen-unknown{padding:24px;text-align:center;color:#ffffff4d;font-size:.8rem}.screen-chat{display:flex;flex-direction:column;gap:8px;padding:12px;background:#111}.screen-chat-row{display:flex;justify-content:flex-start}.screen-chat-row--self{flex-direction:row-reverse}.screen-chat-bubble{max-width:75%;padding:8px 12px;border-radius:12px;background:#3a3a3a;position:relative}.screen-chat-row--self .screen-chat-bubble{background:#95ec69;color:#000}.screen-chat-sender{display:block;font-size:.65rem;font-weight:600;margin-bottom:2px;color:#ffffff80}.screen-chat-row--self .screen-chat-sender{color:#00000073}.screen-chat-text{margin:0;font-size:.82rem;line-height:1.5;color:#ffffffe6;word-break:break-word}.screen-chat-row--self .screen-chat-text{color:#000}.screen-chat-time{display:block;font-size:.6rem;color:#ffffff4d;text-align:right;margin-top:4px}.screen-chat-row--self .screen-chat-time{color:#0000004d}.screen-search{padding:16px 12px;background:#202124}.screen-search-bar{display:flex;align-items:center;gap:0;background:#303134;border-radius:24px;margin-bottom:12px;overflow:hidden}.screen-search-input{flex:1;min-width:0;background:transparent;border:none;outline:none;padding:9px 16px;font-size:.85rem;color:#e8eaed;font-family:inherit}.screen-search-input::placeholder{color:#ffffff47}.screen-search-btn{background:transparent;border:none;padding:6px 14px;font-size:1rem;cursor:pointer;color:#8ab4f8;flex-shrink:0;border-left:1px solid rgba(255,255,255,.08);transition:background var(--transition-fast);line-height:1}.screen-search-btn:hover{background:#ffffff0f}.screen-search-btn:disabled{opacity:.4;cursor:default}.screen-search-powered{display:block;font-size:.68rem;color:#8ab4f899;text-align:center;margin-bottom:10px;letter-spacing:.02em;text-decoration:none}.screen-search-powered:hover{color:#8ab4f8;text-decoration:underline}.screen-search-result{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.screen-search-result:last-child{border-bottom:none}.screen-search-url{font-size:.7rem;color:#bdc1c6;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-search-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.88rem;color:#8ab4f8;margin-bottom:4px;cursor:pointer;line-height:1.4}.screen-search-meta{display:flex;align-items:center;gap:8px;font-size:.7rem;margin-bottom:3px}.screen-search-date{color:#9aa0a6}.screen-search-authors{color:#8ab4f8}.screen-search-snippet{font-size:.78rem;color:#9aa0a6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.screen-terminal{padding:12px;background:#0c0c0c;font-family:Consolas,Menlo,Courier New,monospace;font-size:.8rem;line-height:1.6;min-height:80px}.screen-terminal-line{white-space:pre-wrap;word-break:break-all;color:#ccc}.screen-terminal-line--input{color:#4ec9b0}.screen-terminal-line--error{color:#f44747}.screen-terminal-prompt{color:#6a9955;-webkit-user-select:none;user-select:none}.screen-terminal-input-row{display:inline;word-break:break-all}.screen-terminal-input-row .screen-terminal-prompt{display:inline}.screen-terminal-input-wrap{position:relative;display:inline-block;vertical-align:bottom}.screen-terminal-input-sizer{visibility:hidden;white-space:pre;font-family:Consolas,Menlo,Courier New,monospace;font-size:.8rem;display:inline-block;min-width:1ch}.screen-terminal-input{position:absolute;left:0;top:0;width:100%;background:transparent;border:none;outline:none;color:#4ec9b0;font-family:Consolas,Menlo,Courier New,monospace;font-size:.8rem;line-height:1.6;caret-color:#ccc;padding:0}.screen-email{background:#1e1e1e}.screen-email-item{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;transition:background var(--transition-fast)}.screen-email-item:hover{background:#ffffff0a}.screen-email-item--open{background:#ffffff08}.screen-email-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.screen-email-dot{width:8px;height:8px;border-radius:50%;background:#4a9eff;flex-shrink:0}.screen-email-from{font-size:.82rem;color:#ffffffd9;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-email-item--unread .screen-email-from{font-weight:600}.screen-email-time{font-size:.68rem;color:#ffffff59;flex-shrink:0}.screen-email-subject{font-size:.8rem;color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.screen-email-item--unread .screen-email-subject{color:#fffffff2;font-weight:600}.screen-email-preview{font-size:.73rem;color:#ffffff59;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-email-body{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);font-size:.8rem;color:#ffffffb3;line-height:1.6}.screen-social{background:#15202b;padding:4px 0}.screen-social-platform{padding:8px 14px 4px;font-size:.72rem;font-weight:600;color:#ffffff59;text-transform:uppercase;letter-spacing:.06em}.screen-social-post{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.screen-social-post:last-child{border-bottom:none}.screen-social-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.screen-social-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;line-height:1}.screen-social-names{display:flex;flex-direction:column;min-width:0;flex:1}.screen-social-author{font-size:.82rem;font-weight:600;color:#ffffffe6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-social-handle{font-size:.7rem;color:#ffffff59}.screen-social-time{font-size:.65rem;color:#ffffff4d;flex-shrink:0}.screen-social-content{margin:0;font-size:.83rem;color:#ffffffd9;line-height:1.55;word-break:break-word}.screen-social-actions{display:flex;gap:16px;margin-top:8px}.screen-social-stat{font-size:.72rem;color:#ffffff59;display:flex;align-items:center;gap:4px}.screen-map{padding:16px;background:#1a2332}.screen-map-route{display:flex;flex-direction:column;gap:0;padding:0 8px;margin-bottom:16px}.screen-map-waypoint{display:flex;align-items:center;gap:10px;padding:6px 0}.screen-map-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px}.screen-map-dot--start{background:#34d399;box-shadow:0 0 6px #34d39980}.screen-map-dot--end{background:#f87171;box-shadow:0 0 6px #f8717180}.screen-map-label{font-size:.85rem;color:#ffffffe6;font-weight:500}.screen-map-line{width:2px;height:24px;margin-left:5px;border-left:2px dashed #4a9eff}.screen-map-info{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0;border-top:1px solid rgba(74,158,255,.15);border-bottom:1px solid rgba(74,158,255,.15)}.screen-map-mode{font-size:1.1rem}.screen-map-distance{font-size:.9rem;font-weight:600;color:#4a9eff}.screen-map-sep{color:#fff3}.screen-map-duration{font-size:.9rem;color:#ffffffb3}.screen-map-steps{margin-top:12px}.screen-map-steps-toggle{display:block;width:100%;background:#4a9eff14;border:1px solid rgba(74,158,255,.2);border-radius:6px;padding:6px 12px;font-size:.75rem;color:#4a9eff;cursor:pointer;text-align:center;transition:background .2s}.screen-map-steps-toggle:hover{background:#4a9eff26}.screen-map-steps-list{margin:8px 0 0;padding-left:20px;list-style:decimal}.screen-map-step{font-size:.78rem;color:#ffffffb3;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.04);display:flex;justify-content:space-between;align-items:baseline;gap:8px}.screen-map-step:last-child{border-bottom:none}.screen-map-step-text{flex:1}.screen-map-step-dist{font-size:.7rem;color:#ffffff59;flex-shrink:0}.screen-news{background:#1a1a1a}.screen-news-item{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;transition:background .15s}.screen-news-item:hover{background:#ffffff08}.screen-news-item:last-child{border-bottom:none}.screen-news-title{display:flex;align-items:flex-start;gap:6px;font-size:.88rem;font-weight:600;color:#ffffffe6;line-height:1.5;margin-bottom:6px}.screen-news-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 6px #ef444480;flex-shrink:0;margin-top:6px}.screen-news-item--unread .screen-news-title{color:#fffffff2}.screen-news-meta{display:flex;align-items:center;gap:8px;font-size:.7rem}.screen-news-category{padding:1px 8px;border-radius:10px;font-size:.65rem;font-weight:600;letter-spacing:.02em}.screen-news-source{color:#ffffff73}.screen-news-time{color:#ffffff4d}.screen-news-summary{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06);font-size:.8rem;color:#ffffff8c;line-height:1.6}.screen-payment{padding:24px 16px;background:#1a1a1a;text-align:center}.screen-payment-status{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:16px}.screen-payment-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700}.screen-payment-status--success .screen-payment-icon{background:#34d39926;color:#34d399}.screen-payment-status--pending .screen-payment-icon{background:#fbbf2426;color:#fbbf24;font-size:1.5rem}.screen-payment-status--failed .screen-payment-icon{background:#f8717126;color:#f87171}.screen-payment-label{font-size:.85rem;color:#ffffffb3;font-weight:500}.screen-payment-amount{font-size:2rem;font-weight:700;color:#fffffff2;margin-bottom:20px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.screen-payment-details{text-align:left;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.screen-payment-row{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;font-size:.8rem}.screen-payment-key{color:#fff6}.screen-payment-val{color:#fffc;text-align:right;word-break:break-all}.screen-video{background:#0a0a0a}.screen-video-player{position:relative;width:100%;aspect-ratio:16 / 9;background:#111;display:flex;align-items:center;justify-content:center;overflow:hidden}.screen-video-play-btn{width:52px;height:52px;border-radius:50%;background:#ffffff1f;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fffc;cursor:pointer;z-index:1;transition:background .2s;padding-left:3px}.screen-video-play-btn:hover{background:#fff3}.screen-video-danmaku{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.screen-video-danmaku-item{position:absolute;right:-100%;white-space:nowrap;font-size:.75rem;color:#ffffffbf;text-shadow:1px 1px 2px rgba(0,0,0,.8);animation:danmakuScroll 8s linear infinite}@keyframes danmakuScroll{0%{transform:translate(0)}to{transform:translate(calc(-100% - 100vw))}}.screen-video-info{padding:12px 14px}.screen-video-author{display:flex;align-items:center;gap:8px;margin-bottom:8px}.screen-video-avatar{width:28px;height:28px;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.screen-video-name{font-size:.82rem;font-weight:600;color:#ffffffe6}.screen-video-title{font-size:.85rem;color:#ffffffd9;line-height:1.5;margin-bottom:4px}.screen-video-desc{font-size:.75rem;color:#ffffff73;line-height:1.5;margin-bottom:8px}.screen-video-actions{display:flex;gap:20px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.screen-video-stat{font-size:.78rem;color:#fff6;display:flex;align-items:center;gap:4px}.doc-unknown{padding:24px;text-align:center;color:#0000004d;font-size:.8rem}.doc-letter{position:relative;background:#f5f0e1;background-image:repeating-linear-gradient(transparent,transparent 27px,rgba(0,0,0,.04) 27px,rgba(0,0,0,.04) 28px);padding:28px 32px 32px;border-radius:2px;box-shadow:0 1px 4px #0000001f,inset 0 0 40px #00000008;color:#3a2f25;font-family:var(--font-serif, "Georgia", "Noto Serif SC", serif);line-height:1.8;overflow:hidden}.doc-letter-fold{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(135deg,transparent 48%,rgba(0,0,0,.015) 49%,rgba(0,0,0,.025) 51%,transparent 52%)}.doc-letter-header{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.08);font-style:italic;font-size:.82rem;color:#6b5e50}.doc-letter-addr{white-space:nowrap}.doc-letter-date{margin-left:auto;font-size:.78rem;color:#8a7d6e}.doc-letter-body{font-size:.88rem;word-break:break-word}.doc-letter-body p{margin:.3em 0}.doc-letter-body li>p{margin:0}.doc-letter-seal{display:flex;justify-content:flex-end;margin-top:24px}.doc-letter-seal-text{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 40% 38%,#c23a2a,#8b1a1a);color:#f5e6d0;font-size:.7rem;font-weight:700;box-shadow:0 2px 6px #00000040,inset 0 -1px 2px #ffffff26,inset 0 1px 2px #0003;text-align:center;line-height:1.2;padding:4px;word-break:break-all}.doc-scroll{display:flex;flex-direction:column;filter:drop-shadow(0 3px 8px rgba(0,0,0,.25))}.doc-scroll-rod{height:18px;position:relative;z-index:2;background:linear-gradient(180deg,#a08968,#8b7355 15%,#6b5640,#5a4633 85%,#4a3828);border-radius:9px;box-shadow:0 2px 6px #00000059,inset 0 2px 1px #fff3,inset 0 -1px 1px #0003}.doc-scroll-rod--top{margin-bottom:-4px}.doc-scroll-rod--bottom{margin-top:-4px}.doc-scroll-knob{position:absolute;top:-3px;width:16px;height:24px;border-radius:4px;background:linear-gradient(180deg,#9a8060,#7a6348 40%,#5a4633);box-shadow:0 2px 4px #00000059,inset 0 1px 1px #ffffff26}.doc-scroll-knob--l{left:-4px}.doc-scroll-knob--r{right:-4px}.doc-scroll-content{position:relative;z-index:1;background:linear-gradient(180deg,#cdbf9a,#ddd0b4 4%,#e8dcc8 15%,#ece2d0,#e8dcc8 85%,#ddd0b4 96%,#cdbf9a);padding:32px 40px;color:#3a2f25;font-family:var(--font-serif, "Georgia", "Noto Serif SC", serif);line-height:2;text-align:center;box-shadow:inset 6px 0 12px #00000012,inset -6px 0 12px #00000012;border-left:1px solid rgba(0,0,0,.06);border-right:1px solid rgba(0,0,0,.06)}.doc-scroll-content:before,.doc-scroll-content:after{content:"";position:absolute;left:0;right:0;height:14px;pointer-events:none;z-index:1}.doc-scroll-content:before{top:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.03) 50%,transparent 100%)}.doc-scroll-content:after{bottom:0;background:linear-gradient(0deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.03) 50%,transparent 100%)}.doc-scroll-aging{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 20% 30%,rgba(139,109,70,.08) 0%,transparent 50%),radial-gradient(ellipse at 75% 70%,rgba(139,109,70,.06) 0%,transparent 45%),radial-gradient(ellipse at 50% 90%,rgba(139,109,70,.05) 0%,transparent 40%)}.doc-scroll-title{font-size:1.2rem;font-weight:700;letter-spacing:.15em;margin:0 0 8px;color:#2a1f15;position:relative}.doc-scroll-title:after{content:"";display:block;width:60%;height:1px;margin:8px auto 10px;background:linear-gradient(90deg,transparent 0%,rgba(58,47,37,.3) 30%,rgba(58,47,37,.3) 70%,transparent 100%)}.doc-scroll-body{font-size:.88rem;word-break:break-word;position:relative}.doc-scroll-body p{margin:.3em 0}.doc-scroll-body li>p{margin:0}.doc-scroll-seal{display:flex;justify-content:center;margin-top:20px;position:relative}.doc-scroll-seal-text{width:58px;height:58px;border-radius:4px;display:flex;align-items:center;justify-content:center;background:#c23a2a14;border:2.5px solid #c23a2a;color:#c23a2a;font-size:.82rem;font-weight:700;text-align:center;line-height:1.2;padding:4px;word-break:break-all;transform:rotate(-6deg);box-shadow:0 0 0 1px #c23a2a1a,0 0 6px #c23a2a14}.doc-newspaper{position:relative;background:#ece8e0;padding:20px 24px 24px;border-radius:1px;color:#1a1a1a;font-family:var(--font-serif, "Georgia", "Noto Serif SC", serif);box-shadow:0 1px 3px #0000001a,0 4px 12px #00000014;overflow:hidden;background-image:radial-gradient(ellipse at 30% 20%,rgba(180,160,100,.06) 0%,transparent 60%),radial-gradient(ellipse at 70% 80%,rgba(180,160,100,.05) 0%,transparent 50%)}.doc-newspaper-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.06) 100%);z-index:1}.doc-newspaper-fold{position:absolute;top:0;left:50%;width:1px;height:100%;pointer-events:none;background:#0000000a;box-shadow:-1px 0 2px #00000005,1px 0 2px #00000005;z-index:1}.doc-newspaper-masthead{text-align:center;margin-bottom:14px;position:relative;z-index:2}.doc-newspaper-name{font-size:1.6rem;font-weight:900;letter-spacing:.18em;margin:4px 0 2px;color:#0a0a0a;text-transform:uppercase}.doc-newspaper-date{font-size:.7rem;color:#555;display:block;margin-bottom:6px;letter-spacing:.08em}.doc-newspaper-rule{position:relative;height:4px;background:transparent}.doc-newspaper-rule:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#1a1a1a}.doc-newspaper-rule:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#1a1a1a}.doc-newspaper-rule--bottom{height:5px}.doc-newspaper-rule--bottom:before{height:2px}.doc-newspaper-columns{column-count:2;column-gap:18px;column-rule:1px solid rgba(0,0,0,.15);margin-top:14px;position:relative;z-index:2}.doc-newspaper-article{break-inside:avoid;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.08)}.doc-newspaper-article:last-child{border-bottom:none;padding-bottom:0}.doc-newspaper-article--lead{column-span:all;margin-bottom:14px;padding-bottom:12px;border-bottom:2px solid rgba(0,0,0,.12)}.doc-newspaper-headline{font-size:.88rem;font-weight:700;margin:0 0 4px;line-height:1.4;color:#0a0a0a}.doc-newspaper-headline--lead{font-size:1.15rem;font-weight:900;margin-bottom:6px;line-height:1.35;letter-spacing:.02em}.doc-newspaper-text{font-size:.76rem;line-height:1.7;margin:0;color:#2a2a2a;text-align:justify;text-indent:2em}.doc-poster-wall{background:#8a8078;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.02) 2px,rgba(0,0,0,.02) 4px),repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(0,0,0,.015) 3px,rgba(0,0,0,.015) 6px);padding:18px 14px;border-radius:4px;box-shadow:inset 0 0 30px #00000040}.doc-poster{position:relative;background:#f0e8d8;border:2px solid #6b5a48;padding:36px 28px 28px;text-align:center;color:#2a1f15;font-family:var(--font-serif, "Georgia", "Noto Serif SC", serif);box-shadow:0 2px 8px #0003,0 8px 20px #0000001a;transform:rotate(.3deg)}.doc-poster-aging{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 85% 15%,rgba(120,90,50,.07) 0%,transparent 40%),radial-gradient(ellipse at 10% 85%,rgba(120,90,50,.06) 0%,transparent 35%),radial-gradient(ellipse at 50% 50%,rgba(120,90,50,.03) 0%,transparent 60%);z-index:0}.doc-poster-inner-border{position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:1.5px solid rgba(107,90,72,.2);pointer-events:none;z-index:0}.doc-poster-pin{position:absolute;z-index:3;width:20px;height:20px}.doc-poster-pin--tl{top:-6px;left:12px}.doc-poster-pin--tr{top:-6px;right:12px}.doc-poster-pin-head{position:absolute;top:0;left:50%;transform:translate(-50%);width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e8e0d8,#c0b8b0 30%,#908880 70%,#706860);box-shadow:0 1px 3px #0006,inset 0 1px 2px #ffffff4d}.doc-poster-pin-shadow{position:absolute;top:12px;left:50%;transform:translate(-50%);width:10px;height:4px;border-radius:50%;background:#00000026;filter:blur(1px)}.doc-poster-title{font-size:1.4rem;font-weight:900;letter-spacing:.15em;margin:0 0 8px;color:#1a0f05;position:relative;z-index:1}.doc-poster-rule{width:80%;height:0;margin:0 auto 16px;border-top:2px solid #5a4a38;border-bottom:1px solid #5a4a38;padding-top:2px;position:relative;z-index:1}.doc-poster-body{font-size:.88rem;line-height:1.9;word-break:break-word;text-align:center;position:relative;z-index:1}.doc-poster-footer{display:flex;flex-direction:column;align-items:flex-end;gap:8px;margin-top:24px;padding-top:12px;border-top:1px solid rgba(0,0,0,.08);position:relative;z-index:1}.doc-poster-authority{font-size:.82rem;color:#5a4a38;font-weight:600;letter-spacing:.06em}.doc-poster-stamp{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border:3px solid #c23a2a;border-radius:50%;color:#c23a2a;transform:rotate(12deg);position:relative;box-shadow:0 0 0 1px #c23a2a26,inset 0 0 8px #c23a2a14;filter:saturate(.85) contrast(.9)}.doc-poster-stamp:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1.5px solid rgba(194,58,42,.5);border-radius:50%}.doc-poster-stamp-inner{font-size:.7rem;font-weight:700;text-align:center;line-height:1.2;padding:2px;word-break:break-all}.doc-note{position:relative;background:#fff9c4;padding:24px 20px 20px;margin:6px;border-radius:1px;transform:rotate(-1deg);box-shadow:2px 3px 8px #00000026,inset 0 0 30px #00000005;color:#333;font-style:italic;line-height:1.8;min-height:80px}.doc-note-tape{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:80px;height:18px;border-radius:1px;background:linear-gradient(180deg,#c8c8b48c,#c8c8b459);box-shadow:0 1px 2px #00000014}.doc-note-body{font-size:.88rem;word-break:break-word}.doc-note-body p{margin:.3em 0}.doc-note-body li>p{margin:0}.doc-note-author{display:block;text-align:right;margin-top:14px;font-size:.8rem;color:#666;font-style:italic}@media(max-width:768px){.widget-kv-key{font-size:.75rem}.widget-kv-value{font-size:.8rem}.widget-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.widget-grid-cell{min-height:48px}.doc-newspaper-columns{column-count:1}.doc-scroll-content{padding:20px 24px}.ev-board-grid{grid-template-columns:repeat(2,1fr)}}.ev-board{position:relative;overflow:hidden;background:radial-gradient(ellipse 2px 2px at 20% 30%,rgba(0,0,0,.08) 0%,transparent 100%),radial-gradient(ellipse 3px 2px at 60% 15%,rgba(0,0,0,.06) 0%,transparent 100%),radial-gradient(ellipse 2px 3px at 80% 70%,rgba(0,0,0,.07) 0%,transparent 100%),radial-gradient(ellipse 2px 2px at 40% 80%,rgba(0,0,0,.05) 0%,transparent 100%),radial-gradient(ellipse 3px 3px at 10% 60%,rgba(0,0,0,.06) 0%,transparent 100%),#8b6914;border:8px solid #5a3e1b;border-image:linear-gradient(135deg,#7a5a2e,#4a2e10 40%,#6b4a1f 60%,#3e2008) 1;border-radius:4px;padding:20px;box-shadow:inset 0 0 30px #00000040,inset 0 0 6px #00000026,0 4px 16px #0000004d;min-height:180px}.ev-board-title{text-align:center;color:#faf6ee;font-size:1rem;font-weight:700;letter-spacing:1px;margin:0 0 16px;text-shadow:1px 1px 2px rgba(0,0,0,.4)}.ev-board-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}.ev-board-svg-label-bg{fill:#281405b8;rx:4;ry:4}.ev-board-svg-label{fill:#faf6ee;font-size:10px;text-anchor:middle;dominant-baseline:central}.ev-board-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;position:relative;z-index:1}.ev-board-card{position:relative;background:#faf6ee;border-radius:2px;padding:10px 10px 10px 16px;box-shadow:1px 2px 6px #00000038;transition:transform .2s}.ev-board-card:nth-child(3n+1){transform:rotate(-1.2deg)}.ev-board-card:nth-child(3n+2){transform:rotate(.8deg)}.ev-board-card:nth-child(3n+3){transform:rotate(-.5deg)}.ev-board-card:hover{transform:rotate(0) scale(1.03);z-index:3}.ev-board-card-stripe{position:absolute;left:0;top:0;bottom:0;width:5px}.ev-board-card-pin{position:absolute;top:6px;right:10px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#e74c3c,#a93226);box-shadow:0 2px 3px #0000004d;z-index:4}.ev-board-card-pin:after{content:"";position:absolute;top:3px;left:5px;width:3px;height:3px;border-radius:50%;background:#ffffff73}.ev-board-card-body{display:flex;flex-direction:column;gap:4px}.ev-board-card-label{font-size:.78rem;color:#2c1810;line-height:1.3}.ev-board-card-detail{font-size:.68rem;color:#5a4030;line-height:1.4}.ev-board-card-detail p{margin:0}.ev-clue{position:relative;background:#faf6ee;border-radius:3px;padding:14px 14px 14px 20px;box-shadow:2px 3px 10px #0000002e;margin:4px 2px 6px}.ev-clue-stripe{position:absolute;left:0;top:0;bottom:0;width:6px}.ev-clue-pin{position:absolute;top:6px;left:50%;margin-left:-7px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#e74c3c,#a93226);box-shadow:0 2px 3px #0000004d;z-index:2}.ev-clue-pin:after{content:"";position:absolute;top:3px;left:5px;width:3px;height:3px;border-radius:50%;background:#ffffff73}.ev-clue-body{display:flex;flex-direction:column;gap:6px}.ev-clue-label{font-size:.88rem;color:#2c1810}.ev-clue-tag{display:inline-block;align-self:flex-start;padding:1px 8px;border-radius:9px;font-size:.62rem;color:#fff;font-weight:600;letter-spacing:.5px}.ev-clue-detail{font-size:.75rem;color:#5a4030;line-height:1.5}.ev-clue-detail p{margin:0}.ev-profile{position:relative;background:repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(0,0,0,.04) 27px,rgba(0,0,0,.04) 28px),#faf6ee;border-radius:3px;padding:16px;box-shadow:2px 3px 10px #0000002e;margin:4px 2px 6px}.ev-profile-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.ev-profile-avatar{width:52px;height:52px;border-radius:50%;border:3px solid #888;background:linear-gradient(135deg,#ddd,#bbb);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ev-profile-initials{font-size:1.1rem;font-weight:700;color:#4a3520;letter-spacing:1px}.ev-profile-meta{display:flex;flex-direction:column;gap:3px}.ev-profile-name{font-size:.92rem;color:#2c1810}.ev-profile-alias{font-size:.72rem;color:#7a6a5a;font-style:italic}.ev-profile-badge{display:inline-block;align-self:flex-start;padding:1px 8px;border-radius:9px;font-size:.6rem;color:#fff;font-weight:600;letter-spacing:.5px}.ev-profile-fields{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:0 0 10px;font-size:.75rem;color:#5a4030}.ev-profile-fields dt{font-weight:600;color:#3a2a1a}.ev-profile-fields dd{margin:0}.ev-profile-detail{font-size:.75rem;color:#5a4030;line-height:1.5;border-top:1px dashed rgba(0,0,0,.12);padding-top:8px}.ev-profile-detail p{margin:0}.ev-unknown{padding:12px;color:#c0392b;font-size:.8rem}.ev-collection{position:relative;overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:14px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.ev-collection-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.ev-collection-title{margin:0;color:var(--color-text-primary);font-size:.88rem;font-weight:700;letter-spacing:.3px}.ev-collection-count{color:var(--color-text-muted);font-size:.68rem}.ev-collection-filters{display:flex;gap:5px;margin-bottom:10px}.ev-collection-filter{padding:2px 10px;border:1px solid var(--color-border-light);border-radius:999px;background:transparent;color:var(--color-text-muted);font-size:.65rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.ev-collection-filter:hover{background:#ffffff0f;color:var(--color-text-secondary)}.ev-collection-filter--active{background:var(--color-accent-dim, rgba(255, 255, 255, .08));color:var(--color-accent);border-color:var(--color-accent)}.ev-collection-list{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow-y:auto;padding-right:2px}.ev-collection-list::-webkit-scrollbar{width:4px}.ev-collection-list::-webkit-scrollbar-track{background:#ffffff0a;border-radius:2px}.ev-collection-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.ev-collection-item .ev-clue,.ev-collection-item .ev-profile{margin:0;animation:evItemIn .3s ease-out both}.ev-collection-item .ev-clue{background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:6px;box-shadow:none}.ev-collection-item .ev-clue-pin{display:none}.ev-collection-item .ev-clue-label{color:var(--color-text-primary)}.ev-collection-item .ev-clue-detail{color:var(--color-text-secondary)}.ev-collection-item .ev-clue-tag{opacity:.85}.ev-collection-item .ev-profile{background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:6px;box-shadow:none}.ev-collection-item .ev-profile-avatar{background:#ffffff14}.ev-collection-item .ev-profile-initials{color:var(--color-text-secondary)}.ev-collection-item .ev-profile-name{color:var(--color-text-primary)}.ev-collection-item .ev-profile-alias{color:var(--color-text-muted)}.ev-collection-item .ev-profile-fields{color:var(--color-text-secondary)}.ev-collection-item .ev-profile-fields dt{color:var(--color-text-muted)}.ev-collection-item .ev-profile-detail{color:var(--color-text-secondary);border-top-color:var(--color-border)}.ev-collection-item:nth-child(n+2) .ev-clue,.ev-collection-item:nth-child(n+2) .ev-profile{animation-delay:calc((var(--i, 0)) * 40ms)}@keyframes evItemIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.ev-board{padding:12px}.ev-board-grid{grid-template-columns:1fr;gap:10px}.ev-collection{padding:10px}.ev-collection-list{max-height:none}}.widget-inventory-subtypes{display:flex;gap:5px;margin-bottom:8px;flex-wrap:wrap}.widget-inventory-subtype-btn{padding:2px 10px;border:1px solid var(--color-border-light);border-radius:999px;background:transparent;color:var(--color-text-muted);font-size:.68rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.widget-inventory-subtype-btn:hover{background:#ffffff0f;color:var(--color-text-secondary)}.widget-inventory-subtype-btn--active{background:var(--color-accent-dim, rgba(255, 255, 255, .08));color:var(--color-accent);border-color:var(--color-accent)}.widget-inventory{list-style:none;padding:0;display:flex;flex-direction:column;gap:2px}.widget-inventory-item{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid rgba(255,255,255,.04);position:relative}.widget-inventory-item:last-child{border-bottom:none}.widget-inventory-item--new{animation:kvRowSlideIn .4s ease;animation-delay:var(--delay, 0s);animation-fill-mode:backwards}.widget-inventory-icon{font-size:1.25rem;line-height:1;flex-shrink:0;margin-top:1px}.widget-inventory-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.widget-inventory-name{font-size:.85rem;font-weight:600;color:var(--color-text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-inventory-count{font-weight:400;font-size:.75rem;color:var(--color-text-muted);margin-left:4px}.widget-inventory-desc{font-size:.78rem;color:var(--color-text-muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-inventory-actions{display:none;gap:4px;flex-shrink:0}.widget-inventory-item:hover .widget-inventory-actions{display:flex}.widget-inventory-action-btn{padding:2px 8px;font-size:.7rem;font-weight:600;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;font-family:inherit}.widget-inventory-action-btn:hover{color:var(--color-text-secondary);background:#ffffff14;border-color:var(--color-border-light)}.widget-inventory-action-btn--use:hover{color:var(--color-accent);border-color:var(--color-accent)}.widget-inventory-action-btn--discard:hover{color:var(--color-danger);border-color:var(--color-danger)}.widget-inventory-action-btn:disabled{opacity:.4;cursor:default}.widget-inventory-confirm{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.widget-inventory-confirm-text{font-size:.72rem;color:var(--color-danger);white-space:nowrap}.widget-inventory-confirm-btn{padding:2px 8px;font-size:.68rem;font-weight:600;border:1px solid;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.widget-inventory-confirm-btn--yes{color:var(--color-danger);border-color:var(--color-danger);background:#f871711a}.widget-inventory-confirm-btn--yes:hover{background:#f8717133}.widget-inventory-confirm-btn--no{color:var(--color-text-muted);border-color:var(--color-border);background:transparent}.widget-inventory-confirm-btn--no:hover{color:var(--color-text-secondary);background:#ffffff0f}.widget-inventory-judgment-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:600;padding:var(--space-lg, 24px);animation:fadeIn .2s ease both}.widget-inventory-judgment-popup{position:relative;width:100%;max-width:480px;max-height:60vh;background:var(--color-surface-elevated, #1e1e2e);border:1px solid var(--color-border-light, rgba(255,255,255,.1));border-radius:var(--radius-md, 12px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.4));padding:20px 24px;overflow-y:auto;animation:overlayIn .25s ease both}.widget-inventory-judgment-close{position:absolute;top:10px;right:10px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:#ffffff0d;color:var(--color-text-secondary);border-radius:var(--radius-sm, 6px);cursor:pointer;font-size:1.1rem;transition:all .15s}.widget-inventory-judgment-close:hover{background:#ffffff1a;color:var(--color-text-primary)}.widget-inventory-judgment-body{font-size:.78rem;color:var(--color-text-secondary);line-height:1.6;white-space:pre-wrap;word-break:break-word}.widget-inventory-judgment-loading{font-size:.8rem;color:var(--color-text-muted);text-align:center;padding:8px 0}@media(max-width:768px){.widget-inventory-actions{display:flex}}.dynamic-panels{display:flex;flex-direction:column;gap:var(--space-sm)}.panel-wrapper{background:var(--glass-bg);background-clip:padding-box;border:1px solid var(--glass-border);border-radius:var(--radius-md);overflow:hidden;animation:fadeIn .4s ease both;transition:all var(--transition-base)}.panel-wrapper:hover{border-color:var(--color-border-light)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border)}.panel-wrapper--collapsed .panel-header{border-bottom:none}.panel-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.panel-title-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:9px;background:var(--color-accent, rgba(255, 255, 255, .1));color:var(--color-bg, #fff);font-size:.65rem;font-weight:700;line-height:1;vertical-align:middle}.panel-expand-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-muted);font-size:.8rem;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.panel-expand-btn:hover{background:#ffffff0f;color:var(--color-text-secondary)}.panel-body{padding:var(--space-sm) var(--space-md) var(--space-md)}.panel-stagger-wrapper{position:relative;border-radius:var(--radius-md);transition:opacity .4s ease}.panel-stagger-wrapper--stale{opacity:.45}.panel-stagger-wrapper--stale>.panel-wrapper{border-style:dashed}.panel-stagger-wrapper--flashing{animation:panelFlash 1s ease both}@keyframes panelFlash{0%{box-shadow:inset 0 0 0 1.5px transparent,0 0 0 transparent}12%{box-shadow:inset 0 0 0 1.5px var(--color-accent),0 0 16px var(--color-accent-glow)}50%{box-shadow:inset 0 0 0 1px var(--color-accent-dim),0 0 4px var(--color-accent-glow)}to{box-shadow:inset 0 0 0 1px transparent,0 0 0 transparent}}@media(max-width:768px){.panel-title{font-size:.8rem}.panel-expand-btn{width:32px;height:32px}}.tabbed-panels-tabs{display:flex;align-items:stretch;border-bottom:1px solid var(--color-border);overflow-x:auto}.tabbed-panels-tab{position:relative;padding:var(--space-sm) var(--space-md);border:none;background:transparent;color:var(--color-text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),background var(--transition-fast)}.tabbed-panels-tab:hover{color:var(--color-text-secondary);background:#ffffff0a}.tabbed-panels-tab--active{color:var(--color-text-primary, var(--color-text-secondary))}.tabbed-panels-tab--active:after{content:"";position:absolute;bottom:0;left:var(--space-sm);right:var(--space-sm);height:2px;background:var(--color-accent, var(--color-text-secondary));border-radius:1px 1px 0 0}.tabbed-panels-expand{margin-left:auto;flex-shrink:0;align-self:center;margin-right:var(--space-xs)}.tabbed-panels-body{animation:fadeIn .2s ease both}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:500;padding:var(--space-lg);animation:fadeIn .2s ease both;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.overlay-content{width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;background:#141422;border:1px solid rgba(255,255,255,.08);border-radius:0;animation:overlayIn .25s ease both;--color-surface: #141418;--color-surface-elevated: #1c1c22;--color-text-primary: #e8e6e3;--color-text-secondary: rgba(232, 230, 227, .6);--color-text-muted: rgba(232, 230, 227, .35);--color-accent: rgba(255, 255, 255, .9);--color-accent-dim: rgba(255, 255, 255, .08);--color-accent-glow: rgba(255, 255, 255, .15);--color-border: rgba(255, 255, 255, .06);--color-border-light: rgba(255, 255, 255, .1);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08)}.overlay-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid rgba(255,255,255,.08)}.overlay-title{font-size:.95rem;font-weight:600;color:#ffffffe6}.overlay-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:#ffffff0f;color:#fff6;border-radius:0;cursor:pointer;font-size:1.1rem;transition:all var(--transition-fast)}.overlay-close:hover{background:#ffffff1f;color:#fffc}.overlay-body{flex:1;overflow-y:auto;padding:var(--space-lg)}@media(max-width:768px){.overlay-backdrop{padding:var(--space-sm)}.overlay-content{max-width:100%;max-height:90vh}.overlay-close{width:36px;height:36px}.overlay-body{padding:var(--space-md)}}.bgm-container{position:fixed;top:var(--space-sm);right:calc(var(--space-sm) + 88px);z-index:150}.bgm-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.2);border-radius:var(--radius-sm);background:#80808026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#808080cc;font-size:1rem;cursor:pointer;transition:all var(--transition-fast);line-height:1;padding:0}.bgm-btn:hover{border-color:#80808059;color:#505050;background:#80808040}.bgm-btn--playing{border-color:#80808040;color:#505050}.bgm-picker{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:0;overflow:hidden;animation:bgmFadeIn .15s ease}@keyframes bgmFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.bgm-picker-header{padding:10px 14px;font-size:.78rem;color:#00000080;border-bottom:1px solid rgba(0,0,0,.08);letter-spacing:.02em}.bgm-picker-list{max-height:200px;overflow-y:auto;padding:4px 0}.bgm-picker-item{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;background:none;border:none;color:#0009;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background var(--transition-fast)}.bgm-picker-item:hover{background:#0000000a;color:#000000e6}.bgm-picker-item--active{color:#0a0a0a;background:#0000000f}.bgm-picker-item--active:hover{background:#0000001a}.bgm-picker-playing{font-size:.75rem;animation:bgmPulse 1.5s ease infinite}@keyframes bgmPulse{0%,to{opacity:1}50%{opacity:.4}}.bgm-volume{display:flex;align-items:center;gap:8px;padding:8px 14px;border-top:1px solid rgba(0,0,0,.08)}.bgm-volume-icon{font-size:.85rem;line-height:1;width:18px;text-align:center;flex-shrink:0}.bgm-volume-slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:#0000001f;outline:none;cursor:pointer}.bgm-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#0009;border:none;cursor:pointer;transition:background var(--transition-fast)}.bgm-volume-slider::-webkit-slider-thumb:hover{background:#0a0a0a}.bgm-volume-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#0009;border:none;cursor:pointer}.bgm-volume-slider::-moz-range-track{height:4px;border-radius:2px;background:#0000001f}.bgm-volume-value{font-size:.72rem;color:#0006;min-width:22px;text-align:right;font-variant-numeric:tabular-nums}.bgm-picker-stop{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:10px 14px;background:none;border:none;border-top:1px solid rgba(0,0,0,.08);color:#00000073;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast)}.bgm-picker-stop:hover{background:#dc26260f;color:#dc2626e6}.bgm-picker-header--ambience{border-top:1px solid rgba(0,0,0,.08);margin-top:2px}.bgm-ambience-tag{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:.82rem;color:#000000b3}.bgm-ambience-tag-indicator{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade8080;animation:bgmPulse 1.5s ease infinite;flex-shrink:0}.bgm-ambience-empty{padding:8px 14px;font-size:.78rem;color:#0000004d;font-style:italic}.bgm-ambience-tag--stopped{color:#0006}.bgm-ambience-tag-indicator--stopped{background:#0003;box-shadow:none;animation:none}.bgm-picker-restart{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:10px 14px;background:none;border:none;border-top:1px solid rgba(0,0,0,.08);color:#00000073;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast)}.bgm-picker-restart:hover{background:#4ade8014;color:#16a34ae6}.achievement-toast{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:600;display:flex;align-items:center;gap:12px;padding:12px 20px;background:linear-gradient(135deg,#1e1e28f2,#282837f2);border:1px solid rgba(255,215,0,.3);border-radius:12px;box-shadow:0 0 20px #ffd70026,0 8px 32px #0006;cursor:pointer;animation:achievementIn .4s ease both;max-width:90vw}.achievement-toast-icon{font-size:1.6rem;line-height:1;flex-shrink:0;filter:drop-shadow(0 0 6px rgba(255,215,0,.4))}.achievement-toast-body{display:flex;flex-direction:column;gap:2px;min-width:0}.achievement-toast-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#ffd700b3}.achievement-toast-name{font-size:.9rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes achievementIn{0%{opacity:0;transform:translate(-50%) translateY(-20px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.stat-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:600;display:flex;flex-direction:column;gap:4px;padding:10px 16px;background:#14141eeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 4px 24px #0006;cursor:pointer;animation:statToastIn .3s ease both;max-width:90vw;min-width:320px}.stat-toast-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;font-size:.82rem;line-height:1.3}.stat-toast-label{color:#ffffffb3;flex-shrink:0}.stat-toast-values{color:#ffffff80}.stat-toast-arrow{color:#ffffff4d;margin:0 2px}.stat-toast-new{color:#ffffffe0;font-weight:600}.stat-toast-delta{font-weight:600;margin-left:4px}.stat-toast-delta--up{color:#4ade80}.stat-toast-delta--down{color:#f87171}@keyframes statToastIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(max-width:768px){.stat-toast{max-width:85vw}}.item-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:600;display:flex;flex-direction:column;gap:6px;padding:12px 18px;background:#14141eeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 4px 24px #0006;cursor:pointer;animation:itemToastIn .3s ease both;max-width:90vw;min-width:160px}.item-toast-title{font-size:.7rem;color:#fff6;letter-spacing:.05em;text-align:center;margin-bottom:2px}.item-toast-row{display:flex;align-items:center;gap:8px;font-size:.82rem;line-height:1.3}.item-toast-icon{font-size:1.1rem;line-height:1;flex-shrink:0}.item-toast-name{color:#ffffffeb;font-weight:600}.item-toast-badge{font-size:.68rem;font-weight:600;color:#4ade80;margin-left:auto;flex-shrink:0}@keyframes itemToastIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(max-width:768px){.item-toast{max-width:85vw}}.item-use-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:600;display:flex;flex-direction:column;gap:6px;padding:12px 20px;background:#14141eeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 4px 24px #0006;cursor:pointer;animation:itemUseToastIn .3s ease both;max-width:90vw;min-width:180px;text-align:left}.item-use-toast-title{font-size:.95rem;font-weight:700;letter-spacing:.04em;color:#60a5fa}.item-use-toast-body{font-size:.85rem;line-height:1.4;color:#ffffffe0}.item-use-toast-changes{display:flex;flex-direction:column;gap:3px;margin-top:2px}.item-use-toast-change-row{display:flex;align-items:baseline;gap:8px;font-size:.82rem;line-height:1.3}.item-use-toast-change-label{color:#ffffffb3;flex-shrink:0}.item-use-toast-change-values{color:#ffffff80}.item-use-toast-arrow{color:#ffffff4d;margin:0 2px}.item-use-toast-change-new{color:#ffffffe0;font-weight:600}.item-use-toast-change-delta{font-weight:600;margin-left:4px}.item-use-toast-change-delta--up{color:#4ade80}.item-use-toast-change-delta--down{color:#f87171}.item-use-toast-consume{font-size:.78rem;font-weight:600;color:#f87171;margin-top:2px}@keyframes itemUseToastIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(max-width:768px){.item-use-toast{max-width:85vw}}.history-overlay{z-index:550}.history-content{max-width:700px;max-height:85vh}.history-body{display:flex;flex-direction:column;gap:10px}.history-header-actions{display:flex;align-items:center;gap:8px}.history-export-btn{padding:4px 12px;font-size:.75rem;border-radius:0;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#ffffff8c;cursor:pointer;transition:background .15s,border-color .15s}.history-export-btn:hover{background:#ffffff1a;border-color:#fff3}.history-empty{text-align:center;color:#ffffff59;font-size:.85rem;padding:32px 0}.history-card{padding:12px 14px;border-radius:0;border:1px solid rgba(255,255,255,.06)}.history-card--narrative{background:#ffffff08}.history-card--action{background:#ffffff0d;border-color:#ffffff14}.history-card-label{font-size:.7rem;font-weight:600;color:#ffffff59;margin-bottom:6px;letter-spacing:.5px}.history-card--action .history-card-label{color:#ffffff80}.history-card-content{font-size:.82rem;line-height:1.65;color:#ffffffbf;white-space:pre-wrap;word-break:break-word}@media(max-width:768px){.history-content{max-width:100%;max-height:90vh}.history-card{padding:10px 12px}.history-card-content{font-size:.78rem}}@keyframes vnBoardSlideIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes vnBoardSlideOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes vnBoardMarkerPulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}.vn-board{position:absolute;top:2%;left:11%;right:11%;height:calc(100% - 2% - var(--vn-dialogue-height, 190px));z-index:12;pointer-events:auto;border-radius:4px;border:3px solid #b0b4ba;box-shadow:inset 0 0 0 1px #d0d3d8,0 6px 32px #00000080,0 2px 6px #00000040;background:linear-gradient(180deg,#d3d5d9 0%,#c4c7cc 3px,transparent 3px);display:flex;flex-direction:column;overflow:visible;animation:vnBoardSlideIn .4s cubic-bezier(.22,.61,.36,1) forwards;transition:opacity .35s ease,transform .35s ease}.vn-board--exit{animation:none;opacity:0;transform:scale(.96);pointer-events:none}.vn-board-surface{position:relative;flex:1;overflow-y:auto;padding:32px 40px 28px;background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(0,0,0,.012) 60px,rgba(0,0,0,.012) 61px),linear-gradient(135deg,#f7f7f2,#f5f5ef,#f8f8f4,#f4f4ee,#f6f6f1,#f5f5f0);box-shadow:inset 0 1px #fffc;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.vn-board-surface::-webkit-scrollbar{width:4px}.vn-board-surface::-webkit-scrollbar-track{background:transparent}.vn-board-surface::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.vn-board-close{position:absolute;top:4px;right:4px;z-index:2;width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background:#b4b9c0d9;color:#00000080;font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0;line-height:1}.vn-board-close:hover{color:#000000d9;background:#c8c8c8f2}.vn-board-entry{margin-bottom:22px}.vn-board-entry:last-child{margin-bottom:0}.vn-board-content{color:#1a2a3a;font-size:18px;line-height:1.85;text-align:center;letter-spacing:.3px}.vn-board-content--typing:after{content:"";display:inline-block;width:7px;height:7px;border-radius:50% 50% 50% 4%;background:currentColor;margin-left:3px;vertical-align:baseline;transform:rotate(-30deg);animation:vnBoardMarkerPulse .9s ease infinite}.vn-board-entry+.vn-board-entry{padding-top:20px;border-top:1.5px dashed rgba(0,0,0,.1)}.vn-board-content--blue{color:#1a3f7a}.vn-board-content--red{color:#8b1a1a}.vn-board-content--green{color:#1a6b3a}.vn-board-content--black{color:#1a1a22}.vn-board-content p{margin:0 0 8px}.vn-board-content p:last-child{margin-bottom:0}.vn-board-content strong{color:#0d1f3c;font-weight:700;text-shadow:0 0 .5px rgba(13,31,60,.3)}.vn-board-content em{color:#4a2a6a;font-style:italic}.vn-board-content code{background:#0000000f;padding:1px 5px;border-radius:3px;font-size:.88em;color:#c0392b;font-family:SF Mono,Consolas,Menlo,monospace}.vn-board-content ul,.vn-board-content ol{text-align:left;padding-left:24px;margin:6px 0}.vn-board-content li{margin-bottom:4px}.vn-board-content .katex-display{margin:10px 0}.vn-board-content .katex{font-size:1.15em;color:#1a3f7a}.vn-board-content .katex-display .katex{font-size:1.35em}.vn-hl{position:relative;display:inline}.vn-hl-u:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2.5px;background:currentColor;opacity:.55;border-radius:1px;transform-origin:left;transform:scaleX(0);animation:vnHlDrawUnderline .45s ease .7s forwards}@keyframes vnHlDrawUnderline{to{transform:scaleX(1)}}.vn-hl-box:before{content:"";position:absolute;top:-3px;right:-5px;bottom:-3px;left:-5px;border:2px solid currentColor;border-radius:4px;opacity:0;animation:vnHlDrawBox .4s ease .7s forwards}@keyframes vnHlDrawBox{to{opacity:.5}}.vn-board-canvas{position:absolute;top:0;left:0;z-index:2}.vn-board-pens{position:absolute;right:-38px;top:16px;display:flex;flex-direction:column;gap:8px;z-index:3}.vn-board-pen{width:24px;height:24px;border-radius:50%;border:2.5px solid rgba(255,255,255,.85);background:var(--pen-color);cursor:pointer;padding:0;box-shadow:0 1px 4px #0000004d;transition:transform .15s,box-shadow .15s}.vn-board-pen:hover{transform:scale(1.15);box-shadow:0 2px 8px #00000059}.vn-board-pen--active{transform:scale(1.2);box-shadow:0 0 0 3px var(--pen-color),0 0 10px var(--pen-color)}.vn-board-pen--active:hover{transform:scale(1.2)}.vn-board-pen-action{width:24px;height:24px;border:1.5px solid rgba(0,0,0,.15);border-radius:50%;background:#dcdce1e6;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#00000073;transition:all .15s;padding:0;margin-top:2px}.vn-board-pen-action:hover{background:#d2e1f0f2;color:#2a5fad;border-color:#2a5fad4d}.vn-board-pen-action--disabled{opacity:.35;pointer-events:none}.vn-board-empty{text-align:center;padding:40px 16px;color:#00000026;font-size:15px;letter-spacing:1px;font-style:italic}.vn-board-tray{height:10px;background:linear-gradient(180deg,#c0c3c8,#a8abb2,#b8bbc0);border-top:1px solid #d5d7dc;flex-shrink:0;position:relative}.vn-board-tray:before{content:"";position:absolute;left:20px;top:2px;width:6px;height:6px;border-radius:50%;background:#2a5fad;box-shadow:14px 0 #b82020,28px 0 #1a7a3a,42px 0 #222}@media(max-width:768px){.vn-board{top:3%;left:3%;right:3%;height:calc(100% - 3% - var(--vn-dialogue-height, 155px) - 40px)}.vn-board-surface{padding:20px 22px 18px}.vn-board-content{font-size:15px}.vn-board-content .katex-display .katex{font-size:1.2em}.vn-board-close{width:20px;height:20px;font-size:11px}.vn-board-pens{top:auto;bottom:-36px;left:0;right:0;flex-direction:row;justify-content:center;gap:10px}.vn-board-pen{width:24px;height:24px}.vn-board-pen-action{width:24px;height:24px;margin-top:0;margin-left:2px}}.engine-ending-fullscreen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0c0c18;overflow-y:auto;padding:24px 16px;animation:epFadeIn .4s ease both;--color-text-primary: #e8e6e3;--color-text-secondary: rgba(232, 230, 227, .6);--color-text-muted: rgba(232, 230, 227, .35);--color-accent: rgba(255, 255, 255, .9);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08)}.ep-root{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:14px;padding:22px 18px;border-radius:0;background:#141422;border:1px solid rgba(255,255,255,.08);animation:epSlideIn .4s ease both}.ep-svg{flex-shrink:0;color:#fff6;transition:color .15s ease}.ep-svg--success{color:#34d399b3}.ep-svg--fail{color:#fb718599}.ep-divider{height:1px;background:#ffffff14}.ep-stat-bar{display:flex;justify-content:center;gap:2px;padding:10px 6px;border-radius:0;background:#ffffff08;border:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.ep-stat-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 12px;min-width:56px}.ep-stat-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px}.ep-stat-val{font-size:1rem;font-weight:700;color:#ffffffe6;letter-spacing:-.01em}.ep-stat-lbl{font-size:.58rem;color:#ffffff59;letter-spacing:.04em;text-transform:uppercase}.ep-rating{display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 0}.ep-section-title{margin:0;font-size:.82rem;font-weight:600;color:#ffffff80;letter-spacing:.06em}.ep-stars{display:flex;gap:4px}.ep-star{background:none;border:none;padding:2px;cursor:pointer;transition:transform .15s ease;line-height:0}.ep-star:not(:disabled):hover{transform:scale(1.15)}.ep-star:disabled{cursor:default}.ep-star--filled svg{filter:drop-shadow(0 0 6px rgba(251,191,36,.45))}.ep-comment{width:100%;max-width:340px;padding:10px 12px;border-radius:0;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#ffffffe6;font-family:inherit;font-size:.8rem;resize:vertical;min-height:44px;max-height:120px;outline:none;transition:border-color .15s ease}.ep-comment::placeholder{color:#ffffff40}.ep-comment:focus{border-color:#ffffff40}.ep-submit-btn{padding:7px 24px;border-radius:0;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#ffffffbf;font-size:.78rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s ease}.ep-submit-btn:hover:not(:disabled){background:#ffffff1f;border-color:#fff3}.ep-submit-btn:disabled{opacity:.35;cursor:default}.ep-thanks{margin:0;font-size:.8rem;color:#ffffff80;font-weight:500;letter-spacing:.03em}.ep-actions{display:flex;flex-direction:column;gap:8px}.ep-actions-row{display:flex;gap:8px}.ep-actions-row--main{display:grid;grid-template-columns:1fr 1fr 1fr}.ep-actions-row--bottom{display:grid;grid-template-columns:1fr 1fr}.ep-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;border-radius:0;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#fff9;font-size:.76rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;white-space:nowrap}.ep-btn:hover{background:#ffffff14;border-color:#ffffff26;color:#ffffffe6}.ep-btn .ep-svg{width:16px;height:16px}.ep-btn--share{border-color:#34d39933;background:#34d39914;color:#34d399e6}.ep-btn--share .ep-svg{color:#34d399bf}.ep-btn--share:hover{background:#34d39926;border-color:#34d39959;color:#34d399}.ep-btn--share:hover .ep-svg{color:#34d399}.ep-btn--tip{border-color:#fbbf2433;background:#fbbf2414;color:#fbbf24e6}.ep-btn--tip .ep-svg{color:#fbbf24bf}.ep-btn--tip:hover{background:#fbbf2426;border-color:#fbbf2459;color:#fbbf24}.ep-btn--tip:hover .ep-svg{color:#fbbf24}.ep-btn--book{border-color:#ffffff14;background:#ffffff0a;color:#ffffff8c}.ep-btn--book .ep-svg{color:#ffffff59}.ep-btn--book:hover{background:#ffffff14;border-color:#ffffff26;color:#ffffffd9}.ep-btn--book:hover .ep-svg{color:#ffffffa6}.ep-btn--secondary{padding:8px;font-size:.74rem;color:#ffffff59}.ep-btn--secondary .ep-svg{color:#ffffff40}.ep-btn--secondary:hover{color:#ffffffa6}.ep-btn--secondary:hover .ep-svg{color:#ffffff80}.ep-achievements{display:flex;flex-direction:column;gap:8px}.ep-ach-list{display:flex;flex-direction:column;gap:4px}.ep-ach-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:0;background:#fbbf240f;border-left:2.5px solid rgba(251,191,36,.6);animation:epAchIn .35s ease both}.ep-ach-icon{display:flex;align-items:center}.ep-ach-icon .ep-svg{color:#fbbf24b3;width:16px;height:16px}.ep-ach-name{font-size:.8rem;font-weight:500;color:#ffffffbf;letter-spacing:.01em}.ep-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000a6;display:flex;align-items:center;justify-content:center;animation:epFadeIn .15s ease both}.ep-confirm-card{max-width:320px;width:90%;padding:24px 20px 18px;border-radius:0;background:#1a1a2e;border:1px solid rgba(255,255,255,.1);text-align:center;animation:epScaleIn .2s ease both}.ep-confirm-title{margin:0 0 6px;font-size:.95rem;font-weight:700;color:#ffffffe6}.ep-confirm-desc{margin:0 0 18px;font-size:.78rem;color:#ffffff73;line-height:1.5}.ep-confirm-actions{display:flex;gap:10px}.ep-confirm-btn{flex:1;padding:10px 8px;border-radius:0;border:1px solid rgba(255,255,255,.1);font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.ep-confirm-btn--stay{background:#ffffffe6;border-color:#ffffffe6;color:#0a0a0a}.ep-confirm-btn--stay:hover{opacity:.85}.ep-confirm-btn--leave{background:transparent;color:#ffffff73}.ep-confirm-btn--leave:hover{background:#ffffff0f;color:#ffffffb3}@keyframes epSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes epFadeIn{0%{opacity:0}to{opacity:1}}@keyframes epScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes epAchIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media(max-width:768px){.ep-root{padding:16px 12px;gap:12px}.ep-stat-bar{gap:0;padding:8px 2px}.ep-stat-item{padding:4px 8px;min-width:48px}.ep-stat-icon .ep-svg,.ep-stat-icon{width:22px;height:22px}.ep-stat-val{font-size:.85rem}.ep-actions-row--main{grid-template-columns:1fr 1fr}.ep-actions-row--main .ep-btn--book{grid-column:1 / -1}.ep-btn{padding:9px 6px;font-size:.72rem}.ep-comment{max-width:100%}}@keyframes vnFadeIn{0%{opacity:0;transform:translateY(8px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes vnSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes vnSlideUpFull{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes vnCursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes vnBgReveal{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes vnKenBurns{0%{transform:scale(1) translate(0)}25%{transform:scale(1.028) translate(-.35%,-.2%)}50%{transform:scale(1.02) translate(.2%,-.35%)}75%{transform:scale(1.035) translate(-.2%,.15%)}to{transform:scale(1) translate(0)}}@keyframes vnLightBreath{0%{opacity:.08}30%{opacity:.15}50%{opacity:.05}70%{opacity:.18}to{opacity:.08}}@keyframes vnLightDrift{0%{transform:translate(0) scale(1)}50%{transform:translate(3%,-2%) scale(1.1)}to{transform:translate(0) scale(1)}}@keyframes vnShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes vnSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes vnPortraitExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}.vn-overlay{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;cursor:pointer;background:#080a10;font-family:"Noto Serif SC","Source Han Serif CN",PingFang SC,serif;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;z-index:5}.vn-overlay:active .vn-dialogue-box{filter:brightness(1.15)}.vn-bg{position:absolute;top:-2%;right:-2%;bottom:-2%;left:-2%;width:104%;height:104%;object-fit:cover;z-index:0;animation:vnBgReveal 1.2s ease both}.vn-bg--ken-burns{animation:vnBgReveal 1.2s ease both,vnKenBurns 25s ease-in-out 1.2s infinite}.vn-dim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,#0000,#0000000d 40%,#00000073,#000000bf)}.vn-light-breath{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden}.vn-light-orb{position:absolute;border-radius:50%;filter:blur(60px);animation:vnLightBreath ease-in-out infinite,vnLightDrift ease-in-out infinite}.vn-particles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;overflow:hidden}.vn-progress-wrap{position:absolute;top:max(env(safe-area-inset-top),16px);right:16px;z-index:14;display:flex;flex-direction:column;gap:8px;max-width:260px;min-width:200px;max-height:50vh;overflow-y:auto;overflow-x:hidden;pointer-events:auto;animation:vnFadeIn .5s ease both;animation-delay:.3s;transition:opacity .3s ease;scrollbar-width:none}.vn-progress-wrap::-webkit-scrollbar{display:none}.vn-progress-panel{background:#080a128c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 14px;box-shadow:0 4px 20px #0000004d;overflow-x:hidden;--color-text-primary: rgba(255,255,255,.88);--color-text-secondary: rgba(255,255,255,.6);--color-text-muted: rgba(255,255,255,.35);--color-border-light: rgba(255,255,255,.1);--color-accent: rgba(255,255,255,.8)}.vn-progress-title{font-size:11px;font-weight:600;letter-spacing:1.5px;color:#ffffff80;text-transform:uppercase;margin-bottom:8px}.vn-progress-panel .widget-progress{gap:6px}.vn-progress-panel .widget-progress-item,.vn-progress-panel .widget-countdown-item{padding:0;background:none;border:none;box-shadow:none}.vn-progress-panel .widget-progress-label,.vn-progress-panel .widget-countdown-label{font-size:12px;color:#ffffffb3}.vn-progress-panel .widget-progress-value,.vn-progress-panel .widget-countdown-value{font-size:12px;color:#ffffffe6}.vn-progress-panel .widget-progress-track{height:4px;background:#ffffff14;border-radius:2px}.vn-progress-panel .widget-progress-fill{border-radius:2px}@media(max-width:768px){.vn-progress-wrap{max-width:180px;min-width:150px;right:10px;top:10px}.vn-progress-panel{padding:8px 10px}.vn-progress-title{font-size:10px}}.vn-progress-carousel-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:6px}.vn-progress-arrow{width:24px;height:24px;border-radius:50%;background:#ffffff1a;color:#ffffffb3;border:none;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s}.vn-progress-arrow:hover:not(:disabled){background:#fff3}.vn-progress-arrow:disabled{opacity:.3;cursor:default}.vn-progress-dots{display:flex;gap:5px;align-items:center}.vn-progress-dot{width:6px;height:6px;border-radius:50%;background:#ffffff40;cursor:pointer;transition:background .2s}.vn-progress-dot--active{background:#fffc}.vn-progress-collapse-btn{position:absolute;top:4px;right:4px;z-index:2;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#080a12b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffff73;font-size:10px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.vn-progress-collapse-btn:hover{color:#ffffffd9;border-color:#ffffff4d;background:#080a12d9}.vn-progress-collapsed-bar{position:absolute;top:max(env(safe-area-inset-top),16px);right:16px;z-index:14;display:flex;align-items:center;gap:8px;padding:7px 14px;background:#080a128c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:20px;cursor:pointer;pointer-events:auto;animation:vnFadeIn .3s ease both;transition:all .2s ease;box-shadow:0 2px 12px #00000040;max-width:260px}.vn-progress-collapsed-bar:hover{background:#080a12b3;border-color:#ffffff26}.vn-progress-collapsed-label{font-size:11px;font-weight:600;letter-spacing:1px;color:#ffffff80;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vn-progress-collapse-icon{font-size:10px;color:#ffffff59;flex-shrink:0;transition:color .2s}.vn-progress-collapsed-bar:hover .vn-progress-collapse-icon{color:#ffffffb3}@media(max-width:768px){.vn-progress-collapsed-bar{right:10px;top:10px;max-width:180px;padding:6px 10px}.vn-progress-collapsed-label{font-size:10px}}.vn-portrait-wrap{position:absolute;bottom:50px;z-index:8;height:62vh;width:auto;display:flex;align-items:flex-end;transition:opacity .35s ease}.vn-portrait-wrap--exit{animation:vnPortraitExit .35s ease forwards;pointer-events:none}.vn-portrait-wrap--left{left:-2vw}.vn-portrait-wrap--right{right:-2vw}.vn-portrait-wrap img{height:100%;width:auto;object-fit:contain;object-position:bottom;animation:vnFadeIn .45s ease both}.vn-portrait-wrap--left img{-webkit-mask-image:linear-gradient(to right,black 40%,black 65%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 12%,black 100%);-webkit-mask-composite:destination-in;mask-image:linear-gradient(to right,black 40%,black 65%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 12%,black 100%);mask-composite:intersect}.vn-portrait-wrap--right img{-webkit-mask-image:linear-gradient(to left,black 40%,black 65%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 12%,black 100%);-webkit-mask-composite:destination-in;mask-image:linear-gradient(to left,black 40%,black 65%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 12%,black 100%);mask-composite:intersect}.vn-portrait-shimmer{width:200px;height:55vh;border-radius:12px;margin:0 20px;background:linear-gradient(90deg,#ffffff05 25%,#ffffff0f,#ffffff05 75%);background-size:200% 100%;animation:vnShimmer 1.8s ease-in-out infinite}.vn-dialogue-box{position:absolute;bottom:0;left:0;right:0;z-index:13;background:linear-gradient(to bottom,#080a12b3,#080a12e0);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.06);padding:0 0 max(env(safe-area-inset-bottom),16px) 0;min-height:150px;overflow:visible;animation:vnSlideUp .35s ease both}.vn-dialogue-box--exit{animation:vnSlideDown .35s ease forwards;pointer-events:none}.vn-dialogue-inner{position:relative;padding:22px 12% 8px}.vn-name-badge{display:inline-block;position:absolute;top:0;left:12%;transform:translateY(-50%);z-index:13;padding:6px 22px 6px 16px;font-size:20px;font-weight:600;letter-spacing:2.5px;color:#fff;border-radius:4px;border-left:3px solid rgba(255,255,255,.85);background:#0a0c14bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 12px #0006,inset 0 1px #ffffff14;border-top:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.03);text-shadow:0 1px 3px rgba(0,0,0,.4)}.vn-dialogue-text{font-size:21px;line-height:1.9;color:#fff;letter-spacing:.6px;text-shadow:0 1px 4px rgba(0,0,0,.4)}.vn-cursor{display:inline-block;width:2px;height:1em;background:#ffffffa6;margin-left:2px;vertical-align:text-bottom;animation:vnCursorBlink .8s ease infinite}.vn-narration-inner{padding:22px 12% 12px;text-align:center}.vn-narration-text{color:#b8c4d8;font-size:20px;line-height:2.1;letter-spacing:1.5px}.vn-click-hint{text-align:right;padding:2px 28px 0 0;font-size:11px;color:#fff3}.vn-click-hint span{display:inline-block;animation:vnCursorBlink 1.2s ease infinite}.vn-auto-indicator{display:inline-block;font-size:10px;font-weight:600;letter-spacing:2px;color:#fff9;animation:vnAutoFade 1s ease-in-out infinite}@keyframes vnAutoFade{0%,to{opacity:.4}50%{opacity:1}}.vn-streaming-inner{padding:22px 48px 12px}.vn-streaming-text{color:#ffffffb3;font-size:17px;line-height:1.9;letter-spacing:.4px}.vn-doc-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#080a12bf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:24px;cursor:pointer;animation:vnFadeIn .4s ease both}.vn-doc-container{max-width:560px;width:100%;max-height:70vh;overflow-y:auto;cursor:default;animation:vnSlideUp .4s ease both}.vn-doc-title{font-size:13px;font-weight:600;letter-spacing:1.5px;color:#ffffff73;text-transform:uppercase;text-align:center;margin-bottom:12px}.vn-doc-hint{margin-top:16px;font-size:12px;color:#ffffff40;letter-spacing:1px;animation:vnCursorBlink 1.5s ease infinite}@media(max-width:768px){.vn-doc-overlay{padding:16px}.vn-doc-container{max-height:75vh}}.vn-actions-wrap .action-quick-reply-scroll{flex-wrap:wrap;white-space:normal;overflow-x:visible;justify-content:center}.vn-actions-wrap .action-bubble{flex-shrink:1}.vn-actions-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10001;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#080a1299;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:20px 28px;font-size:21px;animation:vnFadeIn .35s ease both;--color-text-primary: rgba(255, 255, 255, .92);--color-text-secondary: rgba(255, 255, 255, .65);--color-text-muted: rgba(255, 255, 255, .35);--color-border-light: rgba(255, 255, 255, .15);--color-border: rgba(255, 255, 255, .1);--glass-bg: rgba(255, 255, 255, .06);--color-accent: rgba(255, 255, 255, .85);--color-accent-dim: rgba(255, 255, 255, .12);--color-surface: rgba(255, 255, 255, .04);--color-surface-elevated: rgba(255, 255, 255, .08)}.vn-exit-btn{display:block;margin:16px auto 0;padding:6px 20px;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:20px;color:#ffffff73;font-size:12px;letter-spacing:1px;cursor:pointer;transition:all .2s ease}.vn-exit-btn:hover{color:#fffc;border-color:#ffffff59;background:#ffffff0f}.vn-loading-box{position:absolute;bottom:0;left:0;right:0;z-index:10;background:linear-gradient(to bottom,#080a12b3,#080a12e0);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.06);padding:30px 48px max(env(safe-area-inset-bottom),20px) 48px;min-height:120px;display:flex;align-items:center;justify-content:center;animation:vnSlideUp .35s ease both}.vn-loading-dots{color:#fff6;font-size:16px;letter-spacing:4px;animation:vnCursorBlink 1.2s ease infinite}.vn-error-box{position:absolute;bottom:0;left:0;right:0;z-index:10001;background:linear-gradient(to bottom,#280808cc,#280808eb);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,80,80,.2);padding:24px 48px max(env(safe-area-inset-bottom),20px) 48px;min-height:80px;display:flex;align-items:center;gap:16px;animation:vnSlideUp .35s ease both}.vn-error-text{flex:1;color:#ffa0a0f2;font-size:14px;line-height:1.5;word-break:break-word}.vn-error-dismiss{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#ffffff14;color:#ffffff80;border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s}.vn-error-dismiss:hover{background:#ffffff26;color:#fffc}.engine--vn .engine-sidebar{display:none!important}.engine--vn .engine-body{grid-template-columns:1fr!important;max-width:none!important;margin:0!important}.engine--vn .engine-center{grid-column:1!important;padding:0!important;max-width:none!important;position:relative;overflow:hidden}.engine--vn .engine-mobile-tabs{display:none!important}.vn-settings-wrap{position:absolute;top:max(env(safe-area-inset-top),16px);left:16px;z-index:14;pointer-events:auto;animation:vnFadeIn .5s ease both;animation-delay:.3s}.vn-settings-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#080a1273;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 10px #00000040}.vn-settings-btn:hover,.vn-settings-btn--active{color:#ffffffd9;border-color:#ffffff40;background:#080a12a6}.vn-guide-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:14;background:#00000073;animation:vnFadeIn .3s ease both;pointer-events:none}.vn-settings-btn--guide{position:relative;z-index:16;animation:vnGuidePulse 2s ease-in-out infinite;border-color:#ffffff80!important;box-shadow:0 0 12px #ffffff4d!important}@keyframes vnGuidePulse{0%,to{box-shadow:0 0 8px #fff3}50%{box-shadow:0 0 18px #ffffff73}}.vn-guide-tooltip{position:absolute;top:max(env(safe-area-inset-top),16px);left:66px;z-index:16;width:240px;padding:14px 16px 12px;background:#080a12e0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 8px 32px #00000073,inset 0 1px #ffffff0d;animation:vnGuideSlideIn .35s cubic-bezier(.22,.61,.36,1) both;pointer-events:auto}@keyframes vnGuideSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.vn-guide-arrow{position:absolute;top:14px;left:-6px;width:10px;height:10px;background:#080a12e0;border-left:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);transform:rotate(45deg)}.vn-guide-header{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#ffffff8c;letter-spacing:1px;margin-bottom:12px}.vn-guide-header svg{opacity:.5}.vn-guide-features{display:flex;flex-direction:column;gap:2px}.vn-guide-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;transition:background .15s}.vn-guide-row:hover{background:#ffffff0a}.vn-guide-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff1f;color:#ffffffe6}.vn-guide-label{display:flex;flex-direction:column;font-size:12px;line-height:1.4;color:#ffffff73}.vn-guide-label b{font-size:13px;font-weight:500;color:#ffffffe0}.vn-guide-btn{display:block;width:100%;margin-top:12px;padding:7px 0;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:#ffffff1f;color:#fffffff2;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s,color .15s,transform .1s}.vn-guide-btn:hover{background:#ffffff38;color:#fff}.vn-guide-btn:active{transform:scale(.97)}.vn-settings-menu{position:absolute;top:48px;left:0;min-width:200px;background:#080a12bf;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 16px;box-shadow:0 8px 32px #0006;animation:vnFadeIn .2s ease both}.vn-settings-title{font-size:11px;font-weight:600;letter-spacing:1.5px;color:#fff6;text-transform:uppercase;margin-bottom:8px}.vn-settings-divider{height:1px;background:#ffffff14;margin:10px 0}.vn-settings-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:14px;color:#fffc;cursor:pointer;gap:16px}.vn-toggle{position:relative;width:38px;height:22px;border-radius:11px;border:1px solid rgba(255,255,255,.15);background:#ffffff14;cursor:pointer;padding:0;flex-shrink:0;transition:all .25s ease}.vn-toggle--on{background:#ffffff73;border-color:#fff9}.vn-toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#ffffffb3;transition:all .25s ease;box-shadow:0 1px 4px #0000004d}.vn-toggle--on .vn-toggle-knob{left:18px;background:#fff}.vn-settings-speed{flex-direction:column;align-items:stretch;gap:6px}.vn-speed-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;background:#ffffff26;outline:none;cursor:pointer}.vn-speed-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#ffffffd9;border:none;cursor:pointer}.vn-speed-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#ffffffd9;border:none;cursor:pointer}.vn-speed-slider::-moz-range-track{height:4px;border-radius:2px;background:#ffffff26}.vn-customize-btn{display:block;width:100%;padding:8px 0;background:none;border:1px solid rgba(255,255,255,.25);border-radius:6px;color:#ffffffd9;font-size:13px;font-family:var(--font-sans);cursor:pointer;text-align:center;transition:all .2s ease;letter-spacing:.5px}.vn-customize-btn:hover{background:#ffffff1a;border-color:#ffffff73;color:#fff}.vn-customize-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#00000080;animation:vnFadeIn .2s ease both;pointer-events:auto}.vn-customize-panel{width:min(560px,calc(100vw - 32px));max-height:min(80vh,640px);background:#0c0e16eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:14px;box-shadow:0 12px 48px #00000080;display:flex;flex-direction:column;overflow:hidden}.vn-customize-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);font-size:15px;font-weight:600;color:#ffffffe6;letter-spacing:.5px;flex-shrink:0}.vn-customize-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#fff6;font-size:18px;cursor:pointer;border-radius:50%;transition:all .15s}.vn-customize-close:hover{color:#fffc;background:#ffffff14}.vn-customize-body{flex:1;overflow-y:auto;padding:8px 18px 18px}.vn-customize-body::-webkit-scrollbar{width:4px}.vn-customize-body::-webkit-scrollbar-track{background:transparent}.vn-customize-body::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.vn-customize-section{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06)}.vn-customize-section:last-child{border-bottom:none}.vn-customize-section-title{font-size:11px;font-weight:600;letter-spacing:1.5px;color:#fff6;text-transform:uppercase;margin-bottom:10px}.vn-customize-char{margin-bottom:10px}.vn-customize-char:last-child{margin-bottom:0}.vn-customize-char-name{font-size:13px;color:#ffffffbf;margin-bottom:4px;font-weight:500}.vn-customize-voice-row{display:flex;gap:8px;align-items:flex-start}.vn-customize-textarea{flex:1;padding:8px 10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffffd9;font-size:12.5px;font-family:var(--font-sans);line-height:1.5;resize:vertical;outline:none;transition:border-color .2s;min-height:48px}.vn-customize-textarea:focus{border-color:#fff6}.vn-customize-textarea::placeholder{color:#fff3}.vn-customize-textarea--lg{min-height:64px}.vn-customize-textarea--full{width:100%;min-height:64px}.vn-customize-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px}.vn-customize-tab{padding:5px 14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff8c;font-size:12.5px;font-family:var(--font-sans);cursor:pointer;transition:all .15s;white-space:nowrap}.vn-customize-tab:hover{background:#ffffff14;color:#fffc}.vn-customize-tab--active{background:#ffffff26;border-color:#ffffff73;color:#fff}.vn-customize-tab--active:hover{background:#fff3}.vn-customize-tab-content{animation:vnFadeIn .15s ease both}.vn-customize-portrait-row{display:flex;gap:14px;margin-bottom:12px}.vn-customize-portrait-display{position:relative;width:160px;flex-shrink:0;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#ffffff08;aspect-ratio:9 / 16;display:flex;align-items:center;justify-content:center}.vn-customize-portrait-display img{width:100%;height:100%;object-fit:cover;display:block}.vn-customize-portrait-placeholder{font-size:12px;color:#ffffff40;letter-spacing:.5px;text-align:center;padding:8px}.vn-customize-portrait-upload{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#0009;border-radius:10px;opacity:0;cursor:pointer;transition:opacity .2s;color:#fffc;font-size:11px;letter-spacing:.5px}.vn-customize-portrait-display:hover .vn-customize-portrait-upload{opacity:1}.vn-customize-portrait-edit{flex:1;display:flex;flex-direction:column;min-width:0}.vn-customize-portrait-edit .vn-customize-subsection-title{margin-top:0}.vn-customize-textarea--portrait{flex:1;min-height:80px;resize:vertical}.vn-customize-gen-btn{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px;padding:7px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#ffffffe6;font-size:12px;font-family:var(--font-sans);cursor:pointer;transition:all .2s;white-space:nowrap}.vn-customize-gen-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff80;color:#fff}.vn-customize-gen-btn:disabled{opacity:.4;cursor:not-allowed}.vn-customize-gen-btn--loading{pointer-events:none}.vn-customize-gen-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffffe6;border-radius:50%;animation:vnGenSpin .8s linear infinite}@keyframes vnGenSpin{to{transform:rotate(360deg)}}.vn-customize-subsection-title{font-size:10.5px;color:#ffffff59;letter-spacing:.5px;margin-bottom:5px}.vn-customize-preview-btn{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:#fff9;font-size:14px;cursor:pointer;transition:all .2s;margin-top:6px}.vn-customize-preview-btn:hover:not(:disabled){background:#ffffff26;border-color:#fff6;color:#fff}.vn-customize-preview-btn:disabled{opacity:.4;cursor:not-allowed}.vn-customize-preview-btn--playing{background:#fff3;border-color:#ffffff80;color:#fff;animation:settingsBgmPulse 1.5s ease infinite}@media(max-width:768px){.vn-dialogue-inner{padding:24px 20px 8px}.vn-narration-inner{padding:18px 24px 10px}.vn-dialogue-text{font-size:18px}.vn-narration-text{font-size:17px}.vn-portrait-wrap{height:50vh;bottom:90px}.vn-actions-wrap{padding:16px 16px max(env(safe-area-inset-bottom),16px) 16px}.vn-settings-wrap{left:10px;top:10px}.vn-settings-btn{width:36px;height:36px}.vn-guide-tooltip{left:54px;width:210px;padding:12px 14px 10px}.vn-guide-icon{width:28px;height:28px}.vn-guide-icon svg{width:15px;height:15px}.vn-settings-menu{top:42px;min-width:180px;padding:10px 14px}.vn-settings-item{font-size:13px}.vn-customize-overlay{align-items:stretch;justify-content:stretch;background:#000000b3;animation:vnFadeIn .25s ease both}.vn-customize-panel{width:100%;max-height:none;height:100%;border-radius:0;border:none;background:#0a0c14f7;animation:vnSlideUpFull .3s cubic-bezier(.22,.61,.36,1) both}.vn-customize-header{padding:max(env(safe-area-inset-top,10px),10px) 16px 10px 16px;font-size:16px}.vn-customize-close{width:32px;height:32px;font-size:20px}.vn-customize-body{padding:4px 16px max(env(safe-area-inset-bottom,16px),16px)}.vn-customize-section{padding:14px 0}.vn-customize-section-title{font-size:12px;margin-bottom:10px}.vn-customize-textarea{font-size:14px;padding:10px 12px;min-height:52px}.vn-customize-textarea--full{min-height:72px}.vn-customize-tabs{gap:6px;margin-bottom:12px}.vn-customize-tab{padding:6px 14px;font-size:13px}.vn-customize-portrait-row{flex-direction:column;gap:12px}.vn-customize-portrait-display{width:100%;aspect-ratio:3 / 2;max-height:200px}.vn-customize-portrait-display img{object-position:top center}.vn-customize-portrait-upload{opacity:1;background:#00000059;flex-direction:row;gap:6px;justify-content:flex-end;align-items:flex-end;padding:10px;font-size:12px}.vn-customize-textarea--portrait{min-height:64px}.vn-customize-gen-btn{padding:9px 16px;font-size:13px}.vn-customize-preview-btn{width:40px;height:40px;font-size:16px}.vn-customize-subsection-title{font-size:11px;margin-bottom:6px}}.vn-customize-btn-crown{color:#f0c040;font-size:14px;margin-right:2px}.vn-paywall-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:vnFadeIn .15s ease both}.vn-paywall-card{max-width:360px;width:90%;padding:28px 24px 22px;border-radius:16px;background:linear-gradient(165deg,#1a1a2e,#0f0f1a 60%,#151520);border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 60px #00000080;text-align:center;animation:vnSlideUp .2s ease both}.vn-paywall-icon{margin:0 auto 12px;font-size:2rem;line-height:1}.vn-paywall-title{margin:0 0 8px;font-size:1rem;font-weight:700;color:#ffffffe6}.vn-paywall-desc{font-size:.75rem;color:#fff6;line-height:1.6;margin:0 0 12px}.vn-paywall-perks{list-style:none;padding:0;margin:0 0 16px;text-align:left}.vn-paywall-perks li{font-size:.78rem;color:#ffffff8c;line-height:1.7}.vn-paywall-perks li:before{content:"✓ ";color:#fffc;font-weight:600}.vn-paywall-perks li strong{color:#e2c87a;font-weight:600}.vn-paywall-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.vn-paywall-plan{position:relative;padding:14px 10px 12px;border-radius:10px;border:1.5px solid rgba(255,255,255,.08);background:#ffffff08;cursor:pointer;transition:all .2s ease;text-align:center}.vn-paywall-plan:hover{background:#ffffff0f;border-color:#ffffff26}.vn-paywall-plan--selected{border-color:#d4af3780;background:#d4af370f;box-shadow:0 0 16px #d4af3714}.vn-paywall-plan--selected:hover{border-color:#d4af3799;background:#d4af3714}.vn-paywall-plan-badge{position:absolute;top:-8px;left:50%;transform:translate(-50%);padding:1px 10px;border-radius:8px;font-size:.6rem;font-weight:700;letter-spacing:.5px;white-space:nowrap;background:linear-gradient(135deg,#d4af37,#b8962e);color:#0f0f1a}.vn-paywall-plan-period{font-size:.72rem;font-weight:600;color:#ffffff80;margin-bottom:6px;letter-spacing:.5px}.vn-paywall-plan--selected .vn-paywall-plan-period{color:#ffffffb3}.vn-paywall-plan-price{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:2px}.vn-paywall-plan-value{font-size:1.5rem;font-weight:700;color:#ffffffd9;line-height:1}.vn-paywall-plan--selected .vn-paywall-plan-value{color:#e2c87a}.vn-paywall-plan-unit{font-size:.7rem;color:#ffffff59;font-weight:500}.vn-paywall-plan-suffix{font-size:.7rem;color:#ffffff4d}.vn-paywall-plan-original{font-size:.65rem;color:#ffffff40;text-decoration:line-through}.vn-paywall-btn{display:block;width:100%;padding:11px 8px;border:none;border-radius:10px;background:linear-gradient(135deg,#d4af37,#b8962e);color:#0f0f1a;font-size:.82rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease;box-shadow:0 2px 12px #d4af3740}.vn-paywall-btn:hover{box-shadow:0 4px 20px #d4af3759}.vn-paywall-btn:active{transform:scale(.97)}.vn-paywall-close{display:block;width:100%;margin-top:10px;padding:8px 0;background:none;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#ffffff80;font-size:.82rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease}.vn-paywall-close:hover{background:#ffffff0f;color:#ffffffbf}@keyframes vnFxShakeLight{0%,to{transform:translate(0)}10%{transform:translate(-1px,1px)}20%{transform:translate(2px,-1px)}30%{transform:translate(-2px)}40%{transform:translate(1px,2px)}50%{transform:translate(-1px,-1px)}60%{transform:translate(2px,1px)}70%{transform:translate(-1px,-2px)}80%{transform:translate(1px)}90%{transform:translate(-2px,1px)}}.vn-fx-screen-shake-light{animation:vnFxShakeLight .3s ease-in-out}@keyframes vnFxShake{0%,to{transform:translate(0)}10%{transform:translate(-3px,2px)}20%{transform:translate(5px,-3px)}30%{transform:translate(-4px,1px)}40%{transform:translate(2px,5px)}50%{transform:translate(-5px,-2px)}60%{transform:translate(4px,3px)}70%{transform:translate(-2px,-5px)}80%{transform:translate(3px,1px)}90%{transform:translate(-4px,4px)}}.vn-fx-screen-shake{animation:vnFxShake .4s ease-in-out}@keyframes vnFxShakeHeavy{0%,to{transform:translate(0)}8%{transform:translate(-8px,5px)}16%{transform:translate(10px,-7px)}24%{transform:translate(-6px,3px)}32%{transform:translate(9px,10px)}40%{transform:translate(-10px,-4px)}48%{transform:translate(7px,8px)}56%{transform:translate(-5px,-10px)}64%{transform:translate(8px,3px)}72%{transform:translate(-9px,7px)}80%{transform:translate(6px,-8px)}88%{transform:translate(-4px,5px)}}.vn-fx-screen-shake-heavy{animation:vnFxShakeHeavy .6s ease-in-out}@keyframes vnFxFlashWhite{0%{opacity:0}30%{opacity:.85}to{opacity:0}}.vn-fx-flash-white:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;background:#fff;pointer-events:none;opacity:0;animation:vnFxFlashWhite .3s ease-out forwards}@keyframes vnFxFlashBlack{0%{opacity:0}30%{opacity:.9}to{opacity:0}}.vn-fx-flash-black:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000;pointer-events:none;opacity:0;animation:vnFxFlashBlack .3s ease-out forwards}@keyframes vnFxBlurIn{0%{filter:blur(0)}40%{filter:blur(0)}to{filter:blur(4px)}}.vn-fx-blur{animation:vnFxBlurIn 5s ease forwards}@keyframes vnFxDesaturate{0%{filter:grayscale(0)}to{filter:grayscale(1)}}.vn-fx-desaturate{animation:vnFxDesaturate .8s ease forwards}@keyframes vnFxVignetteIn{0%{opacity:0}to{opacity:1}}.vn-fx-vignette:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.45) 75%,rgba(0,0,0,.8) 100%);opacity:0;animation:vnFxVignetteIn .6s ease forwards}@keyframes vnFxTextTremble{0%,to{transform:translate(0)}5%{transform:translate(-.5px,.8px)}10%{transform:translate(.7px,-.5px)}15%{transform:translate(-.8px,.3px)}20%{transform:translate(.4px,.7px)}25%{transform:translate(-.6px,-.4px)}30%{transform:translate(.5px,.6px)}35%{transform:translate(-.3px,-.7px)}40%{transform:translate(.8px,.2px)}45%{transform:translate(-.5px,.5px)}50%{transform:translate(.3px,-.6px)}55%{transform:translate(-.7px,.4px)}60%{transform:translate(.6px,.3px)}65%{transform:translate(-.4px,-.5px)}70%{transform:translate(.5px,.7px)}75%{transform:translate(-.6px,-.3px)}80%{transform:translate(.7px,.5px)}85%{transform:translate(-.3px,-.8px)}90%{transform:translate(.4px,.6px)}95%{transform:translate(-.5px,-.4px)}}.vn-fx-text-tremble{animation:vnFxTextTremble .15s steps(1) infinite;display:inline-block}@keyframes vnFxRedFlash{0%{color:inherit;transform:scale(1)}15%{color:#f22;transform:scale(1.15)}30%{color:#f44;transform:scale(1.05)}50%{color:#f22;transform:scale(1.1)}70%{color:#f55;transform:scale(1.02)}to{color:#f33;transform:scale(1)}}.vn-fx-red-flash-text{animation:vnFxRedFlash .5s ease-out forwards;display:inline-block}.vn-fx-speak-loudly{font-weight:700;letter-spacing:1.5px;animation:vnFxSpeakLoudly .3s ease-out forwards;display:inline-block;transform-origin:left center}@keyframes vnFxSpeakLoudly{0%{transform:scale(1);opacity:.6}50%{transform:scale(1.28)}to{transform:scale(1.22);opacity:1}}@keyframes vnFxBloodVeilIn{0%{opacity:0}to{opacity:1}}@keyframes vnFxBloodVeilPulse{0%,to{opacity:.7}50%{opacity:1}}.vn-fx-blood-veil:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:radial-gradient(ellipse at center,transparent 35%,rgba(120,0,0,.45) 75%,rgba(80,0,0,.8) 100%),linear-gradient(to bottom,rgba(140,0,0,.15) 0%,transparent 20%,transparent 80%,rgba(100,0,0,.25) 100%);animation:vnFxBloodVeilIn .6s ease forwards,vnFxBloodVeilPulse 2s ease-in-out .6s infinite}@keyframes vnFxHeartbeatScale{0%{transform:scale(1)}7%{transform:scale(1.012)}12%{transform:scale(.998)}18%{transform:scale(1.015)}25%{transform:scale(1)}to{transform:scale(1)}}@keyframes vnFxHeartbeatVignette{0%{opacity:0}7%{opacity:.5}12%{opacity:.15}18%{opacity:.65}25%{opacity:.05}to{opacity:0}}.vn-fx-heartbeat{animation:vnFxHeartbeatScale .85s cubic-bezier(.4,0,.2,1) infinite}.vn-fx-heartbeat:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.6) 100%);animation:vnFxHeartbeatVignette .85s cubic-bezier(.4,0,.2,1) infinite}@keyframes vnFxBreathFogIn{0%{opacity:0}to{opacity:1}}@keyframes vnFxBreathFogCycle{0%,to{opacity:.4;transform:scaleY(.9) translateY(2%)}50%{opacity:.8;transform:scaleY(1.1) translateY(-1%)}}.vn-fx-breath-fog:after{content:"";position:absolute;bottom:0;left:-5%;right:-5%;height:25%;z-index:9997;pointer-events:none;background:linear-gradient(to top,rgba(210,220,240,.35) 0%,rgba(200,215,235,.18) 35%,rgba(190,205,225,.06) 60%,transparent 100%);animation:vnFxBreathFogIn .5s ease forwards,vnFxBreathFogCycle 3.5s ease-in-out .5s infinite;transform-origin:bottom center}@keyframes vnFxCountdownGrow{0%{border-width:0;opacity:0}to{border-width:6px;opacity:1}}@keyframes vnFxCountdownGlow{0%{opacity:0}to{opacity:1}}@keyframes vnFxCountdownFlicker{0%,to{opacity:1}50%{opacity:.65}}.vn-fx-countdown-pressure:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;border:0 solid rgba(220,30,30,.75);background:radial-gradient(ellipse at center,transparent 50%,rgba(220,30,30,.2) 100%);opacity:0;animation:vnFxCountdownGrow 3s ease-in forwards,vnFxCountdownGlow 3s ease-in forwards,vnFxCountdownFlicker .6s steps(2) 3s infinite}@keyframes vnFxColorShift{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.vn-fx-color-shift{animation:vnFxColorShift 6s linear infinite}@keyframes vnFxColorInvert{0%{filter:invert(0)}to{filter:invert(1)}}.vn-fx-color-invert{animation:vnFxColorInvert .15s ease forwards}@keyframes vnFxTiltIn{0%{transform:rotate(0) scale(1)}to{transform:rotate(2.5deg) scale(1.02)}}.vn-fx-tilt{animation:vnFxTiltIn 1.2s ease forwards;transform-origin:center center}@keyframes vnFxCameraFallMove{0%{transform:translateY(0) rotate(0);filter:blur(0)}30%{transform:translateY(3%) rotate(.5deg);filter:blur(1px)}60%{transform:translateY(8%) rotate(1.5deg);filter:blur(3px)}to{transform:translateY(14%) rotate(2deg);filter:blur(6px)}}@keyframes vnFxCameraFallDark{0%{opacity:0}30%{opacity:.3}60%{opacity:.55}to{opacity:.85}}.vn-fx-camera-fall{animation:vnFxCameraFallMove 1.5s ease-in forwards}.vn-fx-camera-fall:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:radial-gradient(ellipse at center,#0003 20%,#000000e6);opacity:0;animation:vnFxCameraFallDark 1.5s ease-in forwards}@keyframes vnFxGlitchBase{0%,8%,15%,45%,52%,82%,88%,to{transform:translate(0) skew(0)}5%{transform:translate(-4px,1px) skew(-.8deg)}6%{transform:translate(3px,-1px) skew(.5deg)}12%{transform:translate(2px) skew(-.3deg)}48%{transform:translate(-5px,1px) skew(1deg)}50%{transform:translate(4px,-1px) skew(-.6deg)}85%{transform:translate(-3px,2px) skew(.7deg)}}@keyframes vnFxGlitchCyan{0%,8%,14%,45%,52%,82%,88%,to{clip-path:inset(0 0 100% 0);opacity:0}5%{clip-path:inset(15% 0 65% 0);transform:translate(8px);opacity:1}6%{clip-path:inset(50% 0 30% 0);transform:translate(-5px);opacity:1}7%{clip-path:inset(80% 0 5% 0);transform:translate(6px);opacity:.8}48%{clip-path:inset(25% 0 55% 0);transform:translate(10px);opacity:1}49%{clip-path:inset(60% 0 20% 0);transform:translate(-7px);opacity:.9}85%{clip-path:inset(10% 0 75% 0);transform:translate(6px);opacity:1}86%{clip-path:inset(70% 0 15% 0);transform:translate(-8px);opacity:.8}}@keyframes vnFxGlitchRed{0%,9%,16%,46%,53%,83%,89%,to{clip-path:inset(0 0 100% 0);opacity:0}6%{clip-path:inset(20% 0 60% 0);transform:translate(-6px);opacity:1}7%{clip-path:inset(55% 0 25% 0);transform:translate(7px);opacity:.9}49%{clip-path:inset(30% 0 50% 0);transform:translate(-8px);opacity:1}50%{clip-path:inset(65% 0 15% 0);transform:translate(5px);opacity:.8}86%{clip-path:inset(40% 0 40% 0);transform:translate(-9px);opacity:1}87%{clip-path:inset(75% 0 10% 0);transform:translate(6px);opacity:.9}}.vn-fx-glitch{animation:vnFxGlitchBase 4s steps(1) infinite}.vn-fx-glitch:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background:#00ffff12;mix-blend-mode:screen;animation:vnFxGlitchCyan 4s steps(1) infinite}.vn-fx-glitch:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background:#ff005012;mix-blend-mode:screen;animation:vnFxGlitchRed 4s steps(1) infinite}@keyframes vnFxCrackFlash{0%{opacity:.7}to{opacity:0}}@keyframes vnFxCrackReveal{0%{opacity:0;transform:scale(.96)}15%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}.vn-fx-crack-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 300' preserveAspectRatio='none'%3E%3Cg stroke='rgba(255,255,255,0.9)' stroke-width='1.5' fill='none' stroke-linecap='round'%3E%3Cpath d='M200 130L180 100 165 65 155 25'/%3E%3Cpath d='M200 130L225 95 245 55 260 15'/%3E%3Cpath d='M200 130L165 140 120 148 70 140 20 130'/%3E%3Cpath d='M200 130L240 138 285 150 340 148 390 140'/%3E%3Cpath d='M200 130L185 170 170 215 155 265 145 300'/%3E%3Cpath d='M200 130L218 175 235 225 248 275 255 300'/%3E%3Cpath d='M200 130L155 115 110 95 60 80 15 70'/%3E%3Cpath d='M200 130L248 112 295 88 345 70 390 55'/%3E%3C/g%3E%3Cg stroke='rgba(255,255,255,0.5)' stroke-width='0.8' fill='none'%3E%3Cpath d='M180 100L150 108 125 120'/%3E%3Cpath d='M225 95L255 102 278 118'/%3E%3Cpath d='M165 140L158 175 145 200'/%3E%3Cpath d='M240 138L252 168 270 192'/%3E%3Cpath d='M185 170L155 178 128 185'/%3E%3Cpath d='M218 175L250 182 275 195'/%3E%3Cpath d='M155 115L145 140'/%3E%3Cpath d='M248 112L262 135'/%3E%3C/g%3E%3C/svg%3E");background-size:100% 100%;animation:vnFxCrackReveal .5s ease-out forwards}.vn-fx-crack-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:#fff;animation:vnFxCrackFlash .4s ease-out forwards}@keyframes vnFxStaticShift{0%{transform:translate(0)}10%{transform:translate(-5%,-8%)}20%{transform:translate(8%,5%)}30%{transform:translate(-3%,10%)}40%{transform:translate(7%,-6%)}50%{transform:translate(-8%,3%)}60%{transform:translate(4%,-10%)}70%{transform:translate(-6%,7%)}80%{transform:translate(10%,-3%)}90%{transform:translate(-4%,8%)}to{transform:translate(0)}}@keyframes vnFxStaticFlicker{0%,to{opacity:.35}15%{opacity:.5}30%{opacity:.25}50%{opacity:.55}65%{opacity:.3}80%{opacity:.6}}.vn-fx-static-noise:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0px,rgba(0,0,0,.25) 1px,transparent 2px,transparent 3px);opacity:.85}.vn-fx-static-noise:after{content:"";position:absolute;top:-25%;right:-25%;bottom:-25%;left:-25%;z-index:9999;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px;animation:vnFxStaticShift .08s steps(8) infinite,vnFxStaticFlicker .2s steps(4) infinite}@keyframes vnFxPixelateIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(5px) contrast(1.3);backdrop-filter:blur(5px) contrast(1.3)}}.vn-fx-pixelate:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;-webkit-backdrop-filter:blur(5px) contrast(1.3);backdrop-filter:blur(5px) contrast(1.3);background:repeating-linear-gradient(90deg,rgba(0,0,0,.06) 0px,rgba(0,0,0,.06) 1px,transparent 1px,transparent 8px),repeating-linear-gradient(0deg,rgba(0,0,0,.06) 0px,rgba(0,0,0,.06) 1px,transparent 1px,transparent 8px);animation:vnFxPixelateIn .8s ease forwards}@keyframes vnFxDoubleExposureFloat{0%,to{transform:translate(8px,-5px) scale(1.01);opacity:.4}33%{transform:translate(-5px,4px) scale(1.015);opacity:.5}66%{transform:translate(6px,3px) scale(1.005);opacity:.35}}@keyframes vnFxDoubleExposureIn{0%{opacity:0}to{opacity:1}}.vn-fx-double-exposure:before{content:"";position:absolute;top:-3%;right:-3%;bottom:-3%;left:-3%;z-index:9998;pointer-events:none;-webkit-backdrop-filter:blur(1.5px) brightness(1.15) saturate(.7);backdrop-filter:blur(1.5px) brightness(1.15) saturate(.7);background:#8caadc0a;mix-blend-mode:screen;animation:vnFxDoubleExposureIn .6s ease forwards,vnFxDoubleExposureFloat 5s ease-in-out .6s infinite}@keyframes vnFxInkDissolveBlur{0%{filter:blur(0) saturate(1);opacity:1}30%{filter:blur(1.5px) saturate(.6);opacity:.9}60%{filter:blur(4px) saturate(.25);opacity:.6}to{filter:blur(8px) saturate(0);opacity:.2;transform:scale(1.03)}}@keyframes vnFxInkBlots{0%{opacity:0;transform:scale(.6)}30%{opacity:.4}to{opacity:.85;transform:scale(1.3)}}.vn-fx-ink-dissolve{animation:vnFxInkDissolveBlur 2.5s ease-in forwards}.vn-fx-ink-dissolve:before{content:"";position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:9998;pointer-events:none;background:radial-gradient(circle at 30% 55%,rgba(15,5,25,.8) 0%,transparent 45%),radial-gradient(circle at 65% 35%,rgba(15,5,25,.65) 0%,transparent 40%),radial-gradient(circle at 50% 75%,rgba(15,5,25,.7) 0%,transparent 50%),radial-gradient(circle at 20% 25%,rgba(15,5,25,.5) 0%,transparent 35%),radial-gradient(circle at 80% 70%,rgba(15,5,25,.55) 0%,transparent 38%);animation:vnFxInkBlots 2.5s ease-in forwards}@keyframes vnFxCrtOffFlash{0%{filter:brightness(1)}8%{filter:brightness(1.6) contrast(1.3)}25%{filter:brightness(.3)}to{filter:brightness(0)}}@keyframes vnFxCrtOffBlack{0%{opacity:0}15%{opacity:.5}25%{opacity:1}to{opacity:1}}@keyframes vnFxCrtOffLine{0%{transform:translate(-50%,-50%) scaleX(0) scaleY(0);opacity:0}20%{transform:translate(-50%,-50%) scaleX(0) scaleY(0);opacity:0}30%{transform:translate(-50%,-50%) scaleX(1.1) scaleY(1);opacity:1}50%{transform:translate(-50%,-50%) scaleX(.6) scaleY(1);opacity:.95}75%{transform:translate(-50%,-50%) scaleX(.008) scaleY(.8);opacity:.7}90%{transform:translate(-50%,-50%) scaleX(0) scaleY(0);opacity:.3}to{transform:translate(-50%,-50%) scaleX(0) scaleY(0);opacity:0}}.vn-fx-crt-off{animation:vnFxCrtOffFlash 1.5s ease-in forwards}.vn-fx-crt-off:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background:#000;opacity:0;animation:vnFxCrtOffBlack 1.5s ease-in forwards}.vn-fx-crt-off:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:2px;border-radius:1px;background:#b4c8ffe6;box-shadow:0 0 30px 8px #96b4ff99,0 0 60px 20px #648cff4d;z-index:9999;pointer-events:none;opacity:0;animation:vnFxCrtOffLine 1.5s ease-in forwards}.book-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:570;display:flex;align-items:center;justify-content:center;background:#000000b8;animation:bookFadeIn .3s ease both}@keyframes bookFadeIn{0%{opacity:0}to{opacity:1}}.book-close{position:absolute;top:16px;right:16px;z-index:10;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.15);background:#00000080;color:#ffffffb3;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .15s ease}.book-close:hover{background:#000000b3;color:#fff}.book-spread{position:relative;display:flex;flex-direction:row;width:90vw;max-width:960px;height:78vh;max-height:680px;border-radius:6px;box-shadow:0 20px 60px #00000080,0 0 0 1px #8b775a4d;animation:bookSpreadIn .35s ease both}@keyframes bookSpreadIn{0%{opacity:0;transform:scale(.92) rotateY(-4deg)}to{opacity:1;transform:scale(1) rotateY(0)}}.book-page{flex:1;min-width:0;display:flex;flex-direction:column;padding:36px 32px 28px;overflow-y:auto;font-family:Georgia,"Noto Serif SC",Songti SC,serif;position:relative}.book-page::-webkit-scrollbar{width:4px}.book-page::-webkit-scrollbar-thumb{background:#8b775a40;border-radius:2px}.book-page--left{border-radius:6px 0 0 6px}.book-page--right{border-radius:0 6px 6px 0}.book-page--cover{background:#e8dcc8;justify-content:center;align-items:flex-start;padding:48px 40px}.book-cover-top-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.25em;color:#8b7760;margin-bottom:32px}.book-cover-title-row{display:flex;align-items:stretch;gap:16px;margin-bottom:20px;width:100%}.book-cover-bar{width:6px;flex-shrink:0;background:#2c2418;border-radius:1px}.book-cover-title{font-size:1.7rem;font-weight:700;color:#2c2418;line-height:1.35;outline:none;border:none;padding:4px 2px;min-width:120px;cursor:text;border-bottom:2px solid transparent;transition:border-color .2s}.book-cover-title:hover,.book-cover-title:focus{border-bottom-color:#8b775a66}.book-cover-separator{width:60%;height:1px;background:#b5a48a;margin:8px 0 16px}.book-cover-subtitle{font-size:.82rem;color:#8b7760;line-height:1.6;font-style:italic;margin-bottom:auto}.book-cover-author-block{margin-top:40px;display:flex;flex-direction:column;gap:4px}.book-cover-author-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:#8b7760}.book-cover-author{font-size:1rem;color:#2c2418;outline:none;border:none;border-bottom:1px solid #b5a48a;padding:4px 2px;background:transparent;font-family:inherit;min-width:80px;cursor:text;transition:border-color .2s}.book-cover-author:hover,.book-cover-author:focus{border-bottom-color:#2c2418}.book-page--content{background:#f5f0e8;padding:48px 36px 56px}.book-content-chapter{font-size:.78rem;color:#9b7a4a;letter-spacing:.1em;margin-bottom:6px;font-weight:600}.book-content-chapter-title{font-size:.72rem;color:#b5946a;margin-bottom:20px;font-style:italic}.book-content-text{font-size:.92rem;line-height:1.85;color:#3a3028;white-space:pre-wrap;word-break:break-word;flex:1}.book-content-text p{margin:0 0 12px;text-indent:2em}.book-content-text p:last-child{margin-bottom:0}.book-page-number{position:absolute;bottom:16px;left:0;right:0;text-align:center;font-size:.72rem;color:#b5a48a;letter-spacing:.08em}.book-page--end{background:#f5f0e8;display:flex;align-items:center;justify-content:center}.book-end-mark{font-size:1.8rem;color:#b5a48a;font-family:Georgia,"Noto Serif SC",serif;font-weight:700;letter-spacing:.15em}.book-spine{position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);width:20px;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.04) 30%,transparent 50%,rgba(0,0,0,.04) 70%,rgba(0,0,0,.12) 100%)}.book-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:40px;height:64px;display:flex;align-items:center;justify-content:center;border:none;background:#00000040;color:#ffffffb3;cursor:pointer;font-size:1.3rem;transition:all .15s ease}.book-nav:hover{background:#00000073;color:#fff}.book-nav--prev{left:-48px;border-radius:6px 0 0 6px}.book-nav--next{right:-48px;border-radius:0 6px 6px 0}.book-nav:disabled{opacity:.25;cursor:default;pointer-events:none}.book-click-zone{position:absolute;top:0;bottom:0;width:60px;z-index:3;cursor:pointer;background:transparent;border:none;padding:0}.book-click-zone--left{left:0;border-radius:6px 0 0 6px}.book-click-zone--right{right:0;border-radius:0 6px 6px 0}.book-click-zone:hover{background:#8b775a0f}@media(max-width:768px){.book-spread{width:94vw;max-width:420px;height:82vh;max-height:none;flex-direction:column}.book-page--left{display:none}.book-page--right{border-radius:6px;flex:1}.book-spread--mobile-cover .book-page--left{display:flex;border-radius:6px}.book-spread--mobile-cover .book-page--right,.book-spine{display:none}.book-nav{top:auto;bottom:-52px;transform:none;width:56px;height:44px;border-radius:8px;font-size:1.1rem}.book-nav--prev{left:calc(50% - 68px)}.book-nav--next{right:calc(50% - 68px)}.book-click-zone{display:none}.book-close{top:10px;right:10px;width:32px;height:32px;font-size:1rem}.book-page--cover{padding:36px 28px}.book-cover-title{font-size:1.4rem}.book-page--content{padding:28px 24px 48px}}.mw-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;background:#000}.mw-overlay--entering{background:transparent}.mw-overlay--leaving{animation:mwLeave .6s ease-in forwards;pointer-events:none}@keyframes mwLeave{0%{opacity:1}to{opacity:0}}.mw-enter-img{position:absolute;z-index:2;object-fit:cover;border-radius:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;animation:mwEnterShrink .7s cubic-bezier(.4,0,.2,1) forwards}@keyframes mwEnterShrink{0%{top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0;filter:brightness(1)}to{inset:unset;width:640px;height:352px;border-radius:4px;filter:brightness(.85)}}.mw-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:blur(12px) brightness(.35) saturate(.7);transform:scale(1.1);pointer-events:none;z-index:0;animation:mwBgIn .5s ease-out .5s both}.mw-bg--hidden{opacity:0;animation:none}@keyframes mwBgIn{0%{opacity:0}to{opacity:1}}.mw-canvas-wrap{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 40px rgba(100,150,255,.15));animation:mwCanvasIn .3s ease-out}@keyframes mwCanvasIn{0%{opacity:0}to{opacity:1}}.mw-preview{display:block;width:640px;height:352px;max-width:90vw;max-height:70vh;object-fit:cover;border-radius:4px;box-shadow:0 0 60px #6496ff1f,0 0 120px #6496ff0f,0 4px 30px #00000080}.mw-canvas{position:relative;z-index:1;max-width:90vw;max-height:70vh;border-radius:4px;box-shadow:0 0 60px #6496ff1f,0 0 120px #6496ff0f,0 4px 30px #00000080}.mw-canvas-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#00000073;border-radius:4px;color:#fffc}.mw-spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.15);border-top-color:#64aaffcc;border-radius:50%;animation:mwSpin .8s linear infinite}@keyframes mwSpin{to{transform:rotate(360deg)}}.mw-loading-text{font-size:.95rem;letter-spacing:.05em;animation:mwPulse 2s ease-in-out infinite}@keyframes mwPulse{0%,to{opacity:.6}50%{opacity:1}}.mw-energy{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:10px;padding:8px 14px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mw-energy-dots{display:flex;gap:4px;align-items:center}.mw-dot{width:14px;height:14px;border-radius:3px;transition:background .3s,box-shadow .3s,opacity .3s}.mw-dot--empty{background:#ffffff14;border:1px solid rgba(255,255,255,.1)}.mw-dot--filled.mw-dot--green{background:#50dc7899;border:1px solid rgba(80,220,120,.4);box-shadow:0 0 6px #50dc7833}.mw-dot--filled.mw-dot--yellow{background:#eab30899;border:1px solid rgba(234,179,8,.4);box-shadow:0 0 6px #eab30833}.mw-dot--filled.mw-dot--red{background:#ef444499;border:1px solid rgba(239,68,68,.4);box-shadow:0 0 6px #ef444433}.mw-energy-text{font-size:.75rem;color:#ffffff80;font-variant-numeric:tabular-nums;white-space:nowrap}.mw-replay-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:12px;padding:6px 10px 6px 14px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mw-replay-badge{color:#ffffff73;font-size:.75rem;letter-spacing:.1em;white-space:nowrap}.mw-save-btn{padding:6px 14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#fff9;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.mw-save-btn:hover:not(:disabled){background:#ffffff1f;color:#ffffffd9;border-color:#ffffff40}.mw-save-btn:disabled{opacity:.5;cursor:default}.mw-error-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;padding:16px 28px;background:#ef4444e6;color:#fff;border-radius:12px;font-size:.95rem;font-weight:600;box-shadow:0 4px 20px #ef444466;animation:mwFadeIn .3s ease-out}@keyframes mwFadeIn{0%{opacity:0}to{opacity:1}}.mw-exhausted-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;padding:20px 36px;background:#000c;color:#ffffffe6;border-radius:16px;font-size:1.3rem;font-weight:700;letter-spacing:.1em;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 40px #6496ff26;animation:mwExhaustedIn .5s ease-out}@keyframes mwExhaustedIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.mw-dpad{position:fixed;bottom:80px;right:24px;z-index:10;display:grid;grid-template-areas:". top ." "left . right" ". bottom .";gap:4px}.mw-dpad-key{width:56px;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#ffffff80;cursor:pointer;transition:all .15s;-webkit-tap-highlight-color:transparent;touch-action:none;padding:0}.mw-dpad-key:hover{background:#ffffff1f;border-color:#ffffff40}.mw-dpad-key--active{background:#64aaff40!important;border-color:#64aaff80!important;color:#8cf!important;box-shadow:0 0 12px #64aaff33}.mw-dpad-top{grid-area:top}.mw-dpad-left{grid-area:left}.mw-dpad-bottom{grid-area:bottom}.mw-dpad-right{grid-area:right}.mw-dpad-arrow{font-size:1rem;line-height:1}.mw-dpad-label{font-size:.6rem;letter-spacing:.05em;opacity:.7}.mw-exit-btn{position:fixed;top:16px;right:16px;z-index:10;padding:8px 18px;background:#00000080;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff9;font-size:.85rem;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mw-exit-btn:hover{background:#000000b3;color:#ffffffe6;border-color:#ffffff4d}@media(max-width:768px){.mw-preview,.mw-canvas{max-width:95vw;max-height:50vh}@keyframes mwEnterShrink{0%{top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0;filter:brightness(1)}to{inset:unset;width:95vw;height:calc(95vw * 352 / 640);border-radius:4px;filter:brightness(.85)}}.mw-dpad{bottom:90px;right:12px}.mw-dpad-key{width:50px;height:50px}.mw-energy{bottom:16px;padding:6px 10px}.mw-dot{width:12px;height:12px}.mw-exit-btn{top:10px;right:10px;padding:6px 14px;font-size:.8rem}}.chat-panel{display:flex;flex-direction:column;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));overflow:hidden;height:350px;min-height:200px;flex-shrink:0}.chat-panel--collapsed{height:auto;min-height:0}.chat-panel--collapsed .chat-panel-header{cursor:pointer;border-bottom:none}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);flex-shrink:0}.chat-panel-me{display:flex;align-items:center;gap:8px;padding:4px var(--space-md);background:#ffffff05;border-bottom:1px solid var(--color-border);flex-shrink:0}.chat-panel-me-name{font-size:.72rem;color:var(--color-accent);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel-me-ach{font-size:.68rem;color:var(--color-text-secondary);flex-shrink:0}.chat-panel-header-left{display:flex;align-items:center;gap:6px}.chat-panel-header-left--expandable{cursor:pointer;border-radius:var(--radius-sm);padding:2px 6px 2px 0;transition:background var(--transition-fast)}.chat-panel-header-left--expandable:hover{background:#ffffff0f}.chat-panel-expand-icon{width:12px;height:12px;color:var(--color-text-muted);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.chat-panel-header-left--expandable:hover .chat-panel-expand-icon{opacity:1}.chat-panel-header-right{display:flex;align-items:center;gap:var(--space-sm)}.chat-panel-icon{width:16px;height:16px;color:var(--color-accent);flex-shrink:0}.chat-panel-room-name{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);font-family:var(--font-body)}.chat-panel-online-wrap{position:relative}.chat-panel-online{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--color-text-secondary);font-family:var(--font-body);background:none;border:none;padding:2px 4px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.chat-panel-online:hover{background:#ffffff0f}.chat-panel-online-dot{width:7px;height:7px;border-radius:50%;background:var(--color-success);box-shadow:0 0 6px var(--color-success);flex-shrink:0}.chat-panel-users-popover{position:absolute;top:calc(100% + 6px);right:0;width:180px;max-height:320px;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:20;animation:fadeIn .15s ease both}.chat-panel-users-title{display:flex;align-items:center;gap:6px;padding:8px 10px;font-size:.76rem;font-weight:600;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);flex-shrink:0}.chat-panel-users-icon{width:14px;height:14px;flex-shrink:0}.chat-panel-users-list{overflow-y:auto;padding:4px 0}.chat-panel-users-list::-webkit-scrollbar{width:3px}.chat-panel-users-list::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.chat-panel-users-item{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;font-size:.78rem;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-panel-users-item--clickable{cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.chat-panel-users-item--clickable:hover{background:#ffffff0f}.chat-panel-user-name{overflow:hidden;text-overflow:ellipsis}.chat-panel-ach-badge{flex-shrink:0;font-size:.7rem;margin-left:6px;color:var(--color-text-secondary)}.chat-panel-users-item--self{color:var(--color-accent)}.chat-panel-users-item--self .chat-panel-ach-badge{color:var(--color-accent);opacity:.7}.chat-panel-users-item--anon{color:var(--color-text-muted);font-style:italic;border-top:1px solid var(--color-border);margin-top:2px;padding-top:6px}.chat-panel-ach-detail-header{cursor:pointer;gap:4px;transition:background var(--transition-fast)}.chat-panel-ach-detail-header:hover{background:#ffffff0a}.chat-panel-ach-item{display:flex;align-items:center;gap:6px}.chat-panel-ach-icon{flex-shrink:0;font-size:.72rem}.chat-panel-toggle-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.chat-panel-toggle-btn:hover{background:#ffffff0f;color:var(--color-text-primary)}.chat-panel-toggle-icon{width:16px;height:16px}.chat-panel-messages{flex:1;overflow-y:auto;padding:var(--space-sm) var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.chat-panel-messages::-webkit-scrollbar{width:4px}.chat-panel-messages::-webkit-scrollbar-track{background:transparent}.chat-panel-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.chat-msg-system{display:flex;align-items:center;gap:8px;padding:4px 0;animation:fadeIn .3s ease both}.chat-msg-system:before,.chat-msg-system:after{content:"";flex:1;height:1px;background:linear-gradient(to var(--dir, right),transparent,var(--color-border-light))}.chat-msg-system:before{--dir: right}.chat-msg-system:after{--dir: left}.chat-msg-system-inner{flex-shrink:0;padding:2px 10px;font-size:.68rem;color:var(--color-text-muted);background:#ffffff08;border:1px solid var(--color-border);border-radius:999px;white-space:nowrap}.chat-msg-bubble{display:flex;flex-direction:column;max-width:78%;animation:fadeIn .3s ease both}.chat-msg-other{align-self:flex-start}.chat-msg-other .chat-msg-sender{font-size:.72rem;color:var(--color-text-secondary);margin-bottom:3px;padding-left:2px}.chat-msg-other .chat-msg-content{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm) var(--radius-sm) var(--radius-sm) 2px;padding:6px 10px;font-size:.84rem;color:var(--color-text-primary);line-height:1.45;word-break:break-word}.chat-msg-self{align-self:flex-end}.chat-msg-self .chat-msg-sender{font-size:.72rem;color:var(--color-text-secondary);margin-bottom:3px;padding-right:2px;text-align:right}.chat-msg-self .chat-msg-content{background:var(--color-accent-dim);border:1px solid var(--color-accent-glow);border-radius:var(--radius-sm) var(--radius-sm) 2px var(--radius-sm);padding:6px 10px;font-size:.84rem;color:var(--color-text-primary);line-height:1.45;word-break:break-word}.chat-panel-input-area{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-border);flex-shrink:0}.chat-panel-input{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--color-text-primary);font-size:.84rem;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast)}.chat-panel-input::placeholder{color:var(--color-text-muted)}.chat-panel-input:focus{border-color:var(--color-accent)}.chat-panel-send-btn{padding:7px 14px;border:1px solid var(--color-accent-glow);border-radius:var(--radius-sm);background:var(--color-accent-dim);color:var(--color-accent);font-size:.82rem;font-family:var(--font-body);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0}.chat-panel-send-btn:hover{background:var(--color-accent-glow)}.chat-panel-send-btn:active{transform:scale(.97)}.chat-msg-media{position:relative;max-width:200px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:opacity var(--transition-fast)}.chat-msg-media:hover{opacity:.85}.chat-msg-media-img,.chat-msg-media-video{width:100%;display:block}.chat-msg-media--video{cursor:pointer}.chat-msg-media-play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000004d;transition:background .2s}.chat-msg-media--video:hover .chat-msg-media-play{background:#00000026}.chat-msg-media-play-icon{width:36px;height:36px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.chat-overlay{z-index:550}.chat-expanded-content{max-width:700px;max-height:85vh}.chat-expanded-content .chat-panel-messages{flex:1;min-height:0;padding:var(--space-md) var(--space-lg)}.chat-expanded-content .chat-panel-input-area{padding:var(--space-sm) var(--space-lg) var(--space-md)}.chat-expanded-content .chat-msg-bubble{max-width:65%}.chat-expanded-content .chat-msg-media{max-width:280px}.chat-expanded-header-right{display:flex;align-items:center;gap:8px}@media(max-width:768px){.chat-expanded-content{max-width:100%;max-height:90vh}.chat-expanded-content .chat-panel-messages,.chat-expanded-content .chat-panel-input-area{padding:var(--space-sm) var(--space-md)}}.lw-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#0000008c;display:flex;align-items:center;justify-content:center;animation:lwFadeIn .15s ease both}.lw-card{max-width:320px;width:90%;padding:28px 24px 22px;border-radius:0;background:#fff;border:1px solid rgba(0,0,0,.1);text-align:center;animation:lwScaleIn .2s ease both}.lw-icon{margin:0 auto 12px;color:#00000073}.lw-title{margin:0 0 8px;font-size:1rem;font-weight:700;color:#0a0a0a}.lw-desc{margin:0 0 22px;font-size:.8rem;color:#00000080;line-height:1.55}.lw-actions{display:flex;flex-direction:column;gap:10px}.lw-btn{width:100%;padding:11px 8px;border-radius:0;border:1px solid transparent;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease}.lw-btn--primary{background:#0a0a0a;border-color:#0a0a0a;color:#fff}.lw-btn--primary:hover{opacity:.85}.lw-btn--secondary{background:transparent;border-color:#0000001a;color:#00000080}.lw-btn--secondary:hover{background:#0000000a;color:#000000bf}@keyframes lwFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lwScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.sg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;animation:sgFadeIn .15s ease both}.sg-card{max-width:360px;width:90%;padding:28px 24px 22px;border-radius:16px;background:linear-gradient(165deg,#1a1a2e,#0f0f1a 60%,#151520);border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 60px #00000080;text-align:center;animation:sgScaleIn .2s ease both}.sg-icon{margin:0 auto 12px;font-size:2rem;line-height:1}.sg-title{margin:0 0 16px;font-size:1rem;font-weight:700;color:#ffffffe6}.sg-countdown{font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums;color:#ffffffe6;margin:0 0 4px}.sg-countdown-label{font-size:.8rem;color:#fff6;margin:0 0 20px}.sg-divider{height:1px;background:#ffffff0f;margin:0 0 16px}.sg-section{margin-bottom:12px;text-align:left}.sg-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 0;background:none;border:none;font-family:inherit;font-size:.85rem;font-weight:600;color:#ffffffd9;cursor:pointer}.sg-section-arrow{font-size:.7rem;color:#ffffff4d;transition:transform .2s ease}.sg-section-arrow.open{transform:rotate(180deg)}.sg-section-body{max-height:0;overflow:hidden;transition:max-height .25s ease}.sg-section-body.open{max-height:500px}.sg-section-body-inner{padding:4px 0 8px}.sg-share-desc{font-size:.78rem;color:#ffffff73;line-height:1.5;margin:0 0 10px}.sg-pro-desc{font-size:.75rem;color:#fff6;line-height:1.6;margin:0 0 10px;text-align:center}.sg-perks{list-style:none;margin:0 0 14px;padding:0}.sg-perks li{font-size:.78rem;color:#ffffff8c;line-height:1.7}.sg-perks li:before{content:"✓ ";color:#fffc;font-weight:600}.sg-perks li strong{color:#e2c87a;font-weight:600}.sg-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.sg-plan{position:relative;padding:14px 10px 12px;border-radius:10px;border:1.5px solid rgba(255,255,255,.08);background:#ffffff08;cursor:pointer;transition:all .2s ease;text-align:center}.sg-plan:hover{background:#ffffff0f;border-color:#ffffff26}.sg-plan--selected{border-color:#d4af3780;background:#d4af370f;box-shadow:0 0 16px #d4af3714}.sg-plan--selected:hover{border-color:#d4af3799;background:#d4af3714}.sg-plan-badge{position:absolute;top:-8px;left:50%;transform:translate(-50%);padding:1px 10px;border-radius:8px;font-size:.6rem;font-weight:700;letter-spacing:.5px;white-space:nowrap;background:linear-gradient(135deg,#d4af37,#b8962e);color:#0f0f1a}.sg-plan-period{font-size:.72rem;font-weight:600;color:#ffffff80;margin-bottom:6px;letter-spacing:.5px}.sg-plan--selected .sg-plan-period{color:#ffffffb3}.sg-plan-price{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:2px}.sg-plan-price-value{font-size:1.5rem;font-weight:700;color:#ffffffd9;line-height:1}.sg-plan--selected .sg-plan-price-value{color:#e2c87a}.sg-plan-price-unit{font-size:.7rem;color:#ffffff59;font-weight:500}.sg-plan-price-suffix{font-size:.7rem;color:#ffffff4d}.sg-plan-original{font-size:.65rem;color:#ffffff40;text-decoration:line-through}.sg-btn{width:100%;padding:11px 8px;border-radius:10px;border:1px solid transparent;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease}.sg-btn--primary{background:linear-gradient(135deg,#d4af37,#b8962e);border-color:transparent;color:#0f0f1a;box-shadow:0 2px 12px #d4af3740}.sg-btn--primary:hover{box-shadow:0 4px 20px #d4af3759}.sg-btn--primary:active{transform:scale(.97)}.sg-btn--secondary{background:transparent;border-color:#ffffff1a;color:#ffffff80}.sg-btn--secondary:hover{background:#ffffff0f;color:#ffffffbf}@keyframes sgFadeIn{0%{opacity:0}to{opacity:1}}@keyframes sgScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.engine{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg);position:relative}.engine-back-btn{position:absolute;top:12px;left:12px;z-index:50;padding:6px 14px;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);color:#ffffffb3;font-size:.85rem;cursor:pointer;transition:all .15s}.engine-back-btn:hover{background:#000000a6;color:#fff;border-color:#ffffff4d}.engine-body{flex:1;display:grid;grid-template-columns:var(--sidebar-width) 1fr var(--sidebar-width);gap:1px;min-height:0}.engine-body--setup{grid-template-columns:1fr;max-width:880px;margin:0 auto;width:100%;padding:var(--space-lg);flex:none}.engine--focus_center .engine-body{grid-template-columns:1fr;max-width:780px;margin:0 auto;width:100%}.engine--dashboard .engine-body{grid-template-columns:var(--sidebar-width) 1fr var(--sidebar-width)}.engine-sidebar{height:calc(100vh - var(--header-height));overflow:visible;position:sticky;top:var(--header-height);display:flex;flex-direction:column;background:var(--color-surface);border-right:1px solid var(--color-border);transition:width var(--transition-base),padding var(--transition-base);animation:fadeIn .4s ease both}.engine-sidebar-content{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.engine-sidebar--right{border-right:none;border-left:1px solid var(--color-border)}.engine-sidebar--collapsed{width:24px;min-width:24px;overflow:visible;padding:0;background:transparent;border-color:transparent}.engine-sidebar--right.engine-sidebar--collapsed{justify-self:end}.engine-sidebar-toggle{position:absolute;top:50%;right:0;transform:translate(50%,-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:50%;cursor:pointer;font-size:.7rem;z-index:10;transition:all var(--transition-fast)}.engine-sidebar-toggle:hover{background:#ffffff1a;color:var(--color-text-secondary)}.engine-sidebar--right .engine-sidebar-toggle{right:auto;left:0;transform:translate(-50%,-50%)}.engine-center{grid-column:2;height:calc(100vh - var(--header-height));overflow-y:auto;padding:var(--space-lg);padding-bottom:0}.engine--focus_center .engine-center{grid-column:1}.engine-body--setup .engine-center{grid-column:1;overflow:visible;height:auto}.engine-body--setup .engine-center>:not(.setup-image-wrap){max-width:632px;margin-left:auto;margin-right:auto}.engine-center-panels{margin-bottom:var(--space-lg);max-height:35vh;overflow-y:auto;flex-shrink:0;border-radius:var(--radius-md)}.engine-center-panels-bottom{margin-top:var(--space-lg);max-height:35vh;overflow-y:auto;flex-shrink:0;border-radius:var(--radius-md)}.engine-center-panels--no-scroll,.engine-center-panels-bottom--no-scroll{max-height:none;overflow-y:visible}.engine-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);background:#060608}.engine-loading-orb{position:relative;width:72px;height:72px}.engine-loading-orb-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1.5px solid transparent;border-top-color:#ffffff80;border-right-color:#ffffff1f;animation:orbSpin 1.8s cubic-bezier(.45,.05,.55,.95) infinite}.engine-loading-orb-ring:nth-child(2){top:8px;right:8px;bottom:8px;left:8px;border-top-color:#fff6;border-right-color:#ffffff14;animation-duration:2.4s;animation-direction:reverse}.engine-loading-orb-core{position:absolute;top:20px;right:20px;bottom:20px;left:20px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);animation:orbPulse 2.5s ease-in-out infinite}@keyframes orbSpin{to{transform:rotate(360deg)}}@keyframes orbPulse{0%,to{opacity:.5;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.engine-loading-title{font-size:1rem;font-weight:500;color:#ffffffb3;letter-spacing:.04em}.engine-loading-subtitle{font-size:.8rem;color:#ffffff4d;animation:subtitleFade 3s ease-in-out infinite}@keyframes subtitleFade{0%,to{opacity:.4}50%{opacity:1}}.engine-loading-spinner{width:32px;height:32px;border:2px solid rgba(255,255,255,.08);border-top-color:#ffffff80;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.engine-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease both}.engine-loading-overlay-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl) var(--space-2xl);border-radius:var(--radius-lg);background:#0f0f14eb;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 40px #00000080}.engine-loading-overlay-card .engine-loading-spinner{border-color:#ffffff1f;border-top-color:#ffffffb3}.engine-loading-overlay-text{font-size:.9rem;color:#ffffffbf;letter-spacing:.02em}.engine-loading-quote{font-size:.82rem;color:#ffffff8c;letter-spacing:.5px;margin-top:6px;animation:fadeIn .6s ease both}.engine-stream-progress{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs)}.engine-stream-steps{display:flex;align-items:center;gap:6px}.engine-stream-step{width:8px;height:8px;border-radius:50%;flex-shrink:0}.engine-stream-step--done{background:var(--color-accent);font-size:0;line-height:0}.engine-stream-step--active{background:var(--color-accent);animation:pulse 1s ease infinite}.engine-stream-label{font-size:.78rem;color:#ffffff80;text-align:center;letter-spacing:.01em}.engine-stream-chars{opacity:.6;font-variant-numeric:tabular-nums;color:#fff6}.engine-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-lg);text-align:center}.engine-error-title{font-size:1.1rem;font-weight:600;color:var(--color-danger)}.engine-error-msg{font-size:.85rem;color:var(--color-text-secondary);max-width:400px;word-break:break-all}.engine-error-retry{margin-top:var(--space-sm);padding:8px 24px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-primary);font-size:.85rem;cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast)}.engine-error-retry:hover{border-color:#ffffff4d;background:#ffffff0d}.engine-inline-error{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:#f871711a;border:1px solid rgba(248,113,113,.2);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:.8rem;color:var(--color-danger)}.engine-inline-error button{background:none;border:none;color:var(--color-danger);font-size:1.1rem;cursor:pointer;padding:0 4px}.engine-overlay-triggers{position:fixed;bottom:100px;right:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-xs);z-index:50}.engine-overlay-trigger-btn{padding:8px 16px;background:var(--color-surface-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.8rem;cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.engine-overlay-trigger-btn:hover{background:#ffffff14;color:var(--color-text-primary)}.engine--vn .engine-overlay-triggers{bottom:260px}.engine-overlay-trigger-btn--chat{display:flex;align-items:center;gap:6px}.engine-overlay-trigger-btn--chat .chat-trigger-dot{width:6px;height:6px;border-radius:50%;background:#4ade80}.engine-overlay-trigger-btn--chat .chat-trigger-count{font-size:.7rem;opacity:.7}.engine-overlay-trigger-btn--changed{border-color:var(--color-accent);color:var(--color-text-primary);animation:overlayTriggerPulse 2s ease-in-out infinite}@keyframes overlayTriggerPulse{0%,to{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 10px var(--color-accent-glow, rgba(160,160,255,.35))}}.engine-overlay-fab{position:fixed;bottom:260px;right:12px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:auto}.engine-overlay-fab-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#080a1280;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.engine-overlay-fab-btn:active{transform:scale(.92)}.engine-overlay-fab--open .engine-overlay-fab-btn{background:#ffffff1f;color:#fffc}.engine-overlay-fab--has-badge .engine-overlay-fab-btn:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--color-accent, #8b8bff);animation:overlayTriggerPulse 2s ease-in-out infinite}.engine-overlay-fab--open .engine-overlay-fab-btn:after{display:none}.engine-overlay-fab-menu{display:flex;flex-direction:column;gap:4px;align-items:stretch;animation:fabMenuIn .15s ease both;position:absolute;bottom:44px;right:0;min-width:120px}.engine-overlay-fab-menu .engine-overlay-trigger-btn{text-align:center;white-space:nowrap;padding:10px 20px}.engine-overlay-fab--standard{bottom:100px}.engine-overlay-fab--standard .engine-overlay-fab-btn{background:var(--color-surface-elevated);border-color:var(--color-border-light);color:var(--color-text-secondary)}.engine-overlay-fab--standard.engine-overlay-fab--open .engine-overlay-fab-btn{background:var(--color-surface-elevated);color:var(--color-text-primary)}@keyframes fabMenuIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.engine-save-btn{position:fixed;top:var(--space-sm);right:calc(var(--space-sm) + 44px);z-index:150;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.2);border-radius:var(--radius-sm);background:#80808026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#808080cc;font-size:1rem;cursor:pointer;transition:all var(--transition-fast);line-height:1;padding:0}.engine-save-btn:hover:not(:disabled){border-color:#80808059;color:#505050;background:#80808040}.engine-save-btn:disabled{opacity:.3;cursor:not-allowed}.engine-share-btn{position:fixed;top:var(--space-sm);right:calc(var(--space-sm) + 132px);z-index:150;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.2);border-radius:var(--radius-sm);background:#80808026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#808080cc;font-size:1rem;cursor:pointer;transition:all var(--transition-fast);line-height:1;padding:0}.engine-share-btn:hover{border-color:#80808059;color:#505050;background:#80808040}.engine-share-toast{position:fixed;top:calc(var(--space-sm) + 44px);right:var(--space-sm);z-index:200;padding:8px 16px;border-radius:var(--radius-sm);background:#22c55ee6;color:#fff;font-size:.82rem;font-weight:600;cursor:pointer;animation:shareToastIn .3s ease both}@keyframes shareToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.engine-mobile-tabs{display:flex;position:sticky;top:var(--header-height);z-index:40;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.engine-mobile-tab{flex:1;padding:10px 0;background:none;border:none;color:var(--color-text-muted);font-size:.82rem;font-family:var(--font-sans);cursor:pointer;text-align:center;position:relative;transition:color var(--transition-fast)}.engine-mobile-tab--active{color:var(--color-text-primary);font-weight:500}.engine-mobile-tab--active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:2px;background:var(--color-accent, rgba(255, 255, 255, .9));border-radius:1px}.engine-mobile-panel{padding:var(--space-md);height:calc(100vh - var(--header-height) - 41px);overflow-y:auto}@media(max-width:1024px){.engine-body,.engine--dashboard .engine-body,.engine--focus_center .engine-body{grid-template-columns:1fr;max-width:none;margin:0}.engine-body--setup{grid-template-columns:1fr;max-width:880px;margin:0 auto}.engine-sidebar{position:fixed;top:var(--header-height);bottom:0;width:var(--sidebar-width);z-index:100;box-shadow:var(--shadow-lg)}.engine-sidebar--left{left:0;transform:translate(-100%)}.engine-sidebar--left:not(.engine-sidebar--collapsed){transform:translate(0)}.engine-sidebar--right{right:0;transform:translate(100%)}.engine-sidebar--right:not(.engine-sidebar--collapsed){transform:translate(0)}.engine-sidebar--collapsed{width:0;padding:0;border:none}.engine-center,.engine--focus_center .engine-center{grid-column:1;height:calc(100vh - var(--header-height))}}@media(max-width:768px){.engine-body,.engine--dashboard .engine-body,.engine--focus_center .engine-body,.engine-body--setup{grid-template-columns:1fr;max-width:none;margin:0;padding:var(--space-sm)}.engine-center,.engine--focus_center .engine-center{grid-column:1;padding:var(--space-sm) var(--space-sm) 0}.engine-mobile-tabs~.engine-body .engine-center{height:calc(100vh - var(--header-height) - 41px)}.engine-center-panels{max-height:45vh}.engine-mobile-panel{padding:var(--space-sm)}}.setup-image-wrap{position:relative;width:100%;margin:var(--space-md) auto var(--space-lg)}.setup-image-placeholder{width:100%;aspect-ratio:16 / 9;background:#ffffff08;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.setup-image-spinner{width:28px;height:28px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.setup-style-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;padding:12px 32px;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-xl);color:#fff;font-size:1.05rem;font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .15s;white-space:nowrap}.setup-style-btn:hover:not(:disabled){background:#000000b3;border-color:var(--color-accent)}.setup-style-btn--loading{animation:pulse 1.5s ease-in-out infinite}.setup-style-btn:disabled{opacity:.5;cursor:not-allowed}.setup-complexity-label{display:block;text-align:center;font-size:.7rem;color:#ffffff73;margin:4px 0;pointer-events:none}.style-gallery-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;background:#0a0a0f;overflow-y:auto;padding:0 20px 20px;animation:fadeInUp .2s ease both}.style-gallery-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;position:sticky;top:0;background:#0a0a0f;padding:20px 0 8px;z-index:1}.style-gallery-back{background:none;border:none;color:#fff;font-size:1.3rem;cursor:pointer;padding:4px 8px}.style-gallery-title{color:#fff;font-size:1.1rem;font-weight:500}.style-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;max-width:900px;margin:0 auto}.style-gallery-card{background:#ffffff08;border:2px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;cursor:pointer;transition:border-color .15s;text-align:center}.style-gallery-card:hover{border-color:#ffffff40}.style-gallery-card--active{border-color:var(--color-accent)}.style-gallery-img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.style-gallery-label{display:block;padding:8px;color:#ddd;font-size:.85rem}@keyframes pulse{0%,to{opacity:.8}50%{opacity:.5}}.engine--style-ink_wash:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 0%,transparent 60%,rgba(0,0,0,.4) 100%),radial-gradient(ellipse at 50% 100%,transparent 60%,rgba(0,0,0,.5) 100%),repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(139,119,90,.02) 3px,rgba(139,119,90,.02) 4px)}.engine--style-ink_wash .narrative-content{font-family:var(--font-serif);line-height:2;letter-spacing:.02em}.engine--style-ink_wash .narrative-content p{text-indent:2em;margin-bottom:.6em}.engine--style-ink_wash .narrative-content blockquote{border-left:2px solid var(--color-accent);font-style:normal;opacity:.85}.engine--style-ink_wash .narrative-content hr{border-top:none;text-align:center;margin:var(--space-lg) 0;height:auto}.engine--style-ink_wash .narrative-content hr:after{content:"✦ ✦ ✦";color:var(--color-text-muted);font-size:.7rem;letter-spacing:.8em}.engine--style-ink_wash .narrative-content h1,.engine--style-ink_wash .narrative-content h2,.engine--style-ink_wash .narrative-content h3{font-family:var(--font-serif);font-weight:700;letter-spacing:.08em}.engine--style-ink_wash .narrative-content strong{font-weight:700}.engine--style-ink_wash .panel-wrapper{border-radius:2px;border:none;border-left:3px solid var(--color-accent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--glass-bg)}.engine--style-ink_wash .panel-title{font-family:var(--font-serif);letter-spacing:.12em}.engine--style-ink_wash .header-stats{border-bottom:1px solid var(--color-border);background:var(--color-surface)}.engine--style-ink_wash .action-choice-btn{border-radius:2px;border:1px solid var(--color-border-light)}.engine--style-ink_wash .action-choice-id,.engine--style-ink_wash .action-input{border-radius:2px;font-family:var(--font-serif)}.engine--style-ink_wash .action-send-btn{border-radius:2px}.engine--style-hologram:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,255,.015) 2px,rgba(0,255,255,.015) 4px);animation:hologramScan 8s linear infinite}@keyframes hologramScan{0%{background-position:0 0}to{background-position:0 200px}}.engine--style-hologram .narrative-content{font-family:var(--font-mono);font-size:.88rem;line-height:1.75;letter-spacing:.01em}.engine--style-hologram .narrative-content p{margin-bottom:1em}.engine--style-hologram .narrative-content strong{text-shadow:0 0 8px var(--color-accent-glow)}.engine--style-hologram .narrative-content em{font-style:normal;color:#e0c97f}.engine--style-hologram .narrative-content blockquote{border-left:2px solid var(--color-accent);background:#00ffff08;padding:var(--space-sm) var(--space-md);font-style:normal}.engine--style-hologram .narrative-content hr{border-top:1px dashed var(--color-accent);opacity:.3}.engine--style-hologram .narrative-content h1,.engine--style-hologram .narrative-content h2,.engine--style-hologram .narrative-content h3{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;text-shadow:0 0 12px var(--color-accent-glow)}.engine--style-hologram .panel-wrapper{border-radius:2px;border:1px solid var(--color-accent);box-shadow:0 0 12px var(--color-accent-glow),inset 0 0 12px #0000004d;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0006}.engine--style-hologram .panel-wrapper:hover{box-shadow:0 0 20px var(--color-accent-glow),inset 0 0 12px #0000004d}.engine--style-hologram .panel-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;text-shadow:0 0 6px var(--color-accent-glow)}.engine--style-hologram .header-stats{border-bottom:1px solid var(--color-accent);box-shadow:0 2px 12px var(--color-accent-glow);background:#0009}.engine--style-hologram .header-stat-label{font-family:var(--font-mono)}.engine--style-hologram .header-stat-value{font-family:var(--font-mono);text-shadow:0 0 6px var(--color-accent-glow)}.engine--style-hologram .action-choice-btn{border-radius:0;border:1px solid var(--color-accent);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);padding-left:calc(var(--space-md) + 8px);padding-right:calc(var(--space-md) + 8px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0000004d}.engine--style-hologram .action-choice-btn:hover:not(:disabled){box-shadow:0 0 16px var(--color-accent-glow)}.engine--style-hologram .action-choice-id{border-radius:0;font-family:var(--font-mono);background:#00ffff1a}.engine--style-hologram .action-input{border-radius:0;border:1px solid var(--color-accent);background:#0000004d;font-family:var(--font-mono)}.engine--style-hologram .action-input:focus{box-shadow:0 0 12px var(--color-accent-glow)}.engine--style-hologram .action-send-btn{border-radius:0;clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%)}.engine--style-parchment:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 30% 20%,rgba(180,140,80,.04) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(180,140,80,.03) 0%,transparent 50%),repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(139,119,90,.015) 4px,rgba(139,119,90,.015) 5px)}.engine--style-parchment .narrative-content{font-family:var(--font-serif);line-height:1.9;letter-spacing:.01em}.engine--style-parchment .narrative-content p:first-of-type:first-letter{font-size:2.8em;float:left;line-height:.85;margin-right:.08em;margin-top:.05em;font-weight:700;color:var(--color-accent);font-family:var(--font-serif)}.engine--style-parchment .narrative-content p{margin-bottom:.9em}.engine--style-parchment .narrative-content strong{font-weight:700}.engine--style-parchment .narrative-content blockquote{border-left:3px double var(--color-accent);font-style:italic;padding:var(--space-sm) var(--space-md)}.engine--style-parchment .narrative-content hr{border-top:none;text-align:center;margin:var(--space-xl) 0;height:auto}.engine--style-parchment .narrative-content hr:after{content:"— ⚜ —";color:var(--color-text-muted);font-size:.85rem;letter-spacing:.3em}.engine--style-parchment .narrative-content h1,.engine--style-parchment .narrative-content h2,.engine--style-parchment .narrative-content h3{font-family:var(--font-serif);font-weight:700;letter-spacing:.05em}.engine--style-parchment .panel-wrapper{border-radius:3px;border:3px double var(--color-border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--glass-bg)}.engine--style-parchment .panel-wrapper:hover{border-color:var(--color-accent-dim)}.engine--style-parchment .panel-title{font-family:var(--font-serif);letter-spacing:.08em}.engine--style-parchment .header-stats{border-bottom:2px solid var(--color-border-light)}.engine--style-parchment .action-choice-btn{border-radius:3px;border:1px solid var(--color-border-light)}.engine--style-parchment .action-choice-id{border-radius:3px;font-family:var(--font-serif);font-weight:700}.engine--style-parchment .action-input{border-radius:3px;font-family:var(--font-serif)}.engine--style-parchment .action-send-btn{border-radius:3px}.engine--style-neon_noir:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 30%,transparent 20%,rgba(0,0,0,.7) 80%),radial-gradient(ellipse at 50% 50%,transparent 30%,rgba(0,0,0,.5) 100%)}.engine--style-neon_noir .narrative-content{font-family:var(--font-sans);line-height:1.6;letter-spacing:.005em}.engine--style-neon_noir .narrative-content p{margin-bottom:.7em}.engine--style-neon_noir .narrative-content strong{text-shadow:0 0 10px var(--color-accent-glow)}.engine--style-neon_noir .narrative-content em{font-style:normal;color:#e0c97f}.engine--style-neon_noir .narrative-content blockquote{border-left:2px solid var(--color-accent);background:#0000004d;padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.engine--style-neon_noir .narrative-content hr{border-top:1px solid var(--color-border);opacity:.3}.engine--style-neon_noir .narrative-content h1,.engine--style-neon_noir .narrative-content h2,.engine--style-neon_noir .narrative-content h3{font-weight:700;text-shadow:0 0 16px var(--color-accent-glow)}.engine--style-neon_noir .panel-wrapper{border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.04);background:#00000080;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0006}.engine--style-neon_noir .panel-wrapper:hover{border-color:var(--color-accent);box-shadow:0 4px 24px #0006,0 0 12px var(--color-accent-glow)}.engine--style-neon_noir .panel-title{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.engine--style-neon_noir .header-stats{background:#000000b3;border-bottom:1px solid rgba(255,255,255,.04)}.engine--style-neon_noir .action-choice-btn{border:1px solid rgba(255,255,255,.06);background:#0006;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.engine--style-neon_noir .action-choice-btn:hover:not(:disabled){border-color:var(--color-accent);box-shadow:0 0 16px var(--color-accent-glow);background:#0009}.engine--style-neon_noir .action-choice-id{background:#ffffff0a}.engine--style-neon_noir .action-input{background:#0006;border:1px solid rgba(255,255,255,.06)}.engine--style-neon_noir .action-input:focus{border-color:var(--color-accent);box-shadow:0 0 8px var(--color-accent-glow)}.engine--style-neon_noir .action-send-btn{box-shadow:0 0 8px var(--color-accent-glow)}.engine--style-watercolor:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 20% 20%,rgba(255,182,193,.06) 0%,transparent 40%),radial-gradient(circle at 80% 30%,rgba(173,216,230,.06) 0%,transparent 40%),radial-gradient(circle at 40% 80%,rgba(221,160,221,.05) 0%,transparent 40%),radial-gradient(circle at 70% 70%,rgba(255,218,185,.05) 0%,transparent 35%)}.engine--style-watercolor .narrative-content{font-family:var(--font-sans);line-height:2;letter-spacing:.01em;font-size:.95rem}.engine--style-watercolor .narrative-content p{margin-bottom:1.1em}.engine--style-watercolor .narrative-content strong{font-weight:600}.engine--style-watercolor .narrative-content em{font-style:normal;color:#e0c97f}.engine--style-watercolor .narrative-content blockquote{border-left:3px solid var(--color-accent-dim);background:#ffffff05;padding:var(--space-md);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic}.engine--style-watercolor .narrative-content hr{border-top:none;text-align:center;margin:var(--space-xl) 0;height:auto}.engine--style-watercolor .narrative-content hr:after{content:"· · ·";color:var(--color-text-muted);font-size:1rem;letter-spacing:.5em}.engine--style-watercolor .narrative-content h1,.engine--style-watercolor .narrative-content h2,.engine--style-watercolor .narrative-content h3{font-weight:600;letter-spacing:.02em}.engine--style-watercolor .panel-wrapper{border-radius:16px;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--glass-bg);box-shadow:0 8px 32px #0000001f}.engine--style-watercolor .panel-wrapper:hover{box-shadow:0 12px 40px #00000029}.engine--style-watercolor .panel-title{font-weight:500;letter-spacing:.04em}.engine--style-watercolor .header-stats{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.engine--style-watercolor .action-choice-btn{border-radius:999px;padding:12px var(--space-lg);border:1px solid var(--color-border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.engine--style-watercolor .action-choice-btn:hover:not(:disabled){box-shadow:0 4px 20px #0000001a}.engine--style-watercolor .action-choice-id{border-radius:999px;min-width:28px;height:28px}.engine--style-watercolor .action-input{border-radius:999px;padding:12px var(--space-lg)}.engine--style-watercolor .action-send-btn{border-radius:999px;width:44px;height:44px}.engine--style-terminal:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent,transparent 1px,rgba(0,255,0,.02) 1px,rgba(0,255,0,.02) 2px),radial-gradient(ellipse at 50% 50%,transparent 50%,rgba(0,0,0,.4) 100%)}.engine--style-terminal .narrative-content{font-family:var(--font-mono);font-size:.86rem;line-height:1.7;letter-spacing:.02em}.engine--style-terminal .narrative-content p{margin-bottom:.8em}.engine--style-terminal .narrative-content p:before{content:"> ";color:var(--color-accent);opacity:.6}.engine--style-terminal .narrative-content strong{text-transform:uppercase;letter-spacing:.05em}.engine--style-terminal .narrative-content em{font-style:normal;color:#e0c97f}.engine--style-terminal .narrative-content blockquote{border-left:2px dotted var(--color-accent);font-style:normal;padding-left:var(--space-md);opacity:.8}.engine--style-terminal .narrative-content hr{border-top:1px dashed var(--color-accent);opacity:.3}.engine--style-terminal .narrative-content h1,.engine--style-terminal .narrative-content h2,.engine--style-terminal .narrative-content h3{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px dashed var(--color-border-light);padding-bottom:var(--space-xs)}.engine--style-terminal .panel-wrapper{border-radius:0;border:1px dotted var(--color-border-light);-webkit-backdrop-filter:none;backdrop-filter:none;background:#0006}.engine--style-terminal .panel-wrapper:hover{border-color:var(--color-accent)}.engine--style-terminal .panel-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}.engine--style-terminal .panel-title:before{content:"> ";color:var(--color-accent);opacity:.6}.engine--style-terminal .header-stats{background:#0009;border-bottom:1px dotted var(--color-border-light)}.engine--style-terminal .header-stat-label{font-family:var(--font-mono);text-transform:uppercase}.engine--style-terminal .header-stat-value{font-family:var(--font-mono)}.engine--style-terminal .action-choice-btn{border-radius:0;border:1px dotted var(--color-border-light);font-family:var(--font-mono);background:#0000004d}.engine--style-terminal .action-choice-btn:hover:not(:disabled){border-color:var(--color-accent);border-style:solid;background:#00000080}.engine--style-terminal .action-choice-id{border-radius:0;font-family:var(--font-mono);background:transparent;font-weight:400}.engine--style-terminal .action-choice-id:before{content:"[";color:var(--color-accent)}.engine--style-terminal .action-choice-id:after{content:"]";color:var(--color-accent)}.engine--style-terminal .action-input{border-radius:0;border:1px dotted var(--color-border-light);font-family:var(--font-mono);background:#0000004d}.engine--style-terminal .action-input:focus{border-style:solid;border-color:var(--color-accent)}.engine--style-terminal .action-send-btn{border-radius:0}[data-theme-mode=light] .engine--style-hologram .header-stats,[data-theme-mode=light] .engine--style-neon_noir .header-stats,[data-theme-mode=light] .engine--style-terminal .header-stats,[data-theme-mode=light] .engine--style-hologram .panel-wrapper,[data-theme-mode=light] .engine--style-neon_noir .panel-wrapper,[data-theme-mode=light] .engine--style-terminal .panel-wrapper,[data-theme-mode=light] .engine--style-hologram .action-choice-btn,[data-theme-mode=light] .engine--style-neon_noir .action-choice-btn,[data-theme-mode=light] .engine--style-terminal .action-choice-btn,[data-theme-mode=light] .engine--style-hologram .action-input,[data-theme-mode=light] .engine--style-neon_noir .action-input,[data-theme-mode=light] .engine--style-terminal .action-input{--color-text-primary: #e8e6e3;--color-text-secondary: rgba(232, 230, 227, .6);--color-text-muted: rgba(232, 230, 227, .35);--color-border: rgba(255, 255, 255, .06);--color-border-light: rgba(255, 255, 255, .1);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #0a0a0c;--color-surface: #141418;--color-surface-elevated: #1c1c22;--color-border: rgba(255, 255, 255, .06);--color-border-light: rgba(255, 255, 255, .1);--color-text-primary: #e8e6e3;--color-text-secondary: rgba(232, 230, 227, .6);--color-text-muted: rgba(232, 230, 227, .35);--color-accent: rgba(255, 255, 255, .9);--color-accent-dim: rgba(255, 255, 255, .08);--color-accent-glow: rgba(255, 255, 255, .15);--color-success: #34d399;--color-warning: #fbbf24;--color-danger: #f87171;--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-blur: 20px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Noto Serif SC", "Songti SC", serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-body: var(--font-sans);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 14px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.5);--shadow-glow: 0 0 20px var(--color-accent-glow);--header-height: 52px;--sidebar-width: 320px}html{font-size:17px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}[data-theme-mode=light] ::-webkit-scrollbar-thumb{background:#00000026}[data-theme-mode=light] ::-webkit-scrollbar-thumb:hover{background:#00000040}.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes overlayIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .4s ease both}@media(max-width:768px){:root{--header-height: 44px;--sidebar-width: 85vw;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px}}.st-page{min-height:100vh;background:#0a0a0f;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:24px}.st-header{max-width:1200px;margin:0 auto 28px;text-align:center}.st-header h1{font-size:1.6rem;font-weight:600;margin:0 0 8px;color:#fff}.st-subject-row{margin:0 0 16px}.st-subject-input{width:100%;max-width:600px;padding:10px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#e0e0e0;font-size:.95rem;outline:none;transition:border-color .15s}.st-subject-input:focus{border-color:#6c8aff}.st-subject-input:disabled{opacity:.5;cursor:not-allowed}.st-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.st-model-pick{display:flex;gap:6px}.st-model-btn{padding:6px 18px;border:1px solid rgba(255,255,255,.15);border-radius:20px;background:transparent;color:#aaa;font-size:.82rem;cursor:pointer;transition:all .15s}.st-model-btn:hover{border-color:#ffffff4d;color:#fff}.st-model-btn--active{border-color:#6c8aff;background:#6c8aff1f;color:#6c8aff}.st-model-btn:disabled{opacity:.5;cursor:not-allowed}.st-gen-btn{padding:8px 28px;border:none;border-radius:20px;background:linear-gradient(135deg,#6c8aff,#a855f7);color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:opacity .15s}.st-gen-btn:hover{opacity:.85}.st-gen-btn:disabled{opacity:.5;cursor:not-allowed}.st-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.st-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .15s}.st-card:hover{border-color:#fff3}.st-card-img{aspect-ratio:1 / 1;background:#111;display:flex;align-items:center;justify-content:center;overflow:hidden}.st-card-img img{width:100%;height:100%;object-fit:cover}.st-loading{display:flex;flex-direction:column;align-items:center;gap:10px;color:#666;font-size:.8rem}.st-spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.1);border-top-color:#6c8aff;border-radius:50%;animation:st-spin .8s linear infinite}@keyframes st-spin{to{transform:rotate(360deg)}}.st-error{color:#f87171;font-size:.75rem;padding:12px;text-align:center;word-break:break-word}.st-empty{color:#444;font-size:.8rem}.st-card-info{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.st-card-label{font-size:.88rem;font-weight:500;color:#ddd}.st-prompt-toggle{padding:3px 10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:transparent;color:#888;font-size:.7rem;cursor:pointer;flex-shrink:0}.st-prompt-toggle:hover{color:#ccc;border-color:#ffffff40}.st-prompt-text{padding:0 12px 10px;font-size:.7rem;color:#666;line-height:1.5;word-break:break-word}@media(max-width:600px){.st-page{padding:12px}.st-grid{grid-template-columns:repeat(2,1fr);gap:10px}}.mx-test{display:flex;flex-direction:column;height:100vh;background:#0a0a12;color:#d0d0d8;font-family:system-ui,-apple-system,sans-serif;overflow:hidden}.mx-header{display:flex;align-items:center;gap:16px;padding:8px 16px;background:#101018;border-bottom:1px solid #1e1e2a;flex-shrink:0}.mx-header h1{font-size:1rem;margin:0;white-space:nowrap;color:#e0e0f0}.mx-status{flex:1;font-size:.85rem;color:#7878a0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mx-error{color:#f55;font-size:.85rem;white-space:nowrap;flex-shrink:0}.mx-blocks{font-size:.85rem;color:#6c6;white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.mx-body{display:flex;flex:1;overflow:hidden}.mx-side{width:260px;padding:12px;background:#101018;border-right:1px solid #1e1e2a;overflow-y:auto;display:flex;flex-direction:column;gap:6px;flex-shrink:0}.mx-side label{font-size:.8rem;color:#888;margin-top:4px}.mx-side textarea{width:100%;box-sizing:border-box;background:#1a1a24;color:#d0d0d8;border:1px solid #2a2a3a;border-radius:4px;padding:6px 8px;font-size:.8rem;resize:vertical;font-family:inherit}.mx-side textarea:focus{outline:none;border-color:#48c}.mx-side input[type=range]{width:100%;accent-color:#4488cc}.mx-check{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.8rem;color:#999}.mx-btns{display:flex;flex-direction:column;gap:6px;margin-top:8px}.mx-side button{padding:8px 12px;border:1px solid #2a2a3a;border-radius:4px;background:#1a1a24;color:#d0d0d8;cursor:pointer;font-size:.85rem;transition:background .15s}.mx-side button:hover:not(:disabled){background:#252530}.mx-side button:disabled{opacity:.4;cursor:default}.mx-primary{background:#1a4a8a!important;border-color:#2a6aba!important;color:#fff!important}.mx-primary:hover:not(:disabled){background:#2a5a9a!important}.mx-danger{border-color:#733!important;color:#f88!important}.mx-danger:hover:not(:disabled){background:#2a1515!important}.mx-keys-info{margin-top:auto;padding-top:12px;border-top:1px solid #1e1e2a}.mx-keys-info h3{font-size:.85rem;margin:0 0 8px;color:#aaa}.mx-keys-info p{font-size:.78rem;margin:4px 0;color:#777}.mx-keys-info kbd{display:inline-block;background:#1a1a24;padding:1px 5px;border-radius:3px;font-size:.72rem;border:1px solid #333;font-family:inherit;color:#bbb}.mx-viewport{flex:1;display:flex;align-items:center;justify-content:center;position:relative;background:#000;overflow:hidden;transition:background .8s ease}.mx-viewport--crt{background:radial-gradient(ellipse at 50% 85%,#1e1a20,#0e0c12 40%,#060510)}.mx-monitor{display:flex;flex-direction:column;align-items:center}.mx-bezel{position:relative;padding:0;background:transparent;border-radius:0;box-shadow:none;transition:padding .7s ease-out,background .7s ease-out,border-radius .7s ease-out,box-shadow .7s ease-out}.mx-monitor.crt .mx-bezel{padding:32px 34px 0;background:linear-gradient(175deg,#6e6e78,#5c5c64 15%,#504f56,#46464e 65%,#3c3c42 85%,#333338);border-radius:22px;box-shadow:inset 0 2px #ffffff2e,inset 0 -2px #00000059,inset 2px 0 #ffffff0f,inset -2px 0 #00000026,0 6px 20px #00000080,0 20px 60px #0000008c,0 2px 4px #0000004d}.mx-monitor.crt .mx-bezel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;background:radial-gradient(ellipse at 50% 35%,rgba(100,150,220,.07) 0%,transparent 55%),repeating-linear-gradient(0deg,transparent 0px,transparent 3px,rgba(0,0,0,.02) 3px,rgba(0,0,0,.02) 4px);pointer-events:none;z-index:0}.mx-monitor.crt .mx-bezel:after{content:"";position:absolute;top:4px;left:30px;right:30px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.12) 30%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.12) 70%,transparent 100%);border-radius:1px;pointer-events:none;z-index:1}.mx-inner-bezel{position:relative;z-index:1;padding:0;border-radius:0;box-shadow:none;transition:padding .7s ease-out,border-radius .7s ease-out,box-shadow .7s ease-out,background .7s ease-out}.mx-monitor.crt .mx-inner-bezel{padding:6px;border-radius:10px;background:linear-gradient(180deg,#222228,#2e2e34,#1a1a20);box-shadow:inset 0 2px 4px #000000b3,inset 0 -1px 2px #ffffff0a,inset 2px 0 3px #0006,inset -2px 0 3px #0006,0 1px #ffffff14}.mx-screen{position:relative;overflow:hidden;line-height:0;border-radius:0;box-shadow:none;transition:border-radius .7s ease-out,box-shadow .7s ease-out}.mx-monitor.crt .mx-screen{border-radius:8px/10px;box-shadow:inset 0 0 40px #000000b3,inset 0 0 8px #000000e6,0 0 15px #5078b40f}.mx-screen canvas{display:block;max-width:100%;max-height:100%}.mx-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,rgba(0,0,0,.08) 2px,rgba(0,0,0,.08) 4px);pointer-events:none;z-index:2;opacity:0;transition:opacity .8s ease .3s}.mx-monitor.crt .mx-screen:after{opacity:1}.mx-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 25% 20%,rgba(255,255,255,.07) 0%,transparent 40%),radial-gradient(ellipse at 75% 15%,rgba(255,255,255,.03) 0%,transparent 30%),radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.35) 75%,rgba(0,0,0,.65) 100%);pointer-events:none;z-index:3;opacity:0;transition:opacity .8s ease .3s}.mx-monitor.crt .mx-screen:before{opacity:1}.mx-monitor.crt .mx-screen canvas{animation:crtFlicker 4s infinite}@keyframes crtFlicker{0%,to{opacity:1;filter:brightness(1)}88%{opacity:1;filter:brightness(1)}89%{opacity:.97;filter:brightness(.98)}90%{opacity:1;filter:brightness(1)}95%{opacity:1;filter:brightness(1)}95.5%{opacity:.98;filter:brightness(.99)}96%{opacity:1;filter:brightness(1)}}.mx-base{position:relative;z-index:1;display:flex;align-items:center;gap:0;padding:0;opacity:0;max-height:0;overflow:hidden;transition:opacity .5s ease .2s,max-height .5s ease .2s,padding .5s ease .2s}.mx-monitor.crt .mx-base{padding:18px 10px 14px;opacity:1;max-height:80px}.mx-speaker{display:flex;flex-direction:column;gap:3px;padding:4px 0;margin-right:auto}.mx-speaker-slit{width:40px;height:1.5px;background:linear-gradient(90deg,transparent 0%,#222 10%,#2a2a30 30%,#2a2a30 70%,#222 90%,transparent 100%);border-radius:1px;box-shadow:0 1px #ffffff08}.mx-base-ctrls{display:flex;align-items:flex-start;gap:14px;margin:0 16px}.mx-ctrl-group{display:flex;flex-direction:column;align-items:center;gap:4px}.mx-base-label{font-size:.42rem;font-family:Arial Narrow,Arial,sans-serif;font-weight:600;letter-spacing:1.5px;color:#555;text-transform:uppercase;-webkit-user-select:none;user-select:none}.mx-knob{width:20px;height:20px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#666,#444 30%,#2a2a2a 70%,#1a1a1a);border:1.5px solid #111;box-shadow:0 2px 4px #00000080,0 1px 1px #0000004d,inset 0 1px 1px #ffffff14;position:relative}.mx-knob:after{content:"";position:absolute;top:3px;left:50%;width:1.5px;height:5px;background:#888;border-radius:1px;transform:translate(-50%)}.mx-knob--push{width:18px;height:18px;border-radius:3px;background:linear-gradient(180deg,#555,#3a3a3a,#2a2a2a);box-shadow:0 2px 3px #00000080,inset 0 1px 1px #ffffff1a,inset 0 -1px 1px #0000004d}.mx-knob--push:after{display:none}.mx-led{width:8px;height:8px;border-radius:50%;background:#2a2a2a;border:1px solid #1a1a1a;box-shadow:inset 0 1px 2px #00000080;transition:background .5s,box-shadow .5s}.mx-monitor.crt .mx-led{background:radial-gradient(circle at 40% 35%,#5f5,#2a2);border-color:#191;box-shadow:0 0 4px #32dc3299,0 0 10px #32dc324d,0 0 20px #32dc321a,inset 0 1px 1px #ffffff26}.mx-model-plate{display:flex;flex-direction:column;align-items:center;margin-left:auto;padding:4px 10px 3px;background:linear-gradient(180deg,#8a8a90,#7a7a82 40%,#6a6a72);border-radius:3px;border:1px solid #555;box-shadow:inset 0 1px #fff3,inset 0 -1px #0003,0 1px 2px #0000004d}.mx-model-label{font-size:.5rem;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;letter-spacing:2px;color:#1a1a20;text-transform:uppercase;line-height:1.3}.mx-model-sub{font-size:.4rem;font-family:Arial Narrow,Arial,sans-serif;font-weight:600;letter-spacing:3px;color:#333;text-transform:uppercase;line-height:1.2}.mx-foot{display:flex;flex-direction:column;align-items:center;opacity:0;max-height:0;overflow:hidden;transition:opacity .5s ease .3s,max-height .5s ease .3s}.mx-monitor.crt .mx-foot{opacity:1;max-height:60px}.mx-foot-neck{width:50px;height:18px;background:linear-gradient(90deg,#3a3a40,#50505a 30%,#56565e,#50505a 70%,#3a3a40);border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px #0000004d}.mx-foot-base{width:120px;height:10px;background:linear-gradient(180deg,#52525a,#44444c,#3a3a42);border-radius:0 0 6px 6px;box-shadow:inset 0 1px #ffffff14,0 3px 8px #0006,0 1px 2px #0000004d}.mx-placeholder{color:#444;font-size:1.1rem;text-align:center;padding:20px;position:absolute}.mx-spinner-wrap{position:absolute;top:16px;right:16px}.mx-spinner{width:24px;height:24px;border:2.5px solid #333;border-top-color:#6af;border-radius:50%;animation:mxSpin .7s linear infinite}@keyframes mxSpin{to{transform:rotate(360deg)}}.mx-dpad{position:absolute;bottom:24px;right:24px;display:grid;grid-template-areas:". top ." "left . right" ". bottom .";gap:3px;opacity:.5;transition:opacity .2s;pointer-events:none}.mx-dpad:has(.on){opacity:.85}.mx-dk{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:4px;font-size:.7rem;font-weight:600;color:#666;transition:all .1s}.mx-dk.top{grid-area:top}.mx-dk.left{grid-area:left}.mx-dk.bottom{grid-area:bottom}.mx-dk.right{grid-area:right}.mx-dk.on{background:#64aaff40;border-color:#64aaff80;color:#8cf;box-shadow:0 0 8px #64aaff33}
