:root{--bg: #f5f4ef;--surface: #ffffff;--ink: #15151a;--ink-soft: #545464;--line: #e3e1d9;--accent: #1f3b2d;--accent-ink: #ffffff;--danger: #b3261e;--danger-soft: #fde7e7;--info: #1d4ed8;--info-soft: #e6efff;--success: #1f7a3a;--radius: 14px;--shadow: 0 8px 24px rgba(0, 0, 0, .06);--space-xs: 6px;--space-sm: 10px;--space: 16px;--space-lg: 24px;--space-xl: 36px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--ink)}body{-webkit-font-smoothing:antialiased}.page{min-height:100%;display:flex;flex-direction:column;padding:env(safe-area-inset-top,0) var(--space) env(safe-area-inset-bottom,var(--space))}.page__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space) var(--space-sm)}.page__brand{font-weight:700;font-size:1.05rem;letter-spacing:.01em}.page__main{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space) 0 var(--space-xl)}.card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;gap:var(--space)}.card--success{align-items:center;text-align:center}.card__title{margin:0;font-size:1.5rem;letter-spacing:-.01em}.card__subtitle{margin:0;color:var(--ink-soft);font-size:.97rem;line-height:1.45}.field{display:flex;flex-direction:column;gap:var(--space-xs)}.field__label{font-size:.85rem;color:var(--ink-soft);font-weight:500}.field__input{width:100%;font:inherit;font-size:1rem;padding:14px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none}.field__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1f3b2d1f}.field__input--error{border-color:var(--danger)}.field__input:disabled{background:#f7f6f1;color:var(--ink-soft)}textarea.field__input{resize:vertical;min-height:60px;font-family:inherit}.field__error{font-size:.82rem;color:var(--danger)}.btn{font:inherit;font-size:1rem;font-weight:600;border:none;border-radius:10px;padding:14px 18px;min-height:48px;cursor:pointer;transition:transform .05s,opacity .15s,background-color .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--secondary{background:#efece4;color:var(--ink)}.btn--ghost{background:transparent;color:var(--ink-soft);border:1px solid var(--line)}.btn-row{display:flex;flex-direction:column;gap:var(--space-sm)}.banner{border-radius:10px;padding:12px 14px;font-size:.93rem;line-height:1.4}.banner--error{background:var(--danger-soft);color:var(--danger)}.banner--info{background:var(--info-soft);color:var(--info)}.day-badge{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:var(--accent);color:var(--accent-ink)}.day-badge--day1{background:#1f3b2d}.day-badge--day2{background:#3b1f2d}.day-badge--off{background:#aaa}.confirm-name{font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.confirm-meta{color:var(--ink-soft);font-size:.95rem;display:flex;flex-direction:column;gap:2px}.success-mark{width:64px;height:64px;border-radius:50%;background:var(--success);color:#fff;font-size:2.2rem;display:grid;place-items:center;margin-bottom:var(--space-xs)}.success-meta{color:var(--ink-soft);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}@media (min-width: 600px){.card{padding:var(--space-xl) var(--space-xl)}.card__title{font-size:1.75rem}}
