:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1d1d1f;font-synthesis:none;text-rendering:optimizelegibility;--color-brand:#ff9230;--color-on-brand:#111214;--color-background:#f5f5f7;--color-surface:#fff;--color-muted:#f2f2f7;--color-border:#d1d1d6;--color-text:#1d1d1f;--color-secondary:#5c5c62;--color-tertiary:#6e6e73;--color-danger:#d70015;--color-danger-soft:#fff0f1;--color-success:#248a3d;--color-success-soft:#edf8f0;--radius-control:.5rem;--radius-surface:.75rem;--shadow:0 .125rem .5rem #1d1d1f1f;--page-padding:clamp(.875rem, 4vw, 1.5rem);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang TC,Noto Sans TC,Microsoft JhengHei,sans-serif}*{box-sizing:border-box}html{background:var(--color-background);min-width:20rem;min-height:100%}body{background:var(--color-background);min-width:20rem;min-height:100dvh;color:var(--color-text);-webkit-tap-highlight-color:transparent;margin:0;font-size:.875rem;line-height:1.5}button,input,select,textarea{font:inherit}button,a,select{touch-action:manipulation}a{color:inherit;text-decoration:none}:focus-visible{outline:.1875rem solid var(--color-text);outline-offset:.125rem}.page-shell{min-height:100dvh}.app-header{z-index:10;padding-top:var(--safe-top);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#f5f5f7f0;position:sticky;top:0}.app-header__content{width:min(100%,45rem);min-height:3.75rem;padding:.5rem max(var(--page-padding), var(--safe-right)) .5rem max(var(--page-padding), var(--safe-left));grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;margin:auto;display:grid}.app-header h1{text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.25rem;font-weight:600;overflow:hidden}.brand-mark{background:var(--color-brand);width:2.25rem;height:2.25rem;color:var(--color-on-brand);border-radius:50%;place-items:center;font-size:.875rem;font-weight:700;display:grid}.icon-button{border-radius:var(--radius-control);place-items:center;width:2.75rem;height:2.75rem;font-size:2rem;line-height:1;display:grid}.header-spacer{width:2.75rem}.page-content{width:min(100%,45rem);padding:1rem max(var(--page-padding), var(--safe-right)) calc(1.5rem + var(--safe-bottom)) max(var(--page-padding), var(--safe-left));gap:1rem;margin:auto;display:grid}.button{border-radius:var(--radius-control);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem .875rem;font-size:.875rem;font-weight:600;line-height:1.4;display:inline-flex}.button--primary{background:var(--color-brand);color:var(--color-on-brand)}.button--secondary{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text)}.button--full{width:100%}.button:disabled{cursor:not-allowed;opacity:.42}.app-state{min-height:50dvh;color:var(--color-secondary);text-align:center;justify-content:center;align-items:center;gap:.75rem;display:flex}.app-state--error{flex-direction:column}.spinner{border:1px solid;border-right-color:#0000;border-radius:50%;width:1.25rem;height:1.25rem;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}.empty-state,.reservation-card,.form-section,.document,.payment-summary,.success-card,.report-card{border:1px solid var(--color-border);border-radius:var(--radius-surface);background:var(--color-surface);box-shadow:var(--shadow)}.empty-state{text-align:center;justify-items:center;gap:.75rem;padding:2rem 1.25rem;display:grid}.empty-state h2,.empty-state p{margin:0}.empty-state p{color:var(--color-secondary)}.reservation-list{gap:.75rem;display:grid}.reservation-card{grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem;padding:1rem;display:grid}.reservation-card__heading{grid-column:1/-1;justify-content:space-between;align-items:start;gap:.75rem;min-width:0;display:flex}.reservation-card h2,.reservation-card p{margin:0}.reservation-card h2{overflow-wrap:anywhere;min-width:0;font-size:1rem}.reservation-card p{color:var(--color-secondary);grid-column:1/-1}.reservation-card .button{min-height:2.5rem}.status-chip{background:var(--color-muted);color:var(--color-secondary);border-radius:999rem;flex:none;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.status-chip--submitted,.status-chip--order_sent{background:color-mix(in srgb, var(--color-brand) 18%, white);color:#78400d}.status-chip--converted{background:var(--color-success-soft);color:var(--color-success)}.status-chip--cancelled{background:var(--color-danger-soft);color:var(--color-danger)}.form-section{gap:.875rem;padding:1rem;display:grid}.form-section h2{margin:0;font-size:1rem}.form-grid{gap:.875rem;display:grid}.field{gap:.5rem;min-width:0;display:grid}.field__label{font-weight:600}.field__message{color:var(--color-secondary);font-size:.75rem}.field__error{color:var(--color-danger);font-size:.75rem}.text-input{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-width:0;min-height:2.75rem;color:var(--color-text);outline:0;padding:.5rem .875rem;font-size:1rem}.text-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--color-brand) 35%, transparent)}.text-input[aria-invalid=true]{border-color:var(--color-danger)}.text-input--area{resize:vertical;min-height:6rem}.segmented{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-muted);grid-template-columns:repeat(2,1fr);min-height:2.75rem;padding:.1875rem;display:grid}.segmented button{border-radius:calc(var(--radius-control) - .1875rem);color:var(--color-secondary);background:0 0;border:0;font-weight:600}.segmented button[aria-pressed=true]{background:var(--color-brand);color:var(--color-on-brand)}.consent-row{align-items:flex-start;gap:.75rem;display:flex}.consent-row input{width:1.25rem;height:1.25rem;accent-color:var(--color-brand);flex:none;margin:.1rem 0 0}.mui-date-field .MuiOutlinedInput-root{border-radius:var(--radius-control);background:var(--color-surface);min-height:2.75rem}.mui-date-field .MuiInputBase-input{color:var(--color-text);padding-block:.65rem;font-size:1rem}.notice{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-muted);color:var(--color-secondary);padding:.75rem .875rem}.notice--error{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));background:var(--color-danger-soft);color:var(--color-danger)}.notice--success{border-color:color-mix(in srgb, var(--color-success) 35%, var(--color-border));background:var(--color-success-soft);color:var(--color-success)}.document{padding:1rem}.document--summary{gap:.75rem;display:grid}.document__meta{justify-content:space-between;gap:1rem;display:flex}.document__meta span{color:var(--color-secondary)}.document__page{color:var(--color-tertiary);margin:0 0 .25rem;font-size:.75rem}.document h2{margin:0 0 .75rem;font-size:1.05rem}.document p{white-space:pre-line;margin:0}.document p+p{margin-top:.625rem}.detail-list{border-top:1px solid var(--color-border);margin:0;display:grid}.detail-list>div{border-bottom:1px solid var(--color-border);grid-template-columns:6rem minmax(0,1fr);gap:.75rem;padding:.625rem 0;display:grid}.detail-list dt{color:var(--color-secondary)}.detail-list dd{text-align:right;overflow-wrap:anywhere;margin:0}.consent-row{border:1px solid var(--color-border);border-radius:var(--radius-surface);background:var(--color-surface);padding:1rem}.payment-summary{justify-content:space-between;align-items:center;padding:1rem;display:flex}.payment-summary span{color:var(--color-secondary)}.payment-summary strong{font-size:1.25rem}.payment-methods{gap:.75rem;display:grid}.payment-method{border:1px solid var(--color-border);border-radius:var(--radius-surface);background:var(--color-surface);min-height:4.5rem;color:var(--color-text);cursor:pointer;justify-content:space-between;align-items:center;padding:1rem;display:flex}.payment-method strong{font-size:1rem}.payment-method span{color:var(--color-secondary)}.payment-method:disabled{opacity:.5;cursor:not-allowed}.success-card{text-align:center;justify-items:center;gap:.5rem;padding:2rem 1rem;display:grid}.success-card h2,.success-card p{margin:0}.success-card p{color:var(--color-secondary)}.success-mark{background:var(--color-success);color:#fff;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;font-size:2rem;font-weight:700;display:grid}.report-card{gap:.75rem;padding:1rem;display:grid}.report-card h2,.report-card p{margin:0}.report-card p{color:var(--color-secondary)}.report-loading{min-height:12rem;color:var(--color-secondary);justify-content:center;align-items:center;gap:.75rem;display:flex}.report-viewer{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:70dvh}.report-actions{gap:.75rem;display:grid}@media (width>=38rem){.form-grid,.payment-methods,.report-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}}
