/* Toolbox: simple controls, readable Japanese, a locally served pixel wordmark. */
:root{--paper:#eae7de;--ink:#323436;--muted:#60635d;--line:#b2b4aa;--surface:#f6f2e9;--yellow:#ef9b78;--soft:#e4e1d5;--danger:#a63325;color-scheme:light}
body{background:var(--paper);color:var(--ink);font-family:'BIZ UDPGothic','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:15px;line-height:1.75}
body>header{max-width:760px;padding:21px 24px;border-color:var(--line);gap:14px}
.logo{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-family:KurumawakeDot,'BIZ UDPGothic',sans-serif;font-size:25px;font-weight:400;line-height:1.5;letter-spacing:.09em;-webkit-text-stroke:2px currentColor;paint-order:stroke fill;white-space:nowrap;text-decoration:none}
.brand-icon{display:inline-grid;place-items:center;width:34px;height:34px;flex:0 0 34px;overflow:hidden;white-space:nowrap;background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:7px;box-shadow:2px 2px 0 var(--ink);font:800 16px/1 Arial,sans-serif;letter-spacing:-1px;-webkit-text-stroke:0;padding-right:1px}
.brand-caption{font:11px/1.6 'BIZ UDPGothic','Yu Gothic',sans-serif;color:var(--muted);white-space:nowrap}
.logo>span:not(.brand-icon){font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit}
body>main{max-width:760px;padding:0 24px}body>footer{max-width:760px;border-color:var(--line);color:var(--muted)}
#home{max-width:460px}.hero{padding:34px 0 22px}.hero h1{font-size:38px;line-height:1.35;letter-spacing:-.04em;font-weight:800;margin:10px 0 16px}.eyebrow{color:var(--muted);font-size:12px}.hero .benefits{display:flex;flex-wrap:wrap;gap:6px 15px;margin:14px 0}.hero .benefits li{background:none;border:0;border-radius:0;padding:0;color:var(--muted);font-size:12px}.hero .benefits li strong{font-weight:500}
.guide-link,.guide-back,.legal-links a,.legal-notice a{color:var(--ink)}.guide-link{display:inline-block;min-height:44px;padding:10px 0;font-size:13px}
.hero .benefits strong{color:var(--muted);font-size:12px;font-weight:500}
.card{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:24px;box-shadow:none}#create{box-shadow:3px 3px 0 var(--soft)}
h1,h2,h3{color:var(--ink);letter-spacing:-.035em}h2{font-size:19px}label{font-size:14px;color:var(--ink)}
input,select,textarea{border-color:var(--line);background:var(--surface);color:var(--ink);border-radius:5px;font-size:16px;line-height:1.6;padding:11px}input::placeholder,textarea::placeholder{color:#68735f;opacity:.52}input:focus,select:focus,textarea:focus{outline:3px solid #ddd38a;outline-offset:2px}
button{border-radius:6px;font-weight:700;line-height:1.6}.primary{background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);box-shadow:2px 3px 0 var(--ink)}.primary:hover{background:#e9d35b;color:var(--ink)}.secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);box-shadow:0 2px 0 var(--line)}.secondary:hover{background:var(--soft)}.text{color:var(--ink);border:1px solid var(--line);border-radius:5px;background:var(--surface);font-size:13px;min-height:40px}.text.danger,.danger{color:var(--danger)}
.ui-icon{height:19px;width:19px;vertical-align:middle;display:inline-block;flex-shrink:0;stroke-width:2;fill:none;stroke:currentColor}.check input{accent-color:var(--ink)}.checks .check,.choice{background:var(--soft);border-radius:5px}.tiny,.optional,.privacy-note,.footnote,.small-details,.member p,.member span,.room-top p,.self span{color:var(--muted)}
summary{color:var(--ink)}.mode-choices{border-color:var(--line);border-radius:5px}.mode-choices label{background:var(--surface);color:var(--ink);font-size:13px}.mode-choices label:has(input:checked){background:var(--soft);border-color:var(--ink);box-shadow:inset 0 -3px var(--ink)}
.style-quick{border-color:var(--line)}.style-quick div{border-color:var(--line)}.style-quick dt,.style-quick dd{color:var(--ink)}.balance-caution,.balance-guide-note{color:#815215}.legal-notice{color:var(--muted);font-size:11px}
.how-to>summary{border-radius:6px;border-color:var(--line);background:var(--surface);color:var(--ink);box-shadow:0 2px 0 var(--line)}.how-to h2,.how-to h3,.walk-heading h3{color:var(--ink)}.how-to p,.walkthrough p,.guide-extras p{color:var(--muted)}.guide-modes,.style-guide{background:var(--soft);border-color:var(--line);border-radius:6px}.guide-modes p,.guide-modes strong,.style-guide strong,.guide-extras strong{color:var(--ink)}
.walk-heading>span,.walkthrough .walk-heading>span{background:var(--ink);color:var(--surface);border-radius:5px}.screen-example{background:var(--surface);border-color:var(--line);border-radius:6px}.example-button{background:var(--yellow);border:1px solid var(--ink);border-radius:4px;color:var(--ink)}.example-menu,.example-field,.example-car{border-color:var(--line);color:var(--ink)}.example-tag{color:var(--muted)}
.room-top{padding:27px 0 12px}.room-top h1{font-size:27px;line-height:1.4;letter-spacing:-.04em}.room-top p{font-size:13px}.icon-button{background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--ink)}
.invite{margin:10px 0 20px;align-items:center;gap:14px}.invite>.secondary{width:auto;min-height:42px;font-size:12px;padding:8px 12px;box-shadow:none}.invite details{flex:1;font-size:12px}.invite summary{min-height:38px}.invite details[open]{width:100%}.invite input{font-size:12px}
.workspace{display:block}#result-panel{padding:0;background:transparent;border:0;box-shadow:none}#result-panel>.section-head{margin-bottom:16px}#result-panel>.section-head h2{font-size:17px}#generation-actions{grid-template-columns:1.2fr 1fr;gap:12px;margin-bottom:20px}#generation-actions button{border-radius:6px;min-height:52px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 10px;letter-spacing:0}#generation-actions #near{font-size:16px;background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);box-shadow:2px 3px 0 var(--ink)}#generation-actions #shuffle{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);box-shadow:0 2px 0 var(--line)}#near-help{display:none}
.settings-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:0;padding:0;margin:0 0 25px}.settings-nav .outline-button{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:5px;min-width:0;min-height:99px;border:1.5px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);box-shadow:0 3px 0 var(--line);padding:12px;text-align:left;font-size:14px;line-height:1.65}.settings-nav .outline-button:hover{background:var(--soft)}.nav-tool-top{display:flex;align-items:center;justify-content:space-between}.nav-tool-top .ui-icon{width:21px;height:21px}.nav-tool-top>span{font-size:17px;color:var(--muted)}.settings-nav strong{font-size:14px;letter-spacing:-.045em;line-height:1.7;overflow-wrap:anywhere}.settings-nav small{font-size:12px;font-weight:400;line-height:1.7;color:var(--muted)}
.car{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:17px;margin:12px 0}.car-head{font-size:17px;line-height:1.6;letter-spacing:-.04em}.car-head small{color:var(--ink);font-size:14px;font-weight:650;letter-spacing:0}.car .tiny{font-size:12px;color:var(--muted)}.pills{gap:7px}.pill,.car .pill{background:var(--soft);color:var(--ink);font-size:14px;line-height:1.5;border-radius:5px;min-height:36px;padding:7px 10px;border:1px solid transparent}.car .car-owner{background:var(--ink);color:var(--surface);border-color:var(--ink)}.car-owner small{font-size:10px;color:inherit;opacity:.9}.ride-bundle{border-color:var(--muted);border-width:1.5px;padding:3px;gap:3px;border-radius:20px}.ride-bundle .pill{min-height:30px;border-radius:16px;padding:4px 7px}.seat-last-moved,.car .seat-last-moved{background:#fff0b1!important;color:var(--ink)!important;border-color:var(--ink)!important;outline:1px solid var(--ink)}.car-over{border:2px solid var(--danger)!important;background:#fff4ed!important}.car-over .car-head small{color:var(--danger)}
#move-hint{background:transparent;border:0;padding:0;margin:6px 0 14px;color:var(--muted)}#move-hint ol{justify-content:flex-start;gap:12px}#move-hint li{color:var(--muted);font-size:11px}#move-hint li span{background:var(--soft);color:var(--ink);border-radius:3px}#copy-result{background:var(--ink);color:var(--surface);box-shadow:none;border-color:var(--ink);min-height:50px;margin-top:15px}
.settings-sheet{background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:12px;max-width:500px;padding:21px}.settings-sheet::backdrop{background:#252b2366}.sheet-heading{background:var(--paper);border-color:var(--line);top:-21px;padding-top:5px}.sheet-heading h2{font-size:20px}.outline-button,.sheet-close{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:5px}.settings-sheet .card{background:transparent;border:0;padding:12px 0;box-shadow:none}.settings-sheet summary{color:var(--ink)}
#room-tools>details.card>summary{background:var(--surface);border:1.5px solid var(--line);color:var(--ink);border-radius:6px;box-shadow:0 2px 0 var(--line);font-size:16px}#room-tools>details.card[open]>summary{background:var(--soft);border-color:var(--ink)}#room-tools>details.card>summary::after{color:var(--muted)}#room-tools .people-icon{background:var(--soft);color:var(--ink);border-radius:5px}#room-tools #member-count{color:var(--muted)}#room-tools .member{background:var(--surface);border-color:var(--line)!important;border-radius:6px}#room-tools .member .text{background:var(--surface);color:var(--ink);border-color:var(--line)}#members .member strong{font-size:20px}#members .member .member-station{font-size:16px;color:var(--muted)}
#car-tools #seat-settings,#car-tools #settings{background:var(--surface);border-color:var(--line);border-radius:6px}#car-tools #seat-settings>summary,#car-tools #settings>summary{background:var(--surface);color:var(--ink)}#car-tools #seat-settings[open],#car-tools #settings[open]{background:var(--soft);border-color:var(--ink);border-left-color:var(--ink)}#car-tools #seat-settings[open]>summary,#car-tools #settings[open]>summary{background:var(--soft);color:var(--ink);border-color:var(--line)}#car-tools #settings details>summary{background:var(--surface);color:var(--ink)}#car-tools #seat-settings>summary::after,#car-tools #settings>summary::after{color:var(--muted)}
#shuffle-dialog,#seat-move-dialog{background:var(--paper);border:1.5px solid var(--ink);border-radius:10px;color:var(--ink)}#shuffle-dialog::backdrop,#seat-move-dialog::backdrop{background:#252b2366}.style-display,.mode-note{color:var(--muted)}.group-chip{border-color:var(--muted);background:var(--surface)}.group-edit{color:var(--ink)}.group-remove{color:var(--danger);background:var(--surface)}.consent-review{background:#fff6d4;border-color:#b8a85b;border-radius:6px}.consent-review h3{color:var(--ink)}.consent-review p{color:#6b5732}.adjust-panel{background:var(--soft);border-color:var(--line);border-radius:6px}
.setup-card{max-width:460px;margin:28px auto}.setup-step{border-color:var(--line);background:var(--surface);border-radius:6px}.sync-pending{background:#fff6d4;color:var(--ink);border-color:var(--line)}#status{background:var(--surface);border-color:var(--line);color:var(--ink)}#error{background:#fff3ed;border-color:#b75c49;color:#8f2d20}.legal-page p,.legal-page li{color:var(--ink)}.contact-action{background:var(--ink);color:var(--surface)!important;border:1px solid var(--ink);border-radius:6px}
button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #9c8732;outline-offset:3px}
@media(min-width:701px){#room-view{max-width:640px;margin:auto}#assignments{display:block}.settings-nav .outline-button{min-height:99px}}
@media(max-width:700px){body>header{padding:20px}body>main{padding:0 20px}.logo{font-size:23px;gap:10px}.brand-caption{font-size:10px}.room-top h1{font-size:27px}.hero h1{font-size:35px}.card{border-radius:7px;padding:20px}#result-panel{padding:0}.invite{flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:12px}.invite>.secondary{width:auto}.invite details{width:auto;min-width:90px}.settings-nav{gap:12px;margin-bottom:25px}.settings-nav .outline-button{padding:12px;font-size:13px}.settings-nav strong{font-size:13px}#generation-actions{gap:12px}#generation-actions button{font-size:14px}.settings-sheet{padding:20px;border-radius:12px 12px 0 0}.sheet-heading{top:-20px}.car{padding:15px}.tiny{font-size:12px}.legal-links{font-size:12px}}
@media(max-width:360px){body>header{padding:17px 15px}body>main{padding:0 15px}.logo{font-size:21px;gap:9px}.brand-caption{font-size:9px}.brand-icon{width:31px;height:31px;flex-basis:31px}.settings-nav{gap:9px}.settings-nav .outline-button{padding:10px;min-height:101px}.settings-nav strong{font-size:12px}.settings-nav small{font-size:11px}#generation-actions{gap:10px}.car-head{font-size:16px}.car-head small{font-size:12px}}
@media(pointer:coarse){.car .seat-person{min-height:44px}.ride-bundle .seat-person{min-height:36px}.ride-bundle{padding:4px;gap:4px}}

/* Help follows the integrated room flow; deeper options stay in the full guide. */
.guide-borrow-branch{border-left:4px solid var(--yellow);padding:3px 0 3px 14px;margin:18px 0}.guide-borrow-branch h4{font-size:16px;margin:6px 0;color:var(--ink)}.guide-borrow-branch .screen-example{margin:14px 0}.guide-borrow-branch .example-car{align-items:center;font-size:15px}.guide-borrow-branch .example-car span{white-space:nowrap}.guide-borrow-branch .example-borrower{font-size:13px;margin:7px 0}.example-map-button{background:var(--ink);color:var(--surface)}.guide-borrow-flow{list-style:none;padding:0;margin:14px 0;display:flex;gap:6px;flex-wrap:wrap;counter-reset:borrow-step}.guide-borrow-flow li{font-size:12px;border:1px solid var(--line);border-radius:5px;padding:7px 8px;background:var(--soft);counter-increment:borrow-step}.guide-borrow-flow li::before{content:counter(borrow-step) ' ';color:var(--muted)}.guide-rental-steps li{padding-left:3px;margin:12px 0}.guide-example-note{border-left:4px solid var(--yellow);background:var(--soft);padding:12px 15px;border-radius:5px}.legal-page h2[id]{scroll-margin-top:18px}.how-to .guide-modes{margin-top:24px}@media(max-width:360px){.guide-borrow-branch{padding-left:10px}.guide-borrow-flow{display:grid;grid-template-columns:1fr}.guide-borrow-flow li{font-size:13px}}

/* Orange toolbox: actions are raised; information stays flat. */
:root{--control:#d8e2df;--control-line:#66746f}
button,a.primary,.rental-map{touch-action:manipulation}button{min-height:44px}.primary:hover{background:#e98b64}.secondary,.text,.icon-button,.outline-button,.sheet-close{background:var(--control);color:var(--ink);border:1.5px solid var(--control-line);box-shadow:0 3px 0 #7d8983}.secondary:hover,.text:hover,.outline-button:hover{background:#c8d7d0}.text.danger{color:var(--danger)}button:active,a.primary:active,.rental-map:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}button:focus-visible,summary:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ink);outline-offset:4px}input:focus,select:focus,textarea:focus{outline-color:var(--ink)}.contact-action,#copy-result{background:var(--yellow);color:var(--ink)!important;border:1.5px solid var(--ink);box-shadow:2px 3px 0 var(--ink)}
#home{max-width:500px}.hero{position:relative;padding:33px 0 24px;border-bottom:2px solid var(--ink);margin-bottom:26px}.hero .eyebrow{font-weight:700;letter-spacing:.12em}.hero h1{font-size:46px;line-height:1.6;margin:16px 0 20px;font-weight:900}.hero h1>span{display:inline-block;padding:0 10px;background:var(--yellow);border:1.5px solid var(--ink);box-shadow:4px 5px 0 var(--ink);transform:rotate(-2deg)}.hero-car{position:absolute;right:8px;top:72px;width:60px;height:60px;display:grid;place-items:center;background:var(--control);border:1.5px solid var(--ink);border-radius:14px;transform:rotate(9deg)}.hero-car svg{width:36px;height:36px;fill:none;stroke:var(--ink);stroke-width:1.6}.hero .benefits{gap:7px 16px}.hero .benefits li strong{font-weight:700}.hero .guide-link{padding-bottom:0}.hero .benefits li{color:var(--ink)}#create{background:transparent;border:0;box-shadow:none;padding:0;margin-bottom:35px}#create>h2{font-size:21px;margin-bottom:22px}#create input,#create select{background:#efecdf;border-color:#929b8c}.create-options{padding:0;border:0;margin:24px 0}.create-options legend{font-size:14px;font-weight:700;padding:0;margin-bottom:11px}.mode-choices{display:grid;grid-template-columns:1fr;gap:12px;border:0;padding:0}.mode-choices label{display:flex;align-items:center;gap:12px;padding:14px;border:1.5px solid #89958c;border-radius:6px;background:#dfe7e1;box-shadow:0 3px 0 #9ca69b;cursor:pointer;margin:0;min-height:72px;box-sizing:border-box}.mode-choices label:has(input:checked){background:#f2bda6;border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}.mode-choices input{width:20px;height:20px;flex:none;margin:0;accent-color:var(--ink)}.mode-choices strong{display:block;font-size:16px}.mode-choices small{display:block;font-size:12px;color:#555c50;margin-top:4px}.mode-selected{margin-left:auto;opacity:0;font-size:20px;font-weight:900}.mode-choices label:has(input:checked) .mode-selected{opacity:1}.mode-choices label:focus-within{outline:3px solid var(--ink);outline-offset:4px}.style-quick{font-size:12px}.balance-caution,.balance-guide-note{color:#7b462d}
#generation-actions #shuffle{background:var(--control);border-color:var(--control-line);box-shadow:0 3px 0 #7d8983}.settings-nav .outline-button{background:#dfe7e2;border-color:#778278;box-shadow:0 3px 0 #859080}.settings-nav .outline-button:hover{background:#d1ded4}.settings-nav strong{font-size:15px}.car .car-owner{background:var(--yellow);color:var(--ink)}.seat-last-moved,.car .seat-last-moved{background:#f6b494!important;color:var(--ink)!important}.car .seat-person{border:1px solid #a0aa9e;background:#e2e8df}.ride-bundle .seat-person{border-color:transparent}.seat-person:hover{border-color:var(--ink);background:#d5ded2}.invite>.secondary{box-shadow:0 2px 0 #859080}#room-tools>details.card>summary{background:#dfe7e2;border-color:#778278;box-shadow:0 3px 0 #859080}#room-tools .member .text{background:var(--control);border-color:var(--control-line)}#car-tools #seat-settings>summary,#car-tools #settings>summary{background:#dfe7e2}.consent-review{background:#f4dfd0;border-color:#bc8669}.consent-review p{color:#6c4c3b}
.help-nav{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.help-nav a{display:inline-flex;align-items:center;padding:8px 11px;min-height:44px;box-sizing:border-box;color:var(--ink);background:var(--control);border:1px solid var(--control-line);border-radius:5px;font-size:12px;text-decoration:none;box-shadow:0 2px 0 #859080}.help-section{padding-top:24px;margin-top:26px;border-top:2px solid var(--line)}.help-section>h2{font-size:22px;margin:0 0 20px}.help-section h2[id],.help-section[aria-labelledby]{scroll-margin-top:20px}.help-kicker{font-size:12px;font-weight:700;letter-spacing:.1em;margin:0 0 8px;color:#7b462d!important}.borrow-help{border-top:4px solid var(--yellow)}.borrow-walkthrough{padding:0;list-style:none;counter-reset:borrow;margin:0}.borrow-walkthrough>li{position:relative;margin:22px 0;padding-left:36px;counter-increment:borrow}.borrow-walkthrough>li:before{content:counter(borrow);position:absolute;left:0;top:1px;width:25px;height:25px;border:1px solid var(--ink);background:var(--yellow);border-radius:5px;text-align:center;font-weight:800;font-size:13px}.borrow-walkthrough h3{font-size:16px;margin:0 0 8px}.borrow-walkthrough p{margin:8px 0}.example-radio-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0;font-size:12px}.example-radio-pair span{padding:8px 5px;border:1px solid #89958c;border-radius:4px;background:#dfe7e1;text-align:center}.example-radio-pair .chosen{background:#f2bda6;border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.example-map-button{background:var(--yellow);color:var(--ink)}.guide-extras{display:block}.guide-extras p{margin-bottom:16px}.how-to .style-guide{padding:20px}.legal-page .help-nav{margin-bottom:25px}.legal-page h2{margin-top:34px}.legal-page .guide-rental-steps>li{margin:20px 0}.legal-page .guide-rental-steps strong{display:inline-block;margin-bottom:5px}
@media(max-width:700px){.hero h1{font-size:40px}.hero-car{width:51px;height:51px;top:65px}.hero-car svg{width:31px;height:31px}.settings-nav strong{font-size:14px}}
@media(max-width:360px){.hero h1{font-size:32px}.hero-car{width:43px;height:43px;right:0;top:64px}.hero-car svg{width:27px;height:27px}.settings-nav strong{font-size:12px}.mode-choices label{padding:12px;gap:9px}.mode-choices strong{font-size:14px}.borrow-walkthrough>li{padding-left:31px}.example-radio-pair{grid-template-columns:1fr}.help-section>h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
button.primary{background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);box-shadow:2px 3px 0 var(--ink)}button.primary:hover{background:#e98b64}button.secondary{border:1.5px solid var(--control-line);box-shadow:0 3px 0 #7d8983}
