:root{color-scheme:light;--ink:#24342b;--green:#277e5c;--cream:#f6f5f1;--line:#dce3dc;--muted:#667268}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);padding:11px 14px;min-height:44px}button:disabled{cursor:default;opacity:.45}button:active:not(:disabled){transform:translateY(1px)}button.primary{background:var(--green);color:white;border-color:var(--green);font-weight:700}select{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink)}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.6px}h2{font-size:19px}h3{font-size:16px}.wrap{max-width:780px;margin:auto;padding:16px 12px 150px}.top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.top small,.muted{color:var(--muted);font-size:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:8px}.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:12px;margin-bottom:10px}.intro{max-width:520px;margin:25px auto}.intro p{margin:12px 0}.field{margin:18px 0}.field label{display:block;font-weight:600;margin-bottom:6px}.wide{width:100%}.chip{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:8px;background:#edf1ec;font-size:12px}.pill{color:#6c5d2d;background:#fff2cd}.danger{color:#984752;background:#fbe9ec}.sweet{color:#236c95;background:#e5f3fb}.badge{font-size:11px;color:var(--muted)}.score{font-size:21px;font-weight:750}.scoresmall{font-size:12px;color:var(--muted)}.numbers{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}.number{display:inline-grid;place-items:center;min-width:32px;height:39px;background:#f7ead3;border-radius:9px;font-size:19px;font-weight:700;color:#735b2d;border:1px solid #ead9b8}.numbers.small .number{height:30px;min-width:28px;font-size:16px}.mods{display:flex;gap:5px;flex-wrap:wrap}.recipes{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.recipe{padding:6px 9px;min-height:32px;font-size:12px;background:#f0f5ef}.recipe.ready{border-color:var(--green);background:#dff1e6;box-shadow:0 0 0 1px #27805c55}.recipe.sealed{text-decoration:line-through;background:#fbe9ec}.mine .recipes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mine .recipe{min-height:58px;font-size:13px;line-height:1.35;padding:8px 5px}.recipe small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.current{border-color:#73ad91;box-shadow:0 0 0 1px #73ad9133}.stopped{opacity:.8}.busted{opacity:.6}.turn{padding:11px 12px;background:#e5f0e9;border-radius:12px;margin:10px 0;font-weight:600}.hand{display:flex;gap:8px;margin-top:10px}.hand button{flex:1}.actions{position:fixed;left:0;right:0;bottom:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#f6f5f1f5;border-top:1px solid var(--line);backdrop-filter:blur(10px);z-index:5}.actions-inner{max-width:756px;margin:auto}.buttons{display:grid;grid-template-columns:1.5fr 1fr;gap:9px}.buttons button{min-height:52px;font-size:18px}.action-note{text-align:center;font-size:12px;color:var(--muted);margin-bottom:7px}.draft-list{display:grid;gap:10px;margin:16px 0}.draft{display:block;text-align:left;width:100%;padding:16px}.draft b{display:block;font-size:18px;margin-bottom:6px}.draft p{font-size:14px;line-height:1.6;margin:5px 0}.draft small{color:var(--green)}.logs{font-size:12px;color:#5d695f;max-height:190px;overflow:auto;margin-top:8px}.logs div{padding:4px 0;border-bottom:1px solid #eee}.log-latest{color:var(--ink);font-weight:600}details summary{cursor:pointer;font-size:13px;min-height:30px}.round-table{width:100%;border-collapse:collapse;font-size:13px;margin:12px 0}.round-table td,.round-table th{padding:7px 4px;border-bottom:1px solid var(--line);text-align:center}.round-table th:first-child,.round-table td:first-child{text-align:left}.result{padding:20px;text-align:center}.result h2{font-size:25px;margin-bottom:10px}.loading{text-align:center;padding:60px 20px}.peek{padding:12px;margin:10px 0;background:#fff1bd;border-radius:12px}.pending{border:2px solid #e9bc56}.choice-buttons{display:flex;gap:10px;margin-top:12px}.choice-buttons button{flex:1;min-height:75px;font-size:22px}dialog{border:0;border-radius:18px;padding:22px;max-width:480px;width:calc(100% - 28px);color:var(--ink);box-shadow:0 15px 70px #0003}dialog::backdrop{background:#15271977}dialog p{margin:12px 0}dialog select{margin:12px 0}dialog .close{float:right;min-height:36px;padding:5px 10px}#toast{position:fixed;top:12px;left:50%;transform:translateX(-50%);padding:10px 18px;background:#24342b;color:white;border-radius:12px;z-index:100;display:none;max-width:90vw}.library{max-height:65vh;overflow:auto}.library article{border-bottom:1px solid var(--line);padding:14px 0}.small-button{padding:6px 10px;min-height:34px;font-size:12px}.summary-line{font-size:13px;margin:8px 0}.legend{font-size:12px;line-height:1.7;color:var(--muted)}@media(min-width:650px){.opponents{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.opponents .panel{margin:0}.mine{margin-top:12px}.draft-list{grid-template-columns:repeat(3,1fr)}.wrap{padding-top:24px}}

@media(max-width:649px){.opponents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;align-items:start}.opponents .panel{padding:8px 6px;border-radius:12px;min-width:0}.opponents .row{display:block}.opponents .row b{font-size:13px}.opponents .row .badge{display:block;font-size:10px}.opponents .score{font-size:18px;margin-top:3px}.opponents .score .badge{display:inline}.opponents .scoresmall{font-size:10px}.opponents .numbers{gap:3px;margin:6px 0}.opponents .numbers.small .number{min-width:22px;height:27px;font-size:14px}.opponents .recipes{gap:4px;margin-top:6px}.opponents .recipe{width:100%;min-height:30px;font-size:11px;padding:4px 2px;border-radius:8px}.opponents .chip{font-size:10px;padding:2px 4px}.mine{margin-top:2px}.mine .numbers{margin-top:12px}.result{padding:12px}.round-table{font-size:11px}.round-table small{display:block;font-size:10px}}
/* 长英文和西语在手机上也保持可读。 */
.header-controls{max-width:145px}.header-controls select{padding:8px 10px;font-size:14px}.tagline{font-size:25px;line-height:1.25}.quick-rules{padding-left:22px;font-size:14px}.quick-rules li{margin:10px 0}.advanced{margin-top:16px}.advanced summary{color:var(--muted)}.consent p{margin:8px 0}.consent .choice-buttons button{font-size:13px;min-height:44px}.lobby-links{display:flex;gap:8px;margin:12px 0}.lobby-links button{flex:1}.game-meta{margin-bottom:12px;font-size:12px}.game-meta small{max-width:65%}.recipe,.draft,.opponents b,.hand button{overflow-wrap:anywhere}.table-scroll{overflow-x:auto}.round-table th{overflow-wrap:anywhere;max-width:95px}.feedback{margin-top:20px;border-top:1px solid var(--line);padding-top:16px;text-align:left}.feedback-options{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0}.feedback-options label{display:flex;align-items:center;min-height:44px;gap:4px}.feedback textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit;margin-bottom:8px}.qa{background:#fff1bd;padding:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:400px){.buttons button{font-size:15px}.opponents .row b{font-size:11px}.hand button{font-size:12px}.mine .recipe{font-size:12px}.top h1{font-size:26px}}
