:root{--bg: #f4f4f8;--card: #ffffff;--text: #23233a;--muted: #6b6b80;--primary: #6c4fd8;--primary-dark: #5538c0;--danger: #d84f4f;--border: #e2e2ee;--tap: 44px}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}.app{min-height:100vh}.header{background:var(--primary);padding:.9rem 1rem}.logo{color:#fff;font-size:1.3rem;font-weight:700;text-decoration:none}.main{max-width:640px;margin:1rem auto;padding:0 .75rem}.stack{display:flex;flex-direction:column;gap:1rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.1rem;box-shadow:0 2px 8px #23233a0f}h1{font-size:1.35rem;margin:0 0 1rem}h2{font-size:1.1rem;margin:0 0 .75rem}form{display:flex;flex-direction:column;gap:.9rem}label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.9rem}input,textarea,select{font-family:inherit;font-size:16px;font-weight:400;min-height:var(--tap);padding:.6rem .7rem;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);width:100%}textarea{min-height:6rem}input:focus,textarea:focus,select:focus{outline:2px solid var(--primary);outline-offset:-1px}button,.button-link{font-family:inherit;font-size:1rem;font-weight:600;min-height:var(--tap);padding:.6rem 1.2rem;border:none;border-radius:8px;background:var(--primary);color:#fff;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center}button:hover,.button-link:hover{background:var(--primary-dark)}button:disabled{opacity:.6;cursor:default}button:focus-visible,.button-link:focus-visible,a:focus-visible{outline:2px solid var(--text);outline-offset:2px}button.secondary{background:#eceaf7;color:var(--primary)}button.secondary:hover{background:#ddd8f2}button.danger{background:#fff;color:var(--danger);border:1px solid var(--danger)}button.danger:hover{background:#fdf0f0}button.small{font-size:.85rem;padding:.3rem .7rem;min-height:var(--tap)}.row{display:flex;flex-direction:column;gap:.9rem}.row>label{flex:1}.row.buttons{margin-top:.25rem}.row.compact,.row.datetime{flex-direction:row}.row.datetime>label:last-child{flex:0 1 8.5rem}.meta{color:var(--muted);margin:.25rem 0}.description{white-space:pre-wrap}.totals{background:#f0edfb;border-radius:8px;padding:.6rem .9rem;margin:1rem 0 0}.error{color:var(--danger);font-weight:600;margin:0}.info{color:var(--primary);font-weight:600;margin:0}.hint{color:var(--muted);display:block;margin-top:.3rem}.copy-link{margin:1rem 0}.copy-link label{font-weight:600;font-size:.9rem;margin-bottom:.3rem}.copy-row{display:flex;flex-direction:column;gap:.5rem}.copy-row input{background:#f7f7fb;color:var(--muted);text-overflow:ellipsis}.guest-list{list-style:none;margin:0;padding:0}.guest-list li{padding:.7rem 0;border-bottom:1px solid var(--border)}.guest-list li:last-child{border-bottom:none}.guest-main{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.guest-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .6rem;min-width:0}.guest-name strong{overflow-wrap:anywhere}.guest-name .meta{margin:0}.guest-main button{flex:0 0 auto}.guest-items{color:var(--muted);font-size:.9rem;margin-top:.2rem}.success-box{background:#e9f7ee;border:1px solid #b8e2c4;border-radius:8px;padding:1rem;margin-bottom:1rem}.success-box p{margin:.3rem 0}label.checkbox{flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:400}label.checkbox input{width:1.35rem;height:1.35rem;min-height:0;flex:0 0 auto;margin-top:.1rem;accent-color:var(--primary)}label.checkbox>span{font-weight:600}label.checkbox .hint{font-weight:400}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (min-width: 600px){.header{padding:.9rem 1.5rem}.main{margin:2rem auto;padding:0 1rem}.stack{gap:1.25rem}.card{padding:1.5rem}h1{font-size:1.5rem}h2{font-size:1.15rem}.row{flex-direction:row}.row.buttons>button{flex:0 0 auto}.copy-row{flex-direction:row}.copy-row input{flex:1}}
