:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#25392e;background:#f6f7f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{max-width:1160px;margin:auto;padding:30px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe4da}.brand{text-decoration:none;color:inherit;font-size:20px;font-weight:750;display:flex;align-items:center;gap:12px}.logo{background:#dbea98;padding:2px 9px;border-radius:10px;font-size:30px}.tag{font-size:10px;letter-spacing:1.5px;color:#849082;margin-left:10px}.header-note{font-size:12px;color:#7c897c}main{max-width:1104px;margin:auto;padding:70px 28px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:50px}.intro{padding-top:40px}.eyebrow{font-size:12px;letter-spacing:2px;display:flex;align-items:center;gap:9px}.eyebrow span{width:7px;height:7px;border-radius:100%;background:#7a983e}h1{font-size:47px;line-height:1.5;letter-spacing:-2px;margin:24px 0}h1 span{color:#789742}.intro p{font-size:14px;line-height:2.1;color:#7a8578}.board{background:#fff;border:1px solid #e1e6da;border-radius:22px;padding:25px;box-shadow:0 15px 40px #293d2310;min-height:440px}.board-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px;color:#8a9385;border-bottom:1px solid #edf0e8;padding-bottom:19px}.board-top span:last-child{color:#789742;letter-spacing:0}h2{font-size:23px;margin:25px 0 9px}.sub{font-size:13px;color:#85907d;line-height:1.8;margin-top:0}.tabs{display:flex;background:#f3f5ef;padding:4px;border-radius:10px;margin:23px 0 18px;gap:4px}.tabs button{flex:1;background:transparent;color:#7a8573;border:0;padding:11px;border-radius:7px}.tabs button.active{background:#fff;box-shadow:0 2px 5px #293d2310;color:#34472d;font-weight:bold}button{cursor:pointer;font:inherit;font-size:13px;transition:background .2s,transform .2s}button:hover{filter:brightness(.97)}button:active{transform:translateY(1px)}.choices{display:flex;gap:10px}.choice{flex:1;text-align:left;border:1px solid #e2e7db;border-radius:12px;background:white;padding:16px 13px;color:#34472d}.choice.active{border:1px solid #91a653;background:#f7faee}.choice strong{display:block;margin-bottom:8px}.choice small{color:#89927e;font-size:11px;line-height:1.7;display:block}.primary{width:100%;background:#d9ec9c;color:#2e422b;border:0;border-radius:10px;padding:15px;margin-top:22px;font-weight:700}.hint{text-align:center;font-size:11px;color:#929a8a;margin:15px 0 0}.digits{display:flex;gap:10px;margin:23px 0}.digit{flex:1;min-width:0;text-align:center;border-radius:12px;border:1px solid #e1e6d8;background:#f8f9f4;padding:17px 0;font-size:28px;font-family:monospace;color:#34472d}input{width:100%;font:inherit;letter-spacing:12px;font-size:26px;text-align:center;padding:17px 8px;border-radius:10px;border:1px solid #cdd8bc;background:#fafbf6;color:#34472d}input:focus{outline:2px solid #a8c566;outline-offset:2px}.error{min-height:18px;font-size:12px;color:#b45642;margin:8px 0}.tools{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#8b9481;margin-top:18px}.link{border:0;background:none;color:#7b8d5b;font-size:12px;padding:5px}.history{max-height:240px;overflow:auto;margin-top:18px}.row{display:flex;align-items:center;gap:12px;border-top:1px solid #eef0e8;padding:12px 0;font-size:12px}.row .num{font-family:monospace;font-size:21px;letter-spacing:8px;margin-right:auto}.row em{font-style:normal;color:#7d8a6d;font-size:10px}.hit{color:#709532;font-weight:bold}.badge{background:#eef4df;border-radius:5px;padding:6px 9px;white-space:nowrap}.win{text-align:center;padding:20px 0}.win-icon{font-size:45px}.rules{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e0e5d9;margin-top:18px;padding-top:30px;gap:25px}.rules b{font-size:11px;color:#8e9e77;font-family:monospace}.rules h3{font-size:13px;margin:12px 0 8px}.rules p{font-size:12px;color:#8a9382;line-height:1.8}footer{max-width:1048px;margin:45px auto 0;padding:23px 0;border-top:1px solid #e0e5d9;display:flex;gap:20px;font-size:11px;color:#89947e}footer span:last-child{margin-left:auto}@media(max-width:760px){header{padding:20px}.header-note,.tag{display:none}main{padding:25px 20px 0;display:block}.intro{padding:0 0 20px}h1{font-size:34px;margin:12px 0}.intro p{font-size:12px}.board{padding:20px}.rules{display:grid;gap:12px;margin-top:32px}.rules p{font-size:10px}footer{margin:25px 20px 0}footer span:last-child{display:none}}
.assistant{margin-top:24px;padding:18px;background:#fbfaf4;border:1px solid #ece9da;border-radius:16px}.buddy{display:flex;gap:12px;align-items:center}.buddy strong{font-size:13px}.buddy p{font-size:11px;color:#889078;margin:6px 0}.bunny{display:inline-block;font-size:33px;animation:hello .55s ease-out}.assistant-actions{display:flex;gap:8px;margin-top:14px}.soft-button{border:1px solid #dfe4ce;border-radius:9px;background:#fff;padding:10px 12px;color:#607145;font-size:12px}.soft-button:disabled{opacity:.5;cursor:default}.clue-text{font-size:12px;line-height:1.8;color:#7f855f;padding:10px;background:#f0f2df;border-radius:8px;animation:hello .3s ease-out}.assistant summary{cursor:pointer;font-size:13px;font-weight:600;padding:10px 0}.note-help{font-size:11px;color:#8b917e;line-height:1.8}.position-tabs{display:flex;gap:5px;margin:13px 0}.position-tabs button{flex:1;padding:9px 2px;border:1px solid #e1e5d3;border-radius:7px;background:white;color:#84906e;font-size:12px}.position-tabs button.active{background:#ddebba;color:#3d5827;border-color:#b0c58a}.number-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-width:300px;margin:0 auto}.number-cell{position:relative;border:1px solid #e0e6d2;background:white;color:#536b38;padding:9px;border-radius:10px;font-size:21px;font-family:monospace;min-height:61px}.number-cell small{display:block;font-size:9px;font-family:inherit;color:#8c967c;margin-top:4px}.number-cell.zero{grid-column:2}.number-cell.excluded{background:#eeeee8;color:#b6b7ab;border-style:dashed}.number-cell.marked{background:#fff0e9;color:#c78c73;text-decoration:line-through}.number-cell.marked small{color:#c78c73;text-decoration:none}.number-cell.known{background:#e1efc3;border-color:#9fb96a}.number-cell.known small{color:#66823f}.surrender-confirm{padding:10px;margin-top:12px;background:#fff3eb;border-radius:10px;animation:hello .3s ease-out}.surrender-confirm p{font-size:12px;line-height:1.8;color:#a17e65}.win{position:relative;overflow:hidden}.mascot{animation:celebrate 1.5s ease-in-out infinite}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;left:calc(var(--i)*8%);top:-30px;font-style:normal;color:#a9be68;font-size:20px;animation:sparkle 3s ease-in infinite;animation-delay:calc(var(--i)*.15s)}.confetti i:nth-child(3n){color:#efb4a8}.confetti i:nth-child(3n + 1){color:#e8ca71}button:focus-visible,summary:focus-visible{outline:2px solid #91ab5f;outline-offset:3px}@keyframes hello{from{opacity:.3;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes celebrate{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(6deg) translateY(-6px)}}@keyframes sparkle{0%{transform:translateY(0) rotate(0);opacity:0}15%{opacity:1}100%{transform:translateY(410px) rotate(230deg);opacity:0}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.zero-option{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:13px;cursor:pointer}.zero-option input{width:17px;height:17px;margin:0;padding:0;accent-color:#829f49}.zero-option small{display:block;font-size:11px;color:#8b947e;margin-top:4px}.position-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.position-column{display:flex;flex-direction:column;gap:6px;min-width:0}.position-column h4{margin:8px 0;font-size:12px;text-align:center;color:#657c48}.position-column .number-cell{width:100%;padding:7px 2px;min-height:49px;font-size:19px}.position-column .number-cell small{font-size:9px;margin-top:2px}
/* Keep the game central; supporting copy follows the play area. */
header{max-width:1160px;padding:16px 24px}
main{max-width:1104px;padding:22px 24px 0;display:flex;flex-direction:column;align-items:center;gap:24px}
.board{width:100%;max-width:860px;min-height:0;padding:20px 26px}
.board-top{padding-bottom:12px}
#screen>h2{margin-top:16px}
#screen>.sub{margin-bottom:12px}
#screen>form .primary{margin-top:0;padding:12px}
#screen>form input{padding:12px 8px}
#screen>form .error{margin:5px 0;min-height:16px}
.tools{margin-top:10px}
.history{max-height:150px;margin-top:8px}
.row{padding:8px 0}
.assistant{margin-top:14px;padding:14px 18px}
.buddy p{margin:4px 0}
.assistant-actions{margin-top:10px}
.clue-text{margin:10px 0;padding:7px 10px}
.assistant summary{padding:6px 0}
.note-help{margin:6px 0}
.position-columns{gap:12px}
.position-column{gap:4px}
.position-column h4{margin:4px 0}
.position-column .number-cell{min-height:32px;padding:5px 10px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:18px}
.position-column .number-cell small{margin:0;font-size:10px}
.intro{order:2;width:100%;max-width:860px;padding:24px 0 0;text-align:center;border-top:1px solid #e0e5d9}
.eyebrow{justify-content:center;font-size:11px}
h1{font-size:26px;letter-spacing:-.5px;line-height:1.6;margin:10px 0}
h1 br{display:none}
.intro p{font-size:12px;line-height:1.8;margin:8px 0}
.rules{order:3;width:100%;max-width:860px;margin-top:0;padding-top:20px}
.rules h3{margin:8px 0 5px}
footer{max-width:860px;margin:26px auto 0;padding:18px 0}
@media(min-width:760px){
#screen:has(>.assistant){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:26px;align-content:start}
#screen:has(>.assistant)>h2{grid-column:1;grid-row:1}
#screen:has(>.assistant)>.sub{grid-column:1;grid-row:2}
#screen:has(>.assistant)>form{grid-column:1;grid-row:3}
#screen:has(>.assistant)>.tools{grid-column:1;grid-row:4}
#screen:has(>.assistant)>.history{grid-column:1;grid-row:5;max-height:300px}
#screen:has(>.assistant)>.assistant{grid-column:2;grid-row:1 / span 6;margin-top:16px}
.position-columns{gap:7px}
.position-column .number-cell{gap:6px;padding:5px 2px}
}
@media(max-width:759px){
header{padding:12px 16px}
main{padding:12px 12px 0;gap:20px}
.board{padding:16px}
.assistant{padding:12px}
.position-columns{gap:7px}
.position-column .number-cell{padding:5px 2px;gap:5px;font-size:16px}
.position-column .number-cell small{font-size:9px}
.intro{padding-top:20px}
h1{font-size:22px}
.rules{gap:12px}
footer{margin:20px 16px 0}
}
/* Explicit play columns keep all guessing content together on the left. */
.play-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
.guess-panel{min-width:0}
.guess-panel h2{margin-top:16px}
.guess-panel form .primary{margin-top:0;padding:12px}
.guess-panel form input{padding:12px 8px}
.guess-panel form .error{margin:5px 0;min-height:16px}
.guess-panel .history{max-height:430px}
.play-layout>.assistant{min-width:0;margin-top:16px}
@media(max-width:639px){.play-layout{grid-template-columns:minmax(0,1fr);gap:0}.play-layout>.assistant{margin-top:14px}.guess-panel .history{max-height:180px}}
.tabs button.coming-soon:disabled{cursor:not-allowed;opacity:.5;background:transparent;box-shadow:none}
.play-layout.without-helper{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}.game-actions{margin-top:16px}.game-actions .surrender-confirm{margin-top:10px}
