:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#1f2933;background-color:#eef2ff;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#f8fafc 20%,#e0e7ff);min-height:100vh}main{display:flex;min-height:100vh;align-items:center;justify-content:center;padding:2rem}.user-section{background:#fff;padding:2.5rem 3rem;border-radius:1.5rem;box-shadow:0 35px 55px #0f172a26;width:min(960px,100%)}.user-section header{text-align:center;margin-bottom:2rem}h1{margin:0 0 .5rem;font-size:2.5rem}.user-panel,.user-actions,.gift-list{display:flex;flex-direction:column;gap:1.5rem}.back-button{align-self:flex-start;border:none;background:transparent;color:#4338ca;font:inherit;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem}.back-button:hover{text-decoration:underline}.user-actions-header{display:flex;align-items:center;gap:1.5rem;border:1px solid #e2e8f0;padding:1.5rem;border-radius:1.25rem}.user-actions-header .eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;margin:0;color:#94a3b8}.user-actions-header h2{margin:.35rem 0 0}.gift-list-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.gift-list-header h2{margin:.35rem 0 0}.primary-button{border:none;background:linear-gradient(135deg,#4c1d95,#6d28d9);color:#fff;font:inherit;font-weight:600;padding:.75rem 1.5rem;border-radius:.85rem;cursor:pointer;box-shadow:0 15px 30px #6d28d94d;transition:transform .2s ease,box-shadow .2s ease}.primary-button:hover,.primary-button:focus-visible{transform:translateY(-2px);box-shadow:0 25px 35px #6d28d940}.user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem}.user-card{border:1px solid #e2e8f0;border-radius:1rem;padding:1.25rem;background:#fff;outline:none;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:center;font:inherit;color:inherit;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.user-card:hover,.user-card:focus-visible{border-color:#6366f1;transform:translateY(-4px);box-shadow:0 15px 35px #4f46e526}.user-card.selected{border-color:#4338ca;box-shadow:0 20px 45px #4338ca33}.new-user-card{border-style:dashed}.avatar-circle{width:96px;height:96px;border-radius:50%;background:linear-gradient(145deg,#dbeafe,#e0e7ff);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600;color:#312e81}.new-user-card .avatar-circle{background:linear-gradient(145deg,#e8fcef,#dffce8);color:#065f46}.avatar-circle.large{width:112px;height:112px;font-size:2.5rem}.user-name{font-weight:600}.new-user-form{display:flex;flex-direction:column;gap:.75rem}.new-user-form label{font-weight:600}.form-row{display:flex;flex-wrap:wrap;gap:.75rem}.form-row input{flex:1;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #cbd5f5;font:inherit}.form-row button{padding:.75rem 1.25rem;border-radius:.75rem;border:none;font:inherit;background:#4c1d95;color:#fff;cursor:pointer;transition:background .2s ease}.form-row button.secondary{background:#e2e8f0;color:#1f2933}.action-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.action-card{border:1px solid #e2e8f0;border-radius:1.25rem;padding:1.5rem;text-align:left;cursor:pointer;background:#eef2ff;font:inherit;color:inherit;transition:transform .2s ease,box-shadow .2s ease}.action-card.secondary{background:#fff}.action-card:hover,.action-card:focus-visible{transform:translateY(-3px);box-shadow:0 20px 35px #3341551f}.action-card h3{margin:0 0 .75rem}.action-card p{margin:0;color:#475569}.gift-list-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.gift-card{border:1px solid #e2e8f0;border-radius:1.25rem;padding:1.5rem;background:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 20px 35px #0f172a14;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;width:100%;height:330px}.gift-card:hover{transform:scale(1.02);box-shadow:0 30px 40px #0f172a1f}.gift-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.gift-card-header a{font-weight:600;color:#4338ca}.gift-image{position:absolute;width:75%;height:75%;right:-10%;bottom:calc(-10% + 10px);background-size:contain;background-position:right bottom;background-repeat:no-repeat;opacity:.2;filter:saturate(.9);transform:scale(1);transition:transform .25s ease;z-index:0;pointer-events:none}.gift-card>*:not(.gift-image):not(.gift-purchased-overlay){position:relative;z-index:1}.gift-card:hover .gift-image{transform:scale(1.08)}.gift-purchased-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#e2e8f0bf;display:flex;justify-content:flex-end;align-items:flex-start;padding:1rem;pointer-events:none}.gift-purchased-tag{background:#0f172a;color:#f8fafc;padding:.35rem .75rem;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.gift-price{margin:0;font-weight:600;color:#0f172a}.gift-price.empty{color:#cbd5f5}.gift-quantity{margin:0;font-weight:500;color:#334155}.gift-card-meta{display:flex;align-items:center;gap:.75rem;margin-top:auto;margin-left:-1.5rem;margin-right:-1.5rem;margin-bottom:-1.5rem;padding:.75rem 1.5rem;border-top:1px solid #e2e8f0;background:#fff;border-radius:0 0 1.25rem 1.25rem}.gift-card-meta .gift-quantity{margin-left:auto}.gift-purchased-status{margin:0;font-weight:600;color:#b45309}.gift-purchased-status.purchased{color:#166534}.gift-pill{padding:.25rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.gift-pill.generic{background:#dbeafe;color:#1e3a8a}.gift-pill.specific{background:#ede9fe;color:#4c1d95}.gift-list-note{margin:.5rem 0 0;color:#475569}.purchase-modal-body{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1rem}.purchase-modal-image{width:140px;height:140px;object-fit:contain;border-radius:.75rem;background:#f8fafc;flex-shrink:0}.gift-details{display:flex;flex-direction:column;gap:.5rem;flex:1}.gift-link{font-weight:600;color:#4338ca;text-decoration:none}.gift-link:hover,.gift-link:focus-visible{text-decoration:underline}.gift-purchase-note{margin:0;color:#475569}.removed-placeholder{align-items:center;justify-content:center;text-align:center;color:#94a3b8;font-weight:600;background:#f8fafc}.recently-deleted{margin-top:2rem}.recently-deleted-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.recently-deleted h3{margin:0}.delete-all-button{background:#fee2e2;color:#991b1b;border:none;padding:.65rem 1.15rem;border-radius:.75rem;font:inherit;font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease}.delete-all-button:hover,.delete-all-button:focus-visible{background:#fecaca;box-shadow:0 4px 12px #991b1b26;outline:none}.delete-all-button:disabled{opacity:.6;cursor:not-allowed}.removed-entry{cursor:pointer}.empty-state{border:1px dashed #c7d2fe;border-radius:1.25rem;padding:2rem;text-align:center;color:#475569}.form-row button:disabled{opacity:.6;cursor:not-allowed}.user-section{transition:filter .25s ease}.content-blurred .user-section{filter:blur(14px)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;padding:1rem;z-index:100}.modal{background:#ffffffc7;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.6);border-radius:1.5rem;max-width:520px;width:100%;max-height:85vh;padding:2rem;box-shadow:0 35px 65px #0f172a33,inset 0 1px #ffffffe6;animation:slideUp .2s ease;overflow-y:auto}.confirm-copy{margin:0 0 1.5rem;color:#475569}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.icon-button{border:none;background:transparent;font-size:1.5rem;line-height:1;cursor:pointer;color:#1f2933}.gift-type-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#f8fafc;border-radius:.85rem;padding:.25rem;margin-bottom:1rem}.gift-type-toggle button{border:none;background:transparent;font:inherit;font-weight:600;padding:.75rem;border-radius:.75rem;cursor:pointer;color:#475569}.gift-type-toggle button.active{background:#fff;color:#312e81;box-shadow:0 12px 20px #0f172a1f}.gift-form{display:flex;flex-direction:column;gap:1rem}.gift-form label{display:flex;flex-direction:column;gap:.4rem;font-weight:600;color:#1f2933}.gift-form input,.gift-form textarea{border:1px solid #cbd5f5;border-radius:.85rem;padding:.75rem 1rem;font:inherit;resize:vertical}.url-input-row{display:flex;align-items:center;gap:.75rem}.url-input-row input{flex:1}.url-input-row .secondary{padding:.6rem 1rem;border-radius:.75rem;border:none;background:#e2e8f0;color:#1f2933;font:inherit;cursor:pointer;white-space:nowrap}.url-input-row .secondary:disabled{opacity:.6;cursor:not-allowed}.image-scrape-row{display:flex;align-items:center;gap:.75rem}.image-scrape-error{color:#b45309;font-weight:600;font-size:.9rem}.image-scrape-status{color:#475569;font-weight:600;font-size:.9rem}.image-picker{display:flex;flex-direction:column;gap:.6rem}.selected-image-row{display:flex;gap:.6rem}.image-picker-label{margin:0;font-weight:600;color:#1f2933}.image-grid{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.4rem;scroll-snap-type:x mandatory}.image-option{border:2px solid transparent;border-radius:.75rem;padding:0;background:transparent;cursor:pointer;overflow:hidden;flex:0 0 auto;scroll-snap-align:start}.image-option img{display:block;width:110px;height:90px;object-fit:cover}.image-option.none{width:110px;height:90px;background:#e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.image-option.none span{line-height:1}.image-option.selected{border-color:#4338ca;box-shadow:0 0 0 2px #4338ca33}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.modal-actions .secondary{background:#e2e8f0;color:#1f2933;border:none;padding:.75rem 1.25rem;border-radius:.75rem;font:inherit;cursor:pointer}.modal-actions .danger{background:#fee2e2;color:#991b1b;border:none;padding:.75rem 1.25rem;border-radius:.75rem;font:inherit;cursor:pointer}.modal-actions .primary-button{min-width:140px}.error{color:#d14343;margin:.5rem 0 0}.loading{grid-column:1 / -1;text-align:center;color:#475569}@media (max-width: 640px){main{padding:1rem}.user-section{padding:1.5rem}.form-row{flex-direction:column}.user-actions-header{flex-direction:column;text-align:center}.gift-list-header{flex-direction:column}.gift-list-grid{grid-template-columns:1fr}.modal{padding:1.5rem}.modal-actions{flex-direction:column-reverse}.modal-actions>*{width:100%;text-align:center}.url-input-row{flex-direction:column;align-items:stretch}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.theme-toggle{position:fixed;top:1rem;right:1rem;z-index:90;width:40px;height:40px;border-radius:50%;border:1px solid rgba(0,0,0,.1);background:#ffffffb8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);box-shadow:0 2px 12px #0000001a,inset 0 1px #fffc;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.theme-toggle:hover{transform:scale(1.1);box-shadow:0 4px 20px #00000026,inset 0 1px #ffffffe6}.theme-toggle:focus-visible{outline:2px solid #6366f1;outline-offset:2px}:root[data-theme=dark]{color:#e8eaf6;background-color:#08080f}[data-theme=dark] body{background:radial-gradient(ellipse at 35% 15%,#111130,#08080f 55%,#0a0810)}[data-theme=dark] .theme-toggle{background:#ffffff14;border-color:#ffffff24;color:#c7d2fe;box-shadow:0 2px 16px #00000080,inset 0 1px #ffffff1a}[data-theme=dark] .theme-toggle:hover{background:#ffffff21;box-shadow:0 4px 24px #0009,inset 0 1px #ffffff26}[data-theme=dark] .user-section{background:#ffffff0b;backdrop-filter:blur(48px) saturate(180%);-webkit-backdrop-filter:blur(48px) saturate(180%);border:1px solid rgba(255,255,255,.08);box-shadow:0 35px 60px #0000008c,inset 0 1px #ffffff0f}[data-theme=dark] .back-button{color:#818cf8}[data-theme=dark] .back-button:hover{color:#a5b4fc}[data-theme=dark] .user-actions-header{border-color:#ffffff12;background:#ffffff06}[data-theme=dark] .user-actions-header .eyebrow{color:#64748b}[data-theme=dark] h2,[data-theme=dark] h3{color:#e8eaf6}[data-theme=dark] .user-grid .user-card{background:#ffffff0a;border-color:#ffffff12;color:#e8eaf6}[data-theme=dark] .user-card:hover,[data-theme=dark] .user-card:focus-visible{border-color:#6366f173;box-shadow:0 15px 35px #00000073,0 0 0 1px #6366f12e}[data-theme=dark] .avatar-circle{background:linear-gradient(145deg,#1d4ed866,#4f46e566);color:#a5b4fc}[data-theme=dark] .new-user-card .avatar-circle{background:linear-gradient(145deg,#04785766,#05966966);color:#6ee7b7}[data-theme=dark] .action-card{background:#4f46e512;border-color:#ffffff12;color:#e8eaf6}[data-theme=dark] .action-card.secondary{background:#ffffff09}[data-theme=dark] .action-card p{color:#94a3b8}[data-theme=dark] .action-card:hover,[data-theme=dark] .action-card:focus-visible{box-shadow:0 20px 35px #00000073}[data-theme=dark] .gift-card{background:#ffffff0a;border-color:#ffffff12;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 35px #0000004d}[data-theme=dark] .gift-card:hover{border-color:#ffffff1f;box-shadow:0 30px 42px #00000073}[data-theme=dark] .gift-card-meta{background:#ffffff06;border-top-color:#ffffff0f}[data-theme=dark] .gift-purchased-overlay{background:#0000008c}[data-theme=dark] .gift-purchased-tag{background:#ffffff1a;color:#e8eaf6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=dark] .gift-pill.generic{background:#1d4ed847;color:#93c5fd}[data-theme=dark] .gift-pill.specific{background:#5b21b64d;color:#c4b5fd}[data-theme=dark] .gift-price{color:#e8eaf6}[data-theme=dark] .gift-price.empty{color:#ffffff2e}[data-theme=dark] .gift-quantity{color:#94a3b8}[data-theme=dark] .gift-purchased-status{color:#fbbf24}[data-theme=dark] .gift-purchased-status.purchased{color:#4ade80}[data-theme=dark] .gift-link{color:#818cf8}[data-theme=dark] .gift-link:hover{color:#a5b4fc}[data-theme=dark] .empty-state{border-color:#6366f138;color:#64748b}[data-theme=dark] .removed-placeholder{background:#ffffff06;color:#64748b}[data-theme=dark] .recently-deleted h3{color:#94a3b8}[data-theme=dark] .delete-all-button{background:#991b1b33;color:#fca5a5}[data-theme=dark] .delete-all-button:hover,[data-theme=dark] .delete-all-button:focus-visible{background:#991b1b52;box-shadow:0 4px 12px #991b1b40}[data-theme=dark] .modal-overlay{background:#0000088c}[data-theme=dark] .modal{background:#0e0e1eb8;border-color:#ffffff14;box-shadow:0 35px 70px #000000a6,inset 0 1px #ffffff0f}[data-theme=dark] .modal-header .eyebrow{color:#64748b}[data-theme=dark] .icon-button{color:#94a3b8}[data-theme=dark] .icon-button:hover{color:#e8eaf6}[data-theme=dark] .confirm-copy{color:#94a3b8}[data-theme=dark] .gift-type-toggle{background:#ffffff0a}[data-theme=dark] .gift-type-toggle button{color:#64748b}[data-theme=dark] .gift-type-toggle button.active{background:#ffffff17;color:#a5b4fc;box-shadow:0 4px 14px #00000059}[data-theme=dark] .gift-form label{color:#94a3b8}[data-theme=dark] .gift-form input,[data-theme=dark] .gift-form textarea{background:#ffffff0d;border-color:#ffffff1a;color:#e8eaf6}[data-theme=dark] .gift-form input::placeholder,[data-theme=dark] .gift-form textarea::placeholder{color:#475569}[data-theme=dark] .gift-form input:focus,[data-theme=dark] .gift-form textarea:focus{outline:none;border-color:#6366f180;box-shadow:0 0 0 3px #6366f11f}[data-theme=dark] .form-row input{background:#ffffff0d;border-color:#ffffff1a;color:#e8eaf6}[data-theme=dark] .form-row input::placeholder{color:#475569}[data-theme=dark] .form-row button{background:#4c1d95bf}[data-theme=dark] .form-row button.secondary{background:#ffffff14;color:#e8eaf6}[data-theme=dark] .modal-actions .secondary{background:#ffffff12;color:#e8eaf6}[data-theme=dark] .modal-actions .secondary:hover{background:#ffffff1f}[data-theme=dark] .modal-actions .danger{background:#991b1b47;color:#fca5a5}[data-theme=dark] .modal-actions .danger:hover{background:#991b1b66}[data-theme=dark] .url-input-row .secondary{background:#ffffff14;color:#e8eaf6}[data-theme=dark] .purchase-modal-image{background:#ffffff0d}[data-theme=dark] .purchase-modal-body .gift-details p{color:#94a3b8}[data-theme=dark] .image-option.none{background:#ffffff12;color:#64748b}[data-theme=dark] .image-picker-label{color:#94a3b8}[data-theme=dark] .image-scrape-status{color:#64748b}[data-theme=dark] .image-scrape-error{color:#fbbf24}[data-theme=dark] .loading{color:#64748b}[data-theme=dark] .error{color:#f87171}
