/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}}:root{--ink:#16232e;--muted:#5d6f7e;--paper:#f5f9fd;--paper-deep:#e3edf6;--red:#1f6feb;--red-dark:#14509e;--gold:#c9973f;--green:#2f8f63;--amber:#c07d24;--gray:#7b8794}*{box-sizing:border-box}html{background:#e6eef6}body{color:var(--ink);background:radial-gradient(circle at 8% 8%, #1f6feb1a, transparent 24rem), radial-gradient(circle at 92% 80%, #c9973f24, transparent 28rem), var(--paper);margin:0;font-family:Noto Serif SC,Songti SC,SimSun,serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.update-notice{z-index:1000;color:#fff8e9;background:#301f26f5;border:1px solid #c9973fb3;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;width:min(620px,100% - 24px);padding:12px 14px 12px 18px;display:grid;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #190c1247}.update-notice div{gap:3px;display:grid}.update-notice strong{font-size:14px}.update-notice span{color:#d9ccd0;font-size:12px}.update-notice button{color:#d9ccd0;background:0 0;border:0}.update-notice .update-notice-action{color:#f1ca7b;white-space:nowrap;padding:6px 9px;font-size:13px}.update-notice .update-notice-close{padding:2px 5px;font-size:22px;line-height:1}.update-notice button:hover{color:#fff}.version-badge{z-index:900;color:var(--red-dark);letter-spacing:.05em;background:#fbf8f3eb;border:1px solid #1f6feb5c;border-radius:999px;padding:7px 11px;font:600 11px/1 Arial,sans-serif;position:fixed;bottom:14px;right:16px;box-shadow:0 5px 18px #271b261f}.version-badge:hover{border-color:var(--red);color:var(--red)}.update-backdrop{z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c12197a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.update-panel{background:var(--paper);border:1px solid #c9973f75;border-radius:18px;width:min(520px,100%);padding:30px;position:relative;box-shadow:0 24px 70px #190c124d}.update-panel h2{margin:0;font-size:30px}.update-panel-close{color:var(--muted);background:0 0;border:0;font-size:25px;position:absolute;top:13px;right:15px}.current-version{color:var(--muted);margin:8px 0 22px;font-size:13px}.current-version strong{color:var(--red)}.update-row{border-top:1px solid #e6dcd5;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.update-row>div:first-child{gap:5px;display:grid}.update-row-version{color:var(--ink);letter-spacing:.02em;font:600 11px/1.4 Arial,sans-serif}.update-row span{color:var(--muted);font-size:12px}.update-row span[data-state=available]{color:var(--red)}.update-row span[data-state=latest]{color:var(--green)}.update-row span[data-state=error]{color:var(--amber)}.update-row span[data-state=unconfigured]{color:var(--muted)}.update-row-actions{align-items:center;gap:10px;display:flex}.update-row-actions button,.update-row-actions a{color:var(--ink);white-space:nowrap;background:#ffffffb8;border:1px solid #d8cbc5;border-radius:999px;padding:8px 11px;font-size:12px;text-decoration:none}.update-row-actions button:hover,.update-row-actions a:hover{border-color:var(--red);color:var(--red)}.update-row-actions button:disabled{cursor:wait;opacity:.55}@media (width<=520px){.update-notice{grid-template-columns:1fr auto auto;gap:8px}.update-panel{padding:24px 18px}.update-row{flex-direction:column;align-items:flex-start}}.game-shell{min-height:100vh;padding:24px 20px 42px;position:relative;overflow:hidden}.mist{filter:blur(2px);opacity:.55;pointer-events:none;border-radius:999px;position:fixed}.mist-one{background:#1f6feb0f;width:380px;height:380px;top:14%;left:-220px}.mist-two{border:1px solid #1f6feb14;width:440px;height:440px;bottom:-100px;right:-240px}.topbar{z-index:2;align-items:center;gap:12px;max-width:920px;margin:auto;display:flex;position:relative}.challenge{color:var(--muted);letter-spacing:.08em;margin:0 auto 0 0;font-size:14px}.topbar-actions{align-items:center;gap:8px;display:flex}.display-mode{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:inline-flex}.display-mode select{color:var(--ink);cursor:pointer;background:#ffffff9e;border:1px solid #d7c8c4;border-radius:999px;padding:8px 10px;font-size:13px}.display-mode select:hover{border-color:var(--red)}.ghost-button,.admin-link{color:var(--ink);background:#ffffff9e;border:1px solid #d7c8c4;border-radius:999px;padding:9px 14px;font-size:13px;text-decoration:none}.ghost-button:hover,.admin-link:hover{border-color:var(--red);color:var(--red)}.hero{text-align:center;z-index:1;margin:54px auto 24px;position:relative}.crystal-wings{display:none}.crest{border:1px solid var(--red);width:54px;height:54px;color:var(--red);background:#ffffff73;place-items:center;margin:0 auto 15px;font-size:22px;font-weight:700;display:grid;transform:rotate(45deg)}.crest:first-letter{transform:rotate(-45deg)}.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.22em;margin:0 0 8px;font:600 11px/1.4 Arial,sans-serif}h1{letter-spacing:.08em;margin:0;font-size:clamp(44px,8vw,72px);font-weight:700;line-height:1.05}.subtitle{color:var(--muted);letter-spacing:.16em;margin:13px 0 0;font-size:15px}.status-strip{max-width:620px;color:var(--muted);justify-content:center;gap:0;margin:0 auto 20px;font:13px Arial,sans-serif;display:flex}.status-strip span{border-right:1px solid #ddd0cb;padding:0 20px}.status-strip span:last-child{border:0}.status-strip b{color:var(--ink);font-size:15px}.timer-strip{background:#ffffffad;border:1px solid #dfd2cc;border-radius:12px;width:fit-content;margin:0 auto 16px;font-family:Arial,sans-serif;display:flex;overflow:hidden;box-shadow:0 8px 28px #4e2c2f0d}.timer-strip span{text-align:center;min-width:126px;padding:9px 18px}.timer-strip span+span{border-left:1px solid #e5d9d4}.timer-strip small{color:var(--muted);letter-spacing:.1em;margin-bottom:3px;font-size:10px;display:block}.timer-strip b{color:var(--red-dark);font-variant-numeric:tabular-nums;font-size:18px}.countdown-timer b{min-width:94px;transition:color .16s,text-shadow .16s}.countdown-timer.timer-bonus b{color:#27834a;text-shadow:0 0 12px #27834a52}.countdown-timer.timer-penalty b{color:#d1203b;text-shadow:0 0 12px #d1203b52}.countdown-timer.timer-low b{animation:.72s ease-in-out infinite alternate ten-match-low-time}@keyframes ten-match-low-time{0%{color:var(--red-dark);text-shadow:0 0 #d1203b00}to{color:#ff173d;text-shadow:0 0 15px #ff173db8}}.play-layout{z-index:1;max-width:1104px;margin:auto;position:relative}.play-layout.with-stats{grid-template-columns:minmax(200px,1fr) minmax(0,1104px) minmax(200px,1fr);align-items:start;gap:18px;max-width:1660px;display:grid}.game-card{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc2;border:1px solid #dfd2cc;border-radius:18px;width:100%;max-width:1104px;margin:auto;padding:22px;position:relative;box-shadow:0 18px 60px #4e2c2f14}.with-stats .game-card{grid-column:2;margin:0}.timing-panel{--timing-value-width:78px;--timing-count-width:48px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border:1px solid #dfd2cc;border-radius:16px;grid-column:3;justify-self:start;width:min(260px,100%);padding:20px;box-shadow:0 14px 42px #4e2c2f0f}.timing-panel h2{margin:0 0 14px;font-size:21px}.round-history{gap:7px;max-height:300px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.round-history li{background:var(--paper-deep);border-radius:8px;padding:9px 10px;font:11px Arial,sans-serif}.round-history span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.round-metrics{width:calc(var(--timing-value-width) + var(--timing-count-width) + 4px);grid-template-columns:var(--timing-value-width) var(--timing-count-width);text-align:right;gap:4px;margin:4px 0 0 auto;display:grid}.round-history b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:14px;display:block}.round-history b:last-child{color:var(--red-dark);font-size:12px}.empty-history{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.averages{border-top:1px solid #e7ddd8;margin:18px 0 0;padding-top:14px}.averages div{justify-content:space-between;align-items:baseline;gap:8px;margin-top:9px;display:flex}.averages dt{color:var(--muted);font:11px Arial,sans-serif}.averages dd{width:calc(var(--timing-value-width) + var(--timing-count-width) + 4px);grid-template-columns:var(--timing-value-width) var(--timing-count-width);color:var(--red-dark);font-variant-numeric:tabular-nums;text-align:right;align-items:center;gap:4px;margin:0;font:700 14px/1 Arial,sans-serif;display:grid}.average-head{margin-top:0!important}.average-head dd{color:var(--muted);font-size:10px;font-weight:400}.stats-note{color:#a09398;margin:12px 0 0;font:10px/1.5 Arial,sans-serif}.mode-switch{background:var(--paper-deep);border-radius:999px;width:fit-content;margin:0 auto 24px;padding:4px;display:flex}.mode-switch button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:9px 22px;font-size:13px}.mode-switch button.active{color:#fff;background:var(--red);box-shadow:0 4px 14px #1f6feb38}.ten-match-difficulty{text-align:left;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;width:min(880px,100%);margin:-10px auto 22px;display:grid}.ten-match-difficulty>span{color:var(--muted);letter-spacing:.14em;justify-self:end;font-size:11px}.ten-match-difficulty>div{background:#ffffff94;border:1px solid #dfd2cc;border-radius:999px;width:fit-content;height:38px;margin:0;padding:3px;display:flex}.ten-match-difficulty button{min-width:78px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 13px;font:600 12px/1 Arial,sans-serif}.ten-match-difficulty button.active{background:var(--red-dark);color:#fff;box-shadow:0 4px 12px #71152a33}.ten-match-difficulty button:disabled{cursor:wait;opacity:.58}.ten-match-difficulty p{min-width:0;color:var(--muted);margin:0;font-size:11px;line-height:1.55}.custom-game-options{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);align-items:center;gap:18px;width:min(760px,100%);margin:-10px auto 22px;display:grid}.game-catalog-picker,.specified-character-picker{min-width:0;color:var(--muted);grid-template-columns:auto 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.specified-input-row{min-width:0;display:flex}.specified-autocomplete{flex:1;min-width:0;position:relative}.specified-character-picker input{background:var(--paper);width:100%;min-width:0;height:38px;color:var(--ink);border:1px solid #d8cbc5;border-radius:999px 0 0 999px;outline:none;padding:0 14px}.specified-character-picker input:focus{border-color:var(--red);position:relative;box-shadow:0 0 0 3px #1f6feb17}.specified-input-row>button{border:1px solid var(--red);background:var(--red);color:#fff;white-space:nowrap;border-left:0;border-radius:0 999px 999px 0;min-width:52px;height:38px;padding:0 13px}.specified-input-row>button:disabled{opacity:.45;cursor:not-allowed}.specified-suggestions{top:44px}.catalog-dropdown{min-width:0;position:relative}.catalog-dropdown-trigger{background:var(--paper);width:100%;height:38px;color:var(--ink);text-align:left;border:1px solid #d8cbc5;border-radius:999px;outline:none;align-items:center;gap:12px;padding:0 14px 0 16px;display:flex}.catalog-dropdown-trigger>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.catalog-dropdown-trigger i{border-bottom:1.5px solid;border-right:1.5px solid;flex:none;width:8px;height:8px;margin:-4px 3px 0 0;transition:transform .16s,margin .16s;transform:rotate(45deg)}.catalog-dropdown-trigger[aria-expanded=true] i{margin-top:4px;transform:rotate(225deg)}.catalog-dropdown-trigger:focus-visible{border-color:var(--red);box-shadow:0 0 0 3px #1f6feb17}.catalog-dropdown-menu{z-index:12;background:var(--paper);border:1px solid #dccdc7;border-radius:16px;gap:3px;padding:6px;display:grid;position:absolute;top:calc(100% + 7px);left:0;right:0;box-shadow:0 16px 38px #3a232729}.catalog-dropdown-menu button{min-width:0;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:11px;padding:9px 12px;font-size:12px}.catalog-dropdown-menu button:hover,.catalog-dropdown-menu button:focus-visible{background:#f3e8e5;outline:none}.catalog-dropdown-menu button.selected{background:var(--red);color:#fff}.guess-form{max-width:610px;margin:auto}.guess-form label{letter-spacing:.14em;color:var(--muted);margin-bottom:8px;font-size:12px;display:block}.input-row{gap:10px;display:flex}.autocomplete{flex:1;position:relative}.autocomplete input{width:100%;height:50px;color:var(--ink);background:#fff;border:1px solid #cfc2bd;border-radius:10px;outline:0;padding:0 16px;transition:all .2s}.autocomplete input:focus{border-color:var(--red);box-shadow:0 0 0 3px #1f6feb14}.autocomplete input::placeholder{color:#aa9ca2}.suggestions{z-index:8;background:#fff;border:1px solid #ded0ca;border-radius:10px;padding:6px;display:grid;position:absolute;top:56px;left:0;right:0;box-shadow:0 12px 30px #3621241f}.suggestions button{text-align:left;background:0 0;border:0;border-radius:6px;padding:9px 10px}.suggestions button:hover{color:var(--red);background:#f6eceb}.submit-button,.again-button{color:#fff;background:var(--red);border:0;border-radius:10px;padding:0 25px;font-weight:700;box-shadow:0 6px 18px #1f6feb33}.submit-button:disabled{opacity:.45;cursor:not-allowed}.game-message{text-align:center;min-height:22px;color:var(--muted);margin:16px 0 8px;font-size:14px}.feedback-wrap{margin-top:24px;padding-bottom:6px;overflow-x:auto}.feedback-table{border-collapse:separate;border-spacing:6px;table-layout:fixed;width:100%;min-width:690px;font-family:Arial,sans-serif}.feedback-table th{color:var(--muted);padding:6px 4px;font-size:12px;font-weight:600}.feedback-table tbody th{color:var(--ink);background:var(--paper-deep);border-radius:8px;font-family:Noto Serif SC,serif}.feedback-table td{text-align:center;color:#fff;border-radius:8px;height:62px;padding:6px;font-size:12px;font-weight:700;animation:.38s both reveal}.feedback-table td small{opacity:.82;margin-bottom:3px;font-size:10px;font-weight:500;display:block}.feedback-values{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.feedback-values>span{background:#ffffff24;border-radius:5px;padding:3px 5px}.feedback-table td i{font-size:18px;font-style:normal;line-height:1;display:block}.result-match{background:var(--green)}.result-close{background:var(--amber)}.result-miss{background:var(--gray)}@keyframes reveal{0%{opacity:0;transform:translateY(8px)rotateX(18deg)}}.again-button{min-height:42px;margin:20px auto 4px;display:block}.legend{color:var(--muted);border-top:1px solid #e7ddd8;justify-content:center;gap:24px;margin-top:22px;padding-top:16px;font:12px Arial,sans-serif;display:flex}.legend span,.help-row{align-items:center;gap:7px;display:flex}.legend i,.help-row i{border-radius:3px;width:10px;height:10px;display:inline-block}i.match{background:var(--green)}i.close{background:var(--amber)}i.miss{background:var(--gray)}footer{text-align:center;color:#998d92;letter-spacing:.06em;margin-top:24px;font-size:12px}footer a{color:inherit;word-break:break-all;border-bottom:1px solid #998d9273;padding-bottom:1px;text-decoration:none}footer a:hover{color:var(--red);border-color:currentColor}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#26161c7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.help-modal{background:var(--paper);border-radius:16px;width:min(460px,100%);padding:30px;position:relative;box-shadow:0 28px 80px #00000040}.help-modal h2{margin:0 0 12px;font-size:26px}.help-modal>p:not(.eyebrow){color:var(--muted);line-height:1.7}.help-row{color:var(--muted);margin-top:14px;font-size:14px}.help-row i{flex:none;width:16px;height:16px}.settings-modal{background:var(--paper);scrollbar-width:thin;scrollbar-color:var(--red) var(--paper-deep);border-radius:16px;flex-direction:column;width:min(680px,100%);max-height:min(760px,100vh - 40px);padding:30px;display:flex;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000040}.settings-modal h2{margin:0 0 6px;font-size:28px}.settings-hint{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.7}.settings-presets{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.settings-presets button{color:var(--ink);text-align:left;background:#fff9;border:1px solid #d7c8c4;border-radius:12px;gap:3px;padding:12px 10px;display:grid}.settings-presets button b{font-size:15px}.settings-presets button small{color:var(--muted);font-size:11px}.settings-presets button:hover{border-color:var(--red)}.settings-presets button.active{border-color:var(--red);background:var(--red);color:#fff}.settings-presets button.active small{color:#fffc}.settings-section-title{color:var(--muted);letter-spacing:.1em;margin:20px 0 10px;font-size:12px;font-weight:700}.settings-preview{border:1px solid var(--paper-deep);border-radius:12px;overflow-x:auto}.settings-preview table{border-collapse:collapse;width:100%;font-size:13px}.settings-preview th,.settings-preview td{border-right:1px solid var(--paper-deep);white-space:nowrap;text-align:center;padding:10px 12px}.settings-preview thead th{color:var(--muted);background:var(--paper-deep);font-size:12px;font-weight:600}.settings-preview tbody th{text-align:left;font-weight:600}.settings-preview tr>:last-child{border-right:0}.settings-columns{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px 16px;display:grid}.settings-columns label{justify-content:space-between;align-items:center;gap:10px;display:flex}.settings-columns span{color:var(--ink);font-size:13px}.settings-columns select{min-width:0;max-width:190px;color:var(--ink);background:#fff;border:1px solid #d7c8c4;border-radius:8px;flex:auto;padding:8px 10px;font-size:13px}.settings-columns select:hover{border-color:var(--red)}@media (width<=560px){.settings-presets,.settings-columns{grid-template-columns:1fr}}.modal-close{color:var(--muted);background:0 0;border:0;font:26px/1 Arial;position:absolute;top:12px;right:14px}.history-modal{background:var(--paper);border-radius:16px;flex-direction:column;width:min(680px,100%);max-height:min(760px,100vh - 40px);padding:30px;display:flex;position:relative;box-shadow:0 28px 80px #00000040}.history-modal h2{margin:0;font-size:28px}.history-summary{color:var(--muted);margin:7px 0 18px;font-size:13px}.history-list{scrollbar-width:thin;scrollbar-color:var(--red) var(--paper-deep);gap:9px;min-height:0;padding-right:8px;display:grid;overflow-y:auto}.history-list::-webkit-scrollbar{width:10px}.history-list::-webkit-scrollbar-track{background:var(--paper-deep);border-radius:999px}.history-list::-webkit-scrollbar-thumb{border:2px solid var(--paper-deep);background:linear-gradient(180deg, var(--red), var(--red-dark));border-radius:999px;min-height:48px}.history-list::-webkit-scrollbar-thumb:hover{background:var(--red-dark)}.history-list::-webkit-scrollbar-button{width:0;height:0;display:none}.history-record{background:#ffffff80;border:1px solid #e2d6d1;border-radius:12px}.history-record summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px 10px;padding:13px 15px;list-style:none;display:grid}.history-record summary::-webkit-details-marker{display:none}.history-record summary:after{content:"展开";color:var(--red);grid-area:2/3;font-size:11px}.history-record[open] summary:after{content:"收起"}.history-result{color:#fff;border-radius:999px;width:fit-content;padding:4px 8px;font:700 11px/1 Arial,sans-serif}.history-result.won{background:var(--green)}.history-result.lost{background:var(--gray)}.history-result.active{background:var(--amber)}.history-result.abandoned{background:var(--gray)}.history-answer{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.history-meta,.history-record time{color:var(--muted);font:11px/1.4 Arial,sans-serif}.history-record time{grid-column:2}.history-details{border-top:1px solid #e8ddd8;padding:4px 15px 12px}.history-details ol{margin:0;padding:0;list-style:none}.history-details li{color:var(--muted);border-bottom:1px solid #eee5e1;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:9px 0;font-size:12px;display:grid}.history-details li:last-child{border-bottom:0}.history-details li span:first-child{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-details li b{color:var(--red-dark);font-variant-numeric:tabular-nums}.history-details>p,.history-empty{margin:10px 0 0}.history-details .ten-match-record-round{padding:11px 0;display:block}.ten-match-round-head{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.history-details .ten-match-round-guesses{border-left:2px solid #eadbd5;margin:8px 0 0 14px;padding-left:12px}.history-details .ten-match-round-guesses li{padding:7px 0}.history-details .ten-match-round-guesses li:last-child{padding-bottom:1px}.catalog-create-modal form{gap:9px;margin-top:20px;display:grid}.catalog-create-modal label{color:var(--muted);font-size:12px}.catalog-create-modal input{width:100%;height:44px;color:var(--ink);background:#fff;border:1px solid #d7cbc5;border-radius:9px;outline:none;padding:0 12px}.catalog-create-modal input:focus{border-color:var(--red);box-shadow:0 0 0 3px #1f6feb17}.catalog-create-modal form>div{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.catalog-create-modal form button{min-height:40px;color:var(--ink);background:#fff;border:1px solid #d8cbc5;border-radius:8px;padding:0 15px}.catalog-create-modal form .admin-primary{border-color:var(--red);background:var(--red);color:#fff}.catalog-create-modal form .admin-primary:disabled{opacity:.45;cursor:not-allowed}@keyframes crystal-float{to{filter:brightness(1.18);margin-top:-5px}}@media (width<=760px){.ten-match-difficulty{text-align:center;width:min(660px,100%);display:block}.ten-match-difficulty>div{margin:7px auto 0}.ten-match-difficulty p{min-height:18px;margin-top:8px}}@media (width<=620px){.game-shell{padding:18px 12px 30px}.topbar{gap:7px}.challenge{font-size:11px}.topbar-actions{gap:5px}.ghost-button,.admin-link{padding:8px 9px;font-size:11px}.hero{margin-top:38px}.subtitle{letter-spacing:.08em}.status-strip span{padding:0 11px}.timer-strip span{min-width:112px;padding-inline:13px}.game-card{border-radius:14px;padding:17px 12px}.custom-game-options{grid-template-columns:1fr;gap:9px}.mode-switch button{padding-inline:17px}.ten-match-difficulty>div{width:100%}.ten-match-difficulty button{flex:1;min-width:0;padding-inline:7px}.input-row{gap:7px}.submit-button{padding:0 19px}.legend{gap:14px}.history-modal{padding:24px 16px 18px}.history-record summary{grid-template-columns:auto minmax(0,1fr)}.history-record summary:after{grid-area:3/2;justify-self:end}.history-meta{grid-column:1/-1}.history-record time{grid-area:3/1/auto/2}.history-details li{grid-template-columns:minmax(0,1fr) auto}.history-details li span:nth-child(2){grid-area:2/1/auto/-1}.history-details li b{grid-area:1/2}}@media (width<=1240px){.play-layout.with-stats{grid-template-columns:1fr;max-width:1012px}.with-stats .game-card{grid-column:1}.timing-panel{order:2;grid-column:1;justify-self:stretch;width:100%}.round-history{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}}.admin-shell{background:linear-gradient(135deg,#faf6f0,#f2e8e2);min-height:100vh;padding:46px 24px 70px}.admin-header{justify-content:space-between;align-items:flex-start;max-width:1120px;margin:auto;display:flex}.admin-header h1{font-size:clamp(38px,6vw,58px)}.admin-header p:last-child{color:var(--muted);margin:12px 0 0}.admin-actions{align-items:center;gap:14px;display:flex}.admin-header a{color:var(--red);border-bottom:1px solid;padding:5px 0;text-decoration:none}.admin-reset{color:var(--muted);background:#ffffff94;border:1px solid #d8cbc5;border-radius:999px;padding:8px 12px;font-size:14px}.admin-reset:hover{border-color:var(--red);color:var(--red)}.admin-notice{max-width:1120px;color:var(--muted);margin:26px auto 14px;font-size:15px}.catalog-manager,.editor-heading,.official-readonly,.csv-document-card{max-width:1120px;margin:0 auto 16px}.catalog-list{gap:10px;display:grid}.catalog-list article{background:#fffcf9;border:1px solid #e4d8d2;border-radius:12px;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:16px;padding:14px;display:grid}.catalog-list article.official{border-left:4px solid var(--red)}.catalog-list article[role=button]{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.catalog-list article[role=button]:hover,.catalog-list article[role=button]:focus-visible{border-color:#cdaeb0;outline:none;transform:translateY(-1px);box-shadow:0 8px 22px #472a2b14}.catalog-list article.selected{border-color:var(--red);box-shadow:0 0 0 2px #1f6feb14}.catalog-list h3{margin:4px 0;font-size:17px}.catalog-list p{color:var(--muted);margin:0;font-size:13px}.catalog-source{color:var(--red);letter-spacing:.12em;font-size:12px;font-weight:800}.catalog-badges{gap:6px;display:flex}.catalog-badges b{color:var(--red);white-space:nowrap;background:#f5e5e5;border-radius:999px;padding:4px 7px;font-size:12px}.catalog-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.catalog-actions button,.editor-mode-switch button,.csv-document-actions button{color:var(--ink);background:#fff;border:1px solid #d8cbc5;border-radius:8px;padding:8px 10px;font-size:14px}.catalog-actions button:disabled{opacity:.45;cursor:default}.editor-heading{padding-block:16px}.editor-heading .section-title{margin:0}.editor-mode-switch button.active{border-color:var(--red);background:var(--red);color:#fff}.official-readonly{text-align:left}.official-readonly h2{margin:0 0 8px;font-size:22px}.official-readonly p{color:var(--muted);margin:0}.official-csv-table-wrap{background:#fff;border:1px solid #dfd3cd;border-radius:12px;max-height:620px;margin-top:18px;overflow:auto}.official-csv-table{border-spacing:0;width:max-content;min-width:100%;color:var(--ink);text-align:left;font-size:13px}.official-csv-table caption{color:var(--muted);text-align:left;caption-side:top;padding:10px 12px;font-size:13px;position:sticky;left:0}.official-csv-table th,.official-csv-table td{white-space:nowrap;vertical-align:top;border-top:1px solid #eee5e1;border-right:1px solid #eee5e1;padding:9px 11px}.official-csv-table thead th{z-index:2;color:#6f2638;background:#f3e9e5;border-top:0;font-weight:700;position:sticky;top:0}.official-csv-table thead th:first-child{z-index:4;left:0}.official-csv-table tbody th{z-index:1;background:#fff8f4;font-weight:700;position:sticky;left:0}.official-csv-table tr>:last-child{border-right:0}.official-csv-table tbody tr:hover td,.official-csv-table tbody tr:hover th{background:#fff3ef}.catalog-copy-modal .catalog-modal-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.catalog-modal-actions button{min-height:44px;color:var(--ink);background:#fff;border:1px solid #d8cbc5;border-radius:8px;padding:0 15px}.catalog-modal-actions .admin-primary{border-color:var(--red);background:var(--red);color:#fff}.csv-document-card textarea{resize:vertical;width:100%;min-height:520px;color:var(--ink);white-space:pre;background:#fff;border:1px solid #d7cbc5;border-radius:10px;padding:14px;font:12px/1.6 Consolas,monospace;display:block;overflow:auto}.csv-document-card textarea:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #1f6feb12}.csv-document-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.csv-document-actions .admin-primary{border-color:var(--red);background:var(--red);color:#fff}.csv-card{max-width:1120px;margin:0 auto 16px}.csv-tools{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;display:grid}.csv-tools p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px}.csv-picker{cursor:pointer;display:inline-flex;position:relative}.csv-picker span,.admin-replace{color:var(--ink);background:#fff;border:1px solid #d8cbc5;border-radius:8px;padding:10px 14px;font-size:15px}.csv-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.csv-import-actions{gap:8px;display:flex}.csv-import-actions button{min-height:42px;padding:8px 13px}.csv-import-actions .admin-primary:disabled{opacity:.42;cursor:not-allowed}.admin-replace{color:var(--red)}.admin-grid{grid-template-columns:.88fr 1.12fr;align-items:start;gap:16px;max-width:1120px;margin:auto;display:grid}.admin-card{background:#fffc;border:1px solid #dfd0c8;border-radius:16px;padding:22px;box-shadow:0 12px 36px #472a2b0d}.section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.section-title>div{align-items:center;gap:10px;display:flex}.section-title span{color:var(--red);letter-spacing:.12em;font:700 11px Arial}.section-title h2{margin:0;font-size:22px}.section-title button,.section-title input{color:var(--ink);background:#fff;border:1px solid #d8cbc5;border-radius:8px;padding:8px 10px}.admin-hint{color:var(--muted);margin:-10px 0 16px;font-size:14px}.admin-form{gap:13px;display:grid}.admin-form.compact{grid-template-columns:1fr 1fr}.admin-form label{color:var(--muted);gap:6px;font-size:14px;display:grid}.admin-form input,.admin-form select,.admin-form textarea{width:100%;min-width:0;height:46px;color:var(--ink);background:#fff;border:1px solid #d7cbc5;border-radius:8px;outline:none;padding:0 11px}.admin-form textarea{resize:vertical;height:auto;min-height:76px;padding-block:9px}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px #1f6feb12}.admin-form .check-label{color:var(--ink);flex-direction:row;align-items:center;display:flex}.check-label input{width:16px;height:16px;accent-color:var(--red)}.admin-primary{color:#fff;background:var(--red);border:0;border-radius:8px;min-height:46px;font-weight:700}.compact .admin-primary{grid-column:1/-1}.tag-list{border-top:1px solid #e5dad5;margin-top:20px}.tag-row{border-bottom:1px solid #eee5e1;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.tag-row b,.tag-row small{display:block}.tag-row small{color:var(--muted);margin-top:4px;font:13px Arial}.tag-row button,.character-list button{color:var(--red);background:0 0;border:0;padding:6px;font-size:14px}.danger{color:#8a7779!important}.value-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.roster{max-width:1120px;margin:16px auto 0}.character-list{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.character-list article{background:#fffcf9;border:1px solid #eadfda;border-radius:10px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:11px;display:grid}.avatar-mark{color:#fff;background:var(--red);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.character-list h3{margin:0;font-size:16px}.character-list p{color:var(--muted);margin:4px 0 0;font:13px Arial,sans-serif}@media (width<=820px){.admin-shell{padding:28px 12px 50px}.admin-grid,.csv-tools{grid-template-columns:1fr}.csv-import-actions{flex-wrap:wrap}.catalog-list article{grid-template-columns:1fr}.catalog-actions{justify-content:flex-start}.character-list{grid-template-columns:1fr}}@media (width<=520px){.admin-header{align-items:center}.admin-actions{flex-direction:column;align-items:flex-end;gap:7px}.admin-header p:last-child{display:none}.admin-card{padding:16px}.editor-heading .section-title{flex-direction:column;align-items:flex-start}.admin-form.compact,.value-grid{grid-template-columns:1fr}.character-list article{grid-template-columns:auto 1fr auto}.character-list article .danger{grid-column:3}}.eval-section{flex-direction:column;margin-top:18px;display:flex}.eval-button{border:1px solid var(--red);min-height:46px;color:var(--red);letter-spacing:.04em;background:0 0;border-radius:10px;font-weight:600;transition:background .2s,color .2s}.eval-button:hover:not(:disabled){background:var(--red);color:#fff}.eval-button:disabled{opacity:.55;cursor:progress}.eval-panel{border:1px solid var(--paper-deep);background:#ffffff8c;border-radius:12px;width:100%;padding:16px 18px}.eval-comment{margin:6px 0 4px;font-size:15px;font-weight:600}.eval-summary{color:var(--muted);margin:0 0 12px;font-size:13px}.eval-summary b{color:var(--red);font-family:Arial,sans-serif}.eval-table-wrap{overflow-x:auto}.eval-table{border-collapse:collapse;width:100%;font-size:13px}.eval-table th,.eval-table td{border-bottom:1px solid var(--paper-deep);text-align:left;white-space:nowrap;padding:7px 10px}.eval-table thead th{color:var(--muted);font-size:12px;font-weight:600}.eval-table tbody th{font-weight:600}.eval-table td{font-family:Arial,Noto Sans SC,sans-serif}.eval-table tbody tr:last-child th,.eval-table tbody tr:last-child td{border-bottom:0}.eval-bot-path{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.7}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}
