@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-optical-sizing:auto;font-display:swap;src:url(/assets/fraunces-latin-DihXLNYH.woff2) format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:500 800;font-display:swap;src:url(/assets/archivo-latin-E0tuGl4L.woff2) format("woff2")}:root{--paper: #fff9f5;--ink: #241f22;--raspberry: #d92e83;--deep-magenta: #b3067f;--teal: #0f9aa8;--muted: #5a4f55;--faint: #9a8f95;--line: #241f22;--danger: #b3067f;--font-display: "Fraunces", Georgia, serif;--font-ui: "Archivo", "Helvetica Neue", Arial, sans-serif}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:17px}[hidden],.field[hidden],form[hidden],div[hidden]{display:none}#app{max-width:560px;margin:0 auto;padding:16px 16px 190px}h1{font-family:var(--font-display);font-weight:700;font-size:2rem;margin:.6rem 0 .8rem}h2{font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:1.2rem 0 .6rem;color:var(--muted)}p{margin:.4rem 0}button{font:inherit;font-family:var(--font-ui);font-weight:800;font-size:16px;min-height:48px;padding:0 20px;border-radius:999px;border:2px solid var(--ink);background:var(--paper);color:var(--ink)}button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}button.danger{border:2px solid var(--deep-magenta);color:var(--deep-magenta);background:var(--paper)}button.quiet{border:2px solid var(--faint);color:var(--muted);background:var(--paper)}button.link{border:none;background:none;color:var(--raspberry);padding:0;min-height:0;border-radius:0;font-weight:800}button.link:hover{color:var(--deep-magenta)}button.full{width:100%}button:disabled{opacity:.5}.field{display:flex;flex-direction:column;gap:6px;margin:0 0 14px}.field label{font-size:.85rem;font-weight:600;color:var(--muted)}input,select,textarea{font:inherit;font-family:var(--font-ui);min-height:48px;padding:10px 12px;border:2px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);box-sizing:border-box;width:100%}textarea{min-height:96px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.hint{color:var(--muted);font-size:.85rem}.eyebrow{font-family:var(--font-ui);font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase}.time{font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1}.name{font-family:var(--font-display);font-weight:500;font-size:20px}.total{display:flex;justify-content:space-between;font-family:var(--font-display);font-weight:700;font-size:22px}.card{background:var(--paper);border:2px solid var(--ink);border-radius:14px;padding:14px}.card.tap{cursor:pointer}.card.status-arrived{background:var(--raspberry);border-color:var(--ink)}.card.status-arrived .hint{color:#3d1428}.card.request,.card.status-pending_confirm{border-style:dashed}.card.lines{border-radius:16px;padding:18px}.card.lines>.row{padding:10px 0;border-bottom:2px solid var(--ink)}.card.lines .total{padding:14px 0 4px}.pill-details{border:none}.pill-details summary{display:flex;align-items:center;justify-content:center;height:48px;border-radius:999px;border:2px solid var(--ink);font-family:var(--font-ui);font-weight:800;font-size:16px;cursor:pointer;list-style:none}.pill-details summary::-webkit-details-marker{display:none}.pill-details .field,.pill-details button{margin-top:12px}.footer-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;margin-top:24px}.footer-row .text-link{color:var(--raspberry);text-decoration:underline;text-underline-offset:3px}.footer-row .text-link:hover{color:var(--deep-magenta)}.appt-row{display:flex;gap:14px;align-items:stretch}.appt-row>.time{width:92px;flex:none;white-space:nowrap}.ampm{font-family:var(--font-ui);font-weight:800;font-size:11px;text-transform:uppercase;color:var(--muted);margin-left:2px}.appt-body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.chip{display:inline-flex;align-self:flex-start;align-items:center;padding:5px 10px;border-radius:999px;font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:2px solid var(--ink);background:var(--paper);color:var(--ink)}.chip.confirmed,.chip.completed{border-color:var(--teal);background:var(--teal);color:var(--ink)}.chip.arrived{border-color:var(--ink);background:var(--ink);color:var(--paper)}.chip.pending_confirm,.chip.request{border-color:var(--ink);background:transparent;color:var(--ink)}.chip.no_show,.chip.cancelled_by_client,.chip.cancelled_by_stylist{border-color:var(--faint);background:transparent;color:var(--muted)}.chip.selected{border-color:var(--ink);background:var(--ink);color:var(--paper)}.badge{display:inline-flex;align-self:flex-start;align-items:center;padding:5px 10px;border-radius:999px;border:2px solid var(--ink);background:transparent;color:var(--ink);font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.band{background:var(--raspberry);color:var(--ink);padding:60px 20px 22px;display:flex;flex-direction:column;gap:2px;margin:-16px -16px 16px}.band .eyebrow{margin:0}.band .title{font-family:var(--font-display);font-weight:700;font-size:54px;line-height:.95;letter-spacing:-.01em;margin:0}.band .summary{font-size:14px;font-weight:600;margin-top:8px}.band .datetime{font-family:var(--font-display);font-weight:700;font-size:40px;line-height:1.02;letter-spacing:-.01em;margin:0}.band .chip{margin-top:10px}.band.small{padding:32px 20px 20px;gap:8px}.band.small button.link{color:var(--ink);align-self:flex-start}.band.small .title{font-size:28px;line-height:1.05;margin:0}.band.client{padding:64px 24px 26px;gap:6px}.fab{position:fixed;left:16px;right:16px;bottom:calc(104px + env(safe-area-inset-bottom));height:60px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:var(--ink);color:var(--paper);border:none;font-family:var(--font-ui);font-size:17px;font-weight:800;letter-spacing:.02em;padding:0 20px}.fab svg{width:22px;height:22px}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--paper);border-top:2px solid var(--ink);padding-bottom:env(safe-area-inset-bottom)}.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:none;border-radius:0;min-height:76px;padding:12px 4px 8px;background:none;color:var(--faint);font-family:var(--font-ui);font-size:11px;font-weight:800}.tabbar button svg{width:24px;height:24px}.tabbar button.active{color:var(--ink)}.slots{display:flex;flex-direction:column;gap:2px}.slot{display:flex;gap:10px;min-height:40px;align-items:stretch}.slot time{width:64px;flex:none;color:var(--muted);font-size:.85rem;padding-top:8px}.slot button.empty{flex:1;text-align:left;min-height:40px;border-style:dashed;border-color:var(--faint);background:transparent;color:var(--faint)}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week button{min-height:64px;padding:4px;display:flex;flex-direction:column;align-items:center;justify-content:center}[role=alert]{background:#fdecea;color:var(--danger);padding:10px 12px;border-radius:10px;margin:0 0 12px}.linkbox{word-break:break-all;font-size:.85rem;color:var(--muted)}
