@import url("/src/game-header.css");
:root{font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;color:#18392e;background:#f1e7d9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;border:0;border-radius:9px;padding:11px 17px;background:#e8ede5;color:#18392e;font-weight:650}button:hover{filter:brightness(.96)}button:disabled{opacity:.4;cursor:not-allowed}a{color:#286647;text-decoration:none}.shell{max-width:960px;margin:auto;padding:28px 24px 60px}.brand{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce3d7;padding-bottom:22px}.brand-name{font-weight:850;letter-spacing:2px;font-size:20px}.brand-name small{display:block;letter-spacing:1px;font-size:10px;color:#718273;margin-top:4px}.brand nav{display:flex;gap:8px}.hero{margin:32px 0 25px}.eyebrow{color:#637660;font-size:11px;font-weight:800;letter-spacing:2px}.hero h1{font-size:clamp(26px,4vw,38px);margin:10px 0}.muted,.hero p{color:#738074;font-size:13px;line-height:1.8}.card{background:white;border:1px solid #e0e6dc;border-radius:16px;padding:23px;margin-bottom:18px;box-shadow:0 4px 16px #243f2404}.card h2{font-size:17px;margin:0 0 20px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:13px;font-weight:650}input,select{display:block;width:100%;margin-top:8px;padding:11px;border:1px solid #dce3d7;border-radius:8px;background:#fcfdfb;color:#18392e}input[type=checkbox]{width:auto;display:inline;margin-right:7px}.checks{display:flex;flex-wrap:wrap;gap:15px;margin:18px 0}.primary{background:#23593e;color:white}.danger{background:#f9e9e6;color:#9f4432}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.badge{font-size:10px;padding:5px 9px;border-radius:20px;background:#e9efe1;color:#567238;letter-spacing:1px}.status{background:#eaf0e4;padding:14px 18px;border-radius:10px;margin-bottom:18px;font-size:13px}.horses{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;margin:18px 0}.horse{border:1px solid #dce3d7;background:#fff;border-radius:12px;padding:17px 12px;text-align:left}.horse.selected{background:#e7f0df;border-color:#639154}.number{display:inline-flex;width:27px;height:27px;align-items:center;justify-content:center;background:#294b37;color:white;border-radius:7px;margin-right:7px}.horse small{display:block;color:#74826d;margin-top:10px}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.tabs .active{background:#23593e;color:white}.wallet{font-size:24px;font-weight:800}.wallet small{font-size:11px;color:#74826d}.bet{padding:13px 0;border-bottom:1px solid #edf0e9;font-size:13px}.bet input{width:80px;display:inline-block;margin:0}.empty{text-align:center;color:#7a8674;padding:25px;font-size:13px}.share{font-size:12px;overflow-wrap:anywhere;background:#f3f5ef;padding:12px;border-radius:8px}.notice{font-size:12px;color:#7a8674;margin-top:24px}.dev-header{background:#18392e;color:white;padding:20px 28px;display:flex;justify-content:space-between;align-items:center;gap:15px}.dev-header p{font-size:12px;margin:8px 0 0;color:#c7d3c4}.dev-header nav{display:flex;gap:18px}.dev-header a{color:#e5eddf;font-size:12px}.dev-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:18px;height:calc(100vh - 95px)}.dev-grid section{display:flex;flex-direction:column;min-height:0}.frame-label{font-size:11px;letter-spacing:2px;font-weight:750;padding:9px 5px}iframe{width:100%;flex:1;border:1px solid #dce3d7;border-radius:12px;background:#f1e7d9}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:13px 8px;border-bottom:1px solid #edf0e9}footer{margin-top:30px;font-size:11px;color:#8a9384}@media(max-width:600px){.shell{padding:20px 15px}.fields{grid-template-columns:1fr}.brand-name{font-size:16px}.dev-grid{grid-template-columns:1fr;height:auto}.dev-grid iframe{height:800px;flex:auto}.dev-header{align-items:flex-start;flex-direction:column}.card{padding:18px}}
[hidden]{display:none!important}

.site-footer{text-align:center;border-top:1px solid #dce3d7;padding-top:20px}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap}.site-footer nav a{padding:0 12px;border-left:1px solid #657263;font-size:13px;color:#364c3b}.site-footer nav a:last-child{border-right:1px solid #657263}.site-footer p{margin:16px 0 0}.information-page{line-height:1.9;color:#253329}.information-page h2{margin:28px 0 8px;font-size:17px}.information-page p,.information-page li{font-size:14px}.information-page ul{padding-left:22px}

/* Compact spacing shared by all app pages; retain comfortable input targets. */
.shell{padding-bottom:32px}.shell .hero{margin:18px 0 16px}.shell .hero h1{margin:6px 0;line-height:1.4}.shell .hero p{margin:6px 0;line-height:1.6}.shell .card{padding:18px;margin-bottom:12px}.shell .card h2{margin-bottom:12px}.shell .fields{gap:12px}.shell input,.shell select{margin-top:5px;padding:10px}.shell .checks{gap:10px 14px;margin:12px 0}.shell .checks input{margin-top:0}.shell .actions{margin-top:12px}.shell .status{padding:10px 14px;margin-bottom:12px}.shell .tabs{margin-bottom:12px}.shell .empty{padding:16px}.shell .notice{margin-top:16px}.shell footer{margin-top:20px}.shell .site-footer{padding-top:14px}.shell .site-footer p{margin-top:10px}.shell .information-page h2{margin:20px 0 8px}.shell .information-page p{margin:10px 0}.shell .invite-feedback:empty{display:none}.shell .invitation-card .row{margin-bottom:12px}.shell .invite-url{margin:0}.shell .bet-type-note{margin-bottom:14px;line-height:1.65}
@media(max-width:600px){.shell .hero{margin:14px 0}.shell .card{padding:14px}.shell .fields{gap:10px}}

.introduction p{font-size:14px;line-height:1.8;margin:0 0 12px}.introduction .intro-lead{font-size:16px;font-weight:700;color:#253e30}.introduction .muted{font-size:12px}.introduction .actions{margin-top:16px}

.shell .actions:has(>button:only-child){justify-content:center}.shell .about-actions{margin:0 0 14px}.shell .about-actions button{font-size:13px;padding:9px 16px}

.shell .about-actions:has(>button:only-child){justify-content:flex-start}
.shell .actions button,.shell button.primary,.shell button.danger,.shell .purchase-controls button,.shell .invitation-card button{border:1px solid #a4b0a0;border-radius:6px}
.shell button.primary{border-color:#17442e}.shell button.danger{border-color:#d6a49b}.shell .about-actions button{border-color:#91a18d}

.shell .invitation-share-actions{display:flex;flex-wrap:nowrap;gap:8px}.shell .invitation-share-actions>button,.shell .invitation-share-actions>.share-button{display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:0;padding:10px 6px;white-space:nowrap;font-size:13px;border:1px solid #17442e;border-radius:6px;line-height:1.5}.shell .invitation-share-actions>.line-share{border-color:#07833d}.shell .invitation-share-actions>.x-share{border-color:#222}

.shell .room-rules{margin-top:14px}.rule-items{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}.rule-item{display:flex;align-items:baseline;gap:8px;background:#eff6e9;border:1px solid #b4c9a6;border-radius:10px;padding:10px 12px;min-width:0}.rule-item dt{flex-shrink:0;font-size:13px;color:#53664a;margin:0}.rule-item dd{min-width:0;margin:0;font-size:13px;font-weight:650;color:#263c26;overflow-wrap:anywhere}.shell .progression-card .actions{margin:0}

.shell .farewell-hero h1{font-size:clamp(18px,5vw,24px);letter-spacing:-.03em}.shell .farewell-message{margin-top:10px}.farewell-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.farewell-actions button{width:100%;min-width:0;padding:11px 6px;font-size:13px;white-space:nowrap}

.shell #room-form .fields:has(input[name="initial"]),.shell #room-form .fields:has(#debt-limit-field){grid-template-columns:repeat(2,minmax(0,1fr))}.shell #room-form label:has(input[name="host"]){grid-column:1/-1}.shell #room-form .fields>label{min-width:0}.shell #room-form #debt-limit-field{grid-column:1}

.shell .recreate-room-button{background:#e8f1df;color:#202020;border-color:#a4b993}.shell .invitation-card .actions:has(.recreate-room-button){display:grid;grid-template-columns:1fr 1fr;gap:8px}.shell .invitation-card .actions:has(.recreate-room-button)>button{padding:11px 6px;font-size:13px;white-space:nowrap}
.confirmation-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:380px;padding:22px;border:1px solid #91a18d;border-radius:12px;background:#fff;color:#202820;box-shadow:0 8px 32px #0003}
.confirmation-dialog::backdrop{background:#17261c66}
.confirmation-dialog h2{margin:0 0 14px;font-size:20px}
.confirmation-dialog p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.7;margin:0 0 20px}
.confirmation-actions{display:flex;justify-content:flex-end;gap:12px}
.confirmation-actions button{min-width:88px;border:1px solid #a4b0a0;border-radius:6px;padding:10px 18px}
.confirmation-actions button.primary{border-color:#17442e}
.confirmation-dialog .confirmation-detail{font-size:12px;color:#637660;margin-top:-12px}
.online-devtools{padding-top:0}.online-devtools .card h2{font-family:inherit;font-size:14px}.online-devtools .muted{font-size:12px;margin-bottom:0}.online-devtools button{background:#e8f1df;color:#202020;border-color:#a4b993}

.link-icon{display:inline-block;width:14px;height:14px;flex-shrink:0;vertical-align:middle;margin-left:5px}.invitation-heading{display:inline-flex;align-items:center}.social-logo{display:block;object-fit:contain;flex-shrink:0}.shell .invitation-share-actions>.share-button{gap:6px}.shell .invitation-share-actions>.line-share{background:#06c755;color:#fff;padding:6px;border-color:#06c755}.shell .invitation-share-actions>.x-share{background:#000;color:#fff}.line-logo{width:40px;height:40px}.x-logo{width:20px;height:20px}

.shell .invite-link-row{position:relative;display:flex;flex-wrap:nowrap;align-items:stretch;gap:0}.shell .invite-link-row .invite-url{flex:1 1 0;width:0;min-width:0;margin:0;border-radius:6px 0 0 6px;border-right:0}.shell .invite-copy{flex:0 0 auto;margin:0;border:1px solid #17442e;border-radius:0 6px 6px 0;padding:10px 14px;white-space:nowrap}

.shell #room-panels:not(:empty){padding-top:8px}

.race-overview-setting{margin:12px 0}.race-overview-setting input[type=checkbox]{margin-top:0}.race-overview-setting textarea{display:block;box-sizing:border-box;width:100%;min-height:90px;margin-top:8px;padding:10px;border:1px solid #dce3d7;border-radius:6px;background:#fcfdfb;color:#18392e;font:inherit;font-size:14px;line-height:1.6;resize:vertical}.race-overview p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7}
.site-footer .footer-restart{margin:0 0 12px}.site-footer .footer-restart button{font:inherit;font-size:13px;font-weight:400;line-height:1.5;color:#364c3b;background:transparent;border:0;border-radius:0;padding:0;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.shell .hero h1.waiting-heading{font-size:clamp(16px,5vw,24px);white-space:nowrap;letter-spacing:0}}
.usage-guide ol{padding-left:24px;margin:0}.usage-guide li{padding-left:3px;margin-bottom:14px;color:#253e30;font-size:14px}.usage-guide li strong{font-size:14px}.usage-guide li p{font-size:13px;line-height:1.75;margin:4px 0 0}.usage-guide>.muted{font-size:12px;line-height:1.7;margin:8px 0 0}.usage-guide .actions{justify-content:center}
.welcome-suffix{display:inline-block;white-space:nowrap}
.shell .hero .usage-heading{font-size:clamp(26px,4vw,38px);margin:6px 0;line-height:1.4}
.host-connection-notice{background:#fff5dc;border:1px solid #e5d1a3;border-radius:8px;padding:10px 12px;margin:0 0 12px;color:#66502b;font-size:13px;line-height:1.6}
.purchase-pending-note{font-size:13px;color:#66502b;background:#fff5dc;border-radius:8px;padding:10px 12px;margin:0 0 12px}

#report-form label{margin-top:14px}#report-form textarea{display:block;width:100%;margin-top:8px;padding:11px;border:1px solid #dce3d7;border-radius:8px;background:#fcfdfb;color:#18392e;font:inherit;line-height:1.7;resize:vertical;min-height:180px}#report-status{white-space:pre-wrap;overflow-wrap:anywhere}
