.rsv-top{padding:calc(var(--header-h) + 36px) 0 20px;background:var(--ink)}.rsv-title{font-family:var(--f-mincho);letter-spacing:.14em;margin-top:6px;font-size:clamp(26px,3vw,34px)}.steps-wrap{top:calc(var(--header-h) + env(safe-area-inset-top,0px));z-index:30;background:var(--ink);border-bottom:1px solid var(--line);position:sticky}.steps{counter-reset:s;grid-template-columns:repeat(4,1fr);gap:6px;padding-block:12px;display:grid}.steps li{min-width:0;display:flex}.step-btn{border:1px solid var(--line);min-width:0;min-height:48px;color:var(--muted);font:inherit;cursor:pointer;text-align:left;background:0 0;flex:1;align-items:center;gap:8px;padding:8px 10px;font-size:13px;transition:border-color .2s,color .2s;display:flex}.step-btn:hover:not(:disabled){border-color:var(--brass);color:var(--text)}.step-btn:disabled{cursor:default}.steps .num{font-size:18px;line-height:1}.steps .s-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.step-btn[aria-current]{background:var(--brass);border-color:var(--brass);color:var(--ink);font-weight:700}.step-btn.is-done{color:var(--brass-hi);border-color:var(--brass)}.step-btn.is-done .num:after{content:" ✓";font-size:12px}@media (width<=600px){.step-btn{text-align:center;flex-direction:column;justify-content:center;gap:4px;padding:8px 2px;font-size:11px}.steps .s-name{white-space:normal;line-height:1.3}}.rsv{padding:28px 0 180px}.demo-note{border:1px solid var(--line);color:var(--muted);background:#b8955e0f;margin-bottom:28px;padding:12px 16px;font-size:13px;line-height:1.8}.demo-note strong{background:var(--brass);color:var(--ink);letter-spacing:.1em;margin-right:10px;padding:0 8px;font-size:11px;display:inline-block}.demo-note a{color:var(--brass-hi);text-decoration:underline}.rsv-grid{grid-template-columns:1fr 300px;align-items:start;gap:48px;display:grid}.rsv-main{min-width:0}@media (width<=960px){.rsv-grid{grid-template-columns:1fr}.summary{display:none}}.panel{min-width:0}.panel-title{font-family:var(--f-mincho);letter-spacing:.08em;margin-bottom:18px;font-size:clamp(19px,2.2vw,24px)}.panel-title.sub{margin-top:36px}.cal-nav{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-bottom:10px;display:grid}.cal-month{color:var(--brass-hi);letter-spacing:.08em;text-align:center;font-size:17px}.cal-arrow{background:var(--panel);border:1px solid var(--line);min-height:44px;color:var(--text);font:inherit;cursor:pointer;padding:0 14px;font-size:13px}.cal-arrow:hover:not(:disabled){border-color:var(--brass)}.cal-arrow:disabled{opacity:.3;cursor:default}.day.blank{visibility:hidden}.day.past{color:var(--muted);opacity:.45;cursor:default;background:0 0;border-color:#0000}.cal-head,.cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-head span{text-align:center;color:var(--muted);padding-bottom:4px;font-size:12px}.cal-head .sun,.day.sun:not(:disabled){color:#e0a093}.cal-head .sat,.day.sat:not(:disabled){color:#9dbbe0}.day{aspect-ratio:1;background:var(--panel);border:1px solid var(--line);min-width:0;color:var(--text);font:inherit;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:0;line-height:1.1;display:flex}.day .num{font-size:17px}@media (width<=360px){.cal-head,.cal-grid{gap:4px}.day .num{font-size:15px}}.day .d-note{color:var(--muted);font-size:10px}.day:hover:not(:disabled){border-color:var(--brass)}.day.closed{color:var(--muted);cursor:not-allowed;background:0 0;border-style:dashed}.day[aria-checked=true]{background:var(--brass);border-color:var(--brass);color:var(--ink)!important}.legend{color:var(--muted);gap:18px;margin-top:10px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.lg{border:1px solid var(--line);width:12px;height:12px;display:inline-block}.lg-ok{background:var(--panel)}.lg-off{border-style:dashed}.times{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.time{background:var(--panel);border:1px solid var(--line);min-height:48px;color:var(--text);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;padding:12px;display:flex}.time .num{font-size:16px}.time .t-s{color:var(--brass);font-size:12px}.time:disabled{opacity:.3;cursor:not-allowed}.time[aria-checked=true]{background:var(--brass);border-color:var(--brass);color:var(--ink)}.time[aria-checked=true] .t-s{color:var(--ink)}.m-block{border-top:1px solid var(--line);padding:22px 0}.m-block:first-of-type{border-top:0;padding-top:0}.m-head{align-items:center;gap:10px;margin-bottom:14px;font-size:15px;font-weight:700;display:flex}.m-no{border:1px solid var(--brass);width:24px;height:24px;color:var(--brass-hi);border-radius:50%;place-items:center;font-size:13px;display:grid}.base-list{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.base{text-align:left;background:var(--panel);border:1px solid var(--line);min-height:120px;color:var(--text);font:inherit;cursor:pointer;grid-template-rows:auto 1fr auto;gap:4px;padding:16px;display:grid}.base:hover{border-color:var(--brass)}.base-name{font-size:15px;font-weight:700}.base-note{color:var(--muted);font-size:12px;line-height:1.6}.base-price{color:var(--brass-hi);font-size:22px}.base[aria-checked=true]{border-color:var(--brass);box-shadow:inset 0 0 0 1px var(--brass);background:#b8955e24}@media (width<=600px){.base-list{grid-template-columns:1fr}.base{grid-template-rows:auto auto;grid-template-columns:1fr auto;column-gap:12px;min-height:0}.base-name{grid-column:1}.base-note{grid-area:2/1}.base-price{grid-area:1/2/span 2;align-self:center}}.grade{margin-top:14px}.grade-label{color:var(--muted);margin-bottom:6px;font-size:12px}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg-btn{background:var(--panel);border:1px solid var(--line);min-height:44px;color:var(--text);font:inherit;cursor:pointer;flex:auto;padding:8px 12px;font-size:13px}.seg-btn[aria-checked=true]{background:var(--brass);border-color:var(--brass);color:var(--ink);font-weight:700}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--panel);border:1px solid var(--line);min-height:44px;color:var(--text);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.chip .add{color:var(--brass-hi);font-size:13px}.chip:hover:not(:disabled){border-color:var(--brass)}.chip[aria-checked=true],.chip[aria-pressed=true]{background:var(--brass);border-color:var(--brass);color:var(--ink)}.chip[aria-checked=true] .add,.chip[aria-pressed=true] .add{color:var(--ink)}.chip[aria-pressed=true]:before{content:"✓"}.chip:disabled{opacity:.35;cursor:not-allowed}.field{flex-direction:column;gap:8px;margin-bottom:22px;display:flex}.field>label,.field-label{align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.req{background:var(--brass);color:var(--ink);padding:0 8px;font-size:11px;font-weight:700}.field input,.field textarea{background:var(--panel);border:1px solid var(--line);width:100%;color:var(--text);font:inherit;padding:14px 16px;font-size:16px}.field input:focus,.field textarea:focus{border-color:var(--brass-hi);outline:none}.confirm{border-top:1px solid var(--line);margin:0}.confirm div{border-bottom:1px solid var(--line);grid-template-columns:7.5em 1fr;gap:16px;padding:14px 0;font-size:15px;display:grid}.confirm dt{color:var(--brass)}.confirm dd{overflow-wrap:anywhere;white-space:pre-wrap;min-width:0;margin:0}.confirm .is-total dd{font-family:var(--f-en);color:var(--brass-hi);font-size:24px}.done{text-align:center;flex-direction:column;align-items:center;gap:20px;padding:40px 0;display:flex}.done:focus{outline:none}.done-mark{border:1px solid var(--brass);width:72px;height:72px;color:var(--brass-hi);border-radius:50%;place-items:center;font-size:32px;display:grid}.done p{max-width:32em}.hint{color:var(--muted);margin-top:12px;font-size:12px}.summary{top:calc(var(--header-h) + 90px);background:var(--ink);border:1px solid var(--line);padding:24px;position:sticky}.summary dl{margin:14px 0}.summary dl div{border-bottom:1px solid var(--line);flex-direction:column;padding:10px 0;display:flex}.summary dt{color:var(--muted);font-size:12px}.summary dd{margin:0;font-size:14px}.s-total-label{color:var(--muted);margin-top:8px;font-size:12px}.s-total{color:var(--brass-hi);font-size:32px;line-height:1.3}.rsv-bar{z-index:40;backdrop-filter:blur(8px);border-top:1px solid var(--brass);padding-bottom:env(safe-area-inset-bottom,0px);background:#0e0d0cf5;position:fixed;bottom:0;left:0;right:0}.bar-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding-block:10px;display:flex}.bar-info{flex-direction:column;flex:140px;min-width:0;line-height:1.35;display:flex}.bar-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.bar-total{align-items:baseline;gap:8px;display:flex}.bar-total-label{color:var(--muted);font-size:12px}.bar-total .num{color:var(--brass-hi);font-size:24px}.bar-btns{flex:none;gap:8px;display:flex}.bar-btns .btn{min-height:48px;padding:0 20px}.bar-next{min-width:120px}.bar-error{color:#f0a493;padding-bottom:10px;font-size:13px}@media (width<=420px){.bar-btns .btn{padding:0 14px;font-size:14px}.bar-next{min-width:96px}}@media (width<=600px){.is-confirm .bar-info{flex-direction:row;flex-basis:100%;justify-content:space-between;align-items:baseline;gap:12px}.is-confirm .bar-btns{flex-basis:100%}.is-confirm .bar-next{flex:1}.bar-total .num{font-size:21px}}
