*{box-sizing:border-box}body{margin:0;font:16px/1.5 var(--font);color:var(--text);min-height:100dvh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--brand);outline-offset:3px}[v-cloak]{display:none}h1,h2,h3,p{margin:0}h1{font-size:24px;line-height:1.4;color:var(--ink)}h2{font-size:18px;line-height:1.5;color:var(--ink)}h3{font-size:18px;color:var(--ink)}small,.caption{font-size:13px;color:var(--muted)}button{border:0}a{color:var(--brand)}.demo-bar{max-width:480px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px;font-size:13px;min-height:52px}.demo-bar a{text-decoration:none;min-height:30px;display:flex;align-items:center}.text-button{background:transparent;color:var(--brand);padding:6px;font-size:13px;min-height:32px}.app-shell{max-width:480px;margin:auto;min-height:calc(100dvh - 52px);background:rgba(255,255,255,.32);border:1px solid rgba(255,255,255,.6);border-radius:28px 28px 0 0}.app-header{padding:20px 20px 12px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.brand img{width:76px;height:auto;max-height:38px;object-fit:contain}.brand span{font-size:14px;color:var(--muted);border-left:1px solid var(--line);padding-left:12px}.role-switch{background:var(--soft);border:1px solid var(--line);padding:4px;border-radius:var(--r-control);display:grid;grid-template-columns:1fr 1fr;gap:4px}.role-switch button{min-height:44px;border-radius:10px;background:transparent;color:var(--muted);font-size:15px;font-weight:600}.role-switch .selected{background:var(--surface);color:var(--brand);box-shadow:0 2px 8px rgba(32,39,71,.06)}.demo-note{font-size:12px;text-align:center;color:var(--muted);padding:0 10px 12px}.notice{background:var(--info-soft);margin:0 16px 16px;padding:12px;border-radius:12px;font-size:14px;display:flex;gap:8px;align-items:center}.notice .text-button{margin-left:auto;flex-shrink:0}main{padding:8px 18px 24px;display:flex;flex-direction:column;gap:16px}.store-heading{display:flex;gap:12px;align-items:center}.store-icon{width:48px;height:48px;display:grid;place-items:center;flex-shrink:0;background:var(--surface);border:1px solid var(--accent-line);border-radius:16px;font-size:24px;color:var(--brand)}.store-heading h1{font-size:22px}.store-heading h1 small{font-weight:400}.store-heading p{font-size:13px;color:var(--muted);margin-top:3px}.store-meta{display:flex;gap:14px;font-size:13px;color:var(--muted);padding-left:60px;margin-top:-6px}.view-tabs{display:flex;border-bottom:1px solid var(--line);gap:24px}.view-tabs button{min-height:48px;background:transparent;border-bottom:3px solid transparent;color:var(--muted);padding:8px 0;font-weight:600}.view-tabs .active{color:var(--brand);border-color:var(--brand)}.count{font-size:12px;background:var(--accent-soft);padding:1px 6px;border-radius:8px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:2px 0}.steps button{background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;min-height:40px;border-radius:10px;padding:3px}.steps b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--soft);font-size:12px}.steps .current{color:var(--brand);font-weight:600}.steps .current b{background:var(--brand);color:white}.steps .passed{color:var(--brand)}.steps button:disabled{opacity:.6}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);padding:18px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.section-heading p{color:var(--muted);font-size:14px;margin-top:6px}.section-heading .eyebrow{font-size:12px;color:var(--brand);display:block;margin-bottom:7px}.services{display:grid;gap:10px}.service{display:flex;align-items:center;gap:10px;padding:14px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:left;min-height:84px;color:var(--text)}.service.chosen{border-color:var(--brand);background:var(--accent-soft)}.service-symbol{font-size:26px;color:var(--brand);width:28px;text-align:center}.service-copy{flex:1;display:flex;flex-direction:column;gap:4px}.service-copy strong{font-size:16px}.service-copy>span{font-size:12px;color:var(--muted)}.duration{font-size:20px;color:var(--ink);line-height:1.2}.duration small{display:block;font-size:11px;text-align:center;margin-top:4px}.radio{width:16px;height:16px;border:1px solid var(--line);border-radius:50%;flex-shrink:0;margin-left:2px}.chosen .radio{border:5px solid var(--brand);background:white}.dates{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dates button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--text)}.dates .chosen{border-color:var(--brand);background:var(--accent-soft);color:var(--brand)}.dates strong{font-size:16px}.dates span,.dates small{font-size:12px}.slot-heading{display:flex;justify-content:space-between;gap:8px;margin:20px 0 12px;font-size:14px}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.slots button{display:flex;align-items:center;flex-direction:column;gap:3px;min-height:61px;justify-content:center;border:1px solid var(--line);background:white;border-radius:12px;color:var(--text)}.slots button strong{font-size:16px;font-weight:500}.slots button small{font-size:12px}.slots button.chosen{background:var(--accent-soft);border-color:var(--brand);color:var(--brand)}.slots button:disabled{background:var(--dock);color:var(--muted);opacity:.7}.hint{font-size:12px;color:var(--muted);line-height:1.65;margin-top:13px}.summary{display:flex;flex-direction:column;gap:5px;border-radius:12px;background:var(--accent-soft);padding:14px;margin-bottom:18px}.summary strong{font-size:16px;color:var(--brand)}.summary span{font-size:14px}.field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;margin-bottom:16px}.field input,.field select,.filter-row select{width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-size:16px}.field input::placeholder{font-size:13px;color:var(--muted)}.error{border:1px solid var(--error);border-radius:12px;padding:12px;color:var(--error);background:var(--surface);font-size:14px}.booking-action{display:flex;align-items:end;gap:10px;padding:2px 0 4px}.back-button{flex:0 0 100px}.primary-action{flex:1}.action-summary{font-size:12px;color:var(--muted);margin:0 0 8px;text-align:center}.demo-rules{font-size:13px;color:var(--muted);margin-top:8px;order:20}.demo-rules summary{cursor:pointer;min-height:38px;padding:8px 0}.demo-rules p{font-size:13px;line-height:1.75}.app-footer{text-align:center;padding:4px 16px max(24px,env(safe-area-inset-bottom));font-size:12px;color:var(--muted)}.success-panel{text-align:center;padding:26px 20px}.success-panel>p{font-size:14px;color:var(--muted);margin-top:8px}.success-icon{width:54px;height:54px;border-radius:50%;background:var(--success-soft);color:var(--success);font-size:28px;display:grid;place-items:center;margin:0 auto 14px}.receipt{margin:22px 0;padding:20px 12px;background:var(--soft);border-radius:14px}.receipt h3{margin:14px 0 7px}.receipt p{font-size:14px;margin-bottom:7px}.secondary-link{background:transparent;color:var(--brand);padding:15px;min-height:44px;margin-top:5px}.empty{text-align:center;padding:30px 22px}.empty>span{font-size:36px;color:var(--brand)}.empty p{font-size:14px;color:var(--muted);margin:12px 0 20px}.appointment .record-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}.record-top>strong{font-size:19px;color:var(--ink)}.record-top>strong small{font-size:14px;font-weight:400}.appointment h3{margin-bottom:7px}.appointment h3 .caption{font-weight:400;margin-left:4px}.appointment p{font-size:14px;color:var(--muted);margin:5px 0}.appointment .ark-action-button{margin-top:14px;font-size:14px}.badge{display:inline-block;padding:4px 8px;border-radius:7px;font-size:12px;white-space:nowrap;background:var(--info-soft);color:var(--action-ink)}.badge.arrived{background:var(--warning-soft);color:var(--warning)}.badge.serving{background:var(--accent-soft);color:var(--brand)}.badge.completed{background:var(--success-soft);color:var(--success)}.badge.cancelled{background:var(--dock);color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 6px}.stats div{text-align:center}.stats strong{font-size:26px;color:var(--ink);display:block;font-weight:600}.stats span{font-size:11px;color:var(--muted)}.filter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}.filter-row label{display:flex;gap:10px;align-items:center;flex:1}.filter-row select{width:auto;max-width:150px;font-size:14px;min-height:44px;padding:8px}.filter-row>span{font-size:13px;color:var(--muted)}.source-tag{font-size:11px;padding:3px 7px;background:var(--soft);border-radius:5px;margin-left:5px}.record-actions{display:flex;align-items:end;gap:9px}.record-actions .ark-action-button{flex:1}.outline-button{min-height:44px;min-width:52px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:white;padding:9px 13px;font-size:14px}.board{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.board button{min-height:54px;display:flex;flex-direction:column;justify-content:center;gap:2px;border:1px solid var(--line);border-radius:10px;background:var(--success-soft);color:var(--success);padding:5px 2px}.board button strong{font-size:14px;font-weight:500}.board small{font-size:11px;color:inherit}.board button.full{background:var(--dock);color:var(--muted)}.overlay{position:fixed;inset:0;z-index:10;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto;overscroll-behavior:contain}.modal{width:100%;max-width:440px;max-height:calc(100dvh - 36px);overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-overlay);padding:22px;box-shadow:var(--shadow);overscroll-behavior:contain}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal form{margin-top:18px}.modal .hint{margin-top:7px}.modal-actions{padding-top:6px}.confirm-overlay{z-index:20}.confirm-modal p{font-size:15px;color:var(--muted);margin:16px 0 24px}.confirm-actions{display:grid;gap:10px}@media(min-width:600px){.app-shell{box-shadow:0 8px 30px rgba(32,39,71,.05);margin-bottom:30px;border-radius:28px;min-height:720px}.demo-bar{padding-top:22px;padding-bottom:18px}}@media(max-width:350px){main{padding-left:12px;padding-right:12px}.app-header{padding-left:14px;padding-right:14px}.panel{padding:14px}.section-title{flex-wrap:wrap}.demo-bar{padding-left:10px;padding-right:10px}.service{gap:7px;padding:12px 9px}.service-symbol{display:none}.store-meta{padding-left:0}.steps button{font-size:12px}.back-button{flex-basis:82px}.record-top>strong{font-size:17px}}

/* Keep the current primary action within a typical phone reading sequence. */
.app-header{padding:16px 18px 8px}.brand{margin-bottom:12px}.service{min-height:76px;padding-top:11px;padding-bottom:11px}.services{gap:8px}
