:root{color:#28221d;font-synthesis:none;background:#f4eee5;font-family:Inter,ui-rounded,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.shell{place-items:center;min-height:100vh;padding:1rem;display:grid}.card{background:#fffdf9;border:1px solid #ded2c2;border-radius:1.5rem;width:min(100%,38rem);padding:clamp(1.5rem,5vw,3rem);box-shadow:0 1rem 3rem #4b37231a}.eyebrow{color:#8b4936;letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}h1{margin-block:.5rem;font-family:Georgia,serif;font-size:clamp(2rem,7vw,3.5rem);line-height:1}.intro{color:#665c54}.accounts{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin-block:1.5rem;display:grid}.account{min-height:7rem;color:inherit;cursor:pointer;background:#fff;border:2px solid #ded2c2;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.avatar,.avatar-fallback{object-fit:cover;border-radius:50%;width:2.75rem;height:2.75rem;display:grid}.avatar-fallback{background:#ecd5c7;place-items:center;font-family:Georgia,serif;font-size:1.4rem}.account:hover,.account:focus-visible,.account.selected{border-color:#a6533e;outline:none}form{gap:.75rem;display:grid}label{font-weight:700}input{border:1px solid #9b8d80;border-radius:.6rem;width:100%;min-height:3rem;padding-inline:.8rem}select{background:#fff;border:1px solid #9b8d80;border-radius:.6rem;min-height:3rem;padding-inline:.8rem}.primary{color:#fff;cursor:pointer;background:#873f2f;border:0;border-radius:.6rem;min-height:3rem;font-weight:700}.primary:disabled{cursor:wait;opacity:.7}.password-input{min-width:0;position:relative}.password-input input{padding-inline-end:3.25rem}.password-visibility{z-index:1;top:50%;width:2.75rem;height:2.75rem;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:.45rem;place-items:center;padding:.65rem;display:grid;position:absolute;inset-inline-end:.2rem;transform:translateY(-50%)}.password-visibility svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:100%;height:100%}.password-visibility:focus-visible{outline-offset:-.1rem;outline:.2rem solid #a6533e}.security-warning{white-space:pre-line;background:#fff1e8;border-left:.3rem solid #a6533e;gap:.4rem;padding:1rem;display:grid}.password-policy{background:#f5eee5;border-radius:.6rem;margin-block:1rem;padding:.8rem 1rem}.password-policy h2{margin-block:0 .5rem;font-size:1rem}.password-policy ul{margin-block:0;padding-left:1.5rem}.criterion-invalid{color:#b42318}.criterion-valid{color:#18794e}input.input-invalid{border:2px solid #b42318}input.input-valid{border:2px solid #18794e}input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #3f2c25}input.input-valid:focus-visible{outline-color:#0d5c3a}input.input-invalid:focus-visible{outline-color:#8d1c13}.activation-account{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.activation-account p{margin:0}[role=alert]{color:#9b1c1c}.admin-shell{width:min(100% - 2rem,76rem);margin-inline:auto;padding-block:2rem 4rem}.admin-header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.admin-header nav,.admin-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-return-link{min-height:2.75rem;color:inherit;background:#fff;border:1px solid #9b8d80;border-radius:.6rem;align-items:center;gap:.55rem;padding-inline:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.admin-return-link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.35rem;height:1.35rem}.admin-header button,.admin-actions button,.avatar-upload,.admin-row>button,.one-time-link button,.session-drawer>button{cursor:pointer;background:#fff;border:1px solid #9b8d80;border-radius:.6rem;min-height:2.5rem;padding-inline:.8rem}.avatar-upload{align-items:center;font-weight:400;display:inline-flex}.avatar-upload input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.avatar-upload:focus-within{outline-offset:.1rem;outline:.2rem solid #a6533e}.admin-panel{background:#fffdf9;border:1px solid #ded2c2;border-radius:1rem;margin-top:1.5rem;padding:clamp(1rem,3vw,2rem)}.admin-create{max-width:32rem;margin-block:1rem 2rem}.admin-create fieldset,.admin-dialog fieldset{gap:.35rem;min-width:0;display:grid}.checkbox-row{overflow-wrap:anywhere;border-radius:.5rem;align-items:center;gap:.65rem;min-width:0;min-height:2.75rem;padding:.35rem .25rem;display:flex}.checkbox-row input[type=checkbox]{accent-color:#873f2f;width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:1.25rem;margin:0}.checkbox-row:focus-within{outline-offset:1px;outline:3px solid #3f2c25}.admin-list{gap:.75rem;margin-top:1rem;display:grid}.admin-row{border:1px solid #ded2c2;border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.admin-row p{color:#665c54;margin-block:.35rem 0}.one-time-link,.session-drawer,.privilege-warning{background:#fff1e8;border-left:.3rem solid #a6533e;padding:1rem}.one-time-link{gap:.5rem;margin-bottom:1rem;display:grid}.session-drawer{margin-top:1rem}.admin-dialog{width:min(100% - 2rem,36rem);max-height:min(100dvh - 2rem,44rem);color:inherit;background:#fffdf9;border:1px solid #9b8d80;border-radius:1rem;padding:0;box-shadow:0 1.5rem 4rem #28221d59}.admin-dialog::backdrop{background:#28221d99}.admin-dialog-content{overscroll-behavior:contain;gap:1rem;max-height:min(100dvh - 2rem,44rem);padding:1rem;display:grid;overflow:auto}.admin-dialog-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.admin-dialog-header h3{margin:0}.admin-dialog-header button{cursor:pointer;background:#fff;border:1px solid #9b8d80;border-radius:.6rem;min-width:2.75rem;min-height:2.75rem;padding-inline:.8rem}@media (width<48rem){.admin-header,.admin-row{flex-direction:column;align-items:stretch}}textarea{min-height:7rem;font:inherit;resize:vertical;border:1px solid #9b8d80;border-radius:.6rem;padding:.8rem}.app-shell{width:min(100% - 2rem,78rem);margin-inline:auto;padding-block:2rem 4rem}.app-header,.gift-card header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.app-header nav,.gift-actions,.member-tabs,.inline-form{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.app-header nav a,.app-header nav button,.gift-actions button,.member-tabs button,.inline-form button{min-height:2.5rem;color:inherit;cursor:pointer;background:#fff;border:1px solid #9b8d80;border-radius:.6rem;padding-inline:.8rem;text-decoration:none}.app-header .account-action{color:#873f2f;border-color:#873f2f;place-items:center;width:2.75rem;min-width:2.75rem;min-height:2.75rem;padding:0;display:grid}.gift-profile-avatar[hidden]{display:none}.account-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.25rem;height:1.25rem}.gift-card{background:#fffdf9;border:1px solid #ded2c2;border-radius:1rem;padding:1.25rem}.gift-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));align-items:start;gap:1rem;margin-top:1rem;display:grid}.gift-gallery-page{gap:1.5rem;margin-top:1.5rem;display:grid}.gift-gallery-page>*,.gift-card-heading,.gift-card-title{min-width:0}.gift-profile-gallery{overscroll-behavior-inline:contain;gap:.65rem;max-width:100%;padding:.4rem .1rem .75rem;display:flex;overflow-x:auto}.gift-profile-tab{min-width:5.5rem;min-height:5rem;color:inherit;cursor:pointer;background:0 0;border:2px solid #0000;border-radius:.8rem;justify-items:center;padding:.45rem;display:grid}.gift-profile-tab[aria-selected=true]{background:#fffdf9;border-color:#873f2f;font-weight:700}.gift-profile-tab:focus-visible,.gift-card:focus-visible,.account-action:focus-visible{outline-offset:.15rem;outline:.2rem solid #873f2f}.gift-profile-avatar{object-fit:cover;background:#ecd5c7;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}.gift-card-trigger{aspect-ratio:1;overflow-wrap:anywhere;width:100%;min-width:0;min-height:0;color:inherit;cursor:pointer;text-align:start;grid-template-rows:2.8em minmax(0,1fr) 3.25rem;gap:.5rem;padding:.75rem;display:grid}.gift-card-trigger>.gift-card-title{grid-row:1;font-size:1rem}.gift-card-trigger>.gift-card-description,.gift-card-trigger>.gift-card-visual{grid-row:2;align-self:start;min-height:0;max-height:100%}.gift-card-trigger>.gift-card-visual{width:100%;height:min(100%,5rem)}.gift-card-trigger .gift-card-image{height:100%}.gift-card-trigger>.gift-card-heading{flex-flow:column;grid-row:3;gap:.2rem;min-width:0}.gift-card-trigger .gift-meta{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:100%;overflow:hidden}@media (width<30rem){.gift-list{width:100%;max-width:17rem;margin-inline:auto}}.gift-card-visual{border-radius:.7rem}.gift-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.5rem;display:flex}.gift-card-title,.gift-card-description{white-space:normal;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.gift-card-title{white-space:nowrap;text-overflow:ellipsis;align-self:start;min-width:0;font-size:1.15rem;font-weight:700;display:block}.gift-card-description{-webkit-line-clamp:3;color:#665a4f;font-size:.95rem}.gift-create-card{aspect-ratio:1;color:#873f2f;cursor:pointer;border:2px dashed #9b8d80;align-content:center;justify-items:center;gap:.75rem;width:100%;min-width:0;min-height:0;font-size:1.1rem;font-weight:700;display:grid}.gift-create-plus{font-size:4rem;line-height:1}.gift-dialog{color:#28221d;background:#fffdf9;border:1px solid #ded2c2;border-radius:16px;width:min(100vw - 32px,690px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 64px);padding:0;overflow:auto;box-shadow:0 24px 70px #28221d33}button:not(:disabled),a[href],[role=button]:not([aria-disabled=true]){cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.55}.gift-card-visual{display:block;overflow:hidden}.gift-card-image{object-fit:contain;width:100%;height:10rem;display:block}.gift-media-images figure{position:relative}.gift-media-actions{position:absolute;top:4px;right:4px}.gift-dialog button.gift-image-delete{color:#873f2f;background:#fffdf9;place-items:center;width:44px;height:44px;min-height:44px;padding:0;display:grid;box-shadow:0 1px 4px #28221d26}.gift-upload{justify-items:start;gap:6px;display:grid}.gift-dialog::backdrop{background:#28221d75}.gift-dialog-content{overflow-wrap:anywhere;padding:20px 24px;font-size:14px;line-height:1.5;container-type:inline-size}.gift-popup-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.gift-popup-main,.gift-popup-side{min-width:0}.gift-popup-side{background:0 0;border:0;gap:8px;padding:0;display:grid}.gift-dialog .status{border-radius:999px;flex:none;align-self:start;width:fit-content;height:25px;padding:3px 10px;font-size:12px;line-height:19px;display:inline-flex}.gift-dialog button{color:#28221d;background:#fffdf9;border:1px solid #ded2c2;border-radius:8px;max-width:100%;min-height:44px;padding:8px 14px;font-size:14px}.gift-dialog button.primary{color:#fff;background:#873f2f;border-color:#873f2f;font-weight:600}.gift-dialog button:focus-visible{outline-offset:2px;outline:3px solid #873f2f}.gift-dialog button.text-button{color:#873f2f;text-underline-offset:3px;background:0 0;border:0;padding-left:0;font-size:13px;text-decoration:underline}.gift-dialog p,.gift-dialog h2,.gift-dialog h4{margin:0}.gift-popup-main>a,.gift-media-link>a{color:#873f2f;text-underline-offset:3px;align-items:center;width:fit-content;min-height:44px;font-size:13px;display:flex}.gift-popup-main>p{white-space:pre-wrap;max-width:47ch}.gift-media,.gift-media-link{overflow-wrap:anywhere;gap:10px;min-width:0;display:grid}.gift-media-images{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.gift-media figure{min-width:0;margin:0}.gift-media img{object-fit:contain;width:100%;max-height:180px;display:block}.gift-media input[type=file]{width:100%;min-width:0}.gift-media-actions{flex-wrap:wrap;gap:6px;display:flex}.gift-price{font-size:17px;font-weight:700}@container (width>=560px){.gift-detail.gift-popup-layout{grid-template-columns:minmax(0,1fr) 172px}.gift-detail>.gift-popup-side{border-left:1px solid #ded2c2;padding-left:18px}.gift-detail .gift-actions{flex-direction:column;align-items:stretch}}.gift-popup-summary,.gift-detail>.gift-comments{grid-column:1/-1}@container (width<560px){.gift-detail>.gift-popup-side{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gift-detail>.gift-popup-side>.gift-price,.gift-detail>.gift-popup-side>.privacy-note,.gift-detail>.gift-popup-side>[role=alert]{flex-basis:100%}.gift-detail .gift-actions{margin-top:0}}.gift-content-form fieldset{border:0;gap:5px;min-inline-size:0;margin:8px 0 0;padding:0;display:grid}.gift-content-form .gift-popup-main{gap:5px;display:grid}.gift-content-form label,.gift-content-form legend{font-size:13px;font-weight:600}.gift-content-form .gift-popup-main>label{margin-top:8px}.gift-dialog input,.gift-dialog textarea,.gift-dialog select{font:inherit;color:#28221d;background:#fff;border:1px solid #9b8d80;border-radius:8px;min-width:0;min-height:44px;padding:9px 12px}.gift-dialog textarea{resize:vertical;min-height:78px}.gift-price-fields[data-range=true]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px}.gift-price-fields[data-range=true] label{grid-row:1}.gift-price-fields[data-range=true] input{grid-row:2}.gift-price-fields button,.gift-price-fields .field-error{grid-column:1/-1;justify-self:start}.gift-content-form input,.gift-content-form textarea,.gift-content-form select,.gift-actions select{width:100%;min-width:0;max-width:100%}.gift-detail header{justify-content:space-between;align-items:start;gap:12px;display:flex}.gift-popup-byline{align-items:center;gap:8px;min-width:0;display:flex}.gift-author-avatar{color:#873f2f;background:#eee4d7;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:grid}.gift-dialog-header{border-bottom:1px solid #ded2c2;justify-content:space-between;align-items:start;gap:1rem;margin:0 -24px 20px;padding:0 24px 12px;display:flex}.gift-dialog-header h2{font:700 25px/1.15 Georgia,serif}.gift-dialog-header button{color:#665c54;background:0 0;border:0;flex:0 0 44px;min-width:2.75rem;min-height:2.75rem;margin:-7px -10px 0 0;font-size:22px}.gift-content-link-row{gap:.5rem;margin-block:1rem;display:grid}.gift-content-form-actions{border-top:1px solid #ded2c2;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:15px;display:flex}.gift-card h3,.gift-card h4,.gift-card p{margin-block:.4rem}.gift-meta,.privacy-note{color:#665c54;font-size:.92rem}.status{white-space:nowrap;background:#eee4d7;border-radius:999px;padding:.35rem .65rem;font-size:.85rem;font-weight:700}.status-reserved{background:#f8dca5}.status-purchased{background:#cce6d0}.gift-dialog .gift-meta,.gift-dialog .privacy-note{font-size:12px}.gift-actions{margin-top:8px}.gift-comments{border-top:1px solid #ded2c2;padding-top:16px}.comment{gap:8px;margin-top:12px;font-size:14px;line-height:21px;display:flex}.comment-bubble{background:#f4eee5;border-radius:9px;flex:1;min-width:0;padding:10px 12px}.comment-body{white-space:pre-wrap}.comment-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.comment-bubble textarea{width:100%;min-height:5rem;margin:6px 0;display:block}.comment-actions button,.comment-bubble form button,.gift-comments>button{min-height:44px}.gift-comments .privacy-note{margin-top:3px}.gift-comments form{margin-top:12px}.gift-comments label{font-size:13px}.gift-comments .inline-form{flex-wrap:nowrap;gap:8px}.gift-comments .inline-form button{flex-shrink:0}.inline-form input{flex:1;min-width:0}@media (width<=600px){.gift-dialog{border-radius:14px;width:calc(100vw - 34px);max-height:calc(100dvh - 54px)}.gift-dialog-content{padding:16px 18px;font-size:13px}.gift-dialog-header{margin:0 -18px 16px;padding:0 18px 10px}.gift-dialog-header h2{font-size:23px}.gift-popup-layout{gap:16px}.gift-dialog .gift-meta{font-size:11px}.gift-detail header,.gift-comments .inline-form{gap:6px}.gift-comments .inline-form button{padding-inline:10px}}.compact{min-height:2.5rem;padding-inline:.8rem}.member-tabs button[aria-selected=true]{background:#fff1e8;border-color:#873f2f;font-weight:700}@media (width<52rem){.app-header,.gift-card header{flex-direction:column;align-items:stretch}.gift-list{grid-template-columns:1fr}}
