:root{font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:#273d35;background:#f7f5ef;font-synthesis:none;--green: #294f40;--muted: #62695d;--border: #e3e5db}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}a{color:inherit}button,input,textarea,select,a{outline-offset:4px}button,select{touch-action:manipulation}button{min-height:44px;min-width:44px}:focus-visible{outline:3px solid #ad7752}h1,h2,h3,p{margin:0}h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:400;line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere}h2{font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:400}h3{font-size:1.08rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.topbar{min-height:88px;display:flex;align-items:center;gap:30px;padding:20px 5%;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;min-height:44px;text-decoration:none;font-family:Georgia,serif;font-size:1.8rem;font-weight:700;letter-spacing:-.055em}.brand-icon{display:inline-grid;place-items:center;width:35px;height:35px;margin-right:10px;border-radius:11px;background:#e7ebdf;font-size:1.4rem}.brand-dot{color:#b18454}.owner-layout{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1380px;margin:auto;min-height:calc(100vh - 160px)}.sidebar{padding:42px 25px;border-right:1px solid var(--border)}.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.16em;color:#7e826d;margin-bottom:15px}.sidebar nav{display:grid;gap:8px;margin-top:26px}.list-tab{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;border:0;color:#666d60;background:none;padding:12px;border-radius:8px;font-size:.88rem;overflow-wrap:anywhere}.list-tab.selected{background:#e9eddf;color:var(--green);font-weight:600}.list-tab span{font-size:1.2rem;line-height:1}.new-list-button{margin:20px 10px;padding:8px 0;border:0;background:none;font-size:.85rem;color:var(--green)}.owner-main{padding:46px 6% 64px;min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}.intro{color:var(--muted);line-height:1.7;margin-top:14px;max-width:620px;white-space:pre-line;overflow-wrap:anywhere}.button{border:1px solid var(--green);background:var(--green);color:#fff;padding:11px 18px;border-radius:7px;font-size:.875rem;font-weight:600;white-space:normal;overflow-wrap:anywhere;transition:background .15s}.button:hover:not(:disabled){background:#1d3c2f}.button.secondary{background:transparent;color:var(--green);border-color:#cbd2c3}.button.secondary:hover:not(:disabled){background:#edf0e5}.privacy-note{display:flex;gap:15px;align-items:center;border:1px solid #e0e5d4;background:#eef1e6;border-radius:9px;padding:17px 20px;margin-bottom:37px}.privacy-note>span{font-size:1.6rem;color:#81936b}.privacy-note strong,.privacy-note div>span{display:block}.privacy-note strong{font-size:.86rem;font-weight:600;margin-bottom:4px}.privacy-note div>span{font-size:.875rem;color:var(--muted);line-height:1.6}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.section-heading p{margin-top:8px;font-size:.875rem;color:var(--muted);line-height:1.6}.wish-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.import-help{font-size:.84rem;color:var(--muted);line-height:1.6}.count{font:500 .75rem Segoe UI,sans-serif;display:inline-grid;place-items:center;background:#e9ecdf;min-width:24px;height:24px;border-radius:50%;vertical-align:middle;margin-left:8px}.wish-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.wish-card{display:flex;align-items:center;gap:20px;background:#fffefa;border:1px solid var(--border);border-radius:10px;padding:24px 22px}.rank{font-family:Georgia,serif;font-size:1.4rem;color:#9da68e;min-width:30px;align-self:flex-start;padding-top:1px}.wish-content{flex:1;min-width:0}.wish-description{margin-top:7px;font-size:1rem;line-height:1.6;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.wish-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:.875rem}.wish-meta:empty{display:none}.price{color:#69785e;background:#f0f2e9;padding:4px 8px;border-radius:4px;overflow-wrap:anywhere}.product-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 4px;color:#4e6544;text-decoration:none}.product-link:hover{text-decoration:underline}.icon-button{border:1px solid #e1e4d8;background:transparent;border-radius:5px;color:#536347;width:44px;height:44px;flex-shrink:0;font-size:1.2rem}.icon-button:hover:not(:disabled){background:#eef1e6}.text-button{border:0;background:transparent;color:#4e6544;font-size:.875rem;padding:10px}.text-button:hover:not(:disabled){text-decoration:underline}.muted{color:var(--muted)}.owner-wish-list{gap:8px}.wish-card.owner-wish-card{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;gap:4px;padding:8px}.owner-wish-heading{display:flex;align-items:baseline;gap:6px}.owner-wish-heading .rank{font-size:1rem;min-width:24px;color:var(--muted);padding:0}.owner-wish-heading h3{font-size:1rem;min-width:0}.owner-wish-card .wish-content{padding-block:10px}.owner-wish-card .wish-description{margin-top:4px;font-size:.875rem;line-height:1.5}.owner-wish-card .wish-meta{margin-top:4px;gap:8px}.wish-edit-target{min-height:0;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere}.wish-edit-target:after{content:"";position:absolute;inset:0;z-index:1;border-radius:9px}.wish-edit-target:hover:not(:disabled):after{background:#294f4005}.wish-edit-target:focus-visible{outline:none}.wish-edit-target:focus-visible:after{outline:3px solid #ad7752;outline-offset:-3px}.drag-handle,.remove-wish{position:relative;z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted)}.drag-handle{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;font-size:1.6rem}.drag-handle:active{cursor:grabbing}.drag-handle:hover:not(:disabled),.remove-wish:hover:not(:disabled){background:#eef1e6}.remove-wish:hover:not(:disabled){color:#8c4737}.owner-wish-card .product-link{position:relative;z-index:2}.drag-source{opacity:.3}.wish-drag-preview{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid #a6b795;border-radius:10px;background:#fffefa;color:var(--green);box-shadow:0 12px 30px #243d3326;cursor:grabbing}.wish-drag-preview>span{font-size:1.6rem}.wish-drag-preview strong{font-size:1rem;overflow-wrap:anywhere}.mobile-list-picker,.mobile-edit-list{display:none}.action-status{color:var(--green);font-size:.875rem;line-height:1.6}.action-status:not(:empty){margin-bottom:16px}.retry-button{margin-bottom:20px}.owner-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin-bottom:28px}.owner-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 20px;min-height:48px;font-weight:600}.owner-tabs button[aria-selected=true]{border-bottom-color:var(--green);color:var(--green)}.owner-tabs button:hover{background:#eef1e6}.section-symbol{font-size:2rem;color:#95a07d}.invite-form{display:flex;gap:12px}input,textarea,select{width:100%;min-width:0;background:#fffefa;border:1px solid #d9ded0;color:#334b3d;padding:12px 13px;border-radius:6px;font-size:max(16px,1rem)}input,select{min-height:48px}input::placeholder,textarea::placeholder{color:#6e7566}textarea{resize:vertical}.invitation-list{list-style:none;margin:18px 0 0;padding:0}.invitation-list li{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}.avatar{background:#e9ecdf;color:#536347;border-radius:50%;width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;font:1rem Georgia,serif}.invitation-name{flex:1;min-width:0;overflow-wrap:anywhere}.invitation-name strong{font-size:1rem;font-weight:500}.invitation-name span{display:block;font-size:.875rem;color:var(--muted);margin-top:3px}.invitation-actions{display:flex;flex-wrap:wrap;gap:12px}.link-result{padding:18px;margin-top:18px;border:1px dashed #a6b795;border-radius:8px;background:#edf2e6;font-size:.85rem}.link-result p{font-size:.875rem;margin-top:7px;color:var(--muted);line-height:1.6}.share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.copy-row{display:flex;gap:8px;margin-top:12px}.copy-row input{min-width:0}.empty{border:1px dashed #d5dccb;border-radius:10px;padding:45px 24px;text-align:center;color:#697461}.empty p{line-height:1.7;margin:12px auto 0;max-width:470px;font-size:.9rem}.empty .button{margin-top:22px}.empty-star{display:block;font-size:3rem;color:#a7b18e;margin-bottom:15px}.notice{background:#fbede5;color:#8c4737;border:1px solid #efd1c3;padding:14px 18px;border-radius:8px;margin-bottom:20px;font-size:.88rem;line-height:1.6}dialog{border:1px solid var(--border);border-radius:14px;background:#f7f5ef;color:#273d35;width:min(540px,calc(100% - 32px));max-height:calc(100vh - 40px);max-height:calc(var(--modal-viewport-height, 100dvh) - 40px);padding:0;box-shadow:0 24px 80px #243d3326;overflow:hidden}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{background:#253e3266;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;gap:16px;flex-shrink:0;border-bottom:1px solid var(--border)}.modal-heading h2{min-width:0;overflow-wrap:anywhere}.modal-body{overflow-y:auto;min-height:0;padding:0 28px;overscroll-behavior:contain;scroll-padding-block:18px 100px}.modal-body>form{padding-top:10px}dialog label{display:block;font-size:.875rem;margin:18px 0;line-height:1.5;font-weight:500}dialog label input,dialog label textarea{margin-top:7px;font-weight:400}.optional{color:var(--muted);margin-left:5px;font-size:.875rem;font-weight:400}.form-actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:25px;padding:16px 0;background:#f7f5ef;border-top:1px solid var(--border)}.button.secondary.delete-list{color:#8c4737;border-color:#efd1c3;margin-right:auto}.button.secondary.delete-list:hover{background:#fbede5}.guest-main{max-width:920px;margin:auto;padding:46px 28px 55px}.guest-hero{position:relative;padding:8px 0 34px}.guest-hero h1{padding-right:70px}.hero-star{position:absolute;right:8px;top:20px;font-size:5rem;color:#b6bf9f}.guest-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.filters{display:flex;gap:5px;background:#eeeee5;padding:4px;border-radius:8px}.filters button{background:none;color:var(--muted);border:0;padding:9px 14px;border-radius:5px;font-size:.875rem}.filters button.active{background:#fffefa;color:#385438;box-shadow:0 1px 4px #2639210d}.guest-wishes .wish-card{padding:27px 24px}.wish-status:not(:empty){margin-bottom:9px}.badge{display:inline-block;font-size:.875rem;line-height:1.5;border-radius:4px;padding:4px 7px}.favourite{color:#77602b;background:#f6f0df}.mine{color:#50713c;background:#e6efdc}.taken,.removed{color:#62695d;background:#eeeee6}.your-gift{background:#f9fcf3;border-color:#c9d7b9}.unavailable{background:#f2f2ec}.unavailable h3{color:#7e8777}.claimed-label{color:var(--muted);font-size:.875rem}.claimed-label span{margin-left:6px}.guest-item-action{flex-shrink:0}.guest-footnote{margin-top:35px;text-align:center;color:var(--muted);font-size:.875rem;line-height:1.9}.removed-note{margin-top:12px;font-size:.875rem;line-height:1.6;color:#805833}.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(max-width:950px){.owner-layout{grid-template-columns:200px minmax(0,1fr)}.owner-main{padding:36px 25px 50px}.sidebar{padding:36px 18px}.wish-card{gap:14px;padding:20px 16px}}@media(max-width:650px){.topbar{min-height:72px;padding:15px 20px}.owner-layout{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:16px 20px}.sidebar .eyebrow{display:none}.sidebar nav{display:none}.mobile-list-picker{display:grid;gap:8px;font-size:.875rem;color:var(--muted)}.new-list-button{margin:8px 0 0;padding-inline:10px}.sidebar-list-actions{display:flex;gap:8px}.sidebar-list-actions .new-list-button{flex:1;min-height:44px}.mobile-edit-list{display:block}.owner-main{padding:28px 20px max(45px,env(safe-area-inset-bottom))}.page-heading{flex-direction:column;gap:16px}.page-heading>.button{margin-top:0}.owner-list-heading,.owner-main .page-heading{display:none}.owner-tabs button{flex:1}.button{min-height:48px}.section-heading{align-items:flex-start}.section-heading p{max-width:none}.section-heading>.button{padding:10px 12px}.section-heading:has(.wish-actions){flex-direction:column}.wish-actions{justify-content:flex-start;width:100%}.wish-actions .button{width:100%;padding:10px 12px}.wish-card{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px}.guest-main{padding:32px 20px max(45px,env(safe-area-inset-bottom))}.guest-hero h1{padding-right:40px}.hero-star{font-size:3rem;right:0}.guest-toolbar{align-items:flex-start;flex-direction:column;gap:8px}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.filters button{padding:9px 10px;overflow-wrap:anywhere}.filters button:last-child{grid-column:1 / -1}.guest-wishes .wish-card{padding:22px 18px}.guest-item-action{grid-column:1 / -1;width:100%;margin-top:4px}.guest-item-action .button{width:100%}.invite-form,.copy-row,.share-actions{flex-direction:column}.invitation-list li{display:grid;grid-template-columns:34px minmax(0,1fr)}.invitation-list .text-button{grid-column:2;justify-self:start}.invitation-actions{grid-column:2}dialog{position:fixed;top:var(--modal-viewport-top, 0px);bottom:auto;margin:12px auto;width:calc(100% - 24px);max-height:calc(100vh - 24px);max-height:calc(var(--modal-viewport-height, 100dvh) - 24px)}.modal-heading{padding:12px 16px}.modal-body{padding:0 16px}.form-actions{padding-bottom:max(12px,env(safe-area-inset-bottom))}.form-actions .button{flex:1 1 100px}.import-input{height:clamp(120px,25dvh,200px)}}
