:root{--bg:#14151c;--panel:#1d1f2a;--panel-2:#262936;--border:#343748;--text:#d8dae6;--text-dim:#9aa0b4;--text-h:#f3f4fb;--accent:#c084fc;--accent-2:#8b5cf6;--damage:#f87171;--judgment:#60a5fa;--gm:#fbbf24;--ok:#34d399;--danger:#ef4444;--radius:10px;--sans:system-ui, "Hiragino Sans", "Noto Sans JP", "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", Consolas, monospace;font-family:var(--sans);color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}[data-theme=forest]{--bg:#121712;--panel:#1a221b;--panel-2:#232f26;--border:#344135;--text:#d7e0d8;--text-dim:#93a397;--text-h:#eef4ef;--accent:#4ade80;--accent-2:#16a34a;--damage:#f87171;--judgment:#38bdf8;--gm:#fbbf24;--ok:#34d399;--danger:#ef4444}[data-theme=ember]{--bg:#1a1410;--panel:#241d16;--panel-2:#31281e;--border:#45392c;--text:#e8ddcf;--text-dim:#ab9d8a;--text-h:#f7efe2;--accent:#fb923c;--accent-2:#ea580c;--damage:#f87171;--judgment:#60a5fa;--gm:#facc15;--ok:#34d399;--danger:#ef4444}[data-theme=rose]{--bg:#1a121a;--panel:#241a26;--panel-2:#312334;--border:#463748;--text:#e8dae6;--text-dim:#ab95a9;--text-h:#f7eef5;--accent:#f472b6;--accent-2:#db2777;--damage:#fb7185;--judgment:#60a5fa;--gm:#fbbf24;--ok:#34d399;--danger:#ef4444}[data-theme=daylight]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f3f8;--panel:#fff;--panel-2:#e7eaf2;--border:#cfd4e1;--text:#2f3342;--text-dim:#677087;--text-h:#161922;--accent:#4f46e5;--accent-2:#4338ca;--damage:#dc2626;--judgment:#2563eb;--gm:#f59e0b;--ok:#059669;--danger:#dc2626}[data-theme=parchment]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2ebdc;--panel:#faf4e6;--panel-2:#e9e0cb;--border:#d4c8ad;--text:#3c3526;--text-dim:#7c7058;--text-h:#241f15;--accent:#0f766e;--accent-2:#115e59;--damage:#b91c1c;--judgment:#1d4ed8;--gm:#d97706;--ok:#047857;--danger:#b91c1c}*{box-sizing:border-box}body{min-height:100svh;margin:0}h1,h2,h3{color:var(--text-h);margin:0;font-weight:600}p{margin:0}button{cursor:pointer;border:1px solid var(--border);background:var(--panel-2);color:var(--text);border-radius:8px;padding:8px 14px;font-family:inherit;font-size:.95rem;transition:filter .12s,background .12s}button:hover:not(:disabled){filter:brightness(1.15)}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:.95rem}textarea{resize:vertical;width:100%;line-height:1.4}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}code{font-family:var(--mono)}.app{border-inline:1px solid var(--border);flex-direction:column;max-width:900px;height:100svh;margin:0 auto;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:10px 12px;display:flex}.statusbar{flex-wrap:wrap;flex:1;align-items:baseline;gap:6px 14px;min-width:0;display:flex}.stat{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:baseline;gap:5px;min-width:0;max-width:100%;margin:-4px -6px;padding:4px 6px;font-family:inherit;font-size:.9rem;display:flex}.stat:hover{background:var(--bg)}.stat-key{color:var(--text-dim);flex-shrink:0;font-size:.7rem}.stat-value{min-width:0;color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-weight:600;overflow:hidden}.stat-players{color:var(--text-dim);flex-shrink:0;font-size:.85rem}.lang-toggle{background:var(--bg);border:1px solid var(--border);border-radius:10px;gap:4px;padding:3px;display:flex}.lang-btn{background:0 0;border:none;padding:6px 12px}.lang-btn.active{background:var(--accent-2);color:#fff}.theme-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.theme-option{border-radius:8px;flex-direction:column;gap:4px;min-width:0;padding:5px;display:flex}.theme-option.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-swatch{border:1px solid var(--border);background:var(--bg);border-radius:5px;justify-content:center;align-items:center;gap:5px;height:30px;display:flex}.theme-swatch-bar{background:var(--panel-2);border-radius:3px;width:16px;height:14px}.theme-swatch-dot{background:var(--accent);border-radius:50%;width:12px;height:12px}.theme-name{white-space:nowrap;color:var(--text-dim);text-align:center;font-size:.62rem}.theme-option.active .theme-name{color:var(--text-h)}.app-main{flex:1;min-height:0;display:flex}.app-main .activity{border:none;border-radius:0;flex-direction:column;flex:1;min-height:0;display:flex}.app-main .feed{flex:1;min-height:0;max-height:none}.app-banner{z-index:60;box-sizing:border-box;color:#fee2e2;background:#7f1d1d;border-bottom:1px solid #ef444480;justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:900px;padding:10px 14px;font-size:.85rem;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000080}.app-banner.reconnecting{color:#fde68a;background:#78350f;border-bottom-color:#f59e0b80}.dock{border-top:1px solid var(--border);background:var(--panel);padding:4px;padding-bottom:max(4px, env(safe-area-inset-bottom));flex-shrink:0;display:flex}.dock-btn{color:var(--text-dim);background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 4px;display:flex}.dock-btn.active{color:var(--accent);background:var(--accent-bg,#c084fc1f)}.dock-icon{font-size:1.25rem;line-height:1}.dock-label{font-size:.72rem;font-weight:600}.sheet-layer{z-index:30;position:fixed;inset:0}.sheet-backdrop{background:#0000008c;position:absolute;inset:0}.sheet{background:var(--panel);border-top:1px solid var(--border);border-radius:16px 16px 0 0;flex-direction:column;max-height:88svh;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #00000080}.sheet-close{z-index:1;background:var(--panel-2);border-radius:8px;width:34px;height:34px;position:absolute;top:8px;right:8px}.icon-x{justify-content:center;align-items:center;display:inline-flex}.x-icon{flex-shrink:0;display:block}.app-banner .icon-x{color:inherit}.sheet-body{padding:4px;overflow-y:auto}.sheet-body .panel{border:none;border-radius:0}@media (width>=721px){.sheet{border:1px solid var(--border);border-radius:14px;width:440px;max-width:92vw;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.settings-group,.settings-about{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.settings-group h3,.settings-about h3{color:var(--text-dim);margin-bottom:6px;font-size:.8rem}.settings-group>:last-child{margin-bottom:0}.about-title{color:var(--text-h);font-weight:600}.about-line{color:var(--text-dim);font-size:.8rem}.about-line a{color:var(--accent)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.panel h2{margin-bottom:12px;font-size:1.05rem}.panel-icon{margin-right:8px}.panel h3{color:var(--text-dim);margin-bottom:6px;font-size:.9rem}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 10px;margin-bottom:12px;display:flex}.panel-head h2{margin-bottom:0}.field{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.field span,.setting-row>span{color:var(--text-dim);font-size:.8rem}.field input,.field select{width:100%}.hint{color:var(--text-dim);font-size:.85rem}.primary{background:var(--accent-2);border-color:var(--accent-2);color:#fff;font-weight:600}.danger{border-color:var(--danger);color:var(--danger)}.big{padding:12px 18px;font-size:1.05rem}.link{color:var(--accent);background:0 0;border:none;padding:2px 6px}.link.danger{color:var(--danger)}.banner{border-radius:8px;justify-content:space-between;gap:8px;margin-bottom:10px;padding:8px 10px;font-size:.85rem;display:flex}.banner.error{color:#fca5a5;background:#ef444426}.room-setup,.room-active{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.upper{text-transform:uppercase}.room-setup-buttons{gap:6px;display:flex}.room-setup-buttons button{flex:1}.room-code-edit{gap:6px;display:flex}.room-code-edit input{flex:1;min-width:0}.room-code-edit button{flex-shrink:0}.room-code-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-code-label{color:var(--text-dim);font-size:.8rem}.room-code{letter-spacing:2px;background:var(--panel-2);color:var(--accent);border-radius:6px;padding:4px 10px;font-size:1.15rem}.players ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.players li{background:var(--panel-2);border-radius:6px;flex-direction:column;gap:3px;padding:6px 10px;font-size:.9rem;display:flex}.player-row{width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}button.player-row{cursor:pointer}.player-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.player-caret{background:var(--bg);width:22px;height:22px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;line-height:1;transition:transform .15s;display:flex}.player-caret.open{transform:rotate(90deg)}.players-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.expand-all{flex-shrink:0;font-size:.8rem}.player-detail{flex-direction:column;gap:3px;padding:6px 2px 2px;font-size:.82rem;display:flex}.player-detail p{word-break:break-word}.detail-key{color:var(--text-dim);margin-right:6px}.detail-bg{color:var(--text-dim);white-space:pre-wrap}.players-prominent{margin-bottom:4px}.players-prominent .players-head h3{color:var(--text-h);font-size:1rem}.players-prominent li{padding:8px 10px}.players-prominent .player-row{gap:8px}.players-prominent .player-name{font-size:.95rem}.player-avatar{color:#fff;text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;font-weight:700;display:flex;overflow:hidden}.player-avatar img{object-fit:cover;width:100%;height:100%}.gm-section{border-top:1px solid var(--border);padding-top:8px}.gm-section>summary{cursor:pointer;color:var(--text-dim);padding:2px 0;font-size:.85rem;font-weight:600}.gm-section[open]>summary{margin-bottom:8px}.room-history{flex-direction:column;gap:10px;display:flex}.history-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.history-head-title{color:var(--text-h);margin:0;font-size:.95rem}.history-loading{text-align:center;padding:16px 0}.history-list{flex-direction:column;gap:6px;max-height:60vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.history-item{background:var(--panel-2);border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.history-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:0;display:flex}.history-row-top{align-items:center;gap:6px;display:flex}.history-name{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.history-sub{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px;font-size:.8rem;display:flex}.history-code{letter-spacing:1px;color:var(--accent);font-family:monospace}.history-delete{align-self:flex-end;font-size:.8rem}.player-card-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.player-card-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:700;overflow:hidden}.player-card-fields{flex-direction:column;gap:8px;margin:0 0 12px;display:flex}.player-card-fields div{flex-direction:column;gap:2px;display:flex}.player-card-fields dt{color:var(--text-dim);font-size:.72rem}.player-card-fields dd{word-break:break-word;margin:0}.player-card-bg{white-space:pre-wrap;word-break:break-word;background:var(--panel-2);border-radius:8px;padding:10px 12px;font-size:.9rem}.badge{border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:700}.badge.gm{background:var(--gm);color:#1a1500}.badge.you{background:var(--accent-2);color:#fff}.dice-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dice-summary{font-family:var(--mono);color:var(--accent);text-align:center;background:var(--panel-2);border-radius:8px;margin:10px 0;padding:8px;font-size:1.05rem}.checkbox{cursor:pointer;align-items:center;gap:8px;margin-bottom:10px;font-size:.9rem;display:flex}.checkbox input{width:16px;height:16px}.setting-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-bottom:10px;display:flex}.setting-row>span{white-space:nowrap}.setting-row input[type=text]{flex:1;min-width:0}label.setting-row{cursor:pointer}.toggle{appearance:none;background:var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;width:40px;height:24px;margin:0;transition:background .15s;position:relative}.toggle:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000059}.toggle:checked{background:var(--accent-2)}.toggle:checked:before{transform:translate(16px)}.toggle:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.dice-actions{gap:8px;display:flex}.dice-actions .primary{flex:1}.pattern-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pattern-list li{background:var(--panel-2);border-radius:8px;flex-direction:column;gap:8px;padding:8px 10px;display:flex}.pattern-info{flex-direction:column;min-width:0;display:flex}.pattern-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.pattern-hidden{margin-left:5px;font-size:.85em}.pattern-meta{color:var(--text-dim);font-size:.78rem;font-family:var(--mono)}.pattern-buttons{align-items:center;gap:6px;display:flex}.pattern-buttons .primary{flex:1}.pattern-reorder{gap:2px;display:flex}.move-btn{width:30px;padding:6px 0;font-size:.7rem;line-height:1}.feed-tools{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.feed-filter{background:var(--bg);border:1px solid var(--border);border-radius:8px;gap:2px;padding:2px;display:flex}.filter-btn{background:0 0;border:none;border-radius:6px;padding:3px 9px;font-size:.8rem}.filter-btn.active{background:var(--accent-2);color:#fff}.feed{flex-direction:column;gap:8px;min-height:180px;max-height:60vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.feed-empty{padding:12px 0}.feed-load-older{justify-content:center;padding:2px 0 6px;display:flex}.feed-line{color:var(--text-dim);align-items:center;gap:6px;font-size:.78rem;display:flex}.feed-line time{flex-shrink:0;margin-left:auto}.player-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.feed-name{text-overflow:ellipsis;white-space:nowrap;font-family:inherit;font-weight:700;font-size:inherit;cursor:pointer;background:0 0;border:none;max-width:60%;padding:0;overflow:hidden}.feed-name:hover{text-decoration:underline}.roll{border-left:3px solid var(--border);background:var(--panel-2);border-radius:0 8px 8px 0;padding:8px 12px}.roll.damage{border-left-color:var(--damage)}.roll.judgment{border-left-color:var(--judgment)}.roll.hidden{border-left-color:var(--gm)}.roll-text{color:var(--text-h);margin-top:3px;font-size:1.05rem;font-weight:600}.roll-detail{color:var(--text-dim);font-size:.78rem;font-family:var(--mono);margin-top:2px}.face-list{vertical-align:middle;flex-wrap:wrap;gap:2px 4px;display:inline-flex}.dice-face{vertical-align:middle;flex-shrink:0;width:1.8em;height:1.8em;overflow:visible}.feed-chat{background:var(--panel-2);border-radius:8px;padding:6px 10px}.feed-chat.own{background:color-mix(in srgb, var(--accent-2) 22%, transparent)}.feed-chat.mentioned{background:#fbbf2424;border-left:3px solid #fbbf24;padding-left:7px}.chat-text{word-break:break-word;margin-top:2px;font-size:.95rem}@keyframes chat-translating{0%,to{opacity:1}50%{opacity:.4}}.chat-text.translating{animation:1.1s ease-in-out infinite chat-translating}.chat-trans-toggle{flex-shrink:0;font-size:.72rem}.feed-system{text-align:center;justify-content:center;display:flex}.feed-system span{color:var(--text-dim);background:var(--panel-2);border-radius:999px;padding:3px 12px;font-size:.74rem}.feed-date{color:var(--text-dim);align-items:center;gap:10px;padding:2px 0;font-size:.74rem;display:flex}.feed-date:before,.feed-date:after{content:"";background:var(--border);flex:1;height:1px}.feed-roll.archived,.feed-chat.archived,.feed-system.archived{opacity:.5}.feed-chat.pending{opacity:.72;border-left:3px dashed var(--text-dim);padding-left:7px}.pending-tag{color:#fbbf24;flex-shrink:0;margin-left:auto}.activity.compact,.activity.compact .feed,.activity.compact .feed-chat,.activity.compact .feed-roll{min-width:0}.activity.compact .feed{gap:2px}.activity.compact .feed-chat,.activity.compact .feed-roll{padding:3px 9px 3px 3.7em;font-size:.82rem;display:block;position:relative}.activity.compact .feed-line{font-size:.82rem;display:contents}.activity.compact .player-dot{display:none}.activity.compact .feed-name{margin-right:.45em}.activity.compact .badge{margin-right:.4em}.activity.compact .feed-line time,.activity.compact .pending-tag{margin:0;position:absolute;top:3px;left:9px}.activity.compact .chat-text,.activity.compact .roll-text{margin:0;font-size:.82rem;display:inline}.activity.compact .chat-trans-toggle{margin-left:6px}.activity.compact .roll-detail{display:none}.activity.compact .chat-thumb img{max-width:52px;max-height:1.7em}.typing-line{min-height:1.1rem;color:var(--text-dim);margin:6px 0;font-size:.78rem;font-style:italic}.chat-compose{flex-direction:column;gap:6px;display:flex}.mention-suggest{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:2px;max-height:200px;margin:0;padding:4px;list-style:none;display:flex;overflow-y:auto}.mention-item{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:none;border-radius:7px;align-items:baseline;gap:8px;padding:7px 10px;display:flex}.mention-item.active{background:var(--accent)}.mention-handle{font-weight:700}.mention-sub{color:var(--text-dim);font-size:.78rem}.mention-item.active .mention-sub{color:inherit}.chat-input{gap:6px;display:flex}.chat-input input[type=text]{flex:1;min-width:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.attach-btn{flex-shrink:0;justify-content:center;align-items:center;width:40px;padding-inline:0;font-size:1.1rem;line-height:1;display:inline-flex}.attach-btn:disabled{opacity:.5}.attach-pending{background:var(--panel-2);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.attach-pending-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:36px;height:36px}.attach-pending-icon{flex-shrink:0;font-size:1.2rem}.attach-pending-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.85rem;overflow:hidden}.attach-pending-remove{flex-shrink:0}.chat-thumb{cursor:pointer;background:0 0;border:none;border-radius:8px;max-width:220px;margin-top:4px;padding:0;display:block}.chat-thumb img{object-fit:cover;border-radius:8px;width:100%;max-height:240px;display:block}.chat-file{background:var(--bg);color:inherit;border-radius:8px;align-items:center;gap:8px;max-width:280px;margin-top:4px;padding:8px 10px;text-decoration:none;display:flex}.chat-file-icon{flex-shrink:0;font-size:1.2rem}.chat-file-meta{flex-direction:column;min-width:0;display:flex}.chat-file-name{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;overflow:hidden}.chat-file-size{color:var(--text-dim);font-size:.74rem}.lightbox{z-index:50;cursor:zoom-out;background:#000000e6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox-img{object-fit:contain;border-radius:4px;max-width:100%;max-height:100%}.lightbox-close{background:var(--panel-2);width:40px;height:40px;color:var(--text-h);border-radius:8px;position:absolute;top:14px;right:14px}.lightbox-count{color:var(--text-h);background:var(--panel-2);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:600;position:absolute;top:16px;left:50%;transform:translate(-50%)}.lightbox-nav{background:var(--panel-2);width:44px;height:64px;color:var(--text-h);border-radius:10px;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:12px}.lightbox-nav.next{right:12px}.toast{z-index:40;border-radius:999px;max-width:90vw;padding:10px 18px;font-size:.9rem;font-weight:600;position:fixed;bottom:78px;left:50%;transform:translate(-50%);box-shadow:0 8px 20px #0006}.toast.success{background:var(--panel-2);color:var(--text-h);border:1px solid var(--ok)}.toast.error{background:var(--danger);color:#fff}.room-connecting{color:var(--accent);text-align:center;font-size:.88rem;font-weight:600;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.settings{position:relative}.icon-btn{background:var(--panel);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.settings-backdrop{z-index:20;position:fixed;inset:0}.settings-panel{z-index:21;background:var(--panel);border-left:1px solid var(--border);flex-direction:column;width:320px;max-width:86vw;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:0 12px 32px #00000080}.settings-title{margin-bottom:12px;padding-right:30px;font-size:1.05rem}.settings-body{flex:1;min-height:0;padding:16px;overflow-y:auto}@media (width>=721px) and (height>=800px){.settings-panel{border:1px solid var(--border);border-radius:var(--radius);max-height:calc(100vh - 88px);position:absolute;top:calc(100% + 8px);bottom:auto}}.char-switch{align-items:flex-end;gap:8px;margin-bottom:8px;display:flex}.char-switch .field{flex:1;margin-bottom:0}.char-switch>button{white-space:nowrap;flex-shrink:0}.char-details{flex-direction:column;gap:4px;display:flex}.char-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.char-io{margin-top:8px}.char-image-row{align-items:flex-start;gap:12px;display:flex}.char-image-thumb{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:8px;flex-shrink:0;width:72px;height:72px;padding:0;overflow:hidden}.char-image-thumb img{object-fit:cover;width:100%;height:100%;display:block}.char-image-actions{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.player-card-image{margin-top:10px}.chip-row{flex-wrap:wrap;gap:4px;display:flex}.chip-grid-5{grid-template-columns:repeat(5,1fr);display:grid}.chip-grid-2{grid-template-columns:repeat(2,1fr);display:grid}.nowrap{white-space:nowrap}.chip{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;min-width:38px;padding:7px 8px;font-size:.9rem}.chip.active{background:var(--accent-2);border-color:var(--accent-2);color:#fff;font-weight:600}.stepper{align-items:center;gap:8px;display:flex}.stepper button{background:var(--panel-2);border-radius:8px;flex-shrink:0;width:40px;height:40px;font-size:1.2rem}.stepper-value{text-align:center;font-family:var(--mono);color:var(--accent);flex:1;font-size:1.1rem;font-weight:600}.name-gate{z-index:50;background:var(--bg);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.name-gate-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:360px;max-width:100%;padding:24px}.name-gate-card h1{background:linear-gradient(90deg, var(--accent), var(--judgment));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.5rem}.name-gate-card .field{margin-top:16px}.name-gate-card .big{width:100%;margin-top:6px}.feed-clear{color:var(--text-dim);font-size:.78rem}.tutorial{z-index:60;background:#000000a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tutorial-card{background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:14px;width:360px;max-width:100%;padding:28px 24px 20px;position:relative}.tutorial-skip{position:absolute;top:10px;right:10px}.tutorial-icon{font-size:2.6rem;line-height:1}.tutorial-card h2{margin:12px 0 8px;font-size:1.2rem}.tutorial-body{color:var(--text-dim);min-height:4.8em;font-size:.92rem;line-height:1.6}.tutorial-dots{justify-content:center;gap:6px;margin:16px 0;display:flex}.tutorial-dots .dot{background:var(--border);border-radius:50%;width:7px;height:7px}.tutorial-dots .dot.active{background:var(--accent)}.tutorial-nav{gap:8px;display:flex}.tutorial-nav button{flex:1}.settings-help-btn{width:100%;margin-top:12px}
