:root{--bg:#f7f8f5;--surface:#fff;--ink:#16201c;--ink-2:#2c3833;--muted:#56625c;--line:#dce1dd;--line-soft:#e8ece9;--control:#c3ccc6;--hover:#eef2ef;--accent:#1f5f8b;--accent-ink:#123e5c;--accent-soft:#e3eef6;--hero:#eaf2f8;--warn-bg:#fff3dc;--warn-ink:#6b4200;--warn-line:#f0d9a8;--bad-bg:#fbe7e4;--bad-ink:#8a2017;--good-bg:#e5f2e7;--good-ink:#24572f;--neutral-bg:#eef1ee;--font:"IBM Plex Sans Thai", "IBM Plex Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--gutter:16px;--control-h:48px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:16px/1.55 var(--font);margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-ink);text-decoration:underline}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}h1{letter-spacing:-.01em;margin:0;font-size:26px;line-height:1.25}h2{margin:0;font-size:18px}h3{color:var(--muted);margin:8px 0 4px;font-size:15px}p{margin:0}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.small{font-size:14px}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.pre{white-space:pre-line}.owing{color:var(--bad-ink);font-weight:600}.page{flex-direction:column;min-height:100dvh;display:flex}.bar{z-index:10;padding:8px var(--gutter);background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex;position:sticky;top:0}.brand{color:var(--accent);align-items:center;gap:10px;display:flex}.brand:hover{text-decoration:none}.brand strong{color:var(--ink);font-size:17px}.brand>span{flex-direction:column;line-height:1.2;display:flex}.brand-branch{color:var(--muted);font-size:13px}.bar-nav{flex-wrap:wrap;align-items:center;gap:4px 16px;font-weight:500;display:flex}.bar-nav a:not(.btn){color:var(--ink-2);padding:10px 0}.lang{border:1px solid var(--control);background:var(--surface);min-width:48px;min-height:40px;font:inherit;color:var(--ink-2);cursor:pointer;border-radius:999px;padding:0 10px;font-size:14px;font-weight:600}.main{flex-direction:column;flex:1;gap:28px;padding-bottom:48px;display:flex}.footer{padding:20px var(--gutter);background:var(--surface);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:14px;display:flex}.footer-links{flex-wrap:wrap;gap:4px 16px;margin-top:4px;display:flex}.center-page{min-height:70vh;padding:var(--gutter);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.loading{padding:24px var(--gutter);color:var(--muted)}.demo-bar{padding:8px var(--gutter);background:var(--accent-ink);color:#fff;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;font-size:14px;display:flex}.demo-bar .link-btn{color:inherit;text-decoration:underline}.announcement{padding:12px var(--gutter);background:var(--warn-bg);color:var(--warn-ink);border-bottom:1px solid var(--warn-line);white-space:pre-line}.hero{padding:28px var(--gutter);background:var(--hero);flex-direction:column;gap:20px;display:flex}.hero-text{flex-direction:column;align-items:flex-start;gap:14px;max-width:640px;display:flex}.hero h1{font-size:30px}.hero-image{object-fit:cover;border-radius:16px;width:100%;max-height:280px}.content{padding:0 var(--gutter);flex-direction:column;gap:14px;width:100%;max-width:980px;margin:0 auto;display:flex}.content.narrow{max-width:560px}.main>.content:first-child,.main>.content.narrow,.order-form,.order-detail{padding-top:20px}.btn{min-height:var(--control-h);border:1px solid var(--control);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not([disabled]){background:var(--hover);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not([disabled]){background:var(--accent-ink);color:#fff}.btn[disabled]{color:#7a8580;border-color:var(--line);cursor:not-allowed;background:#eef0ee}.btn.big{min-height:54px;padding:0 28px;font-size:17px}.btn.small-btn{min-height:40px;padding:0 16px}.link-btn{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:10px 0;font-weight:500}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.split{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:18px;display:flex}fieldset.card{margin:0}fieldset.card legend{float:left;width:100%;padding:0;font-size:18px;font-weight:600}fieldset.card legend+*{clear:both}.pill{white-space:nowrap;background:var(--neutral-bg);color:var(--ink-2);border-radius:999px;align-items:center;padding:3px 12px;font-size:13px;font-weight:600;display:inline-flex}.pill.blue{background:var(--accent-soft);color:var(--accent-ink)}.pill.amber{background:var(--warn-bg);color:var(--warn-ink)}.pill.green{background:var(--good-bg);color:var(--good-ink)}.note{background:var(--warn-bg);color:var(--warn-ink);border:1px solid var(--warn-line);border-radius:10px;padding:14px 16px}.success{background:var(--good-bg);color:var(--good-ink);border-radius:10px;padding:12px 14px;font-weight:500}.success>*+*{margin-top:6px}.code-input{letter-spacing:.3em;max-width:12ch;font-size:20px}.link-text{overflow-wrap:anywhere;font-weight:400}.error-box{background:var(--bad-bg);color:var(--bad-ink);border-radius:10px;margin:0;padding:12px 14px;font-weight:500}.back{align-self:flex-start;padding:6px 0}.form{flex-direction:column;gap:14px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px;display:grid}.field{color:var(--ink-2);flex-direction:column;gap:6px;min-width:0;font-size:14px;font-weight:600;display:flex}.field input,.field textarea{min-height:var(--control-h);border:1px solid var(--control);background:var(--surface);font:inherit;color:var(--ink);border-radius:10px;width:100%;padding:10px 12px;font-size:16px;font-weight:400}.field input[readonly]{background:var(--bg);color:var(--muted)}.field textarea{resize:vertical}.hint{color:var(--muted);font-size:13px;font-weight:400}.check{align-items:center;gap:10px;min-height:44px;font-weight:500;display:flex}.check input{width:20px;height:20px}.merge-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;display:grid}.merge-grid h3{margin:0 0 6px;font-size:1rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--control);background:var(--surface);min-height:44px;color:var(--ink-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:15px;font-weight:500;display:inline-flex}.chip:hover:not([disabled]):not([aria-pressed=true]):not([aria-checked=true]){background:var(--hover)}.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:#fff}.chip[disabled]{color:#8a948f;background:var(--bg);cursor:not-allowed;border-style:dashed}.chip.slot{border-radius:12px;flex-direction:column;justify-content:center;gap:0;min-height:52px}.branch-list,.order-list,.choice-list,.plain-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.plain-list{gap:0}.plain-list>li{border-top:1px solid var(--line-soft);padding:10px 0}.plain-list>li:first-child{border-top:0;padding-top:0}.branch-card,.order-card{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.branch-card:hover,.order-card:hover{border-color:var(--accent);color:var(--ink);text-decoration:none}.branch-card strong{font-size:18px}.choice{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:56px;padding:10px 14px;display:flex}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice.off{opacity:.6;cursor:not-allowed}.choice input{flex:none;width:22px;height:22px}.choice-main{flex-direction:column;min-width:0;display:flex}.choice .num{margin-left:auto}.steps{counter-reset:step;gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--surface);border:1px solid var(--line);counter-increment:step;border-radius:14px;flex-direction:column;gap:2px;padding:16px 16px 16px 60px;display:flex;position:relative}.steps li:before{content:counter(step);background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid;position:absolute;top:16px;left:16px}.steps span{color:var(--muted)}.price-table{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.price-row{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1.6fr) repeat(auto-fit,minmax(0,1fr));align-items:center;gap:8px;padding:12px 14px;display:grid}.price-head{background:var(--bg);color:var(--muted);border-top:0;font-size:13px;font-weight:600}.price-head span:not(:first-child){text-align:right}.info-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;display:grid}.info{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;padding:18px;display:flex}.order-form{gap:16px}.summary{border-color:var(--accent)}dl.totals{grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;margin:0;display:grid}dl.totals dt{color:var(--muted)}dl.totals dd{margin:0}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;display:grid}.detail-grid h2{color:var(--muted);font-size:14px;font-weight:600}.progress{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.progress li{min-height:36px;color:var(--muted);align-items:center;gap:12px;display:flex;position:relative}.progress li:not(:last-child):after{content:"";background:var(--line);width:2px;position:absolute;top:26px;bottom:-10px;left:6px}.progress li[data-state=done]:after{background:var(--accent)}.progress .dot{border:2px solid var(--control);background:var(--surface);z-index:1;border-radius:50%;flex:none;width:14px;height:14px}.progress li[data-state=done]{color:var(--ink-2)}.progress li[data-state=done] .dot{background:var(--accent);border-color:var(--accent)}.progress li[data-state=now]{color:var(--ink);font-weight:700}.progress li[data-state=now] .dot{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);background:var(--accent)}.photos{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.photos img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:10px;width:100%;display:block}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.field.bad input,.field.bad textarea{border-color:var(--bad-ink);box-shadow:inset 0 0 0 1px var(--bad-ink)}.field-error{color:var(--bad-ink);font-size:13px;font-weight:500}.form-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.form-step{min-height:44px;font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:6px;padding:6px 0 0;font-size:13px;display:flex}.form-step i{background:var(--line);border-radius:4px;width:100%;height:4px;display:block}.form-step[data-state=done]{color:var(--ink-2)}.form-step[data-state=done] i,.form-step[data-state=now] i{background:var(--accent)}.form-step[data-state=now]{color:var(--ink);font-weight:700}.form-step[disabled]{cursor:default}.levels{flex-direction:column;gap:8px;display:flex}.level{border:1px solid var(--line);background:var(--surface);width:100%;min-height:60px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.level strong{font-size:17px}.level[aria-checked=true],.level[aria-current=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.level[aria-checked=true] .pill{background:var(--accent);color:#fff}.seg{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.seg-btn{border:1px solid var(--control);background:var(--surface);min-height:52px;color:var(--ink-2);font:inherit;cursor:pointer;border-radius:10px;padding:6px 8px;font-size:15px;font-weight:500;line-height:1.25}.seg-btn[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:#fff}.adder{border:1px dashed var(--accent);background:var(--surface);width:100%;min-height:60px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}.adder:hover{background:var(--hover)}.adder .choice-main{flex:1}.plus{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:22px;font-weight:600;display:grid}.items{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.item{border:1px solid var(--accent);background:var(--accent-soft);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px 0;display:flex}.item .row{gap:20px}.link-btn.danger{color:var(--bad-ink)}.days{scrollbar-width:none;gap:8px;margin:0 -18px;padding:2px 18px 6px;display:flex;overflow-x:auto}.day{border:1px solid var(--control);background:var(--surface);width:62px;min-height:74px;color:var(--ink-2);font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;padding:6px 0;line-height:1.25;display:flex}.day b{color:var(--ink);font-size:20px}.day small{font-size:12px}.day[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:#fff}.day[aria-checked=true] b{color:#fff}.slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.slots .chip.slot{width:100%}.review-row{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding-top:12px;display:flex}.review-row:first-child{border-top:0;padding-top:0}.review-row .link-btn{min-height:44px;margin-top:-10px;padding:0}.review-label{color:var(--muted);font-size:13px;font-weight:600}.info-box{background:var(--neutral-bg);color:var(--ink-2);border-radius:10px;padding:12px 14px;font-size:14px}.stepper{align-items:center;gap:4px;display:flex}.stepper .btn{width:44px;min-height:44px;padding:0;font-size:20px}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:64px;font-weight:700}.order-bar{z-index:5;margin:8px calc(-1 * var(--gutter)) 0;padding:10px var(--gutter) 14px;background:var(--surface);border-top:1px solid var(--line);position:sticky;bottom:0}.order-bar .btn{width:100%}.item.bad{border-color:var(--bad-ink);background:var(--surface)}.adders{flex-direction:column;gap:8px;display:flex}.plain-list .add-on{padding-left:16px}.row-note{display:block}.icon-btn{width:44px;padding:0}.order-form.wide{width:100%;max-width:1120px;padding:28px var(--gutter) 40px;grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:32px;margin:0 auto;display:grid}.order-main{flex-direction:column;gap:16px;min-width:0;display:flex}.order-panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:12px;padding:20px 22px;display:flex;position:sticky;top:16px}.order-panel h2{margin:0;font-size:18px}.order-panel .review{flex-direction:column;gap:12px;display:flex}.order-panel .btn{width:100%}.wide .levels{grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.wide .order-main>.card .levels .level{min-height:96px}.wide .adders,.wide .items{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wide .days{grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;display:grid;overflow:visible}.wide .day{width:auto}.wide .slots{grid-template-columns:repeat(4,minmax(0,1fr))}.scrim{z-index:20;background:#16201c73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);border-radius:16px;flex-direction:column;width:100%;max-width:560px;max-height:100%;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}.dialog-head{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.dialog-head h2{margin:0;font-size:20px}.dialog-body{flex-direction:column;gap:14px;padding:18px 22px;display:flex;overflow-y:auto}.dialog-body .levels{flex-direction:column;display:flex}.dialog-foot{background:var(--surface);border-top:1px solid var(--line);padding:14px 22px}.dialog-foot .btn{width:100%}@media (width<=639px){.hide-phone{display:none}}@media (width>=640px){:root{--gutter:24px}.hero{padding:48px max(var(--gutter), calc((100% - 980px) / 2 + var(--gutter)));flex-direction:row;align-items:center}.hero h1{font-size:38px}.hero-image{width:40%;max-height:320px}.steps{grid-template-columns:repeat(3,1fr)}.progress{flex-direction:row;justify-content:space-between}.progress li{text-align:center;flex-direction:column;flex:1;gap:6px;font-size:13px}.progress li:not(:last-child):after{width:auto;height:2px;inset:6px calc(10px - 50%) auto calc(50% + 10px)}}
