:root{font-family:'Noto Sans SC',system-ui,sans-serif;color:#263d37;background:#f4f0e5;font-synthesis:none;--green:#234f42;--muted:#768078}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1240px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:28px 30px;border-bottom:1px solid #dadccd}.brand{font-size:26px;letter-spacing:-1px;font-weight:900;color:var(--green);text-decoration:none}.brand span{color:#ca6d38}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:4px;font-weight:500}.pill{border:1px solid #cbd4c3;border-radius:30px;padding:8px 13px;font-size:11px;white-space:nowrap}main{padding:0 30px}.intro{padding:55px 0 28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#9c7148}h1{font-size:52px;letter-spacing:-2px;line-height:1.25;margin:15px 0 20px}h2{font-size:22px;margin:8px 0}h3{font-size:15px;margin:0 0 18px}p{font-size:13px;line-height:1.9}.intro p{color:var(--muted)}.card{background:#fffcf4;border:1px solid #dedfd2;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 14px #233e3304}.entry{max-width:720px;display:grid;gap:18px}.entry-actions{display:flex;gap:10px}.entry-actions input{width:170px}label{font-size:12px;display:grid;gap:8px}input,textarea{font:inherit;font-size:14px;padding:12px;border:1px solid #d7dbcb;background:#fffdf8;border-radius:8px;color:#263d37;min-width:0}textarea{width:100%;resize:vertical}button{font:inherit;font-size:13px;cursor:pointer;border:1px solid transparent;border-radius:9px;background:var(--green);color:#fff;padding:12px 18px;font-weight:600;transition:.15s}button:hover:not(:disabled){filter:brightness(1.13);transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed}.secondary{color:var(--green);background:#e8eddf;border-color:#d7dfcf}.ghost{color:#94705a;background:transparent;border-color:#ddd7c8}.muted{color:var(--muted);font-size:12px}details summary{cursor:pointer;font-size:13px;font-weight:600}details p{color:var(--muted)}#notice{font-size:13px;min-height:30px;padding:0 0 12px;color:#a54b2f}.room-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:16px 0 22px}.room-buttons{display:flex;gap:8px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px}.board-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;align-items:stretch}.cell{min-height:150px;background:#f3e6c9;border:1px solid #e7d9b8;border-radius:10px;padding:8px 4px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;position:relative;padding-top:35px}.cell:nth-child(even){background:#efe1bf}.cell .num{position:absolute;top:8px;left:9px;font-size:11px;color:#9d8c67}.cell.finish{border:2px dashed #628b65;background:#e8edda}.camel{width:90%;max-width:60px;border-radius:8px 13px 5px 5px;padding:6px 0;text-align:center;color:white;font-size:11px;font-weight:700;border-bottom:3px solid #0002;box-shadow:0 2px 1px #0001}.red{background:#c95c48}.yellow{background:#d4a32d;color:#433b24}.green{background:#528c64}.blue{background:#5689b0}.purple{background:#9276aa}.dice{display:flex;gap:8px;flex-wrap:wrap;padding-top:20px;font-size:11px;align-items:center}.die{padding:8px;border-radius:6px}.used{opacity:.25;text-decoration:line-through}.action-row{display:flex;gap:8px;flex-wrap:wrap}.bet{background:#f5ecd8;color:#58482e;border:1px solid #e6d8b9}.actions h3{margin-bottom:12px}.player{padding:14px 0;border-bottom:1px solid #e4e5d8}.player.current{background:#edf1e4;margin:0 -10px;padding:14px 10px;border-radius:8px}.player-line{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.player small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a6aca4;margin-right:5px}.dot.online{background:#63996c}#start{width:100%;margin-top:20px}.architecture{background:#e8eddf}.architecture p{font-size:12px}.logs ol{max-height:200px;overflow:auto;padding-left:23px;margin:0}.logs li{padding:5px;font-size:12px;color:#727c70}.logs li:first-child{color:#263d37}.rules{margin-top:25px}footer{padding:30px;color:#909585;font-size:11px}.result{padding:16px;background:#e9eedc;border-radius:9px;font-size:16px;font-weight:700}[hidden]{display:none!important}@media(min-width:1000px){body:has(#room[hidden]) main{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:40px}body:has(#room[hidden]) .intro{padding:30px 0}body:has(#room[hidden]) .entry{grid-column:2;grid-row:1;margin-top:20px}body:has(#room[hidden]) #notice,body:has(#room[hidden]) .rules{grid-column:1/-1}}@media(max-width:850px){.layout{grid-template-columns:1fr}aside{display:grid;grid-template-columns:1fr 1fr;gap:15px}.room-bar{align-items:flex-start;flex-direction:column}.room-buttons{flex-wrap:wrap}.cell{min-height:125px}h1{font-size:40px}}@media(max-width:520px){header{padding:20px 16px}.pill{font-size:9px;padding:6px}main{padding:0 14px}.intro{padding:30px 0 18px}.card{padding:16px;border-radius:12px}.entry-actions{flex-wrap:wrap}.entry-actions input{flex:1;width:100px}.board{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.cell{min-height:125px}aside{display:block}.board-head h2{font-size:17px}.room-buttons button{font-size:11px;padding:9px}.action-row button{flex:1;min-width:90px}h1{font-size:38px}footer{padding:24px 16px}}
#add-bot{width:100%;margin-top:16px}.remove-bot{padding:5px 10px;font-size:11px;margin-top:8px}
.finish-bets{margin:10px 0}.bet-label{min-width:34px;align-self:center;font-size:12px}.actions h3:not(:first-child){margin-top:22px}.private-bets{font-size:12px;color:#42654a}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:12px;text-align:left;border-bottom:1px solid #dfe3d4;white-space:nowrap}th{color:#71806c;font-weight:500}.final-settlement{border:2px solid #628b65}.final-settlement .result{margin-bottom:20px}.final-settlement details{margin-top:18px}
.tile{font-size:10px;background:#e7edcf;border:1px solid #a5b289;padding:5px;border-radius:5px}.tile.boo{background:#f4dbc9;border-color:#c49071}select{font:inherit;font-size:12px;border:1px solid #d5dccb;border-radius:8px;background:#fffdf6;color:#35503d;padding:10px;min-width:0;max-width:100%}
.finish-zone{grid-column:1/-1;border-top:3px dashed #668b60;padding:14px 5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:#446946}.finish-zone strong{margin-right:auto}
.score-title{font-size:22px;font-weight:700;margin-bottom:20px}.score-podium{display:flex;gap:10px;margin-bottom:20px}.podium-place{flex:1;border-radius:10px;text-align:center;padding:13px;font-size:18px;font-weight:700}.your-result{padding:22px;border-radius:12px;background:#e8efdd;display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}.your-result>span{font-size:13px}.your-result strong{font-size:30px;color:#35674b}.your-result small{flex-basis:100%;color:#718168;font-size:12px}.your-result.loss{background:#f5e4d8}.your-result.loss strong{color:#a55538}#settlement details{margin-top:18px}#continue-leg{padding:14px 26px}.final-standing{max-width:600px;margin:16px 0}.final-standing>div{display:flex;justify-content:space-between;border-bottom:1px solid #e0e5d4;padding:12px 0;font-size:14px}@media(max-width:520px){.your-result{padding:16px}.your-result strong{font-size:26px}.podium-place{font-size:16px;padding:12px 6px}#continue-leg{width:100%}}
.leg-outcome{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 24px}.leg-outcome>div{border-radius:9px;padding:12px 16px;font-size:13px;font-weight:600}.outcome-first,.outcome-second{color:white}.leg-outcome .yellow{color:#433b24}.outcome-rest{background:#ece9df;color:#756957}.player-settlement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-bottom:24px}.player-settlement-card{background:#fffdf7;border:1px solid #dce3d2;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;padding:18px;min-width:0}.my-score-card{border:2px solid #79996b;padding:17px}.score-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.score-card-head>strong{overflow-wrap:anywhere}.score-outcome{font-size:10px;background:#edf2e3;color:#4b7046;border-radius:20px;padding:5px 8px;white-space:nowrap}.negative{color:#b0583d!important}.score-outcome.negative{background:#f9e9df}.score-card-bets{flex:1;min-height:75px}.bet-result-group{margin-bottom:12px}.bet-result-group>small{font-size:10px;color:#738568;display:block;margin-bottom:6px}.bet-result-group.miss>small{color:#a36a54}.ticket-chips{display:flex;gap:6px;flex-wrap:wrap}.settled-ticket{display:flex;align-items:center;gap:7px;padding:5px 7px 5px 5px;background:#f1f2e9;border-radius:7px;font-size:11px}.settled-ticket>strong{color:#4c7549}.miss .settled-ticket>strong{color:#b0583d}.ticket-color{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:white;font-size:11px;font-weight:700}.ticket-color.yellow{color:#433b24}.income-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;border-top:1px solid #e5e9dd;padding-top:14px}.income-groups>div{background:#f0f3e8;padding:10px;border-radius:8px}.income-groups small{display:block;color:#7b8473;font-size:10px;margin-bottom:5px}.income-groups strong{font-size:20px;color:#456a43}.score-card-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}.score-card-total>span{font-size:12px}.score-card-total>strong{font-size:25px;color:#356744}.score-card-balance{font-size:11px;color:#8a907f;margin-top:7px}.floor-note{font-size:10px;color:#a56f50;margin-top:8px}.no-bets{font-size:12px;color:#96998a;margin-top:8px}@media(max-width:520px){.leg-outcome{display:grid;grid-template-columns:1fr 1fr}.leg-outcome>div{padding:10px;font-size:11px}.outcome-rest{grid-column:1/-1}.player-settlement-grid{gap:12px}}
dialog#settlement{width:min(1120px,calc(100% - 32px));max-height:88dvh;margin:auto;padding:28px;overflow-y:auto;overscroll-behavior:contain;color:#263d37;box-shadow:0 25px 100px #16352940}dialog#settlement:not([open]){display:none}dialog#settlement::backdrop{background:#102a24a6;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.close-settlement{float:right;margin-bottom:12px}#settlement .result{clear:both}@media(max-width:520px){dialog#settlement{width:calc(100% - 20px);max-height:92dvh;padding:16px;border-radius:16px}.close-settlement{float:none;width:100%}}
.decision-badge{display:inline-block;margin:10px 0 3px;padding:6px 10px;border-radius:8px;border:1px solid #d4ddca;background:#eef2e5;color:#48663e;font-size:11px;font-weight:600;max-width:100%;overflow-wrap:anywhere}.decision-bet{background:#fff0d6;border-color:#e6cea0;color:#916a24}.decision-spectator{background:#e1eee6;border-color:#adc9b8;color:#3f7159}.decision-roll{background:#e2edf5;border-color:#b2c9dd;color:#436a8d}.decision-finish-bet{background:#eee5f5;border-color:#cdb9dd;color:#7b5795}.decision-none{background:#f3f2eb;border-color:#e2e1d7;color:#9b9b8d;font-weight:400}.decision-latest{box-shadow:0 0 0 2px #b8c9a766}
.dice-tracker{width:100%;padding:18px 0 8px}.dice-tracker h3{margin-bottom:14px;font-size:13px}.dice-results{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.dice-label{display:block;font-size:10px;color:#859079;margin-bottom:10px}.dice-result{display:grid;justify-items:center;gap:6px;min-width:64px}.dice-face{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-size:28px;font-weight:900;color:white;border:2px solid #fff8;box-shadow:0 4px 0 #25433320}.dice-face.yellow{color:#433b24}.dice-result strong{font-size:11px}.dice-result small{font-size:9px;color:#86907c;max-width:90px;overflow-wrap:anywhere;text-align:center}.dice-waiting{display:flex;gap:7px;align-items:center;flex-wrap:wrap;border-top:1px solid #e0e5d5;margin-top:15px;padding-top:12px}.dice-waiting .dice-label{margin:0 6px 0 0}.waiting-die{font-size:10px;padding:6px 8px;border-radius:6px;opacity:.6;color:white}.waiting-die.yellow{color:#433b24}.dice-animation{position:fixed;inset:0;margin:auto;width:230px;height:240px;background:#fffcf3f5;border:2px solid #acbc93;border-radius:22px;box-shadow:0 15px 80px #20372d55;pointer-events:none;padding:24px;color:#294939;text-align:center;z-index:1000}.dice-animation::backdrop{background:transparent;pointer-events:none}.roll-title{font-size:14px;font-weight:700;margin-bottom:20px}.dice-animation .dice-face{width:72px;height:72px;font-size:40px}.dice-animation .dice-result strong{font-size:15px}.dice-animation .dice-result small{font-size:12px}.dice-tumbling .dice-face{animation:dice-tumble .65s cubic-bezier(.2,.75,.3,1)}@keyframes dice-tumble{0%{transform:translateY(-20px) rotate(-160deg) scale(.7);filter:blur(2px)}35%{transform:translateY(5px) rotate(90deg)}70%{transform:translateY(-7px) rotate(-22deg)}100%{transform:translateY(0) rotate(0);filter:blur(0)}}@media(prefers-reduced-motion:reduce){.dice-tumbling .dice-face{animation:none}}
.black{background:#303832;color:#fff}.white{background:#fffdf4;color:#353d33;border:1px solid #a6b09c}.grey{background:#89918a;color:#fff}.dice-face.grey.face-black{color:#151b16;text-shadow:0 1px 0 #ffffff55}.dice-face.grey.face-white{color:#fff;text-shadow:0 1px 2px #263d37}.dice-animation:has(.dice-result[data-color="grey"]){height:280px}.dice-face.white{color:#353d33}.waiting-die.grey{opacity:.8}
.crazy-roll-reason{font-size:10px;line-height:1.6;margin:10px 0 0;color:#6b7964}.dice-animation:has(.crazy-roll-reason){height:320px}
.setup-dice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:12px;margin:20px 0}.setup-camel-card{border:1px solid #dce3d3;border-radius:12px;padding:12px 9px;text-align:center;background:#fffdf7;display:grid;justify-items:center;gap:12px}.setup-camel-name{display:block;width:100%;padding:8px 4px;border-radius:7px;font-size:12px;color:white}.setup-camel-name.yellow,.setup-camel-name.white{color:#433b24}.setup-space{font-size:20px;font-weight:700;color:#3b6148}.setup-camel-card>small{font-size:10px}.setup-die .dice-face{animation:setup-toss 1s cubic-bezier(.15,.7,.25,1)}@keyframes setup-toss{0%{transform:translateY(-15px) rotate(-250deg) scale(.6);opacity:.3}40%{transform:translateY(8px) rotate(100deg);opacity:1}75%{transform:translateY(-7px) rotate(-20deg)}100%{transform:translateY(0) rotate(0)}}.setup-stack-groups{display:flex;gap:14px;flex-wrap:wrap;padding:16px 0}.setup-stack{display:grid;justify-items:center;gap:4px;min-width:85px}.setup-stack>small{font-size:10px;margin-bottom:5px;color:#7f8a75}.setup-stack .camel{width:65px}#confirm-setup{margin-top:22px;padding:14px 22px}@media(max-width:520px){.setup-dice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#confirm-setup{width:100%}}@media(prefers-reduced-motion:reduce){.setup-die .dice-face{animation:none}}
[data-camel]{position:relative}.die-used::after{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(100,108,105,.5);pointer-events:none}.die-used{filter:saturate(.4)}.camel-in-transit{z-index:20;will-change:transform;box-shadow:0 8px 15px #263d3730}.board,.cell{overflow:visible}.board-legend{font-size:10px;color:#858d7b;margin:10px 0 0}
