:root{--bg:#fffaf3;--card:#fff;--ink:#273042;--muted:#697386;--line:#f0ded1;--brand:#ff7a59;--brand2:#7cdbcf;--soft:#fff0e8}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 0 0,#fff0e8,#0000 34%),linear-gradient(#fffaf3,#f7fcfb);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.container{max-width:1040px;margin:0 auto;padding:20px}.nav{justify-content:space-between;align-items:center;gap:14px;padding:14px 22px;display:flex}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.brand{letter-spacing:-.04em;font-size:22px;font-weight:850}.pill,.btn{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 13px;line-height:1.1;display:inline-flex}.btn{background:var(--brand);color:#fff;cursor:pointer;border-color:#0000;justify-content:center;font-weight:750}.btn.secondary{color:var(--ink);border-color:var(--line);background:#fff}.btn.danger{background:#e5484d}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.card{border:1px solid var(--line);background:#ffffffe0;border-radius:24px;padding:18px;box-shadow:0 16px 45px #54372312}.hero{padding:44px 20px}.hero h1{letter-spacing:-.05em;margin:0 0 16px;font-size:clamp(40px,7vw,76px);line-height:.94}.muted{color:var(--muted)}.small-text{font-size:14px}.field{gap:6px;margin:10px 0;display:grid}.input,textarea,select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:14px;padding:11px 12px}textarea{min-height:82px}.row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.price{font-weight:850}.badge{background:var(--soft);color:#a7462c;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750;display:inline-flex}.booked{opacity:.66}.topline{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.table{border-collapse:separate;border-spacing:0 10px;width:100%}.table td,.table th{text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:12px}.table td:first-child,.table th:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px}.table td:last-child,.table th:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}.gift{filter:drop-shadow(0 14px 16px #ff7a5938);font-size:54px}.footer{color:var(--muted);text-align:center;padding:24px}.notice{background:#eafffb;border:1px solid #b8eee6;border-radius:18px;padding:14px}.toast{z-index:70;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #0000;border-radius:18px;max-width:min(420px,100vw - 36px);padding:14px 16px;position:fixed;bottom:18px;right:18px;box-shadow:0 20px 50px #54372329}.toast.success{color:#1f5c54;background:#eafffbf5;border-color:#b8eee6}.toast.error{color:#8f2d31;background:#ffefeff5;border-color:#f4b8bb}.spacer{height:18px}.compact-page{gap:16px;display:grid}.profile-card{gap:12px;padding:18px;display:grid}.profile-overview{align-items:flex-start;gap:16px;display:flex}.avatar{width:78px;height:78px;box-shadow:inset 0 0 0 1px var(--line);background:linear-gradient(135deg,#fff0e8,#eafffb);border-radius:24px;place-items:center;font-size:40px;display:grid}.avatar-image{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.profile-main{flex:1;min-width:0}.profile-main h1{letter-spacing:-.05em;margin:2px 0 8px;font-size:clamp(28px,4vw,46px);line-height:1}.eyebrow{color:#a7462c;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px;font-weight:850}.compact-actions{margin-top:12px}.profile-heading{justify-content:flex-start;align-items:flex-start;gap:16px}.flex-row{flex-direction:row;display:flex}.flex-col{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.profile-heading .flex-col h1{margin-bottom:0}.profile-avatar-row{align-items:center}.profile-avatar-preview{margin-top:4px}.compact-form{gap:8px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form-grid.three{grid-template-columns:1fr .55fr .75fr}.preview-action{align-content:end}.form-hint{color:var(--muted);margin:0;font-size:13px}.form-preview-image{border:1px solid var(--line);aspect-ratio:4/3;object-fit:cover;border-radius:16px;width:100%;max-width:260px}.form-actions{justify-content:flex-end;margin-top:8px;display:flex}.form-actions .btn{justify-content:center;width:100%;max-width:220px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-header h1{letter-spacing:-.05em;margin:6px 0 8px;font-size:clamp(30px,5vw,46px)}.legal-page{padding-top:28px;padding-bottom:28px}.legal-page .card{gap:18px;display:grid}.legal-page h1{letter-spacing:-.06em;margin:0;font-size:clamp(32px,5vw,52px);line-height:.98}.legal-intro{color:var(--muted);max-width:70ch;margin:0;font-size:18px;line-height:1.6}.legal-sections{gap:18px;display:grid}.legal-section{border-top:1px solid var(--line);gap:10px;padding-top:18px;display:grid}.legal-section h2{letter-spacing:-.03em;margin:0;font-size:22px}.legal-section p{color:var(--muted);margin:0;line-height:1.7}.wishlist-section{gap:12px;display:grid}.wishlist-section h2{letter-spacing:-.04em;margin:4px 0 0;font-size:24px}.wishlist-header{align-items:end}.wishlist-header-main{flex:1;min-width:0}.wishlist-import-action{justify-content:flex-end;width:100%}.wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.wish-card{grid-template-columns:150px minmax(0,1fr);gap:0;padding:0;display:grid;overflow:hidden}.wish-image{object-fit:cover;background:#fff;width:100%;height:100%;min-height:185px}.wish-image.placeholder{background:linear-gradient(135deg,#fff0e8,#fff);place-items:center;font-size:42px;display:grid}.wish-body{align-content:start;gap:9px;padding:14px;display:grid}.wish-body h3{letter-spacing:-.03em;margin:0;font-size:18px;line-height:1.15}.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.wish-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-actions .btn,.card-actions .pill{padding:8px 11px;font-size:14px}.booking-form{gap:8px;margin-top:2px;display:grid}.booking-form .form-grid{grid-template-columns:1fr 1fr}.import-provider-list{gap:12px;display:grid}.import-provider-option{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:18px;gap:8px;width:100%;padding:16px;display:grid}.import-provider-option strong{letter-spacing:-.03em;font-size:18px}.import-provider-request-copy{margin:4px 0 0}.import-provider-request{text-align:left;justify-content:center;margin-top:0}.import-preview{gap:14px;padding:16px;display:grid}.import-preview h3,.import-preview h4{margin:0}.import-preview-stats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.import-preview-list{gap:12px;display:grid}.import-preview-item{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:12px;display:grid}.import-preview-image{object-fit:cover;border:1px solid var(--line);background:#fff;border-radius:14px;width:72px;height:72px}.import-preview-image.placeholder{background:linear-gradient(135deg,#fff0e8,#fff);place-items:center;display:grid}.import-preview-copy{gap:6px;min-width:0;display:grid}.import-preview-copy p{margin:0}.profile-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.profile-facts p{border:1px solid var(--line);background:#fff;border-radius:14px;margin:0;padding:10px}.profile-facts b,.profile-facts span{display:block}.profile-facts span{color:var(--muted);margin-top:3px;font-size:14px}.modal-backdrop{z-index:60;background:#2730426b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto}.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.modal-header-copy{flex:1;min-width:0}.modal-header h2{letter-spacing:-.05em;margin:6px 0 8px;font-size:28px}.modal-close{justify-content:center;min-width:42px}.confirm-dialog{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;width:min(440px,100%);max-height:none}.confirm-dialog h2{margin-bottom:0;font-size:24px;line-height:1.2}.confirm-actions{justify-content:flex-end;margin-top:14px}.consent-banner{z-index:50;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:24px;justify-content:space-between;align-items:center;gap:18px;max-width:960px;margin:0 auto;padding:18px 20px;display:flex;position:fixed;bottom:18px;left:18px;right:18px;box-shadow:0 24px 80px #5437232e}.consent-banner p{color:var(--muted);margin:.35rem 0 0}.consent-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (max-width:900px){.wishlist-grid{grid-template-columns:1fr}.wish-card{grid-template-columns:135px minmax(0,1fr)}}@media (max-width:640px){.container,.nav{padding:14px}.hero{padding:28px 14px}.nav{align-items:flex-start}.nav-links,.page-header{justify-content:flex-start;width:100%}.page-header,.modal-header{flex-direction:column}.avatar{border-radius:20px;width:66px;height:66px}.profile-overview{align-items:flex-start}.profile-heading{flex-direction:column;align-items:flex-start}.profile-heading.flex-row{flex-direction:row;align-items:flex-start}.form-grid,.form-grid.three,.booking-form .form-grid,.profile-facts,.wish-card{grid-template-columns:1fr}.wishlist-import-action{justify-content:center}.import-preview-item{grid-template-columns:1fr}.import-preview-image{width:100%;height:160px}.wish-image{height:190px;min-height:0}.modal-backdrop{place-items:stretch stretch;padding:0}.modal-card{width:100%;max-width:none;min-height:100vh;max-height:100vh;box-shadow:none;border:none;border-radius:0}.confirm-dialog{border:1px solid var(--line);border-radius:24px;min-height:auto;max-height:calc(100vh - 28px);margin:auto;box-shadow:0 16px 45px #54372312}.modal-header{flex-direction:row;align-items:flex-start}.modal-close{margin-left:auto}.toast{max-width:none;bottom:14px;left:14px;right:14px}.consent-banner{flex-direction:column;align-items:flex-start}.consent-actions{justify-content:flex-start;width:100%}}
