:root{--bg: #0C0C0E;--surface: #18171B;--surface-2: #212026;--border: #2C2A30;--ink: #EFEBE6;--ink-soft: #9C968F;--accent: #FF3B4D;--accent-hover: #E22E3F;--accent-soft: #3A171C;--accent-soft-ink: #FF8A93;--placeholder: #201F24;color-scheme:dark}*{box-sizing:border-box}button,a,input,select,textarea{transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease}@media (prefers-reduced-motion: reduce){button,a,input,select,textarea,.chevron{transition:none}}body{margin:0;background:var(--bg);color:var(--ink);font-family:Pretendard Variable,Pretendard,-apple-system,Segoe UI,Apple SD Gothic Neo,Malgun Gothic,sans-serif;font-weight:400;line-height:1.6;letter-spacing:-.01em}a{color:var(--accent)}.member-name-link,.member-name-link:hover{color:var(--ink)}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}html{scroll-padding-top:calc(var(--nav-h, 0px) + 12px)}.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:24px;padding:14px max(24px,calc((100% - 932px)/2));background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;text-decoration:none}.brand-logo{height:64px;width:auto;display:block}.nav-links{display:flex;gap:18px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:14px;white-space:nowrap;flex-shrink:0}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.nav-user{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-soft);white-space:nowrap;min-width:0}.nav-user>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50vw}.app-main{flex:1;max-width:980px;width:100%;margin:0 auto;padding:32px 24px 80px}@media (max-width: 720px){.nav{flex-wrap:wrap;padding:10px 14px;gap:10px}.brand-logo{height:44px}.nav-links{order:3;flex:1 1 100%;gap:4px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-links::-webkit-scrollbar{display:none}.nav-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 6px}.nav-links a:first-child{margin-left:-6px}.nav-user{order:2;margin-left:auto;font-size:12px}.app-main{padding:20px 14px 60px}}@media (max-height: 480px) and (orientation: landscape){.nav{position:static}html{scroll-padding-top:12px}}.page-loading{padding:40px;text-align:center;color:var(--ink-soft)}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px}.center-card{max-width:380px;margin:60px auto}.center-card h2{margin-top:0}.form{display:flex;flex-direction:column;gap:14px;margin:16px 0}.form label,.form .field-group{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-soft);font-weight:500}.form input,.form select,.form textarea{font-size:16px;padding:9px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-family:inherit}.form input[type=date]{min-height:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;text-align:left}.form input::placeholder,.form textarea::placeholder{color:#8a847e}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.checkbox-label{flex-direction:row!important;align-items:center;gap:8px!important}.checkbox-label input[type=checkbox]{margin:0;width:20px;height:20px;flex:none;padding:0;border:none;background:none;accent-color:var(--accent)}.datetime-picker-row{display:flex;gap:8px;flex-wrap:wrap}.datetime-picker-row+.datetime-picker-row{margin-top:0}.datetime-picker-row input[type=date]{flex:1 1 140px;min-width:0}.datetime-picker-row select{flex:0 0 auto}.button-toggle-group{display:flex;gap:8px;flex:0 0 auto}.toggle-btn{min-height:44px;padding:10px 16px;border-radius:7px;border:1px solid var(--border);background:var(--surface-2);color:var(--ink);font-size:14px;cursor:pointer}.toggle-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.form-grid>*{min-width:0}.form-grid input[type=file]{max-width:100%;height:39px;padding-top:0;padding-bottom:0}.form-grid select{height:39px}.form-grid-full{grid-column:1 / -1}.form-grid>.hint{margin-top:-8px}@media (max-width: 640px){.form-grid{grid-template-columns:minmax(0,1fr)}.search-input{width:100%;min-width:0}}.form-actions{display:flex;gap:10px}.form-error{color:var(--accent-soft-ink);font-size:13.5px;margin:0}.form-success{color:#7fe0a8;font-size:13.5px;margin:0}.form-footnote{font-size:13.5px;color:var(--ink-soft);margin-top:18px}.form-footnote a{display:inline-block;padding:10px 6px}.btn-primary,.btn-ghost{height:34px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-family:inherit;white-space:nowrap;cursor:pointer;text-decoration:none}.btn-primary{background:#d92b3e;color:#fff;border:none;padding:0 16px;font-size:14px;font-weight:600}.btn-primary:disabled{background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--border);opacity:1;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--ink-soft);padding:0 14px;font-size:13.5px}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}@media (pointer: coarse),(max-width: 720px){.btn-primary,.btn-ghost{height:auto;min-height:44px}.row-actions{gap:10px}}@media (max-width: 720px){.session-card .row-actions>button{flex:1 1 0}}.section-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px}.section-head:has(>h2:only-child){margin-bottom:0}.empty{color:var(--ink-soft);font-size:14px}.session-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.session-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.session-cover-wrap{position:relative;margin:-18px -18px 0;width:calc(100% + 36px);height:200px;overflow:hidden;background-color:var(--placeholder);background-size:cover;background-position:center}.session-cover-wrap:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background-image:inherit;background-size:cover;background-position:center;filter:blur(20px) brightness(.55);transform:scale(1.1)}.session-cover{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain}.session-cover-empty{background:var(--placeholder)}.session-card-head{display:flex;justify-content:space-between;align-items:center}@media (min-width: 721px){.session-card>:last-child{margin-top:auto}}.session-card h3{margin:0;font-size:17px}.session-count{font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.badge{display:inline-block;font-size:11.5px;padding:2px 9px;border-radius:999px;border:1px solid var(--border);color:var(--ink-soft)}.badge-accent{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent-soft-ink)}.manual-badge{font-size:10.5px;font-weight:400;text-transform:none}.push-status{font-size:12px;font-weight:600;white-space:nowrap}.push-status.is-on{color:#6fe0a0}.push-status.is-off{color:var(--accent-soft-ink)}.session-meta{margin:0;font-size:13px}.session-meta div{display:flex;gap:8px;padding:1px 0}.session-meta dt{color:var(--ink-soft);flex:0 0 34px}.session-meta dd{margin:0}.checkin-role-picker{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cover-thumb{width:40px;height:56px;object-fit:cover;border-radius:4px;border:1px solid var(--border);display:block}.cover-thumb-empty{background:var(--placeholder)}.image-preview-row{display:flex;align-items:center;gap:12px}.cover-preview{width:84px;height:118px;object-fit:cover;border-radius:7px;border:1px solid var(--border)}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-items:start}.game-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}.game-cover{width:100%;height:160px;object-fit:cover}.game-cover-empty{background:var(--placeholder)}.game-card-body{padding:16px;display:flex;flex-direction:column;gap:8px}.game-card-body h3{margin:0;font-size:16px}.game-meta{margin:0;font-size:13px}.game-meta div{display:flex;gap:8px;padding:1px 0}.game-meta dt{color:var(--ink-soft);flex:0 0 34px}.game-meta dd{margin:0}.game-note{margin:0;font-size:12.5px;color:var(--ink-soft);white-space:pre-line;overflow-wrap:anywhere}.gm-notes{color:var(--accent);font-weight:600}.game-wish-badge{position:absolute;top:8px;right:8px;z-index:1;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface);box-shadow:0 1px 4px #00000059}.game-wish-badge-icon{font-size:15px;line-height:1}.game-wish-badge-count{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 3px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;line-height:17px;text-align:center;font-variant-numeric:tabular-nums}.game-wishes-block{display:flex;flex-direction:column;gap:8px}.game-inline-rating{margin-top:4px;padding-top:10px;border-top:1px solid var(--border);animation:game-inline-rating-in .22s ease both}@media (prefers-reduced-motion: reduce){.game-inline-rating{animation:none}}@keyframes game-inline-rating-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.game-inline-rating .form{margin:0}.game-inline-rating .form-grid{grid-template-columns:1fr}.game-inline-rating .form-grid>*{min-width:0}.game-inline-rating .autocomplete-field input{min-width:0;width:100%}.view-mode-toggle{display:inline-flex;border:1px solid var(--border);border-radius:7px;overflow:hidden}.view-mode-toggle button{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-left:1px solid var(--border);color:var(--ink-soft);padding:8px 12px;cursor:pointer}.view-mode-toggle button:first-child{border-left:none}.view-mode-toggle button:hover{color:var(--accent)}.view-mode-toggle button.active{background:var(--accent);color:#fff}.game-list-wide{display:flex;flex-direction:column;gap:16px}.game-row-wide{background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:flex-start;overflow-x:auto}.game-row-wide-section{flex-shrink:0}.game-row-wide-image{position:relative;width:200px}.game-row-wide .game-cover{width:200px;height:260px;object-fit:cover;display:block}.game-row-wide .game-cover-empty{width:200px;height:260px}.game-row-wide-info{flex:1 1 320px;min-width:280px;padding:16px;display:flex;flex-direction:column;gap:8px;border-left:1px solid var(--border);align-self:stretch}.game-row-wide-info h3{margin:0;font-size:16px}@media (max-width: 720px){.game-row-wide{flex-direction:column;align-items:stretch;overflow-x:hidden}.game-row-wide-image,.game-row-wide .game-cover,.game-row-wide .game-cover-empty{width:100%}.game-row-wide-info{flex:0 0 auto;min-width:0;border-left:none;border-top:1px solid var(--border)}}.game-list-compact{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.game-row-list{display:flex;flex-direction:column;gap:4px;padding:10px 16px;border-bottom:1px solid var(--border);font-size:13.5px}.game-row-list:last-child{border-bottom:none}.game-row-list-main{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.game-row-list-name{font-weight:600;min-width:160px}.game-row-list-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--ink-soft)}.game-row-list-notes{display:flex;flex-direction:column;gap:2px}.profile-meta{margin:0}.profile-meta div{display:flex;gap:10px;padding:4px 0;flex-wrap:wrap}.profile-meta dt{color:var(--ink-soft);min-width:70px}.profile-meta dd{margin:0;word-break:break-word}.tbl-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;margin:12px 0 28px}.tbl-wrap-scroll{max-height:520px;overflow-y:auto}.tbl-wrap-scroll thead th{position:sticky;top:0;z-index:1}table{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px;min-width:480px;background:var(--surface)}th,td{text-align:left;padding:9px 12px;border-bottom:2px solid var(--border);white-space:nowrap}thead th{background:var(--surface-2);color:var(--ink-soft);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface-2)}.row-actions{display:flex;gap:8px;flex-wrap:wrap}td.row-actions{flex-wrap:nowrap;white-space:nowrap}.note-cell{min-width:220px;max-width:260px;white-space:normal;overflow-wrap:break-word}.table-input{width:120px;box-sizing:border-box;font-size:14px;padding:6px 9px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font-family:inherit}.table-input:focus{outline:2px solid var(--accent);outline-offset:1px}.member-edit-bio-row{display:flex;align-items:center;gap:10px;padding:2px 0}.member-edit-bio-row span{flex-shrink:0;min-width:60px;font-size:13px;color:var(--ink-soft)}.member-edit-bio-row textarea.table-input{width:100%;max-width:480px;resize:none;line-height:1.3}.tabs{display:flex;gap:4px;margin-bottom:18px;box-shadow:inset 0 -1px 0 var(--border);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex-shrink:0;white-space:nowrap;background:none;border:none;padding:10px 16px;font-size:14px;color:var(--ink-soft);cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.autocomplete-field{position:relative}.autocomplete-field input{font-size:14px;padding:8px 12px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-family:inherit;min-width:220px}.form .autocomplete-field input{font-size:16px;padding:9px 11px;min-width:0;width:100%;box-sizing:border-box}.autocomplete-field input::placeholder{color:#8a847e}.autocomplete-field input:focus{outline:2px solid var(--accent);outline-offset:1px}.suggestion-list{position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;margin-top:4px;padding:4px;list-style:none;max-height:220px;overflow-y:auto}.suggestion-list li button{width:100%;text-align:left;background:none;border:none;padding:8px 10px;border-radius:5px;cursor:pointer;display:flex;flex-direction:column;gap:2px;color:var(--ink);font-family:inherit}.suggestion-list li button:hover{background:var(--accent-soft)}.suggestion-list li button span{font-size:12px;color:var(--ink-soft)}.hint{font-size:12.5px;color:var(--ink-soft);margin:4px 0 0}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0 28px}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}@media (min-width: 721px){.stat-tile{padding:16px 24px}}.stat-tile .stat-value{font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}.stat-tile .stat-value .stat-unit{font-size:14px;font-weight:500;color:var(--ink-soft);margin-left:2px}.stat-tile .stat-label{font-size:12.5px;color:var(--ink-soft)}.stat-tile.stat-accent{border-color:var(--accent-soft);background:linear-gradient(180deg,var(--accent-soft),var(--surface) 140%)}.stat-tile.stat-accent .stat-value{color:var(--accent-soft-ink)}.progress-track{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin:6px 0 2px}.progress-fill{height:100%;background:var(--accent);border-radius:999px}.progress-caption{font-size:12.5px;color:var(--ink-soft)}.profile-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:10px}.profile-actions .profile-actions-hint{margin:0 auto 0 0;flex:1 1 200px}@media (max-width: 480px){.profile-actions .profile-actions-hint{flex:1 1 100%;margin-right:0}}.profile-meta-bio{align-items:flex-start}.profile-meta-bio dt{padding-top:8px}.profile-meta-bio dd{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.bio-input-row{display:flex;align-items:flex-end;gap:8px}.bio-textarea{width:100%;max-width:420px;resize:none;font-family:inherit;font-size:14px;line-height:1.5;padding:9px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink)}.bio-status{font-size:11.5px;color:var(--ink-soft)}.bio-count{font-size:11px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.record-bio{font-size:15px;font-style:italic;color:var(--ink);opacity:.75;margin:6px 0 20px;overflow-wrap:break-word;white-space:pre-line}.rating-bucket-list{display:flex;flex-direction:column;gap:10px}.rating-bucket-row{display:flex;align-items:center;gap:10px}.rating-bucket-label{width:44px;flex-shrink:0;font-size:13px;color:var(--ink-soft)}.rating-bucket-track{flex:1;margin:0}.rating-bucket-count{width:44px;flex-shrink:0;text-align:right;font-size:12.5px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.record-review-list{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.record-review-row{display:flex;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.record-review-image{flex-shrink:0;width:96px;height:96px}.record-review-image img,.record-review-image .game-cover-empty{width:96px;height:96px;border-radius:7px;object-fit:cover;display:block}.record-review-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;justify-content:center;container-type:inline-size}.record-review-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.record-review-game{font-weight:600;font-size:14px}.record-review-date{font-size:12px;color:var(--ink-soft)}.record-review-comment-row{display:flex;align-items:flex-start;gap:8px;min-height:0}.record-review-text{flex:1;margin:2px 0 0;font-size:13px;color:var(--ink-soft);font-style:italic;min-width:0;overflow-wrap:break-word;white-space:pre-line}.record-review-edit-btn{flex-shrink:0;margin-left:auto;padding:0 14px;font-size:13px;min-height:36px}.split-columns{margin-bottom:28px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 720px){.split-columns{grid-template-columns:1fr}}.played-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;padding-right:4px}.played-row{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.played-row .cover-thumb{flex-shrink:0}.played-row-body{flex:1;min-width:0}.played-row-body .played-name{font-size:14px;font-weight:600}.played-row-body .played-sub{font-size:12px;color:var(--ink-soft)}.played-row .count-chip{font-family:inherit;font-size:12px;font-weight:600;color:var(--accent-soft-ink);background:var(--accent-soft);border-radius:999px;padding:3px 10px;white-space:nowrap}.unplayed-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;padding-right:4px}.unplayed-row{display:flex;align-items:center;gap:12px;border:1px dashed var(--border);border-radius:8px;padding:10px 14px;opacity:.85}.unplayed-row .played-name{font-size:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#040304b8;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px;max-width:380px;width:100%;box-shadow:0 20px 60px #00000080}.modal-card h3{margin:0 0 10px;font-size:17px}.modal-card p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.55;word-break:keep-all;overflow-wrap:anywhere}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}.modal-card-wide{max-width:560px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.modal-head h3{margin:0}.modal-card p.modal-pre{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);max-height:50vh;max-height:50dvh;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.notice-fields{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.notice-chip{font-family:inherit;font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--ink);cursor:pointer}.notice-chip:hover{border-color:var(--accent);color:var(--accent)}.notice-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13.5px;line-height:1.55;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.history-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;padding-right:4px}.history-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;flex-shrink:0}.history-row-summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;background:none;border:none;width:100%;text-align:left;color:var(--ink);font-family:inherit}.history-row-summary:hover{background:var(--surface-2)}.history-summary-body{flex:1;min-width:0}.history-summary-body .h-game{font-size:14px;font-weight:600}.history-summary-body .h-sub{font-size:12px;color:var(--ink-soft);margin-top:2px}.history-summary-flags{display:flex;gap:6px;align-items:center;flex-shrink:0}.chevron{color:var(--ink-soft);font-size:12px;transition:transform .15s}.chevron.open{transform:rotate(90deg)}.result-chip{font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid var(--border);color:var(--ink-soft)}.result-chip.success{color:#7fe0a8;border-color:#234030;background:#142a1e}.result-chip.fail{color:var(--accent-soft-ink);border-color:var(--accent-soft);background:var(--accent-soft)}.history-detail{border-top:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 560px){.detail-grid{grid-template-columns:1fr}}.detail-field{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--ink-soft)}.detail-field input,.detail-field select,.detail-field textarea{font-size:14px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink);font-family:inherit}.co-participants{display:flex;flex-direction:column;gap:6px}.co-participants-label{font-size:12.5px;color:var(--ink-soft)}.co-participant-chips{display:flex;flex-wrap:wrap;gap:6px}.co-participant-chip{font-size:12.5px;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.co-participant-chip .role{color:var(--ink-soft);margin-left:4px}.sec-hint{font-size:12.5px;color:var(--ink-soft);margin:-6px 0 12px}.password-toggle-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 28px;padding:14px 24px}.password-toggle-card>button{flex-shrink:0}.notification-card{margin:16px 0 28px;padding:14px 24px}.notification-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-subrows{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.notification-subrows .notification-row{font-size:13.5px;color:var(--ink-soft)}.toggle-switch{position:relative;width:44px;height:24px;border-radius:999px;border:none;padding:0;cursor:pointer;flex-shrink:0;transition:background-color .15s ease}.toggle-switch.is-on{background:#2f9e5c}.toggle-switch.is-off{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border)}.toggle-switch:disabled{opacity:.6;cursor:default}.toggle-switch-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s ease}.toggle-switch.is-on .toggle-switch-knob{left:22px}@media (prefers-reduced-motion: reduce){.chevron,.toggle-switch,.toggle-switch-knob{transition:none}}.star-rating{display:inline-flex;align-items:center;gap:2px}.star-glyph{position:relative;display:inline-block;width:1em;height:1em;font-size:30px;line-height:1}.star-rating-readonly .star-glyph{font-size:14px}.star-rating:not(.star-rating-readonly){gap:4px}.star-glyph .star{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--border);pointer-events:none}.star-glyph .star-fg{color:var(--accent)}.star-half{position:absolute;top:0;right:0;bottom:0;left:0;width:50%;background:none;border:none;padding:0;margin:0;cursor:pointer}.star-half:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:4px}.star-half-left{left:0}.star-half-right{left:50%}.star-rating-value{font-size:12px;color:var(--ink-soft);margin-left:6px;font-variant-numeric:tabular-nums}.star-rating-clear{font-size:12px;color:var(--ink-soft);background:none;border:none;padding:0;margin-left:8px;cursor:pointer;text-decoration:underline}.star-rating-clear:hover{color:var(--ink)}.h-review{font-size:12.5px;color:var(--ink-soft);font-style:italic;margin-top:2px}.rating-summary{display:inline-flex;align-items:center;gap:6px}.rating-summary .rating-count{font-size:11.5px;color:var(--ink-soft)}.rating-empty{font-size:12.5px;color:var(--ink-soft)}.search-input{font-size:14px;padding:8px 12px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-family:inherit;min-width:220px;box-sizing:border-box;min-height:36px}.search-input::placeholder{color:#8a847e}.search-input:focus{outline:2px solid var(--accent);outline-offset:1px}.filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}.section-head+.filter-row{margin-top:-8px}.offset-chip{display:inline-flex;align-items:center;gap:4px;font-size:13px;padding:5px 6px 5px 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.offset-chip button{background:none;border:none;color:var(--ink-soft);cursor:pointer;font-size:15px;line-height:1;padding:3px 7px;border-radius:999px;font-family:inherit}.offset-chip button{min-width:32px;min-height:32px;margin:-6px -4px -6px 0}.offset-chip button:hover{color:var(--accent-soft-ink);background:var(--accent-soft)}.filter-select{font-size:13.5px;padding:7px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-family:inherit}.filter-select{min-height:36px;box-sizing:border-box}.filter-row .btn-ghost{height:36px}@media (max-width: 720px){.filter-select,.search-input,.date-range-field input[type=date]{min-height:40px}.view-mode-toggle button{min-height:38px}.sort-select{margin-left:0}.filter-row .btn-ghost{min-height:40px}}.filter-select:focus{outline:2px solid var(--accent);outline-offset:1px}.sort-select{margin-left:auto}.date-range-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px;max-width:100%}.date-range-field input[type=date]{flex:0 1 150px;min-width:0;font-size:13.5px;padding:6px 8px;min-height:36px;box-sizing:border-box;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-family:inherit}.date-range-field input[type=date]:focus{outline:2px solid var(--accent);outline-offset:1px}.date-range-field span{color:var(--ink-soft);font-size:13px}.collapsible-header{display:flex;align-items:center;gap:8px;background:none;border:none;padding:12px 0;margin:0;min-height:44px;cursor:pointer;font-family:inherit;width:100%;text-align:left}.collapsible-header h3{margin:0;color:var(--ink)}.collapsible-header:hover h3{color:var(--accent)}.participants-block{display:flex;flex-direction:column;gap:8px}.participants-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;min-height:32px;padding:6px 4px;margin:-6px 0;cursor:pointer;font-family:inherit;font-size:13px;color:var(--ink-soft);align-self:flex-start}@media (pointer: coarse),(max-width: 720px){.participants-toggle{min-height:44px;padding:10px 4px;margin:-10px 0}}.session-card .participants-toggle,.game-wishes-block .participants-toggle,.game-reviews-block .participants-toggle{padding-left:0}.participants-toggle:hover{color:var(--accent)}.participants-list{display:flex;flex-direction:column;gap:6px}.participant-row{display:flex;align-items:center;gap:8px;background:var(--surface-2);border-radius:6px;padding:6px 10px;font-size:13px}.participant-name{flex:1;min-width:0}.participant-role{font-size:11.5px;color:var(--ink-soft)}.game-reviews-block{display:flex;flex-direction:column;gap:8px;margin-top:2px}.game-reviews-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;padding-right:4px}.game-review-row{background:var(--surface-2);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:3px;container-type:inline-size}.game-review-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.game-review-name{font-size:13px;font-weight:600;color:var(--ink);text-decoration:none}.game-review-name:hover{color:var(--accent-soft-ink);text-decoration:underline}.game-review-date{font-size:11px;color:var(--ink-soft);margin-left:auto}.game-review-text{margin:0;font-size:12.5px;color:var(--ink-soft);font-style:italic;white-space:pre-line}.game-review-reaction-row{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px}.game-review-reaction-counts{display:flex;gap:4px;flex-wrap:wrap}.game-review-reaction-chip{font-size:11.5px;color:var(--ink-soft);background:var(--surface-2);border-radius:999px;padding:2px 7px;font-variant-numeric:tabular-nums}.game-review-reaction-chip-btn{border:1px solid transparent;font-family:inherit;cursor:pointer}.game-review-reaction-chip-btn:hover,.game-review-reaction-chip-btn.is-open{border-color:var(--accent);color:var(--ink)}.game-review-reactor-list{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.game-review-reactor-emoji{font-size:13px}.game-review-reaction-picker-wrap{display:flex;align-items:center;gap:4px}.game-review-react-btn{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:none;color:var(--ink-soft);font-size:13px;cursor:pointer;font-family:inherit;flex-shrink:0}.game-review-react-btn:hover:not(:disabled){border-color:var(--accent)}.game-review-react-btn:disabled{cursor:default;opacity:.5}.game-review-react-btn.active{border-color:var(--accent);background:var(--accent-soft)}.game-review-reaction-picker{display:flex;gap:1px;max-width:0;overflow:hidden;opacity:0;pointer-events:none;visibility:hidden;transition:max-width .22s ease,opacity .16s ease,visibility 0s linear .22s}.game-review-reaction-picker.open{max-width:190px;opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s}.game-review-reaction-option{background:none;border:none;font-size:19px;line-height:1;cursor:pointer;padding:4px 6px;border-radius:999px;font-family:inherit;flex-shrink:0;transition:transform .12s ease,background .12s ease}.game-review-reaction-option:hover:not(:disabled){background:var(--surface);transform:scale(1.2)}.game-review-reaction-option.selected{background:var(--accent-soft)}.game-review-reaction-option:disabled{cursor:default;opacity:.5}@container (max-width: 230px){.game-review-reaction-picker.open{max-width:100px}.game-review-reaction-option{font-size:13px;padding:2px 1px}.game-review-edit .star-glyph{font-size:16px}.game-review-edit .star-rating{flex-wrap:wrap;row-gap:4px}}.game-review-mod-actions{display:flex;gap:4px}.game-review-mod-actions .btn-ghost{padding:2px 8px;font-size:11.5px}.game-review-edit{display:flex;flex-direction:column;gap:8px;margin-top:2px}.game-review-edit textarea{font-size:13px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink);font-family:inherit;resize:vertical}.warning-text{font-size:12px;color:var(--accent-soft-ink);margin:2px 0 0}.consent-block{display:flex;flex-direction:column;gap:10px}.consent-box{max-height:180px;max-height:min(40vh,300px);overflow-y:auto;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);padding:12px 14px;font-size:12.5px;color:var(--ink-soft);line-height:1.55}.consent-box p{margin:0 0 8px}.consent-box p strong{color:var(--ink)}.consent-box ol{margin:0;padding-left:18px}.consent-box li{margin-bottom:6px}.consent-box li strong{color:var(--ink)}.consent-checkbox{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink);cursor:pointer}.form .consent-checkbox{flex-direction:row;align-items:flex-start;gap:8px}.consent-checkbox input{margin:0;width:20px;height:20px;flex:none;accent-color:var(--accent);cursor:pointer}@media (pointer: coarse),(max-width: 720px){.consent-checkbox,.checkbox-label{min-height:44px}}.chat-block{display:flex;flex-direction:column;gap:8px}.chat-panel{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:8px;padding:10px;background:var(--surface-2)}.chat-mute-toggle{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);cursor:pointer;font-family:inherit}.chat-mute-toggle:hover{color:var(--ink);border-color:var(--accent-soft)}.chat-messages{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-x:hidden;overflow-y:auto;padding:10px 0;mask-image:linear-gradient(to bottom,transparent,black 10px,black calc(100% - 10px),transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,black 10px,black calc(100% - 10px),transparent)}@media (min-width: 721px){.chat-messages{max-height:clamp(280px,55dvh,720px)}}.chat-msg{align-self:flex-start;max-width:85%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.chat-msg-mine{align-self:flex-end;border-color:var(--accent-soft)}.chat-msg-head{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.chat-msg-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.chat-msg-time{font-size:11px;color:var(--ink-soft);margin-left:auto}.chat-msg-delete{background:none;border:none;color:var(--ink-soft);cursor:pointer;font-size:13px;line-height:1;padding:12px 10px;margin:-10px -6px;font-family:inherit}.chat-msg-delete:hover{color:var(--accent-soft-ink)}.chat-msg-text{margin:4px 0 0;font-size:13.5px;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere}.chat-msg-text a{word-break:break-all}.chat-msg-image-btn{display:block;margin-top:4px;padding:0;border:none;background:none;cursor:zoom-in;max-width:100%}.chat-msg-image{display:block;max-width:min(220px,100%);max-height:220px;width:auto;height:auto;border-radius:6px}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:32px;z-index:1000;cursor:zoom-out}.lightbox-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;cursor:zoom-out}.lightbox-toolbar{position:fixed;top:16px;right:20px;display:flex;align-items:center;gap:8px}.lightbox-save{border:none;font-family:inherit;display:inline-flex;align-items:center;height:40px;padding:0 16px;background:#ffffff1a;color:#fff;border-radius:999px;font-size:14px;text-decoration:none;cursor:pointer}.lightbox-save:hover{background:#fff3}.lightbox-close{background:#ffffff1a;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer}.lightbox-close:hover{background:#fff3}.lightbox-count{color:#fff;font-size:13px;margin-right:4px;font-variant-numeric:tabular-nums}.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;width:44px;height:44px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox-nav:hover{background:#fff3}.lightbox-nav-prev{left:12px}.lightbox-nav-next{right:12px}@media (max-width: 480px){.lightbox-nav{width:38px;height:38px;font-size:22px}}.chat-input-row{display:flex;align-items:flex-end;gap:6px;flex-wrap:nowrap}.chat-input-row textarea{flex:1;min-width:0;font-size:14px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink);font-family:inherit;line-height:1.4;resize:none;max-height:120px;overflow-y:auto}.chat-file-input-hidden{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.chat-attach-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink-soft);cursor:pointer}.chat-attach-btn:hover{color:var(--accent);border-color:var(--accent-soft)}.chat-attach-btn.disabled{pointer-events:none;opacity:.5}.chat-send-btn{flex-shrink:0;padding:8px 16px;min-height:36px}.chat-attach-preview-list{display:flex;gap:6px;padding:6px 6px 0 2px;overflow-x:auto}.chat-attach-thumb{position:relative;flex-shrink:0;width:52px;height:52px}.chat-attach-thumb img{width:100%;height:100%;border-radius:7px;object-fit:cover;border:1px solid var(--border)}.chat-attach-thumb-remove:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.chat-attach-thumb-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.chat-tab-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}.chat-session-card h3{margin:0}.chat-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.chat-card-title-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px;flex:0 0 auto}.chat-card-title-actions .chat-notice-btn{height:auto;padding:4px 10px;font-size:12px;border-radius:999px;background:var(--surface)}.chat-card-title-row .chat-mute-toggle{flex:0 0 auto;white-space:nowrap}.chat-session-target{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.calendar-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.calendar-toolbar-center{display:flex;align-items:center;gap:10px}.calendar-month-label{font-size:16px;font-weight:700;min-width:100px;text-align:center}.calendar-nav-btn{width:40px;height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--ink);font-size:16px;cursor:pointer}.calendar-nav-btn:hover{color:var(--accent);border-color:var(--accent-soft)}.calendar-today-btn{border:1px solid var(--border);border-radius:999px;background:none;color:var(--ink-soft);font-size:12px;min-height:40px;padding:4px 12px;cursor:pointer;font-family:inherit}.calendar-today-btn:hover{color:var(--accent);border-color:var(--accent-soft)}.calendar-weekday-row{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.calendar-weekday{text-align:center;font-size:12px;color:var(--ink-soft);padding:4px 0}.calendar-weekday.is-sun{color:var(--accent-soft-ink)}.calendar-weekday.is-sat{color:#7fb3e0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-day{aspect-ratio:1 / 1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding:4px 2px 0;border:1px solid transparent;border-radius:8px;background:none;color:var(--ink);font-family:inherit;cursor:pointer}@media (min-width: 721px){.calendar-day{aspect-ratio:auto;height:64px}}@media (max-height: 480px) and (orientation: landscape){.calendar-day{aspect-ratio:auto;height:48px}}.calendar-day:hover{background:var(--surface-2)}.calendar-day.is-outside{opacity:.35}.calendar-day.is-today .calendar-day-num{color:var(--accent);font-weight:700}.calendar-day.is-selected{background:var(--accent-soft);border-color:var(--accent-soft)}.calendar-day-num{font-size:13px;font-variant-numeric:tabular-nums}.calendar-day-num.is-sun{color:var(--accent-soft-ink)}.calendar-day-num.is-sat{color:#7fb3e0}.calendar-day{position:relative}.calendar-day-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:2px solid transparent;box-sizing:border-box}.calendar-day-num.is-played{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.calendar-day-num.is-planned{border-color:var(--accent);color:var(--accent-soft-ink);font-weight:700}.calendar-day.is-today .calendar-day-num.is-played{color:#fff}.calendar-day.is-today .calendar-day-num:not(.is-played):not(.is-planned){border-color:var(--border)}.calendar-stats{display:flex;gap:8px;margin-bottom:12px}.calendar-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.calendar-stat b{font-size:20px;font-variant-numeric:tabular-nums;color:var(--accent)}.calendar-stat span{font-size:12px;color:var(--ink-soft)}.calendar-stat.is-upcoming b{color:var(--accent-soft-ink)}.calendar-legend{display:flex;gap:14px;justify-content:center;margin-top:10px;font-size:12px;color:var(--ink-soft)}.calendar-legend span{display:inline-flex;align-items:center;gap:6px}.calendar-legend-dot{width:12px;height:12px;border-radius:50%;box-sizing:border-box;border:2px solid var(--accent)}.calendar-legend-dot.is-played{background:var(--accent)}.calendar-agenda{margin-top:20px}.calendar-agenda h3{margin:0 0 10px;font-size:15px}.calendar-agenda-list{display:flex;flex-direction:column;gap:8px}.calendar-agenda-item{display:flex;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.calendar-agenda-time{line-height:22.4px;font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums;min-width:52px;flex-shrink:0}.calendar-agenda-body{flex:1;min-width:0}.calendar-agenda-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.calendar-agenda-title{font-size:14px;font-weight:600;word-break:keep-all;overflow-wrap:anywhere}.calendar-agenda-sub{margin:3px 0 0;font-size:12.5px;color:var(--ink-soft);word-break:keep-all;overflow-wrap:anywhere}.participant-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.participant-pill{display:inline-flex;align-items:center;gap:2px;font-size:12px;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--ink)}.participant-pill.is-gm{border-color:var(--accent-soft);color:var(--accent-soft-ink);background:var(--accent-soft)}.participant-pill-btn{font-family:inherit;cursor:pointer}.participant-pill.is-paid{border-color:#2f9e5c;color:#6fe0a0;background:#2f9e5c2e}.participant-pill.is-nopush{border-color:#e5484d;color:#ff8a8a;background:#e5484d29}.participant-pill-btn:disabled{opacity:.6;cursor:default}.participant-pill button{background:none;border:none;color:inherit;opacity:.6;cursor:pointer;font-size:14px;line-height:1;min-width:28px;min-height:28px;margin:-6px -8px -6px 0;padding:0 6px 0 4px;font-family:inherit}.participant-pill button:hover{opacity:1}.chat-attach-pdf{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:7px;border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--accent);background:var(--surface-2, rgba(255,255,255,.05))}.chat-msg-file{display:inline-flex;align-items:center;gap:8px;max-width:100%;margin:4px 0 0;padding:8px 10px;border-radius:6px;border:1px solid var(--border);color:inherit;text-decoration:none}.chat-msg-file-icon{flex-shrink:0;padding:4px 6px;border-radius:6px;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.chat-msg-file-name{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;text-decoration:underline}@media (max-width: 720px),(pointer: coarse){.form input,.form select,.form textarea,.search-input,.autocomplete-field input,.table-input,.bio-textarea,.chat-input-row textarea,.detail-field input,.detail-field select,.detail-field textarea,.filter-select,.date-range-field input[type=date],.game-review-edit textarea{font-size:16px}}.co-wish-chip{display:inline-flex;align-items:center;gap:2px;padding-right:4px}.co-wish-remove{border:none;background:transparent;color:var(--ink-soft);cursor:pointer;font-size:15px;line-height:1;width:22px;height:22px;border-radius:50%;padding:0}.co-wish-remove:hover:not(:disabled){background:var(--border);color:var(--ink)}.co-wish-remove:disabled{opacity:.5;cursor:default}@media (pointer: coarse),(max-width: 720px){.co-wish-remove{width:34px;height:34px;margin:-6px -4px -6px 0}}@media (pointer: coarse),(max-width: 720px){.chat-mute-toggle,.chat-card-title-actions .chat-notice-btn{min-height:36px}.chat-attach-btn{width:44px;height:44px}.chat-send-btn{min-height:44px}.chat-input-row textarea{min-height:44px;box-sizing:border-box}}@media (max-width: 360px){.chat-panel{padding:6px}.chat-input-row{gap:4px}.chat-send-btn{padding:8px 10px}}.btn-primary.btn-closed,.btn-primary.btn-closed:disabled{background:#6b6b73;border-color:#6b6b73;color:#fff;opacity:.85;cursor:not-allowed}.game-editing-banner{margin:0 0 12px;padding:8px 12px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--accent-soft-ink);font-weight:600;overflow-wrap:anywhere}.game-admin-table .game-name-cell{white-space:normal;min-width:140px;max-width:240px;overflow-wrap:anywhere}.game-admin-table .game-actions-cell{position:sticky;right:0;background:var(--surface);box-shadow:-1px 0 0 var(--border)}.game-admin-table tbody tr:hover .game-actions-cell{background:var(--surface-2)}.game-admin-table thead th:last-child{position:sticky;right:0;background:var(--surface-2)}.game-admin-table tr.game-row-editing td{background:var(--accent-soft)}@media (max-width: 640px){.game-scroll-hint{display:none}.game-admin-table{border:none;overflow-x:visible}.game-admin-table table{min-width:0;background:transparent}.game-admin-table thead{display:none}.game-admin-table tbody,.game-admin-table tr,.game-admin-table td{display:block}.game-admin-table tbody tr{margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.game-admin-table tbody tr.game-row-editing{border-color:var(--accent)}.game-admin-table td{display:flex;gap:12px;justify-content:space-between;padding:5px 0;border-bottom:none;white-space:normal;overflow-wrap:anywhere;text-align:right}.game-admin-table td[data-label]:before{content:attr(data-label);flex:none;color:var(--ink-soft);font-size:12px;text-align:left}.game-admin-table td.game-cell-cover{justify-content:flex-start}.game-admin-table .game-name-cell{min-width:0;max-width:none;font-weight:600}.game-admin-table .note-cell{min-width:0;max-width:none}.game-admin-table .game-actions-cell{position:static;box-shadow:none;background:transparent;padding-top:8px}.game-admin-table tbody tr:hover td,.game-admin-table tbody tr:hover .game-actions-cell,.game-admin-table tr.game-row-editing td{background:transparent}}.btn-primary.btn-wished,.btn-primary.btn-wished:hover:not(:disabled){background:#3a1d22;border:1px solid #8f2a37;color:#f3d9dc}.game-list-compact{--list-cols: minmax(0, 1fr) 120px 56px 64px 130px}.game-list-compact.is-staff{--list-cols: minmax(0, 1fr) 110px 120px 56px 64px 90px 130px}.game-row-list-head{display:none}@media (min-width: 721px){.game-row-list-head,.game-row-list-main{display:grid;grid-template-columns:var(--list-cols);column-gap:12px;align-items:center}.game-row-list-head{padding:8px 16px;font-size:12px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--border);background:var(--surface-2)}.game-row-list-meta{display:contents}.game-row-list-name{min-width:0;overflow-wrap:anywhere}.game-row-list-meta>span{min-width:0;overflow-wrap:anywhere}.game-row-list-meta .c-num{font-variant-numeric:tabular-nums}}.games-select-center{text-align:center;text-align-last:center}.chevron{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex:none;vertical-align:middle;font-size:0;line-height:0}.chevron:before{content:"";width:5px;height:7px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}.game-grid{align-items:stretch}.game-card-body{flex:1}.game-card-body h3{line-height:1.35;min-height:2.7em}.game-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto}.game-grid:has(.chevron.open,.game-inline-rating){align-items:start}.game-grid:has(.chevron.open,.game-inline-rating) .game-card-body h3{min-height:0}@media (max-width: 720px){.date-range-field input[type=date]{flex:1 1 130px}}@media (min-width: 721px){.date-range-field{flex:0 0 auto;flex-wrap:nowrap}.date-range-field input[type=date]{flex:0 0 150px}}.game-name-link{all:unset;cursor:pointer;display:inline;color:inherit;font:inherit;border-radius:4px}.game-name-link:hover{color:var(--accent)}.game-name-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rec-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:#0403048c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:rec-fade .18s ease-out}.rec-card{position:relative;width:100%;max-width:560px;max-height:min(86vh,860px);max-height:min(86dvh,860px);display:flex;flex-direction:column;overflow:hidden;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:#222028e0;box-shadow:0 24px 70px #0000008c,inset 0 1px #ffffff14}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.rec-card{background:#2220288f;-webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%)}}.rec-close{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:#00000059;color:#fff;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;min-height:0}.rec-close:hover{background:#0000008c}.rec-hero{position:relative;flex:none;min-height:128px;overflow:hidden}.rec-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:blur(14px) saturate(120%);transform:scale(1.15);opacity:.55}.rec-hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0c0c0e26,#18171bd9)}.rec-hero-body{position:relative;padding:22px 56px 16px 22px}.rec-kicker{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--accent-soft-ink)}.rec-hero-body h3{margin:4px 0 12px;font-size:21px;line-height:1.3;word-break:keep-all;overflow-wrap:anywhere}.rec-stats{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;color:var(--ink-soft)}.rec-stats span{display:flex;flex-direction:column-reverse;gap:1px}.rec-stats b{font-size:16px;color:var(--ink);font-weight:700}.rec-body{flex:1;min-height:0;overflow-y:auto;padding:4px 18px 20px;display:flex;flex-direction:column;gap:14px;overscroll-behavior:contain}.rec-play{padding:16px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;display:flex;flex-direction:column;gap:12px}.rec-play-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.rec-play-head h4{margin:0;font-size:15px}.rec-badges{display:flex;flex-wrap:wrap;gap:6px}.rec-badge{padding:2px 10px;border-radius:999px;font-size:12px;border:1px solid rgba(255,255,255,.16);color:var(--ink-soft);white-space:nowrap}.rec-badge-role{color:var(--accent-soft-ink);border-color:#ff8a9366;background:#ff3b4d1a}.rec-fields{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px}.rec-field dt{font-size:11.5px;color:var(--ink-soft);margin-bottom:2px}.rec-field dd{margin:0;font-size:14px;overflow-wrap:anywhere}.rec-result{display:inline-block;padding:1px 10px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid rgba(255,255,255,.18)}.rec-result-success{color:#7fe0a8;border-color:#7fe0a873;background:#2f9e5c26}.rec-result-fail{color:#ff8a93;border-color:#ff8a9373;background:#ff3b4d1f}.rec-rating{display:inline-flex;align-items:center;gap:6px}.rec-rating-num{font-variant-numeric:tabular-nums;color:var(--ink-soft);font-size:13px}.rec-quote{margin:0;padding:10px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:#ffffff0d;font-size:14px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink)}.rec-reactions{display:flex;flex-wrap:wrap;gap:6px}.rec-reaction{padding:1px 9px;border-radius:999px;font-size:12.5px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a}.rec-sub{font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:6px}.rec-memo p,.rec-companions{margin:0;font-size:13.5px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink)}.rec-chips{display:flex;flex-wrap:wrap;gap:6px}.rec-chip{padding:3px 10px;border-radius:999px;font-size:12.5px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f}.rec-chip-role{margin-left:6px;color:var(--ink-soft);font-size:11.5px}@keyframes rec-fade{0%{opacity:0}to{opacity:1}}@media (max-width: 720px){.rec-overlay{padding:12px;align-items:flex-end}.rec-card{max-height:90vh;max-height:90dvh;border-radius:18px 18px 14px 14px}}@media (prefers-reduced-motion: reduce){.rec-overlay{animation:none}}.tool-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}.tool-title{margin:0;font-size:20px;overflow-wrap:anywhere}.tool-people{margin-bottom:14px}.tool-people-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tool-person{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13.5px}.tool-person button{all:unset;cursor:pointer;width:22px;height:22px;border-radius:50%;text-align:center;line-height:22px;font-size:13px;color:var(--ink-soft)}.tool-person button:hover{background:var(--border);color:var(--ink)}.tool-person button:focus-visible{outline:2px solid var(--accent)}.tool-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;flex:none}.tool-person .tool-dot{margin-right:0}.tool-rename{display:inline-flex;align-items:center;gap:2px}.tool-rename input{width:120px;min-height:28px;font-size:13.5px;padding:2px 8px}.tool-person-add{display:inline-flex;align-items:center;gap:6px}.tool-person-add input{min-width:200px;min-height:34px;font-size:13.5px}.tool-subbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0}.tool-range{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto}.tool-range select,.tool-toolbar select{min-height:34px;font-size:13.5px}.tool-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.tool-hint{margin:0 0 8px}.tool-meta{font-size:12px;color:var(--ink-soft)}.tool-nowrap{white-space:nowrap}.tool-text-cell{min-width:180px;white-space:pre-line;overflow-wrap:anywhere}.tool-danger{color:var(--accent-soft-ink);margin-right:auto}.tool-form{display:flex;flex-direction:column;gap:12px}.tool-field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--ink-soft)}.tool-field select,.tool-field input,.tool-field textarea{font-size:15px}.tool-check{display:flex;align-items:center;gap:8px;font-size:14px}.tool-time-select{display:inline-flex;gap:6px}.tool-time-select select{min-height:38px;font-size:15px}.tool-relation-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.tool-relation-pair span{font-size:18px;color:var(--ink-soft)}.tool-swap{align-self:flex-start}.tool-chart-scroll{overflow:auto;max-height:72vh;max-height:72dvh;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.tool-chart{display:grid;width:max-content;min-width:100%}.tool-chart-corner,.tool-chart-head{position:sticky;top:0;z-index:3;background:var(--surface-2)}.tool-chart-corner{left:0;z-index:4}.tool-chart-head{padding:9px 8px;text-align:center;font-size:13px;font-weight:600;border-bottom:3px solid var(--border);border-left:1px solid var(--border);overflow-wrap:anywhere}.tool-chart-gutter{position:sticky;left:0;z-index:2;background:var(--surface-2);border-right:1px solid var(--border)}.tool-chart-gutter span{position:absolute;right:6px;transform:translateY(-50%);font-size:11px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.tool-chart-gutter span:first-child{transform:none}.tool-chart-col{position:relative;border-left:1px solid var(--border);background-image:linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-repeat:repeat-y;cursor:cell}.tool-chart-bar{all:unset;box-sizing:border-box;position:absolute;border:1px solid;border-radius:10px;padding:3px 8px;overflow:hidden;display:flex;flex-direction:column;gap:1px;cursor:pointer;font-size:12px;line-height:1.35}.tool-chart-bar small{font-size:10.5px;opacity:.8;font-variant-numeric:tabular-nums}.tool-chart-bar span{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-size:11.5px;line-height:14px;overflow-wrap:anywhere}.tool-chart-bar-time{font-weight:600;opacity:.85;font-variant-numeric:tabular-nums}.tool-chart-bar:hover{filter:brightness(1.2)}.tool-chart-bar:focus-visible,.tool-chart-point:focus-visible{outline:2px solid #fff;outline-offset:1px}.tool-chart-point{all:unset;box-sizing:border-box;position:absolute;display:flex;align-items:center;gap:6px;height:18px;font-size:12px;cursor:pointer}.tool-chart-point i{flex:none;width:11px;height:11px;border-radius:50%;border:2px solid rgba(255,255,255,.8)}.tool-chart-point span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-graph-wrap{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.tool-graph{display:block;width:100%;height:auto;touch-action:manipulation;user-select:none;-webkit-user-select:none}.tool-node{cursor:grab;touch-action:none}.tool-node.tool-node-ro{cursor:default;touch-action:auto}.tool-node:active{cursor:grabbing}.tool-node text{font-size:15px;font-weight:600;pointer-events:none;font-family:inherit}.tool-edge{color:var(--ink-soft);cursor:pointer}.tool-edge:hover{color:var(--accent)}.tool-edge-hit{fill:none;stroke:transparent;stroke-width:16}.tool-edge-line{fill:none;stroke:currentColor;stroke-width:2}.tool-edge-label-bg{fill:var(--surface-2);stroke:var(--border)}.tool-edge-label{fill:var(--ink);font-size:13px;font-family:inherit;pointer-events:none}.tool-relation-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.tool-relation-list button{all:unset;cursor:pointer;padding:3px 10px;border-radius:999px;border:1px solid var(--border);font-size:12.5px;background:var(--surface)}.tool-relation-list button:hover{border-color:var(--accent)}.tool-relation-list button:focus-visible{outline:2px solid var(--accent)}.tool-memo-bricks{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;align-items:start}.tool-memo-name{display:inline-flex;align-items:center;gap:6px;min-width:0}.tool-memo-tabs{margin-bottom:12px}.tool-memo-tabs .tab{display:inline-flex;align-items:center;gap:6px}.tool-memo-wrap{max-width:720px}.tool-memo-grid{display:grid;gap:12px;width:max-content;min-width:100%;align-items:start}.tool-memo-col{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}.tool-memo-col h4{margin:0;padding-bottom:8px;font-size:14px;border-bottom:3px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:6px;overflow-wrap:anywhere}.tool-count{font-size:11.5px;font-weight:500;color:var(--ink-soft)}.tool-empty-col{margin:0;font-size:12.5px;color:var(--ink-soft)}.tool-memo-add{display:flex;flex-direction:column;gap:6px}.tool-memo-add textarea,.tool-memo textarea{width:100%;box-sizing:border-box;font-size:14px;resize:vertical}.tool-memo-add .btn-primary{align-self:flex-end}.tool-memo{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.tool-memo p{margin:0;font-size:14px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink)}.tool-memo footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.tool-memo-btns{display:inline-flex;gap:2px}.tool-memo-btns button{all:unset;cursor:pointer;font-size:12px;color:var(--ink-soft);padding:4px 8px;border-radius:6px}.tool-memo-btns button:hover{background:var(--border);color:var(--ink)}.tool-memo-btns button:focus-visible{outline:2px solid var(--accent)}.tool-memo-actions{display:flex;justify-content:flex-end;gap:8px}@media (max-width: 720px){.tool-range{margin-left:0}.tool-person-add input{min-width:0;flex:1}.tool-person-add{flex:1 1 100%}}.tool-room-list{display:grid;gap:10px;margin-top:14px}.tool-room{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.tool-room:hover{border-color:var(--accent);background:var(--surface-2)}.tool-room:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tool-room-cover{flex:none;width:64px;height:64px;border-radius:12px;object-fit:cover;background:var(--placeholder)}.tool-room-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.tool-room-name{font-weight:600;font-size:15.5px;overflow-wrap:anywhere}.tool-room-meta{font-size:12.5px;color:var(--ink-soft)}.tool-room-enter{flex:none;font-size:13px;font-weight:600;color:var(--accent-soft-ink)}.tool-date-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--ink)}.tool-date-row select,.tool-year{min-height:38px;font-size:15px}.tool-year{width:92px;box-sizing:border-box}.tool-date-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.tool-date-tabs button{padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);font-size:13px;font-variant-numeric:tabular-nums;cursor:pointer;min-height:0}.tool-date-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.tool-edge-dot{fill:var(--ink-soft);stroke:var(--surface);stroke-width:2}.tool-edge:hover .tool-edge-dot{fill:var(--accent)}.tool-edge-active{color:var(--accent)}.tool-edge-active .tool-edge-line{stroke-width:3}.tool-edge-active .tool-edge-label-bg{stroke:var(--accent);stroke-width:2;fill:var(--accent-soft)}.tool-edge-active .tool-edge-dot{fill:var(--accent)}.tool-selbar{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:var(--ink)}.tool-selbar b{color:var(--accent-soft-ink)}.tool-selbar .btn-ghost{min-height:32px;padding:0 12px}.tool-from-relation{padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);font-weight:600;overflow-wrap:anywhere;text-align:center}.tool-selbar .tool-danger-btn{color:var(--accent-soft-ink);margin:0}.chat-album{display:grid;gap:3px;width:min(300px,100%);margin-bottom:4px;border-radius:12px;overflow:hidden}.chat-album-c2{grid-template-columns:repeat(2,1fr)}.chat-album-c3{grid-template-columns:repeat(3,1fr)}.chat-album-tile{all:unset;box-sizing:border-box;position:relative;display:block;aspect-ratio:1;cursor:pointer;background:var(--surface-2);overflow:hidden}.chat-album-tile:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.chat-album-tile img{width:100%;height:100%;object-fit:cover;display:block}.chat-album-more{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000008c;color:#fff;font-size:20px;font-weight:700}.lightbox-toolbar{flex-wrap:wrap;justify-content:flex-end}button.game-wish-badge-btn{padding:0;border:0;color:inherit;font:inherit;cursor:pointer}button.game-wish-badge-btn:hover{filter:brightness(1.25)}button.game-wish-badge-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wish-bubble{position:fixed;z-index:60;width:max-content;max-width:min(280px,calc(100vw - 24px));padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);box-shadow:0 8px 24px #00000073}.wish-bubble-arrow{position:absolute;top:-6px;left:14px;width:10px;height:10px;background:var(--surface-2);border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg)}.wish-bubble-title{margin-bottom:8px;font-size:12px;font-weight:600;color:var(--ink-soft)}.wish-bubble-empty{margin:0;font-size:12.5px;color:var(--ink-soft)}.wish-bubble .co-participant-chip{background:var(--surface)}.wish-bubble-above .wish-bubble-arrow{top:auto;bottom:-6px;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.tools-root input:not([type=checkbox]):not([type=radio]),.tools-root select,.tools-root textarea{box-sizing:border-box;min-height:40px;padding:9px 11px;font-size:16px;font-family:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:7px}.tools-root textarea{min-height:84px;line-height:1.5;resize:vertical}.tools-root select{padding-right:8px}.tools-root input::placeholder,.tools-root textarea::placeholder{color:#8a847e}.tools-root input:focus,.tools-root select:focus,.tools-root textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.tools-root input[type=checkbox]{width:20px;height:20px;margin:0;flex:none;accent-color:var(--accent)}.tools-root .btn-primary,.tools-root .btn-ghost{height:40px;padding:0 16px;font-size:14px}.tools-root .tool-rename input{width:130px;min-height:32px;padding:3px 8px}.tools-root .tool-person-add input{flex:1 1 220px;min-width:0}.tools-root .tool-year{width:92px}.tools-root .tool-field{gap:6px;font-size:13px;font-weight:500}.tools-root .tool-form{gap:14px}.tools-root .tool-subbar .hint,.tools-root .tool-range{font-size:13.5px}.tools-root .tool-memo-add textarea,.tools-root .tool-memo textarea{font-size:16px}.tools-root .btn-primary,.tools-root .btn-ghost,.tools-root .toggle-btn{min-height:40px;height:40px;box-sizing:border-box}.tools-root .toggle-btn{padding:0 16px}.tools-root input[type=checkbox]{padding:0;border:none;background:none;min-height:0}.withdraw-row{display:flex;justify-content:flex-end;margin-top:40px;padding-bottom:8px}.modal-card p.form-error{color:var(--accent-soft-ink)}.consent-all{padding-bottom:10px;border-bottom:1px solid var(--border)}.consent-block .consent-box+.consent-checkbox{margin-bottom:8px}.terms-gate-card{max-width:640px;margin:24px auto}.terms-gate-card h2{margin-top:0}.terms-gate-intro{margin:0 0 14px;color:var(--ink-soft);line-height:1.55}.terms-gate-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.terms-gate-logout{all:unset;display:block;margin:14px auto 0;cursor:pointer;font-size:13px;color:var(--ink-soft);text-decoration:underline}.session-title-link{color:inherit;text-decoration:none}.session-title-link:hover{text-decoration:underline;text-underline-offset:3px}.nav-links.has-more{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent)}.game-wish-badge-btn:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tabs{background:linear-gradient(to right,var(--bg) 30%,rgba(12,12,14,0)) 0 0 / 28px 100% no-repeat local,linear-gradient(to left,var(--bg) 30%,rgba(12,12,14,0)) 100% 0 / 28px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,#ffffff29,#0000) 0 0 / 14px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,#ffffff29,#0000) 100% 0 / 14px 100% no-repeat scroll}.tool-graph2{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.tg-head{display:grid;background:var(--surface-2);border-bottom:1px solid var(--border)}.tg-name{display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 1px 6px;min-width:0;font-size:11.5px;color:var(--ink);text-align:center}.tg-name span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-name-gap{background:#ff3b4d29}.tg-mark{flex:none;width:10px;height:10px;border-radius:50%;border:2px solid transparent;box-sizing:border-box}.tg-mark-no{border-color:var(--accent);background:transparent}.tg-body{position:relative;display:grid}.tg-axis{position:relative;cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none;background:var(--surface-2);border-right:1px solid var(--border)}.tg-tick{position:absolute;left:0;right:4px;transform:translateY(-50%);text-align:right;font-size:11px;color:var(--ink-soft);font-variant-numeric:tabular-nums;pointer-events:none}.tg-tick:first-child{transform:none}.tg-col{position:relative;min-width:0;cursor:cell;border-left:1px solid var(--border);background-image:linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-repeat:repeat-y}.tg-col:nth-child(2){border-left:0}.tg-col-gap{background-color:#ff3b4d1a}.tg-bar{all:unset;box-sizing:border-box;position:absolute;border-radius:4px;cursor:pointer;min-height:4px;opacity:.88}.tg-bar:after{content:"";position:absolute;top:0;right:-9px;bottom:0;left:-9px}.tg-bar:focus-visible,.tg-dot:focus-visible{outline:2px solid #fff;outline-offset:1px}.tg-dot{all:unset;box-sizing:border-box;position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;z-index:1;border-radius:50%;border:2px solid rgba(255,255,255,.85);cursor:pointer}.tg-line{position:absolute;left:40px;right:0;height:2px;margin-top:-1px;background:var(--ink);opacity:.85;pointer-events:none;z-index:2}.tg-cursor-time{position:absolute;left:1px;width:38px;transform:translateY(-50%);padding:1px 0;border-radius:6px;background:var(--ink);color:var(--bg);font-size:11px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;pointer-events:none;z-index:3}.tool-chart-head{padding:8px 2px;font-size:12px}.tool-chart-bar{padding:3px 4px;border-radius:8px}@media (max-width: 720px){.tool-chart-bar small{display:none}.tool-chart-bar span{font-size:11px}.tool-chart-bar-time{display:none}.tool-chart-point{justify-content:center}.tool-chart-point span{display:none}}.tool-chart-probe{cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none}.tool-chart-cursor-time{position:absolute;left:1px;right:1px;transform:translateY(-50%);padding:1px 0;border-radius:6px;background:var(--ink);color:var(--bg)!important;font-size:11px!important;font-weight:700;text-align:center;z-index:5;right:1px!important}.tool-chart-cursor-line{position:absolute;left:0;right:0;height:2px;margin-top:-1px;background:var(--ink);opacity:.85;pointer-events:none;z-index:4}.tool-chart-col-gap{background-color:#ff3b4d1a}.tool-chart-head{display:flex;flex-direction:column;align-items:center;gap:4px}.tool-chart-head .tg-mark{flex:none}.tool-chart-head-gap{background:#ff3b4d29!important}.tg-wrap{position:relative}.tg-tip{position:absolute;z-index:20;width:220px;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);box-shadow:0 8px 24px #00000073;display:flex;flex-direction:column;gap:4px}.tg-tip-above{transform:translateY(-100%)}.tg-tip-name{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.tg-tip-name i{width:10px;height:10px;border-radius:50%;flex:none}.tg-tip-time{font-size:12.5px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.tg-tip-text{font-size:14px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-line}.tg-tip .btn-ghost{align-self:flex-end;height:32px!important;min-height:32px!important;padding:0 12px!important;font-size:13px!important;margin-top:4px}.tool-fs{background:var(--bg);padding:16px 22px 24px;box-sizing:border-box;overflow:auto;height:100%;width:100%}.tool-fs:not(:fullscreen){position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;height:auto}.tool-fs .tool-chart-scroll{max-height:max(260px,calc(100vh - 320px));max-height:max(260px,calc(100dvh - 320px))}.tool-head-actions{margin-left:auto;align-self:flex-start;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.tool-head-actions .btn-ghost,.tool-head-actions .btn-primary{white-space:nowrap}.tool-chart-wide .tool-chart-head{font-size:15px;padding:10px 6px}.tool-chart-wide .tool-chart-gutter span{font-size:12.5px}.tool-chart-wide .tool-chart-bar{flex-direction:column;justify-content:flex-start;padding:6px 12px;font-size:14px;line-height:1.45;border-radius:12px}.tool-chart-wide .tool-chart-bar small{display:block;font-size:12px}.tool-chart-wide .tool-chart-bar span{display:block;-webkit-line-clamp:unset!important;max-height:none;white-space:normal;overflow:hidden;font-size:inherit;line-height:inherit}.tool-chart-wide .tool-chart-bar-time{display:inline}.tool-chart-wide .tool-chart-point{justify-content:flex-start;font-size:14px;height:22px}.tool-chart-wide .tool-chart-point span{display:inline}.rec-tools{margin-top:14px;display:flex;flex-direction:column;gap:14px}.rec-tools-note{margin-top:10px}.rec-tools-block .tool-graph-wrap,.rec-tools-block .tool-graph2{margin-top:6px}.tool-relation-list button:disabled{cursor:default;opacity:1}.tool-relation-list button:disabled:hover{border-color:var(--border)}.games-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.games-search-row{margin:0 0 12px}.games-search-row .search-input{width:100%;box-sizing:border-box}.request-intro{margin:0 0 4px!important}.request-cover{display:flex;align-items:center;gap:12px}.request-cover-preview,.request-cover-empty{flex:none;width:72px;height:72px;border-radius:10px;object-fit:cover;border:1px solid var(--border);background:var(--surface-2)}.request-cover-empty{display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--ink-soft)}.request-cover-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.request-cover-actions input[type=file]{max-width:100%;font-size:13px}.request-list{display:flex;flex-direction:column;gap:10px}.request-card{display:flex;gap:12px;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.request-card.request-bought,.request-card.request-declined{opacity:.72}.request-thumb{flex:none;width:72px;height:72px;border-radius:10px;object-fit:cover;background:var(--placeholder)}.request-thumb-empty{display:flex;align-items:center;justify-content:center;font-size:11.5px;color:var(--ink-soft);text-align:center}.request-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.request-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.request-name{font-size:15px;overflow-wrap:anywhere}.request-meta{margin:0;font-size:12.5px;color:var(--ink-soft);overflow-wrap:anywhere}.request-link{font-size:13px;overflow-wrap:anywhere}.request-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.request-delete{margin-left:auto}.request-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.request-two>label{min-width:0}.request-translation{display:flex;gap:18px}.request-synopsis{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink);white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.request-reason{margin:0;font-size:13px;color:var(--accent-soft-ink);overflow-wrap:anywhere}.request-reason b{margin-right:6px}.tool-chart-head,.tg-name{position:relative}.tool-hide-x{all:unset;box-sizing:border-box;position:absolute;top:1px;right:1px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:15px;line-height:1;color:var(--ink-soft);cursor:pointer;z-index:3}.tool-hide-x:hover{background:var(--border);color:var(--ink)}.tool-hide-x:focus-visible{outline:2px solid var(--accent)}.tool-hidden-people{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px}.tool-hidden-chip{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:0 10px;border-radius:999px;border:1px dashed var(--border);font-size:12.5px;color:var(--ink-soft)}.tool-hidden-chip b{color:var(--accent-soft-ink)}.tool-hidden-chip:hover{border-color:var(--accent);color:var(--ink)}.tool-hidden-chip:focus-visible{outline:2px solid var(--accent)}.tool-date-tabs button{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-y}.tool-date-tabs button.tool-date-slot{background:#ffffff0f;border:1px dashed var(--accent);color:transparent;box-shadow:inset 0 0 8px #00000073}.tool-date-ghost{position:fixed;z-index:200;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:999px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;transform:scale(1.1);box-shadow:0 10px 24px #0000008c;pointer-events:none}.tool-date-hint{margin:-4px 0 10px;font-size:12px}.tool-map-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.tool-map-add input[type=text]{flex:1 1 160px;min-width:0}.tool-map-add .tool-map-file{display:none}.tool-map-pick{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-map-add input[type=text]{min-height:34px;font-size:13.5px}.tool-map-grid{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.tool-map-card{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}.tool-map-thumb{all:unset;display:block;width:100%;cursor:pointer;background:#00000040}.tool-map-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tool-map-thumb img{display:block;width:100%;height:160px;object-fit:contain}.tool-map-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 10px;font-size:13px}.tool-map-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-map-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:flex;flex-direction:column;background:#000000eb}.tool-map-viewer-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;color:#fff}.tool-map-viewer-bar strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-map-viewer-bar .hint{color:#ffffffb3;font-size:12px}.tool-map-viewer-body{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;-webkit-overflow-scrolling:touch}.tool-map-stage{position:relative;line-height:0;max-width:100%}.tool-map-stage img{display:block;max-width:100%;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);user-select:none;-webkit-user-select:none}.tool-map-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.tool-map-canvas.is-drawing{pointer-events:auto;cursor:crosshair;touch-action:none}.tool-map-draw-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 16px 8px;color:#fff}.tool-map-legend{display:inline-flex;gap:12px;flex-wrap:wrap;font-size:13px}.tool-map-legend-item{display:inline-flex;align-items:center;gap:5px}.tool-map-legend-item i{width:12px;height:12px;border-radius:50%;display:inline-block;border:1px solid rgba(255,255,255,.6)}.member-edit-pw-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.member-edit-pw-row label{font-size:13px;color:var(--ink-soft)}.member-edit-pw-row .table-input{flex:1 1 220px;min-width:0}.tool-map-add[hidden]{display:none}.tool-map-thumb{position:relative}.tool-map-check{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;border:2px solid #fff;background:#00000073;color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center}.tool-map-card.is-chosen{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.tool-map-card.is-chosen .tool-map-check{background:var(--accent);border-color:var(--accent)}.celebrate-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;pointer-events:none;overflow:hidden;transition:opacity .9s ease}.celebrate-root.celebrate-out{opacity:0}.celebrate-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.celebrate-glow{position:absolute;left:50%;top:50%;width:min(120vw,120vh);height:min(120vw,120vh);margin:calc(min(120vw,120vh)/-2) 0 0 calc(min(120vw,120vh)/-2);border-radius:50%;background:radial-gradient(circle,rgba(255,225,120,.55) 0%,rgba(255,90,140,.28) 35%,rgba(120,90,255,.12) 58%,transparent 72%);animation:celebrate-glow 4.6s ease-out both}.celebrate-stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;perspective:1100px}.celebrate-coin{position:relative;width:min(62vw,62vh,460px);height:min(62vw,62vh,460px);transform-style:preserve-3d;animation:celebrate-spin 4.6s cubic-bezier(.12,.62,.18,1) both}.celebrate-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:min(52vw,52vh,380px);line-height:1;filter:drop-shadow(0 0 28px rgba(255,220,120,.85))}.celebrate-stage-calm .celebrate-coin{animation:celebrate-calm 2.4s ease-out both}.celebrate-stage-calm .celebrate-layer:not(:last-child){display:none}@keyframes celebrate-spin{0%{transform:scale(.05) rotateY(2880deg) rotateX(40deg) rotate(-30deg);opacity:0}7%{opacity:1}to{transform:scale(1) rotateY(0) rotateX(0) rotate(0);opacity:1}}@keyframes celebrate-glow{0%{transform:scale(.2);opacity:0}25%{opacity:1}to{transform:scale(1);opacity:.85}}@keyframes celebrate-calm{0%{transform:scale(.4);opacity:0}40%{opacity:1}to{transform:scale(1);opacity:1}}.tool-chart-readonly .tool-chart-bar,.tool-chart-readonly .tool-chart-point{cursor:default}.tool-share{margin:0 0 14px;display:flex;flex-direction:column;gap:10px}.tool-share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tool-switch{position:relative;width:46px;height:26px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;padding:0;transition:background .15s,border-color .15s;flex-shrink:0}.tool-switch:disabled{opacity:.6;cursor:default}.tool-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tool-switch.is-on{background:var(--accent);border-color:var(--accent)}.tool-switch-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0006;transition:transform .15s}.tool-switch.is-on .tool-switch-knob{transform:translate(20px)}.tool-share-state{font-size:13.5px;color:var(--ink-soft)}.tool-switch.is-on+.tool-share-state{color:var(--ink);font-weight:600}.tool-share-sync{margin-left:auto;white-space:nowrap}.tool-share-pills{display:flex;gap:6px;flex-wrap:wrap}.tool-share-pill{all:unset;box-sizing:border-box;cursor:pointer;padding:5px 13px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13px;color:var(--ink-soft)}.tool-share-pill:hover{border-color:var(--accent);color:var(--ink)}.tool-share-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tool-share-pill.is-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.form-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.form-title-switch{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-soft);cursor:pointer}.session-cover-field{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.session-cover-field>span{font-size:14px}.session-cover-preview{max-width:min(260px,100%);max-height:200px;border-radius:10px;border:1px solid var(--border);object-fit:contain;background:#00000040}.session-cover-field .tool-map-file{display:none}.place-link{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.place-link:hover{color:var(--accent)}.place-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.session-meta .place-link{color:#5fa8ff;text-decoration:underline;text-decoration-style:solid}.session-meta .place-link:hover{color:#8fc2ff}.clock-field{display:inline-block;max-width:100%}.clock-field-btn{font:inherit;cursor:pointer;padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--ink);min-height:40px}.clock-field-btn:hover,.clock-field-btn[aria-expanded=true]{border-color:var(--accent)}.clock-panel{margin-top:8px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);width:fit-content;max-width:100%;box-sizing:border-box}.clock-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px}.clock-period{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.clock-period button,.clock-step button{font:inherit;font-size:13px;padding:6px 10px;background:none;border:0;color:var(--ink-soft);cursor:pointer}.clock-period button.active{background:var(--accent);color:#fff}.clock-step{display:inline-flex;gap:4px}.clock-step button{border:1px solid var(--border);border-radius:8px}.clock-step button:disabled{opacity:.4;cursor:default}.clock-digits{display:inline-flex;align-items:center;gap:2px;font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}.clock-digits button{font:inherit;background:none;border:0;color:var(--ink-soft);padding:2px 8px;border-radius:8px;cursor:pointer}.clock-digits button.active{color:#fff;background:var(--accent)}.clock-dial{display:block;margin:0 auto;touch-action:none;user-select:none;-webkit-user-select:none;max-width:100%;height:auto;cursor:pointer}.clock-face{fill:var(--surface);stroke:var(--border);stroke-width:1}.clock-tick{stroke:var(--border);stroke-width:1}.clock-tick.is-big{stroke:var(--ink-soft);stroke-width:1.5}.clock-hand{stroke:var(--accent);stroke-width:2}.clock-hub,.clock-knob{fill:var(--accent)}.clock-num{fill:var(--ink);font-size:15px;pointer-events:none}.clock-num.is-active{fill:#fff;font-weight:700}.clock-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.party-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.party-card{display:flex;align-items:center;gap:12px;text-align:left;font:inherit;color:inherit;cursor:pointer;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.party-card:hover{border-color:var(--accent)}.party-card-cover{width:64px;height:64px;border-radius:10px;object-fit:cover;flex-shrink:0}.party-card-cover-empty{display:flex;align-items:center;justify-content:center;font-size:30px;background:var(--surface-2)}.party-card-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.party-card-go{color:var(--accent);font-size:13px;white-space:nowrap}.party-room-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}.party-title{margin:0;font-size:20px}.party-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:12px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.party-panel h3{margin:0;font-size:15px}.party-winner{border-color:#ffb000;background:#ffb0001a}.party-winner-name{margin:0;font-size:24px;font-weight:700}.party-badge{align-self:flex-start;margin-bottom:4px}.party-admin{display:flex;flex-direction:column;gap:14px}.party-games-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.party-game-card{display:flex;gap:12px;text-align:left;font:inherit;color:inherit;cursor:pointer;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.party-game-card:hover{border-color:var(--accent-soft-ink, var(--accent))}.party-game-card.is-picked{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.party-game-cover{width:84px;height:84px;border-radius:10px;object-fit:cover;flex-shrink:0}.party-game-body{display:flex;flex-direction:column;gap:4px;min-width:0}.party-game-desc{font-size:13px;color:var(--ink-soft)}.party-admin-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;position:sticky;bottom:0;padding:10px 0;background:var(--bg)}.party-form-game{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.dice-pair{display:inline-flex;align-items:center;gap:4px}.dice-face{font-size:44px;line-height:1}.dice-total{font-size:18px;margin-left:6px}.dice-roll-btn{font-size:18px;padding:14px 22px}.dice-mine{display:flex;flex-direction:column;gap:6px}.dice-log-round ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.dice-log-round li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 8px;border-radius:8px}.dice-log-round li.is-win{background:#ffb00024}.dice3d-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2900;pointer-events:none;perspective:1100px;overflow:hidden;transition:opacity .4s ease;--dice-base-y: 50vh}.dice3d-root.is-leaving{opacity:0}.dice3d-holder{position:absolute;left:50%;top:var(--dice-base-y);width:0;height:0;transform-style:preserve-3d}.dice3d{position:absolute;left:-42px;top:-42px;width:84px;height:84px;transform-style:preserve-3d}.dice3d-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background:linear-gradient(145deg,#fff,#e3e3ea);border:1px solid #c8c8d0;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:12px;backface-visibility:hidden}.dice3d-face i{display:flex;align-items:center;justify-content:center}.dice3d-face .pip{width:15px;height:15px;border-radius:50%;background:#1b1b22;box-shadow:inset 0 2px 3px #0009}.dice3d-face .pip.pip-red{background:#e5484d;width:19px;height:19px}.dice3d-shadow{position:absolute;left:-46px;top:38px;width:92px;height:22px;border-radius:50%;background:#0009;filter:blur(5px)}.defeat-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2900;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 50% 45%,#0a0e1e8c,#00000ae0);animation:defeat-dim .9s ease-out both;transition:opacity .7s ease}.defeat-root.is-out{opacity:0}.defeat-drop{position:absolute;top:-50px;opacity:.85;animation:defeat-fall linear infinite}.defeat-face{position:absolute;left:50%;top:40%;font-size:min(34vw,190px);line-height:1;transform:translate(-50%,-50%);animation:defeat-sink 3.6s ease-in-out both;filter:grayscale(.6) drop-shadow(0 0 22px rgba(80,110,200,.45))}@keyframes defeat-dim{0%{opacity:0}to{opacity:1}}@keyframes defeat-fall{to{transform:translateY(115vh) rotate(18deg)}}@keyframes defeat-sink{0%{transform:translate(-50%,-90%) scale(.6) rotate(-6deg);opacity:0}25%{opacity:1}55%{transform:translate(-50%,-48%) scale(1) rotate(5deg)}to{transform:translate(-50%,-30%) scale(.92) rotate(-3deg);opacity:.9}}.party-result{text-align:center;max-width:360px}.party-result h3{font-size:26px;margin:0 0 8px}.party-result p{margin:0 0 16px}.party-result-win{border:2px solid #ffb000;box-shadow:0 0 0 4px #ffb0002e,0 18px 50px #00000080;animation:party-win-pop .55s cubic-bezier(.2,1.4,.4,1) both}.party-result-win h3{color:#ffd45a}.party-result-lose{border:2px solid #4b5a7a;filter:grayscale(.55);animation:party-lose-drop .9s ease-out both}.party-result-lose h3{color:#9fb0d4}@keyframes party-win-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@keyframes party-lose-drop{0%{transform:translateY(-40px);opacity:0}55%{transform:translateY(8px);opacity:1}75%{transform:translate(-6px)}90%{transform:translate(4px)}to{transform:none;opacity:1}}.fc-game{--fc-river: #2f78b7;--fc-sky: #7b3fa0;--fc-forest: #3b7d48;--fc-field: #c08a2e;display:flex;flex-direction:column;gap:12px}.fc-r-river{--fc-c: var(--fc-river)}.fc-r-sky{--fc-c: var(--fc-sky)}.fc-r-forest{--fc-c: var(--fc-forest)}.fc-r-field{--fc-c: var(--fc-field)}.fc-r-text-river{color:#5aa7e6}.fc-r-text-sky{color:#b583d6}.fc-r-text-forest{color:#6cc07d}.fc-r-text-field{color:#e3b250}.fc-hostbar{display:flex;justify-content:flex-end}.fc-admin-btn{border-color:var(--accent);color:var(--accent)}.fc-timer{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;margin:4px 0}.fc-rolechips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.fc-rolechip{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-size:12.5px}.fc-deadrow,.fc-mycard-btn{margin-top:10px}.fc-prompt{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:10px;margin:8px 0}.fc-choice-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fc-card{width:100%;background:#fff;color:#2b2523;border-radius:12px;overflow:hidden;border:1px solid #b9aea6;box-shadow:0 10px 30px #0006;display:flex;flex-direction:column;text-align:left}.fc-card-regions{display:grid;grid-template-columns:repeat(4,1fr);background:#a99d94;gap:1px}.fc-card-region{position:relative;text-align:center;padding:9px 0;font-weight:700;font-size:15px;color:#fff;background:#a99d94}.fc-card-region.is-home{background:var(--fc-c)}.fc-card-region.is-banned:before,.fc-card-region.is-banned:after{content:"";position:absolute;left:50%;top:50%;width:120%;height:3px;background:#e5262b}.fc-card-region.is-banned:before{transform:translate(-50%,-50%) rotate(40deg)}.fc-card-region.is-banned:after{transform:translate(-50%,-50%) rotate(-40deg)}.fc-card-art{position:relative;flex:0 0 auto;height:190px;display:flex;align-items:center;justify-content:center;background:#fff;padding:14px 14px 30px;box-sizing:border-box}.fc-animal{line-height:1}.fc-animal-icon{font-size:1.15em;vertical-align:-.1em}.fc-card-art .fc-animal{font-size:104px}.fc-card.is-compact .fc-card-art .fc-animal{font-size:clamp(26px,9vw,44px)}.fc-card-name{position:absolute;right:12px;bottom:8px;font-size:24px;letter-spacing:.02em}.fc-card-info{margin:0;padding:12px 14px;background:#d9cdc5;flex:1;display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.45}.fc-card-info>div{display:flex;gap:10px}.fc-card-info dt{flex:0 0 56px;font-weight:700;white-space:nowrap}.fc-card-info dt.is-win{color:#c4622d}.fc-card-info dt.is-lose{color:#d12a2a}.fc-card-info dd{margin:0;word-break:keep-all;overflow-wrap:anywhere}.fc-back{width:100%;height:100%;border-radius:12px;background:repeating-linear-gradient(45deg,#5a1019 0,#5a1019 8px,#4a0c14 8px,#4a0c14 16px);border:2px solid #c9a24a;box-shadow:inset 0 0 0 4px #2a0a0f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-sizing:border-box}.fc-back-mark{font-size:34px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}.fc-back-label{color:#f3e7c6;font-size:clamp(10px,3vw,13px);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;padding:0 4px;word-break:keep-all}.fc-flip{perspective:900px}.fc-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.3,1.2,.4,1)}.fc-flip.is-flipped .fc-flip-inner{transform:rotateY(180deg)}.fc-flip-down,.fc-flip-up{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.fc-flip-up{transform:rotateY(180deg)}.fc-flip-mini{width:100%;aspect-ratio:3 / 4}.fc-flip-mini .fc-flip-up>.fc-card{height:100%;border-radius:10px;box-shadow:none}.fc-card.is-compact .fc-card-region{padding:4px 0;font-size:9px}.fc-card.is-compact .fc-card-art{flex:1;height:auto;padding:4px 4px 24px;min-height:0}.fc-card.is-compact .fc-card-name{right:5px;bottom:3px;font-size:11px}.fc-card.is-compact .fc-card-region.is-banned:before,.fc-card.is-compact .fc-card-region.is-banned:after{height:2px}.fc-flip-big{width:min(80vw,300px);aspect-ratio:300 / 440}.fc-flip-big .fc-flip-up>.fc-card{height:100%}.fc-reveal{z-index:2800}.fc-reveal-stage{display:flex;flex-direction:column;align-items:center;gap:14px;color:#fff}.fc-reveal-stage h3{margin:0;font-size:20px}.fc-card-grid,.fc-board,.fc-region-pick,.fc-field-grid,.fc-stepper-grid{box-sizing:border-box;width:100%}.fc-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.fc-card-btn{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;border-radius:12px;transition:transform .15s ease;font:inherit}.fc-card-btn:hover:not(:disabled){transform:translateY(-4px)}.fc-card-btn:disabled{cursor:default}.fc-card-btn.is-taken:not(.is-mine){opacity:.25}.fc-card-btn.is-mine{outline:2px solid #ffb000}.fc-region-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.fc-region-btn{position:relative;height:84px;border-radius:12px;border:3px solid transparent;background:var(--fc-c);color:#fff;font-size:22px;font-weight:800;cursor:pointer;font-family:inherit}.fc-region-btn:disabled{opacity:.35;cursor:not-allowed}.fc-region-btn.is-chosen{border-color:#fff;box-shadow:0 0 0 3px var(--fc-c),0 0 18px #ffffff59}.fc-x{position:absolute;top:0;right:0;bottom:0;left:0}.fc-x:before,.fc-x:after{content:"";position:absolute;left:50%;top:50%;width:70%;height:4px;background:#ff3b4d}.fc-x:before{transform:translate(-50%,-50%) rotate(35deg)}.fc-x:after{transform:translate(-50%,-50%) rotate(-35deg)}.fc-bigwhere{font-size:20px;margin:10px 0}.fc-bigwhere b{font-size:30px}.fc-gmtable{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px;font-size:14px;margin:8px 0}.fc-countdown{text-align:center}.fc-count{font-size:120px;font-weight:800;margin:0;line-height:1.1;color:var(--accent);animation:fc-pulse 1s ease-in-out infinite}@keyframes fc-pulse{0%{transform:scale(1.25);opacity:.4}40%{transform:scale(1);opacity:1}to{transform:scale(.95);opacity:.85}}.fc-board{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.fc-quad{background:color-mix(in srgb,var(--fc-c) 22%,var(--surface-2));border:2px solid color-mix(in srgb,var(--fc-c) 70%,transparent);border-radius:12px;padding:10px;min-height:130px}.fc-quad.is-mine{border-color:#fff;box-shadow:0 0 14px color-mix(in srgb,var(--fc-c) 70%,transparent)}.fc-quad-title{display:block;font-size:18px;margin-bottom:8px}.fc-quad-list{display:flex;flex-wrap:wrap;gap:6px}.fc-name{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:14px;font-family:inherit;cursor:pointer}.fc-name:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.fc-name:disabled{cursor:default}.fc-name.is-self{border-color:#fff;font-weight:700}.fc-result{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:6px;text-align:left}.fc-result li{display:grid;grid-template-columns:1fr auto 44px;gap:8px;align-items:center;background:var(--surface-2);border-radius:8px;padding:8px 10px;font-size:14px}.fc-result li.is-win{outline:1px solid #ffb000}.fc-result li b{text-align:right;color:var(--ink-soft)}.fc-result li.is-win b{color:#ffd45a}.fc-admin-sub{margin:16px 0 8px;font-size:14px}.fc-stepper-grid{display:grid;grid-template-columns:1fr;gap:6px}.fc-stepper{display:flex;align-items:center;gap:6px;font-size:13.5px}.fc-stepper>span{flex:1;min-width:0;overflow-wrap:anywhere}.fc-stepper>button,.fc-stepper>b{flex:0 0 auto}.fc-stepper b{width:20px;text-align:center;font-variant-numeric:tabular-nums}.fc-stepper .btn-ghost{height:30px;min-height:0;padding:0 10px}.fc-total{margin:10px 0;font-weight:700}.fc-total.is-ok{color:#6cc07d}.fc-total.is-bad{color:#ff7a85}.fc-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 14px}.fc-field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-soft)}.fc-field input{min-width:0;width:100%;box-sizing:border-box;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:8px;font-size:14px}.fc-check{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:13px;color:var(--ink-soft)}.fc-alert{border:2px solid #ff3b4d}.fc-alert h3{color:#ff7a85}.fc-toasts{position:fixed;left:50%;top:70px;transform:translate(-50%);z-index:2700;display:flex;flex-direction:column;gap:6px;pointer-events:none;width:min(92vw,360px)}.fc-toast{background:#14080af0;border:1px solid #ff3b4d;color:#fff;border-radius:10px;padding:10px 14px;font-size:14px;animation:fc-toast-in .35s ease-out both}@keyframes fc-toast-in{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}.fc-claw-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2950;pointer-events:none;overflow:hidden}.fc-claw-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,#78000a1a,#96000c99);animation:fc-flash 1.5s ease-out both}.fc-claw-gash{position:absolute;clip-path:inset(0 0 100% 0);animation:fc-gash-cut .3s cubic-bezier(.2,.75,.25,1) forwards;filter:drop-shadow(0 0 5px rgba(255,30,50,.95)) drop-shadow(0 0 20px rgba(210,0,25,.65))}.fc-claw-gash svg{display:block}@keyframes fc-gash-cut{to{clip-path:inset(0 0 0 0)}}.fc-claw-root{animation:fc-claw-out .5s ease-in 1.1s forwards}@keyframes fc-claw-out{to{opacity:0}}@keyframes fc-flash{0%{opacity:0}12%{opacity:1}to{opacity:0}}.fc-shake{animation:fc-shake-kf .5s ease-in-out 2}@keyframes fc-shake-kf{0%,to{transform:none}20%{transform:translate(-8px,4px)}40%{transform:translate(7px,-5px)}60%{transform:translate(-6px,-3px)}80%{transform:translate(5px,4px)}}.fc-feast-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2950;pointer-events:none;overflow:hidden;display:flex;align-items:center;justify-content:center;animation:fc-feast-out .5s ease-in 1.7s both}.fc-feast-face{font-size:min(30vw,130px);animation:fc-feast-chomp 1.6s ease-in-out both;position:absolute;top:14%}.fc-feast-word{position:absolute;top:72%;font-size:44px;font-weight:800;color:#ffd45a;text-shadow:0 3px 12px rgba(0,0,0,.7);animation:fc-feast-word 1.6s ease-out both}.fc-feast-bit{position:absolute;font-size:34px;opacity:0;animation:fc-feast-fly 1.3s ease-out both}@keyframes fc-feast-chomp{0%{transform:scale(.2);opacity:0}20%{transform:scale(1.25);opacity:1}35%{transform:scale(.9,1.1)}50%{transform:scale(1.15,.85)}65%{transform:scale(.95,1.08)}to{transform:scale(1);opacity:1}}@keyframes fc-feast-word{0%{transform:translateY(20px) scale(.4);opacity:0}40%{transform:translateY(0) scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}@keyframes fc-feast-fly{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}@keyframes fc-feast-out{to{opacity:0}}@media (prefers-reduced-motion: reduce){.fc-flip-inner{transition-duration:.01s}.fc-count{animation:none}}.fc-mycard-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.fc-mycard-row .fc-mycard-btn{margin-top:0}.fc-peeklog-name{display:block;margin-top:4px;font-size:12px;color:var(--ink-soft);text-align:center}.liar-cats{display:flex;flex-wrap:wrap;gap:8px}.liar-cat{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:13.5px;cursor:pointer;color:var(--ink-soft)}.liar-cat.is-on{border-color:var(--accent);color:var(--ink)}.liar-cardwrap{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.liar-card-btn{width:min(78vw,260px);padding:0;border:0;background:none;cursor:pointer;font:inherit}.liar-flip{width:100%;aspect-ratio:3 / 2}.liar-face{width:100%;height:100%;box-sizing:border-box;border-radius:12px;background:#d9cdc5;color:#2b2523;border:2px solid #a99d94;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;text-align:center}.liar-face.is-liar{background:#3a0d14;color:#ffd9dd;border-color:#ff3b4d}.liar-face-cat{font-size:13px;font-weight:700;opacity:.8}.liar-face-word{font-size:24px;line-height:1.25;word-break:keep-all}.liar-face small{font-size:12px;opacity:.85}.liar-guess{width:100%;display:flex;flex-direction:column;gap:6px;background:var(--surface-2);border:1px solid var(--accent);border-radius:10px;padding:10px;box-sizing:border-box}.liar-guess-row{display:flex;gap:8px}.liar-guess-row input{flex:1;min-width:0;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:10px;font-size:15px}.liar-votes{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.liar-vote{background:var(--surface-2);color:var(--ink);border:2px solid var(--border);border-radius:10px;padding:12px 8px;font:inherit;font-size:14.5px;cursor:pointer}.liar-vote.is-chosen{border-color:var(--accent);background:#3a0d14}.liar-secret{border:1px dashed var(--border);border-radius:6px;padding:6px 8px}.liar-rules{width:100%;box-sizing:border-box;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.liar-rules h4{margin:0 0 8px;font-size:14px}.liar-rules ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13.5px}.liar-rules li{display:flex;flex-direction:column;gap:1px}.liar-rules li span{color:var(--ink-soft)}.liar-sub{margin:8px 0 0;font-size:14px}.liar-scores li{grid-template-columns:1fr auto 44px}.liar-total{color:var(--ink)!important;font-variant-numeric:tabular-nums}.liar-gain{text-align:right;color:#6cc07d;font-variant-numeric:tabular-nums;font-weight:700}.liar-history{width:100%;font-size:13px;color:var(--ink-soft)}.liar-history ul{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.liar-voted li{grid-template-columns:1fr auto auto}.liar-voted li b{white-space:nowrap}.gamechat-fab{position:fixed;right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:11px 18px;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer;box-shadow:0 6px 20px #00000073}.gamechat-badge{background:#fff;color:var(--accent);border-radius:999px;min-width:20px;padding:1px 6px;font-size:12px;text-align:center}.gamechat-sheet{position:fixed;right:0;bottom:0;z-index:90;width:min(100%,480px);height:min(78dvh,680px);background:var(--surface);border:1px solid var(--border);border-radius:14px 14px 0 0;box-shadow:0 -10px 40px #0000008c;display:flex;flex-direction:column}.gamechat-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--border)}.gamechat-head .hint{margin:0;flex:1;min-width:140px}.gamechat-head .btn-ghost{height:34px;min-height:0;padding:0 12px}.gamechat-body{flex:1;min-height:0;overflow-y:auto;padding:8px}.gamechat-body .chat-messages{max-height:none;min-height:200px}.gamechat-body{display:flex;flex-direction:column}.gamechat-body .chat-block,.gamechat-body .chat-panel{flex:1;min-height:0;display:flex;flex-direction:column}.gamechat-body .chat-messages{flex:1;min-height:0;overflow-y:auto}.liar-hints{width:100%;box-sizing:border-box;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px}.liar-hints-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.liar-hints-head .hint{margin:0}.liar-hints ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-size:14px}.gamechat-sheet.is-closed{display:none}@media (pointer: coarse),(max-width: 720px){.nav-user .btn-ghost{height:34px;min-height:34px;padding:0 12px;font-size:13px}.party-room-head{flex-direction:column;align-items:flex-start;gap:8px}}.party-room{padding-bottom:84px}.gamechat-fab{padding:9px 15px;font-size:14px}.party-room .form-error,.party-room+.form-error{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-soft-ink, var(--ink));border-radius:10px;padding:10px 12px}.empty-box{text-align:center;padding:28px 16px;border:1px dashed var(--border);border-radius:10px}.liar-cat input,.fc-check input{accent-color:var(--accent);width:16px;height:16px;margin:0}.liar-cat{min-height:40px}.fc-name,.liar-vote{min-height:44px}.modal-card-wide .modal-actions{position:sticky;bottom:-24px;background:var(--surface);padding:12px 0 4px;margin-top:12px}.fc-total{margin-bottom:12px}.fc-field-grid{align-items:start}@media (max-width: 420px){.fc-field-grid{grid-template-columns:1fr}}.fc-card.is-compact .fc-card-region{font-size:10.5px}.party-panel .hint,.modal-card .hint,.gamechat-head .hint{color:#b4aea7}.sync-choices{display:flex;flex-direction:column;gap:10px;margin:12px 0}.modal-card .sync-choices button{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;gap:4px;width:100%;height:auto;min-height:0;padding:12px 14px;text-align:left;white-space:normal;line-height:1.4;font-size:15px;font-weight:600;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;box-sizing:border-box}.modal-card .sync-choices button:first-child{border-color:var(--accent);background:var(--accent-soft)}.modal-card .sync-choices button:hover{border-color:var(--accent)}.sync-choices .hint{font-size:12.5px;font-weight:400;color:var(--ink-soft);white-space:normal}.bingo-game .party-panel{gap:10px}.bingo-rules{background:var(--surface-2);border-radius:10px;padding:10px 14px}.bingo-rules h4{margin:0 0 6px;font-size:14px}.bingo-rules ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:13.5px;color:var(--ink-soft)}.bingo-board{display:grid;gap:6px;width:100%;max-width:440px}.bingo-cell,.bingo-input{box-sizing:border-box;aspect-ratio:1 / 1;min-width:0;padding:4px;margin:0;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;font:inherit;font-size:14px;line-height:1.25;word-break:keep-all;overflow-wrap:anywhere}.bingo-s5 .bingo-cell,.bingo-s5 .bingo-input{font-size:12.5px}.bingo-s6 .bingo-cell,.bingo-s6 .bingo-input{font-size:11px;padding:2px}.bingo-s6,.bingo-s5{gap:4px}.bingo-input{resize:none;overflow:hidden;display:block;padding-top:30%}.bingo-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.bingo-input.is-dupe{border-color:var(--accent);background:var(--accent-soft)}.bingo-cell.is-pickable{cursor:pointer}.bingo-cell.is-pickable:hover{border-color:var(--accent)}.bingo-cell.is-lit{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 12px #e5484d8c,inset 0 0 10px #e5484d59;font-weight:700;animation:bingo-glow .6s ease-out}.bingo-cell.is-lit.is-line{background:#ffb00038;border-color:#ffb000;box-shadow:0 0 14px #ffb000a6,inset 0 0 10px #ffb00059}@keyframes bingo-glow{0%{transform:scale(.9);box-shadow:0 0 #e5484d00}60%{transform:scale(1.06)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.bingo-cell.is-lit{animation:none}}.bingo-turn{margin:0;padding:10px 12px;border-radius:10px;background:var(--surface-2);font-weight:600}.bingo-turn.is-me{background:var(--accent-soft);border:1px solid var(--accent)}.bingo-called{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto}.bingo-called li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;background:var(--surface-2);border-radius:8px;padding:8px 10px;font-size:14px}.bingo-called li span{font-size:12.5px;color:var(--ink-soft);text-align:right}.bingo-hostrow{display:flex;flex-wrap:wrap;gap:8px}.bingo-all{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;width:100%}.bingo-all-item{display:flex;flex-direction:column;gap:6px}.bingo-board.is-small .bingo-cell{font-size:10.5px;padding:2px}.participant-pill.is-done{border-color:var(--accent);color:var(--accent-soft-ink);background:var(--accent-soft)}.qb-pool{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto;width:100%}.qb-q{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 12px;text-align:left;font:inherit;font-size:14px;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;cursor:pointer}.qb-q:disabled{opacity:.45;cursor:not-allowed}.qb-q.is-picked{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.qb-q-n{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:11px;background:var(--accent);color:#fff;font-size:12px;font-weight:700}.qb-board{display:grid;gap:6px;width:100%;max-width:480px}.bingo-cell.qb-cell{aspect-ratio:auto;min-height:92px;flex-direction:column;gap:6px;padding:6px 4px;font-size:12px}.qb-board.bingo-s5 .qb-cell{min-height:84px;font-size:10.5px}.qb-cell-q{color:var(--ink-soft);line-height:1.3}.qb-cell-name{font-size:14px;color:var(--ink)}.qb-cell.is-lit .qb-cell-q{color:var(--ink)}.qb-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:12px 0;max-height:300px;overflow-y:auto}.qb-person{min-height:44px;padding:8px 10px;font:inherit;font-size:14px;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;cursor:pointer}.qb-person:hover:not(:disabled){border-color:var(--accent)}.qb-person.is-on{border-color:var(--accent);background:var(--accent-soft);font-weight:700}.qb-person:disabled{opacity:.45;cursor:not-allowed}.qb-textarea{width:100%;box-sizing:border-box;font:inherit;font-size:14px;line-height:1.5;padding:10px 12px;background:var(--surface-2);color:var(--ink);border:1px solid var(--border);border-radius:10px;resize:vertical}.qb-verify{display:flex;flex-direction:column;gap:6px;width:100%}.qb-verify details{background:var(--surface-2);border-radius:8px;padding:8px 10px}.qb-verify summary{cursor:pointer;font-size:14px}.qb-verify ol{margin:8px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:4px;font-size:13px}.qb-verify li span{color:var(--ink-soft)}.qb-verify li b{margin-left:8px}.au-game .party-panel{align-items:stretch}.modal-overlay.au-modal{z-index:1600}.au-fx{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1700}.au-card{--cc: #8c8f99;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;box-sizing:border-box;aspect-ratio:5 / 7;padding:8%;color:var(--ink);font:inherit;text-align:center;background:linear-gradient(160deg,color-mix(in srgb,var(--cc) 38%,#15141a),#15141a 78%);border:2px solid var(--cc);border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px #00000080,0 6px 18px color-mix(in srgb,var(--cc) 30%,transparent)}button.au-card{cursor:pointer}.au-card.is-info{--cc: #26b9d9}.au-card.is-buff{--cc: #e6b53c}.au-card.is-def{--cc: #4a90f0}.au-card.is-atk{--cc: #e5535f}.au-card.is-heal{--cc: #33b57c}.au-card-order{align-self:flex-start;min-width:1.7em;padding:0 .4em;font-size:.72em;font-weight:800;line-height:1.7;color:#0c0c0e;background:var(--cc);border-radius:999px}.au-card-art{font-size:2.6em;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6))}.au-card-name{font-weight:800;font-size:.95em;line-height:1.2;word-break:keep-all}.au-card-stamp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-14deg);padding:2px 8px;font-size:.8em;font-weight:800;color:#fff;background:#000000b8;border:2px solid #fff;border-radius:6px;white-space:nowrap}.au-card.st-used,.au-card.st-unused,.au-card.st-cancelled{filter:saturate(.4) brightness(.8)}.au-card-xs{width:42px;font-size:9px;padding:4px;border-width:1.5px;border-radius:8px}.au-card-xs .au-card-order,.au-card-xs .au-card-name{display:none}.au-card-xs .au-card-art{font-size:1.9em;margin:auto}.au-card-sm{width:84px;font-size:11px}.au-card-md{width:112px;font-size:13px}.au-card-lg{width:150px;font-size:16px}.au-card-xl{width:clamp(150px,17vw,330px);font-size:clamp(15px,1.7vw,34px);flex:none}.au-ring{position:relative;display:grid;place-items:center;width:96px;height:96px;flex:none}.au-ring svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.au-ring-bg{fill:none;stroke:var(--border);stroke-width:8}.au-ring-fg{fill:none;stroke:var(--accent-soft-ink);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .3s linear}.au-ring b{position:relative;font-size:2em;font-variant-numeric:tabular-nums}.au-ring-sm{width:64px;height:64px;font-size:14px}.au-ring-md{width:84px;height:84px;font-size:16px}.au-ring-lg{width:clamp(96px,9vw,170px);height:clamp(96px,9vw,170px);font-size:clamp(16px,1.7vw,32px)}.au-ring.is-hot .au-ring-fg{stroke:var(--accent)}.au-ring.is-hot b{color:var(--accent)}.au-teamtag{color:var(--tc, var(--ink));font-weight:800;white-space:nowrap}.au-chip{display:inline-block;padding:.15em .8em;font-weight:700;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.au-hp{position:relative;display:block;width:100%;height:1.45em;min-height:20px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;overflow:hidden}.au-hp-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#2fae78,#7ddf7d);border-radius:999px;transition:width .4s ease}.au-hp.is-low .au-hp-fill{background:linear-gradient(90deg,#d93a49,#ff7a6b)}.au-hp-text{position:relative;display:block;text-align:center;font-size:12px;font-weight:800;line-height:1.45em;text-shadow:0 1px 2px rgba(0,0,0,.9);color:#fff}.au-hp.is-compact{width:120px;height:18px;min-height:18px;display:inline-block;vertical-align:middle;margin-left:8px}.au-hp.is-compact .au-hp-text{font-size:11px;line-height:18px}.au-board{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:14px 16px 84px;overflow:auto;color:var(--ink);font-size:clamp(14px,1.45vw,30px);background:radial-gradient(ellipse at 50% -10%,#2a1b22 0%,var(--bg) 60%)}.au-b-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.au-b-top h1{margin:0;font-size:1.7em;letter-spacing:.02em}.au-phase{font-size:1.05em;color:var(--accent-soft-ink);background:var(--accent-soft);border-color:transparent}.au-b-main{position:relative;min-height:0}.au-b-side{display:flex;flex-direction:column;gap:12px;min-width:0}@media (min-width: 960px){.au-board{grid-template-columns:minmax(0,1fr) clamp(250px,25vw,480px);grid-template-rows:auto minmax(0,1fr)}.au-b-top{grid-column:1 / -1}}.au-stage{display:flex;flex-direction:column;gap:14px}.au-stage-center{align-items:center;justify-content:center;text-align:center;min-height:50vh}.au-stage h2{margin:0;font-size:2em}.au-lead{margin:0;max-width:40em;color:var(--ink-soft);font-size:1.15em;line-height:1.6}.au-progress{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;width:min(34em,100%)}.au-progress li{display:grid;grid-template-columns:1fr minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-left:6px solid var(--tc);border-radius:10px;font-size:1.1em;text-align:left}.au-progress meter{width:100%;height:14px}.au-lot-head,.au-act-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.au-chip{font-size:1.1em}.au-lot-main{display:flex;align-items:center;gap:clamp(14px,3vw,44px);flex-wrap:wrap}.au-lot-info{flex:1 1 14em;min-width:0}.au-lot-info h2{font-size:2.6em}.au-lot-cat{margin:6px 0;color:var(--accent-soft-ink);font-size:1.2em}.au-lot-desc{margin:6px 0 0;font-size:1.3em;line-height:1.55;color:var(--ink)}.au-price{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 18px;text-align:center;background:var(--surface);border:2px solid var(--border);border-radius:16px}.au-price.has-bid{border-color:var(--tc);box-shadow:0 0 28px color-mix(in srgb,var(--tc) 40%,transparent)}.au-price small{color:var(--ink-soft);font-size:1.1em}.au-price b{font-size:clamp(34px,5.4vw,120px);line-height:1.1;font-variant-numeric:tabular-nums}.au-price span{font-size:1.4em;font-weight:700}.au-bids{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.au-bids li{padding:4px 12px;font-size:1.05em;background:var(--surface-2);border:1px solid var(--tc);border-radius:999px;font-variant-numeric:tabular-nums}.au-queue{list-style:none;margin:0;padding:6px 2px 10px;display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity}.au-queue li{flex:none;display:grid;place-items:center;width:3.4em;padding:4px 0 6px;background:var(--surface);border:2px solid color-mix(in srgb,var(--tc) 55%,var(--border));border-radius:10px;opacity:.85}.au-queue li i{font-style:normal;font-size:.72em;color:var(--ink-soft)}.au-queue li span{font-size:1.6em;line-height:1.2}.au-queue li.is-current{opacity:1;background:color-mix(in srgb,var(--tc) 30%,var(--surface));border-color:var(--tc);transform:scale(1.18);box-shadow:0 0 18px color-mix(in srgb,var(--tc) 55%,transparent)}.au-queue li.is-passed{opacity:.35}.au-queue li.is-used{opacity:.55;text-decoration:line-through}.au-turn{display:flex;align-items:center;gap:clamp(14px,3vw,44px);flex-wrap:wrap}.au-turn-info{flex:1 1 14em;min-width:0;display:flex;flex-direction:column;gap:8px}.au-turn-info h2{font-size:2.8em}.au-turn-no{margin:0;font-size:1.3em;font-weight:800;color:var(--accent-soft-ink)}.au-turn-who{margin:0;font-size:1.6em}.au-turn-wait{display:flex;align-items:center;gap:14px;margin:0;color:var(--ink-soft);font-size:1.2em}.au-banner{position:absolute;left:50%;bottom:4%;z-index:5;transform:translate(-50%);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.6em 1em;max-width:96%;padding:.7em 1.2em;font-size:1.3em;font-weight:800;background:#080709e0;border:2px solid var(--border);border-radius:14px;animation:au-pop .25s ease-out}.au-banner-card{padding:.1em .7em;color:#fff;background:var(--surface-2);border-radius:999px}.au-banner-res{padding:.1em .7em;color:#0c0c0e;background:#cfd3dc;border-radius:6px}.au-banner-res.is-hit,.au-banner-res.is-kill{background:#ff5a6b;color:#fff}.au-banner-res.is-blocked{background:#62b0ff}.au-banner-res.is-heal{background:#46e08a}@keyframes au-pop{0%{transform:translate(-50%) scale(.85);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.au-teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5em,1fr));gap:10px}.au-team{padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-top:5px solid var(--tc);border-radius:10px}.au-team h3{display:flex;justify-content:space-between;gap:6px;margin:0 0 6px;font-size:1.05em;color:var(--tc)}.au-team h3 small{color:var(--ink-soft);font-weight:700}.au-team ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.au-team li{font-size:1em}.au-team li.is-dead{color:var(--ink-soft);text-decoration:line-through}.au-team-cards{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 0;font-size:1.15em}.au-feed{list-style:none;margin:0;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:.95em;color:var(--ink-soft)}.au-feed li:first-child{color:var(--ink);font-weight:700}.au-feed li.k-death{color:#ff8a93}.au-done{align-items:center;text-align:center}.au-winners{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin:0;font-size:2.2em}.au-score{width:min(46em,100%);border-collapse:collapse;font-size:1.15em}.au-score th,.au-score td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left}.au-score th{color:var(--ink-soft);font-weight:700;font-size:.9em}.au-score tr.is-win td{background:#ffb0001f}.au-score tr.is-out{opacity:.6}.au-allcards{width:min(46em,100%);text-align:left;color:var(--ink-soft)}.au-allcards ul{margin:8px 0 0;padding-left:20px;font-size:.95em}.au-paused{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1650;display:grid;place-items:center;font-size:4em;font-weight:900;background:#0009;pointer-events:none}.au-peek{position:fixed;right:12px;top:12px;z-index:1640;width:min(46em,calc(100% - 24px));max-height:70vh;overflow:auto;padding:12px 14px;font-size:13px;background:#0c0c0ef5;border:2px solid var(--accent);border-radius:12px}.au-peek h3{margin:0 0 8px;font-size:14px;color:var(--accent-soft-ink)}.au-peek ul{margin:0 0 8px;padding-left:18px}.au-peek table{width:100%;border-collapse:collapse}.au-peek td{padding:3px 6px;border-bottom:1px solid var(--border);vertical-align:top}.au-controls{position:fixed;left:0;right:0;bottom:0;z-index:1600;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:22px 12px 12px;background:linear-gradient(transparent,#000000e6 55%);opacity:0;pointer-events:none;transition:opacity .25s}.au-controls.is-on{opacity:1;pointer-events:auto}.au-controls button{font-size:14px}.au-controls .btn-ghost.is-on{border-color:var(--accent);color:var(--accent-soft-ink)}.au-pad .party-panel{align-items:stretch}.au-pad{border-left:4px solid var(--tc);padding-left:10px}.au-pad.is-dead{filter:grayscale(.7)}.au-toast{position:sticky;top:8px;z-index:30;margin:0 0 10px;padding:10px 14px;font-size:14px;font-weight:700;background:var(--accent-soft);color:var(--accent-soft-ink);border:1px solid var(--accent);border-radius:10px}.au-me-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:15px}.au-leader,.au-deadtag{padding:1px 8px;font-size:12px;font-weight:800;border-radius:999px}.au-leader{color:#1b1300;background:#ffd166}.au-deadtag{color:#fff;background:#555}.au-warn{margin:0;padding:8px 10px;font-size:13px;color:#ffc9a8;background:#ff783c24;border:1px solid rgba(255,120,60,.45);border-radius:8px}.au-status{display:flex;gap:6px;flex-wrap:wrap;margin:0}.au-status span{padding:2px 8px;font-size:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.au-money{margin:0;font-size:14px;color:var(--ink-soft)}.au-money b{font-size:20px;color:var(--ink)}.au-box .au-lead{font-size:14px}.au-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.au-person{min-height:44px;padding:8px 10px;font:inherit;font-size:14px;color:var(--ink);background:var(--surface-2);border:1px solid var(--tc, var(--border));border-radius:10px;cursor:pointer}.au-person:hover:not(:disabled){border-color:var(--accent)}.au-person.is-on{background:var(--accent-soft);border-color:var(--accent);font-weight:800}.au-person:disabled{opacity:.45;cursor:not-allowed}.au-target-group{padding-left:8px;border-left:4px solid var(--tc);display:flex;flex-direction:column;gap:6px;margin-top:4px}.au-target-group h4{margin:0;font-size:13px;color:var(--tc)}.au-fund{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.au-fund li{display:flex;align-items:center;justify-content:space-between;gap:10px}.au-fund-in{display:inline-flex;align-items:center;gap:6px}.au-fund-in input{width:110px;min-height:40px;box-sizing:border-box;padding:6px 10px;font:inherit;font-size:15px;text-align:right;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.au-fund-in em{font-style:normal;color:var(--ink-soft);font-size:13px}.au-fund-rest{margin:0;font-size:13px;color:var(--ink-soft)}.au-fund-rest.is-bad{color:#ff8a93;font-weight:700}.au-bidrow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.au-bidrow .au-bid{min-height:64px;font-size:20px;font-weight:800}.au-bidstate{margin:0;font-size:14px;color:var(--ink-soft)}.au-bidstate.is-top{color:#7dffb3;font-weight:700}.au-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-soft)}.au-lines li:first-child{color:var(--ink);font-weight:700}.au-hand{display:flex;flex-wrap:wrap;gap:8px}.au-hand-mini{gap:4px}.au-mates{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.au-mates li.is-dead{opacity:.55}.au-mate-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:6px;font-size:14px}.au-rosters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.au-roster{padding:8px 10px;background:var(--surface-2);border-left:4px solid var(--tc);border-radius:8px}.au-roster h4{margin:0 0 4px;font-size:13px;color:var(--tc)}.au-roster p{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0;font-size:13px}.au-roster .is-dead{color:var(--ink-soft);text-decoration:line-through}.au-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.au-notes li{padding:6px 8px;background:var(--surface-2);border-radius:8px;line-height:1.45}.au-notes li.is-result{border-left:3px solid #38d6ff}.au-notes li.is-hurt{border-left:3px solid var(--accent)}.au-foot{margin-bottom:14px}.au-turnmodal{z-index:1650}.au-turn-card{display:flex;flex-direction:column;align-items:center;gap:10px;max-height:92vh;overflow-y:auto;text-align:center}.au-turn-alert{margin:0;font-size:20px;font-weight:900;color:var(--accent)}.au-info-desc{margin:0;font-size:14px;line-height:1.55;color:var(--ink-soft)}.au-turn-card .au-people{width:100%}.au-turn-card .au-use{width:100%;min-height:54px;font-size:18px;font-weight:800}.au-info{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.au-codex{max-height:88vh;overflow-y:auto}.au-codex-cat{margin:14px 0 6px;font-size:14px}.au-codex-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.au-codex-list li{--cc: #8c8f99;display:flex;gap:10px;padding:8px 10px;background:var(--surface-2);border-left:4px solid var(--cc);border-radius:8px}.au-codex-list li.is-info{--cc: #26b9d9}.au-codex-list li.is-buff{--cc: #e6b53c}.au-codex-list li.is-def{--cc: #4a90f0}.au-codex-list li.is-atk{--cc: #e5535f}.au-codex-list li.is-heal{--cc: #33b57c}.au-codex-art{font-size:26px;line-height:1.2}.au-codex-body{display:flex;flex-direction:column;gap:2px;font-size:13px}.au-codex-body i{font-style:normal;color:var(--ink-soft);font-size:12px}.au-codex-body span{color:var(--ink-soft);line-height:1.45}.au-admin{max-height:92vh;overflow-y:auto}.au-adv{margin-top:10px}.au-adv summary{cursor:pointer;font-weight:700}.au-adv-grid{display:flex;flex-direction:column;gap:6px;margin-top:8px}.au-adv-row{display:grid;grid-template-columns:1fr 96px 120px;gap:8px;align-items:center;font-size:13px}.au-adv-row label{display:flex;align-items:center;gap:6px;color:var(--ink-soft)}.au-adv-row input{width:100%;min-width:0;min-height:34px;box-sizing:border-box;padding:4px 6px;font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:6px}@media (prefers-reduced-motion: reduce){.au-banner{animation:none}.au-ring-fg,.au-hp-fill{transition:none}}.au-admin .fc-field select{min-width:0;width:100%;box-sizing:border-box;padding:8px;font:inherit;font-size:14px;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.au-bidrow{grid-template-columns:repeat(3,minmax(0,1fr))}.au-bidrow .au-bid{font-size:17px;padding-left:4px;padding-right:4px}.au-card-lg .au-card-art{font-size:3.2em}.au-card-xl .au-card-art{font-size:4.2em}@media (min-width: 960px){.au-lot{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:14px 28px}.au-lot-head,.au-bids{grid-column:1 / -1}.au-lot-head{justify-content:flex-start;gap:18px}}@media (min-width: 960px){.au-lot-main{flex-wrap:nowrap;gap:clamp(14px,2vw,32px)}.au-lot-info{flex:1 1 9em}.au-lot-info h2{font-size:2.2em}}.bm-game,.bm-board,.bm-stage{--bm-a: #e6b53c;--bm-b: #2db8a6;--bm-blue: #3a529e;--bm-red: #dc272e}.bm-game .party-panel{align-items:stretch}.bm-error{margin:0;padding:8px 10px;font-size:13px;color:var(--accent-soft-ink);background:var(--accent-soft);border-radius:8px}.bm-room{--rc: var(--bm-a);display:inline-flex;align-items:center;padding:3px 10px;font-size:13px;font-weight:800;letter-spacing:.02em;color:#14110a;background:var(--rc);border-radius:999px}.bm-room.is-r0,.is-r0{--rc: var(--bm-a)}.bm-room.is-r1,.is-r1{--rc: var(--bm-b)}.bm-room.is-big{padding:6px 18px;font-size:22px}.bm-pad{display:flex;flex-direction:column;gap:12px;padding-bottom:24px}.bm-top{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-bottom:3px solid var(--rc, var(--bm-a));border-radius:10px}.bm-top-mid{display:flex;flex-direction:column;gap:2px;min-width:0}.bm-round{font-size:13px;color:var(--ink-soft)}.bm-leaderchip{font-size:12px;font-weight:700;color:var(--bm-a)}.bm-clock{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;text-align:right;line-height:1.1}.bm-clock small{display:block;font-size:11px;font-weight:600;color:var(--ink-soft)}.bm-clock.is-low{color:var(--accent)}.bm-clock.is-paused{opacity:.6}.bm-card-tile{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;width:100%;padding:10px;font:inherit;color:var(--ink);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:12px;cursor:pointer}.bm-card-tile:hover{border-color:var(--accent)}.bm-card-tile img{display:block;width:100%;aspect-ratio:1200 / 810;object-fit:cover;border-radius:6px;box-shadow:0 4px 14px #00000080}.bm-card-tile b{display:block;font-size:17px}.bm-card-tile em{display:block;margin-top:4px;font-size:13px;font-style:normal;color:var(--ink-soft);line-height:1.45}.bm-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.bm-row>button{flex:1 1 140px}.bm-row select{flex:1 1 120px;min-width:0}.bm-red{background:var(--bm-red);border-color:var(--bm-red)}.bm-blue{background:var(--bm-blue);border-color:var(--bm-blue)}.bm-pad select,.bm-board select,.bm-peek select{min-width:0;width:100%;box-sizing:border-box;padding:9px;font:inherit;font-size:14px;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.bm-members{list-style:none;margin:0;padding:0;display:grid;gap:6px}.bm-members button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 12px;font:inherit;font-size:15px;color:var(--ink);text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.bm-members button:disabled{cursor:default;opacity:.85}.bm-members button.is-on{border-color:var(--bm-a);background:color-mix(in srgb,var(--bm-a) 16%,var(--surface-2))}.bm-members .is-me button{font-weight:700}.bm-members i{font-size:12px;font-style:normal;color:var(--ink-soft)}.bm-members.is-pick button.is-on{border-color:var(--accent);background:var(--accent-soft)}.bm-members.is-pick button.is-on i{color:var(--accent-soft-ink);font-weight:700}.bm-move{border-color:var(--bm-a);background:color-mix(in srgb,var(--bm-a) 12%,var(--surface))}.bm-offer{border-color:var(--bm-a)}.bm-pill{cursor:pointer;font:inherit;color:inherit}.bm-links{display:flex;gap:8px;flex-wrap:wrap}.bm-links>button{flex:1 1 140px}.bm-perm{align-self:center}.bm-seg{display:inline-flex;gap:4px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.bm-seg button{padding:6px 12px;font:inherit;font-size:13px;color:var(--ink-soft);background:none;border:0;border-radius:7px;cursor:pointer}.bm-seg button.is-on{color:var(--ink);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.bm-seg-wide{display:flex}.bm-seg-wide button{flex:1;padding:10px 8px;font-size:15px;font-weight:700}.bm-seg-wide small{display:block;font-size:11px;font-weight:400;color:var(--ink-soft)}.bm-leadercard{max-width:520px;width:94vw;max-height:92vh;overflow-y:auto}.bm-leadercard img{display:block;width:auto;max-width:100%;max-height:70vh;margin:0 auto;border-radius:8px}.bm-leadercard .modal-head{flex-wrap:wrap;gap:8px}.bm-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;background:#07070a;overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none}.bm-stage-close{position:absolute;top:10px;right:10px;z-index:5;width:44px;height:44px;font:inherit;font-size:18px;color:var(--ink);background:#ffffff1f;border:0;border-radius:50%;cursor:pointer}.bm-stage-info{position:absolute;top:10px;left:12px;right:64px;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-height:44px;pointer-events:none}.bm-stage-clock{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.bm-stage-move{padding:3px 10px;font-size:13px;font-weight:700;color:#14110a;background:var(--bm-a);border-radius:999px}.bm-stage-card{position:absolute;top:44%;left:50%;width:min(92vh,124.446vw);aspect-ratio:1200 / 810;transform:translate(-50%,-50%) rotate(90deg)}@media (orientation: landscape){.bm-stage-card{top:50%;width:min(calc(100vw - 260px),130.372vh);transform:translate(-50%,-50%)}}.bm-flip{display:block;width:100%;height:100%;padding:0;background:none;border:0;cursor:pointer;perspective:1600px;-webkit-tap-highlight-color:transparent}.bm-flip-in{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.3,.7,.2,1)}.bm-stage-card.is-open .bm-flip-in{transform:rotateY(180deg)}.bm-flip-face{position:absolute;top:0;right:0;bottom:0;left:0;display:block;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:3%;overflow:hidden;box-shadow:0 10px 40px #000000b3}.bm-flip-face.is-front{transform:rotateY(180deg)}.bm-flip-face img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.bm-stage-bar{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:8px;padding:12px 14px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top,#07070a 70%,transparent)}.bm-stage-note{margin:0;font-size:13px;text-align:center;color:var(--ink-soft)}.bm-stage-note.is-show{color:var(--bm-a);font-weight:700}.bm-stage-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}@media (orientation: landscape){.bm-stage-info{left:auto;right:60px;width:150px;justify-content:flex-end}.bm-stage-bar{left:auto;top:0;width:210px;justify-content:center;background:linear-gradient(to left,#07070a 75%,transparent);padding:14px}.bm-stage-actions{grid-template-columns:1fr}.bm-stage-card{left:calc((100vw - 210px)/2)}}.bm-confirm{z-index:3200}.bm-stage button:focus-visible,.bm-members button:focus-visible,.bm-card-tile:focus-visible,.bm-bbar button:focus-visible{outline:2px solid #fff;outline-offset:2px}.bm-zoom{z-index:3100;background:#000000e0}.bm-zoom img{max-width:94vw;max-height:90vh;border-radius:8px}.bm-deck{max-width:980px;max-height:92vh;overflow-y:auto}.bm-deck-group h4{margin:14px 0 8px;font-size:14px;color:var(--ink-soft)}.bm-deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.bm-deck-item{display:flex;flex-direction:column;gap:6px;padding:6px;font:inherit;font-size:13px;color:var(--ink);text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.bm-deck-item img{display:block;width:100%;aspect-ratio:1200 / 810;object-fit:cover;border-radius:4px}.bm-result.is-red h3{color:#ff6a70}.bm-result.is-blue h3{color:#7ea0ff}.bm-mine{margin:0;font-size:15px}.bm-mine.is-win b{color:#4cd68d}.bm-mine.is-lose b{color:var(--accent)}.bm-rlist{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bm-rlist li{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:10px}.bm-rlist button{padding:0;background:none;border:0;cursor:pointer}.bm-rlist img{display:block;width:100%;aspect-ratio:1200 / 810;object-fit:cover;border-radius:4px}.bm-rlist b{display:block;font-size:14px}.bm-rlist em{display:block;font-size:12px;font-style:normal;color:var(--ink-soft)}.bm-rlist i{font-size:12px;font-style:normal;font-weight:700;color:var(--ink-soft)}.bm-rlist li.is-win i{color:#4cd68d}.bm-rlist li.is-lose i{color:var(--accent)}.bm-admin{max-height:92vh;overflow-y:auto}.bm-admin .fc-field select,.bm-admin .fc-field input:not([type=checkbox]){min-width:0;width:100%;box-sizing:border-box;padding:8px;font:inherit;font-size:14px;color:var(--ink);background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.bm-admin select,.bm-admin input:not([type=checkbox]){min-height:44px}.bm-mini{margin-left:8px;padding:2px 10px;font-size:12px}.bm-presets{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.bm-presets .hint{flex:1 1 100%;margin:0}.bm-packgroup{margin:0 0 10px;padding:8px 10px 10px;border:1px solid var(--border);border-radius:8px}.bm-packgroup legend{padding:0 6px;font-size:13px;color:var(--ink-soft)}.bm-packs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.bm-pack{display:flex;flex-wrap:wrap;align-items:center;align-content:center;gap:2px 8px;min-height:44px;padding:7px 9px;font-size:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.bm-pack.is-on{border-color:var(--accent);background:var(--accent-soft)}.bm-pack.is-off{opacity:.5;cursor:not-allowed}.bm-pack small{flex:1 1 100%;font-size:11px;color:var(--ink-soft)}.bm-rounds{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:8px 0}.bm-roundcfg{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.bm-roundcfg label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--ink-soft)}.bm-check{display:flex;align-items:center;gap:8px;font-size:14px;margin:6px 0}.bm-board{display:flex;flex-direction:column;gap:14px;min-height:100vh;padding:14px 16px 90px;background:var(--bg)}.bm-bhead{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}.bm-bhead h2{margin:0;font-size:20px}.bm-bstep{flex:1 1 260px;font-size:16px;color:var(--ink-soft)}.bm-dots{display:flex;gap:6px;margin:0;padding:0;list-style:none}.bm-dots li{display:grid;place-items:center;width:30px;height:30px;font-size:14px;font-weight:700;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--border);border-radius:50%}.bm-dots li.is-past{color:var(--ink)}.bm-dots li.is-now{color:#14110a;background:var(--bm-a);border-color:var(--bm-a)}.bm-bplay{display:grid;gap:14px}.bm-bmain{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:24px;padding:8px 0}.bm-bmain.is-center{flex-direction:column;text-align:center}.bm-bbig{margin:0;font-size:44px;font-weight:800}.bm-bclock{position:relative;width:min(34vh,280px);aspect-ratio:1;display:grid;place-items:center;align-content:center}.bm-bclock svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.bm-bclock .bg{fill:none;stroke:var(--surface-2);stroke-width:6}.bm-bclock .fg{fill:none;stroke:var(--bm-a);stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .4s linear}.bm-bclock.is-low .fg{stroke:var(--accent)}.bm-bclock strong{position:relative;font-size:clamp(44px,9vh,84px);font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.bm-bclock strong.is-text{font-size:clamp(26px,5.5vh,44px)}.bm-bclock span{position:relative;margin-top:6px;font-size:16px;color:var(--ink-soft)}.bm-bclock.is-paused{opacity:.55}.bm-binfo{display:flex;flex-direction:column;gap:6px;font-size:18px}.bm-binfo p{margin:0}.bm-binfo b{font-size:22px}.bm-brooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-content:start}@media (min-width: 1000px){.bm-bplay{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:24px}.bm-bplay .bm-bmain{flex-direction:column;flex-wrap:nowrap}}.bm-bpanel{--rc: var(--bm-a);padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-top:5px solid var(--rc);border-radius:12px}.bm-bpanel header{display:flex;align-items:center;gap:10px}.bm-bpanel header em{margin-left:auto;font-size:14px;font-style:normal;color:var(--ink-soft)}.bm-bpanel header em.is-ok{color:#4cd68d;font-weight:700}.bm-bcount{font-size:15px;color:var(--ink-soft)}.bm-bleader{margin:10px 0 6px;font-size:20px;font-weight:700}.bm-bnames{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.bm-bnames li{padding:5px 10px;font-size:15px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.bm-bnames li.is-hostage{border-color:var(--accent);color:var(--accent-soft-ink)}.bm-bnames li.is-moving{border-style:dashed}.bm-bnames small{margin-left:6px;color:var(--bm-a)}.bm-blog{margin:0;padding:0;list-style:none;display:grid;gap:4px;font-size:13px;color:var(--ink-soft)}.bm-bbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);border-top:1px solid var(--border)}.bm-bbar button{min-height:44px}.bm-bbar .is-on{border-color:var(--accent);color:var(--accent)}.bm-bwin{padding:14px 18px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:12px}.bm-bwin h2{margin:0 0 6px;font-size:32px}.bm-bwin.is-red h2{color:#ff6a70}.bm-bwin.is-blue h2{color:#7ea0ff}.bm-bwin p{margin:4px 0;color:var(--ink-soft)}.bm-rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px}.bm-rcol{--rc: var(--bm-a);padding:12px;background:var(--surface);border:1px solid var(--border);border-top:5px solid var(--rc);border-radius:12px}.bm-rcol h3{margin:0 0 10px}.bm-rcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px}.bm-rcard{margin:0}.bm-rflip{position:relative;display:block;aspect-ratio:1200 / 810;perspective:900px;transform-style:preserve-3d}.bm-rflip img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:5px;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .7s cubic-bezier(.3,.7,.2,1)}.bm-rflip .is-front{transform:rotateY(180deg)}.bm-rcard.is-open .bm-rflip .is-back{transform:rotateY(-180deg)}.bm-rcard.is-open .bm-rflip .is-front{transform:rotateY(0)}.bm-rcard figcaption{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline;margin-top:5px;font-size:13px}.bm-rcard figcaption em{font-style:normal;color:var(--ink-soft)}.bm-rcard figcaption i{font-style:normal;font-weight:700}.bm-rcard.is-win figcaption i{color:#4cd68d}.bm-rcard.is-lose figcaption i{color:var(--accent)}.bm-peek{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(380px,100vw);padding:14px 14px 90px;overflow-y:auto;background:var(--surface);border-left:1px solid var(--border);box-shadow:-10px 0 30px #00000080}.bm-peek-list{list-style:none;margin:8px 0;padding:0;display:grid;gap:4px}.bm-peek-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 8px;font-size:14px;background:var(--surface-2);border-radius:6px;border-left:4px solid var(--ink-soft)}.bm-peek-list li.is-blue{border-left-color:var(--bm-blue)}.bm-peek-list li.is-red{border-left-color:var(--bm-red)}.bm-peek-list li.is-grey{border-left-color:#8a8d8c}@media (prefers-reduced-motion: reduce){.bm-flip-in,.bm-rflip img,.bm-bclock .fg{transition:none}}@media (max-width: 520px){.bm-deck-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bm-card-tile{grid-template-columns:110px minmax(0,1fr)}.bm-rlist li{grid-template-columns:80px minmax(0,1fr) auto}}.bm-help{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.bm-help h4{margin:0;font-size:16px}.bm-help p{margin:0;font-size:15px;line-height:1.6;color:var(--ink)}.bm-help small{font-size:12px;color:var(--ink-soft)}.bm-tag{display:inline-block;margin:0;padding:3px 10px;font-size:12px;font-weight:700;border:1px solid currentColor;border-radius:999px}.bm-help .bm-tag{color:var(--ink-soft)}.bm-help .bm-tag.t-team{color:#8ea8ff}.bm-help .bm-tag.t-partial{color:#c3a0f5}.bm-help .bm-tag.t-auto{color:#4cd68d}.bm-help .bm-tag.t-honor{color:#e0b078}.bm-help .bm-tag.t-host{color:#ff7d73}.bm-help .bm-tag.t-off{color:var(--ink-soft)}.bm-zoomcard{display:flex;flex-direction:column;gap:10px;align-items:stretch;width:min(520px,94vw);max-height:94vh;overflow-y:auto;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.bm-zoomcard img{display:block;width:100%;height:auto;max-width:none;max-height:none;border-radius:6px}.bm-helpmodal{max-width:480px;display:flex;flex-direction:column;gap:12px}.bm-gloss{max-height:92vh;overflow-y:auto}.bm-gloss ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bm-gloss li{padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.bm-gloss li p{margin:4px 0 0;font-size:14px;line-height:1.55;color:var(--ink-soft)}.bm-sure{margin-left:8px;font-size:12px;font-weight:700}.bm-sure.is-sure{color:#4cd68d}.bm-sure.is-guess{color:#f0c04c}.bm-sure.is-unknown{color:#ff7d73}.bm-gloss li.bm-gloss-group{margin:10px 0 0;padding:0;font-size:13px;font-weight:700;color:var(--ink-soft);background:none;border:0}.bm-gloss ul{display:grid;gap:8px}.bm-gloss .bm-gloss-group{list-style:none}.bm-sure.is-src{color:#8ea8ff}.bm-presetdesc{margin:6px 0 10px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:8px}.bm-presetdesc p{margin:4px 0 0;font-size:14px;line-height:1.55;color:var(--ink-soft)}.bm-presets .is-on{border-color:var(--accent);color:var(--accent)}.tm0{--tm: #e5484d}.tm1{--tm: #3e8bff}.tm2{--tm: #46a758}.tm3{--tm: #f5b72a}.tm4{--tm: #a06be0}.tm5{--tm: #f08a24}.tm6{--tm: #9aa0a6}.tm7{--tm: #a16a3a}.tg-clock{display:flex;align-items:baseline;gap:10px;align-self:stretch;justify-content:space-between;background:var(--surface-2);border-radius:10px;padding:8px 14px}.tg-clock span{font-size:13px;color:var(--ink-soft)}.tg-clock b{font-size:26px;font-variant-numeric:tabular-nums}.tg-clock.is-low b{color:var(--accent)}.tg-mine{margin:0;font-size:15px}.tg-team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-self:stretch}.tg-team{background:var(--surface-2);border:1px solid var(--border);border-left:5px solid var(--tm, var(--border));border-radius:10px;padding:10px 12px}.tg-team.is-mine{border-color:var(--tm);box-shadow:0 0 0 1px var(--tm)}.tg-team h4{margin:0 0 6px;font-size:15px}.tg-team h4 small{color:var(--ink-soft);font-weight:400}.tg-team ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px;font-size:14px}.tg-team li.is-me{font-weight:700;color:var(--accent-soft-ink)}.tg-hostbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border:1px dashed var(--border);border-radius:10px}.tg-hostbar .hint{margin-right:auto}.ww-step,.dd-step{align-items:stretch}.ww-round{margin:0;font-size:13px;color:var(--ink-soft)}.ww-topic{margin:0;font-size:22px;line-height:1.3;text-wrap:balance}.ww-sent,.ww-mine{margin:0;font-size:15px}.ww-items{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.ww-item{background:var(--surface-2);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.ww-quote{margin:0;font-size:16px;overflow-wrap:anywhere}.ww-owner{color:var(--accent-soft-ink);white-space:nowrap}.ww-chips{display:flex;flex-wrap:wrap;gap:6px}.ww-chip{min-height:40px;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.ww-chip.is-on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.ww-chip:disabled:not(.is-on){opacity:.4;cursor:not-allowed}.ww-guesses{margin:0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px}.ww-guesses .is-ok{color:#6fd58a}.ww-guesses .is-no{color:#ff8a93}.ww-team{border:1px solid var(--border);border-left:5px solid var(--tm, var(--border));border-radius:10px;padding:8px 12px}.ww-team summary{cursor:pointer;font-weight:700;padding:4px 0;min-height:32px}.ww-rank{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.ww-rank li{display:grid;grid-template-columns:28px 1fr auto auto;align-items:baseline;gap:8px;background:var(--surface-2);border-radius:8px;padding:8px 10px;font-size:14px}.ww-rank li.is-first{border:1px solid #f5b72a}.ww-rank li.is-me{outline:1px solid var(--accent)}.ww-rank-n{font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.ww-rank small{color:var(--ink-soft)}.dd-mapwrap{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.dd-minimap{width:110px;max-width:30vw;border:1px solid var(--border);border-radius:6px;background:#fff}.dd-mm-cell{fill:#f1efe9;stroke:#cfc9bc;stroke-width:6}.dd-mm-me{fill:#ffe0e3;stroke:#e5484d;stroke-width:10}.dd-mm-text{fill:#555;font-family:sans-serif}.dd-mm-text-me{fill:#b3202b;font-family:sans-serif;font-weight:700}.dd-progress{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--ink-soft)}.dd-progress b{color:var(--ink);font-weight:600}.dd-canvas-wrap{align-self:center;border:2px solid var(--border);border-radius:8px;overflow:hidden;background:#fff;touch-action:none}.dd-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none}.dd-canvas.is-disabled{opacity:.6;cursor:not-allowed}.dd-toolbar{display:flex;flex-direction:column;gap:10px;align-items:stretch}.dd-swatches{display:flex;flex-wrap:wrap;gap:8px}.dd-swatch{width:36px;height:36px;border-radius:50%;border:2px solid var(--border);cursor:pointer;padding:0}.dd-swatch.is-on{border-color:var(--ink);box-shadow:0 0 0 2px var(--accent)}.dd-swatch-edit{position:relative;display:inline-flex}.dd-swatch-x{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:11px;line-height:1;cursor:pointer;padding:0}.dd-addcolor{display:flex;align-items:center;gap:10px}.dd-addcolor input[type=color]{width:44px;height:36px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface-2)}.dd-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dd-widths{display:flex;gap:6px}.dd-width{width:44px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);cursor:pointer;padding:0}.dd-width i{display:block;border-radius:50%;background:var(--ink)}.dd-width.is-on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dd-tool{min-height:40px}.dd-tool.is-on,.dd-tool.is-warn{border-color:var(--accent);color:var(--accent)}.dd-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.dd-card{margin:0;background:var(--surface-2);border:1px solid var(--border);border-top:5px solid var(--tm, var(--border));border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:8px}.dd-card.is-picked{box-shadow:0 0 0 2px var(--accent)}.dd-card.is-winner{box-shadow:0 0 0 2px #f5b72a}.dd-card figcaption{display:flex;flex-direction:column;gap:6px;font-size:14px}.dd-pic{display:block;width:100%;height:auto;border-radius:6px;background:#fff}.dd-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.dd-head .ww-topic{font-size:20px}.tg-clock.is-compact{align-self:auto;padding:6px 12px;flex-shrink:0}.tg-clock.is-compact b{font-size:22px}.dd-actions{display:flex;flex-wrap:wrap;gap:8px}.dd-actions .btn-primary{flex:1}.dd-whole{max-width:460px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto}.dd-whole-pic{border:1px solid var(--border)}.tg-person{width:100%;text-align:left;min-height:36px;padding:4px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer}.tg-person:hover{border-color:var(--border)}.tg-person.is-picked{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-soft-ink);font-weight:700}.tg-move{margin:0 0 6px;min-height:36px}.bm-stage-help{max-height:34vh;overflow-y:auto;padding:10px 12px;background:#ffffff14;border-radius:12px;text-align:left;-webkit-overflow-scrolling:touch}.bm-stage-help .bm-help{gap:4px}.bm-stage-help .bm-help h4{font-size:15px}.bm-stage-help .bm-help p{font-size:14px;line-height:1.55}.bm-stage-private{display:block;margin-top:6px;font-size:11.5px;color:var(--ink-soft)}.bm-stage.has-help .bm-stage-card{top:27%;width:min(40vh,97.779vw)}@media (orientation: landscape){.bm-stage.has-help .bm-stage-card{top:50%;width:min(calc(100vw - 260px),130.372vh)}.bm-stage-help{max-height:52vh}.bm-stage.has-help .bm-stage-bar{width:260px}.bm-stage.has-help .bm-stage-card{left:calc((100vw - 260px)/2)}}@media (orientation: portrait) and (max-height: 700px){.bm-stage.has-help .bm-stage-card{top:20%;width:min(27vh,88.89vw)}.bm-stage-help{max-height:40vh}.bm-stage-private{display:none}}@media (orientation: landscape){.bm-stage.has-help .bm-stage-bar{justify-content:flex-start;padding-top:62px;overflow-y:auto}.bm-stage.has-help .bm-stage-help{max-height:46vh;flex-shrink:0}.bm-stage.has-help .bm-stage-actions{grid-template-columns:1fr 1fr}.bm-stage.has-help .bm-stage-actions button{font-size:13px;padding:8px 6px}}.fc-ref{max-width:560px}.fc-roles-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.fc-roles-item{background:var(--surface-2);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.fc-roles-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.fc-roles-icon{font-size:26px}.fc-roles-count{font-weight:700;color:var(--accent-soft-ink)}.fc-roles-home{margin-left:auto;font-size:12px;padding:2px 10px;border-radius:999px;color:#fff}.fc-roles-info{margin:0;display:flex;flex-direction:column;gap:3px;font-size:13px;line-height:1.45}.fc-roles-info>div{display:flex;gap:10px}.fc-roles-info dt{flex:0 0 56px;font-weight:700;white-space:nowrap}.fc-roles-info dt.is-win{color:#e08a52}.fc-roles-info dt.is-lose{color:#ff7d73}.fc-roles-info dd{margin:0;overflow-wrap:anywhere}.fc-pyr-wrap{background:#e6dcc7;border-radius:12px;padding:12px 10px 14px;display:flex;flex-direction:column;gap:10px;color:#2b2523}.fc-pyr-title{align-self:center;text-align:center;padding:4px 26px 6px;background:linear-gradient(#3a2a22,#1f1612);border:2px solid #c9a24b;border-radius:4px;color:#fff;display:flex;flex-direction:column;line-height:1.1}.fc-pyr-title small{font-size:10px;letter-spacing:1px;color:#e3c777}.fc-pyr-title b{font-size:24px;letter-spacing:2px}.fc-pyr{display:grid;grid-template-columns:1fr 58px;grid-template-rows:repeat(4,64px) auto;gap:3px 6px}.fc-pyr-layer{grid-column:1;display:flex;align-items:center;justify-content:center;background:#f7f4ed}.fc-pyr-layer.l1{clip-path:polygon(40% 0,60% 0,68% 100%,32% 100%)}.fc-pyr-layer.l2{clip-path:polygon(32% 0,68% 0,76% 100%,24% 100%)}.fc-pyr-layer.l3{clip-path:polygon(24% 0,76% 0,83% 100%,17% 100%)}.fc-pyr-layer.l4{clip-path:polygon(17% 0,83% 0,89% 100%,11% 100%)}.fc-pyr-prey{background:#8d1f1f;clip-path:polygon(11% 0,89% 0,100% 100%,0 100%);padding:14px 6px 12px;min-height:104px}.fc-pyr-preyrow{display:grid;grid-template-columns:repeat(5,1fr);gap:8px 2px;width:82%}.fc-pyr-item{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;position:relative}.fc-pyr-item .fc-animal{font-size:26px;filter:brightness(0) invert(13%) sepia(60%) saturate(4000%) hue-rotate(345deg) brightness(85%)}.fc-pyr-prey .fc-pyr-item .fc-animal{filter:brightness(0);opacity:.82}.fc-pyr-item b{font-size:10px;font-weight:700;white-space:nowrap;color:#3a2a22}.fc-pyr-prey .fc-pyr-item b{color:#f3e3d3;font-size:9.5px}.fc-pyr-item i{position:absolute;top:-3px;right:-4px;font-style:normal;font-size:10px;font-weight:800;background:#c9a24b;color:#1f1612;border-radius:999px;padding:0 5px}.fc-pyr-item.is-absent,.fc-pyr-layer.is-absent .fc-pyr-item{opacity:.28}.fc-pyr-side{grid-column:2;display:flex;flex-direction:column;align-items:center}.fc-pyr-ln{flex:1;width:2px;background:#3a3a3a}.fc-pyr-ar{font-size:11px;line-height:1;color:#3a3a3a}.fc-pyr-pill{padding:4px 8px;background:#a31f24;color:#fff;border-radius:6px;font-size:13px}.fc-pyr-notes{margin:12px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-soft)}
