:root{color-scheme:dark;--bg:#0b101a;--panel:#141e2c;--text:#f4f6fa;--muted:#98abc3;--gold:#f0cc83;--line:#2c3a50;--blue:#64a4ff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#1a2b48 0,transparent 65%) no-repeat,var(--bg);min-height:100vh}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{opacity:.55;cursor:wait}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button:focus:not(:focus-visible){outline:none}
.brand{font-size:24px;font-weight:900;letter-spacing:.12em;white-space:nowrap}.brand span{color:var(--gold)}.eyebrow{color:var(--gold);font-size:11px;font-weight:750;letter-spacing:.2em}.muted,.intro{color:var(--muted);line-height:1.65}.welcome{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.welcome>.eyebrow{margin-top:22px}.welcome h1{font-size:clamp(32px,5vw,52px);letter-spacing:-.03em;margin:32px 0 12px}.intro{margin:0;font-size:16px}.participants{display:grid;grid-template-columns:repeat(6,1fr);gap:24px;margin:44px 0 30px;max-width:1050px;width:100%}.participant{border:0;background:transparent;padding:0;display:flex;flex-direction:column;align-items:center;gap:15px;border-radius:16px}.avatar{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:19px;max-width:144px;font-size:44px;font-weight:800;box-shadow:inset 0 0 0 2px #ffffff0d;transition:transform .2s,box-shadow .2s}.participant:hover .avatar{transform:translateY(-5px);box-shadow:inset 0 0 0 2px var(--gold),0 12px 30px #0005}.participant-name{font-size:17px}.person-0{background:linear-gradient(135deg,#997bc9,#403057)}.person-1{background:linear-gradient(135deg,#379288,#173c40)}.person-2{background:linear-gradient(135deg,#cf9951,#5b3b27)}.person-3{background:linear-gradient(135deg,#7290cf,#283655)}.person-4{background:linear-gradient(135deg,#b77895,#4b2f43)}.person-5{background:linear-gradient(135deg,#438cdd,#203b65)}.back{margin-top:12px;color:var(--muted);font-size:13px}.back:hover,footer a:hover{color:var(--gold)}
.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid #ffffff0a;background:#0d1522d9}.identity{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:13px}main{max-width:1228px;margin:auto;padding:42px 24px 24px}.family-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.family-heading p{color:var(--muted);font-size:13px;margin:0}.family{display:flex;gap:10px;overflow-x:auto;padding:20px 4px 25px;scrollbar-width:thin}.family-person{display:flex;align-items:center;gap:10px;white-space:nowrap;border:1px solid var(--line);border-radius:12px;background:#111b2a;padding:10px 16px;font-size:14px}.family-person.active{background:#f0cc8310;border-color:var(--gold)}.family-person:hover{border-color:var(--gold)}.mini-avatar{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:7px;font-weight:800}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:40px 0 30px}.list-heading h1{font-size:clamp(28px,4vw,40px);letter-spacing:-.025em;margin:10px 0}.list-heading p{color:var(--muted);font-size:14px;line-height:1.6;margin:0}.primary,.secondary,.danger{padding:13px 19px;border-radius:10px;border:1px solid transparent;font-weight:650;font-size:14px;white-space:nowrap;min-height:44px}.primary{color:#181e29;background:var(--gold)}.primary:hover{background:#ffe0a6}.secondary{background:#182437;border-color:var(--line)}.secondary:hover{border-color:var(--muted)}.small{font-size:12px;padding:9px 12px}.danger{background:#a44355;color:#fff}.danger:hover{background:#bb5064}.wishes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.wish-card{background:linear-gradient(135deg,#172335,#121c2a);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;padding:24px;min-height:240px;overflow-wrap:anywhere}.wish-top{display:flex;align-items:center;gap:10px}.wish-symbol{color:var(--gold);font-size:26px;line-height:1}.wish-label{font-size:10px;color:var(--muted);letter-spacing:.16em;font-weight:700}.wish-card h2{font-size:21px;line-height:1.4;margin:18px 0 12px;white-space:pre-wrap}.price{margin:0 0 12px;color:var(--gold);font-size:18px;font-weight:750}.notes{font-size:14px;color:#becbe0;white-space:pre-wrap;line-height:1.65;margin:0 0 24px}.wish-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:12px}.gift-link{color:var(--blue);font-size:13px;padding:9px 0}.gift-link:hover{text-decoration:underline}.wish-actions{display:flex;gap:14px}.text-button{border:0;background:none;font-size:12px;color:var(--muted);padding:9px 0;min-height:40px}.text-button:hover{color:var(--text)}.remove:hover{color:#ff9fb2}.empty{text-align:center;background:#141e2c88;border:1px dashed #364760;border-radius:19px;padding:52px 24px}.gift-icon{font-size:48px;color:var(--gold)}.empty h2{font-size:23px;margin:12px 0}.empty p{color:var(--muted);line-height:1.6;margin:0 0 24px}footer{display:flex;justify-content:space-between;gap:20px;padding-top:50px;margin-top:30px;border-top:1px solid #ffffff08;color:var(--muted);font-size:12px}
dialog{color:var(--text);background:#141e2c;border:1px solid #3a4c66;border-radius:20px;max-width:600px;width:calc(100% - 32px);max-height:calc(100svh - 32px);overflow-y:auto;padding:28px;box-shadow:0 24px 100px #0009}dialog::backdrop{background:#070b14cc;backdrop-filter:blur(6px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-heading h2{margin:0;font-size:24px}.close{border:0;background:#213047;width:40px;height:40px;flex-shrink:0;border-radius:50%;font-size:27px}.close:hover{background:#34465e}dialog .muted{font-size:14px;margin:12px 0 24px}label{display:block;font-size:13px;font-weight:650;margin:18px 0 9px}label span{color:var(--gold)}input,textarea{width:100%;border:1px solid #374960;background:#0d1725;border-radius:10px;padding:13px 12px;color:var(--text);font-size:16px;resize:vertical}input::placeholder,textarea::placeholder{color:#7c90aa}input:focus,textarea:focus{border-color:var(--gold);outline:2px solid #f0cc8322;outline-offset:1px}.form-row{display:grid;grid-template-columns:1fr 1.5fr;gap:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.form-error{color:#ffb6c3;font-size:14px;line-height:1.5}.status{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);z-index:20;border:1px solid #556745;background:#202e25;color:#e9f7e5;padding:14px 20px;border-radius:12px;box-shadow:0 10px 40px #0007;font-size:14px;line-height:1.5}.fatal{position:fixed;inset:auto 16px 24px;margin:auto;background:#231f2d;border:1px solid #885766;max-width:500px;padding:24px;border-radius:14px;text-align:center}
@media(max-width:1000px){.participants{grid-template-columns:repeat(3,1fr);max-width:540px;gap:26px 30px}.wishes{grid-template-columns:repeat(2,minmax(0,1fr))}.identity{flex-direction:column;align-items:flex-end;gap:6px}.family-heading p{display:none}}
@media(max-width:600px){.welcome{padding:40px 20px;justify-content:flex-start}.brand{font-size:21px}.welcome h1{margin-top:28px}.intro{font-size:14px}.participants{gap:22px 15px;margin:32px 0 18px}.avatar{max-width:110px;font-size:34px;border-radius:15px}.participant-name{font-size:14px}.participant{gap:10px}.welcome .muted{font-size:13px}.header{padding:16px;align-items:center;gap:10px}.header .brand{font-size:17px}.identity{font-size:10px;text-align:right}.small{padding:7px 9px;font-size:11px}.header .identity span{max-width:170px}main{padding:27px 16px 22px}.family-person{padding:9px 12px}.family{margin-right:-16px;padding-right:16px}.list-heading{align-items:flex-start;flex-direction:column;padding:20px 0 24px;gap:18px}.list-heading h1{font-size:30px}.list-heading p{font-size:13px}.wishes{grid-template-columns:1fr;gap:16px}.wish-card{min-height:210px;padding:22px}.empty{padding:36px 20px}.empty h2{font-size:21px}footer{flex-direction:column;padding-top:26px;gap:12px}dialog{padding:22px}.dialog-heading h2{font-size:21px}.form-row{grid-template-columns:1fr;gap:0}.dialog-actions{flex-wrap:wrap}.dialog-actions .primary{flex:1}.status{bottom:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
