@font-face{font-family:Bricolage Grotesque;src:url(/assets/bricolage-400-DNUHLJcS.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/assets/bricolage-500-aMBWWfC-.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/assets/bricolage-600-BLKzKRR6.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/assets/bricolage-700-BIJrwikb.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/assets/bricolage-800-XD-gIKXN.ttf)format("truetype");font-weight:800;font-display:swap}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;color:#1c1311;--bg:#f3eadb;--surface:#fffdf8;--ink:#1c1311;--ink-muted:#5c4d44;--ink-soft:#3f332d;--ink-disabled:#7a6a60;--on-dark:#f3eadb;--on-dark-muted:#cdbfaf;--accent:#e4561f;--accent-text:#c2410f;--danger:#a3230f;--border:#e3d6c1;--border-strong:#8c7b6e;--border-dashed:#c9b9a2;--divider:#efe4d2;--divider-dark:#4a3b33;--outline-dark:#7a6a60;--disabled-bg:#5a4a42;--tile-blue:#86b4d8;--tile-yellow:#f5cf67;--tile-pink:#f2aac8;--tile-sage:#bccdb2;background:#f3eadb;font-family:Bricolage Grotesque,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}main{background:var(--bg);flex:1}main>.state{width:min(100% - 64px,1280px);margin:54px auto}a{color:var(--accent-text);text-underline-offset:3px}a:hover{color:var(--ink)}button,input,textarea,select{font:inherit}button,.button-link{transition:background-color .18s,border-color .18s,color .18s}button{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--ink);cursor:pointer;border-radius:99px;padding:10px 18px;font-weight:800}button:hover:not(:disabled),.button-link:hover{color:var(--ink);background:#d84b18;border-color:#d84b18}button:disabled{background:var(--disabled-bg);border-color:var(--disabled-bg);color:var(--on-dark-muted);cursor:not-allowed;opacity:1}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.topbar{background:var(--ink);color:var(--on-dark)}.topbar-inner{justify-content:space-between;align-items:center;gap:24px;width:min(100% - 64px,1280px);min-height:78px;margin:auto;display:flex}.brand{min-height:44px;color:var(--on-dark);white-space:nowrap;align-items:center;gap:12px;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);width:40px;height:40px;color:var(--ink);border-radius:12px;flex:none;place-items:center;display:grid}.brand-mark svg{width:24px;height:24px}.topbar nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.topbar nav a{min-width:0;max-width:100%;min-height:44px;color:var(--on-dark);overflow-wrap:anywhere;white-space:normal;border-radius:99px;align-items:center;padding:8px 16px;font-weight:600;text-decoration:none;display:inline-flex}.topbar nav a:hover,.topbar nav a.active{background:var(--bg);color:var(--ink)}.account-menu{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.account-menu span{overflow-wrap:anywhere;color:var(--on-dark-muted);font-size:.875rem}.account-menu button{border-color:var(--outline-dark);color:var(--on-dark);background:0 0}.account-menu button:hover:not(:disabled){background:var(--divider-dark)}.account-menu [role=alert]{color:var(--on-dark)}.page{align-content:start;gap:28px;width:min(100% - 64px,1280px);margin:0 auto;padding:54px 0 88px;display:grid}.page-heading{gap:8px;min-width:0;display:grid}.eyebrow{color:var(--accent-text);align-items:center;gap:8px;font-size:.8rem;font-weight:700;line-height:1.5;display:inline-flex}.page-heading h1{letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-size:clamp(52px,7vw,88px);font-weight:800;line-height:.95}.page-heading h1:focus{outline:none}.page h2{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:800;line-height:1.25}.panel{background:var(--surface);border:1px solid var(--border);border-radius:22px;align-content:start;gap:20px;min-width:0;padding:28px;display:grid}.panel form{gap:16px;display:grid}.panel label{min-width:0;color:var(--ink);gap:8px;font-size:14px;font-weight:600;display:grid}.panel input,.panel textarea,.panel select{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:46px;color:var(--ink);border-radius:14px;padding:10px 13px}.panel input::placeholder{color:var(--ink-disabled)}.panel [role=alert]{color:var(--danger);background:#fff1eb;border-radius:12px;padding:10px}.panel textarea{resize:vertical}.panel p{overflow-wrap:anywhere;margin:0;line-height:1.5}.panel ul{margin:0;padding:0;list-style:none}.auth-page{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;width:min(100% - 64px,1280px);padding-top:72px}.auth-page .page-heading{border-radius:28px;align-content:center;gap:16px;min-height:505px;padding:clamp(24px,5vw,64px)}.auth-page .page-heading h1{max-width:620px}.auth-form{border-radius:28px;align-content:center;gap:17px;padding:clamp(28px,5vw,64px)}.auth-form button{width:100%;margin-top:8px}.auth-form>p:last-child{border-top:1px solid var(--divider);color:var(--ink-soft);margin-top:10px;padding-top:22px;font-size:.92rem}.auth-form>p:last-child a{align-items:center;min-height:44px;display:inline-flex}.auth-form [role=alert]{color:var(--danger)}.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);align-items:start;gap:28px;display:grid}.collection{min-width:0}.section-heading,.panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading{margin-bottom:18px}.section-heading>div,.panel-heading>div{gap:5px;display:grid}.count-badge,.role-badge{background:var(--tile-yellow);min-height:32px;color:var(--ink);white-space:nowrap;border-radius:99px;justify-content:center;align-items:center;padding:5px 10px;font-size:.76rem;font-weight:800;line-height:1.4;display:inline-flex}.wishlist-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.wishlist-list li{background:var(--surface);border:1px solid var(--border);border-radius:22px;grid-template-columns:56px minmax(0,1fr) auto 24px;align-items:center;gap:14px;min-width:0;padding:16px;display:grid}.wishlist-list li:hover{border-color:var(--ink-muted)}.wishlist-list li:before{content:"✦";background:var(--tile-blue);width:56px;height:56px;color:var(--ink);border-radius:16px;place-items:center;font-size:1.3rem;display:grid}.wishlist-list li:after{content:"→";color:var(--ink);font-size:1.3rem}.wishlist-list a{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:1.25rem;font-weight:700;text-decoration:none}.wishlist-list a:hover{text-decoration:underline}.create-panel{border-color:var(--ink);background:var(--ink);color:var(--on-dark);gap:13px;padding:30px}.create-panel h2{font-size:1.65rem}.create-panel form{margin-top:12px}.create-panel label{color:var(--on-dark)}.create-panel button{background:var(--accent);border-color:var(--accent);color:var(--ink)}.create-panel [role=alert]{color:var(--danger);background:#fff1eb}.empty{padding:36px}.empty h2{margin-bottom:8px}.empty p{color:var(--ink-soft)}.detail-layout{grid-template-columns:minmax(0,1fr) minmax(280px,330px);align-items:start;gap:24px;display:grid}.detail-main{gap:20px;min-width:0;display:grid}.detail-main>.panel-heading,.detail-main>label,.detail-main>.items-list,.detail-main>.empty-state,.detail-main>.error-state,.detail-main>.back-link{min-width:0}.back-link{min-height:44px;color:var(--ink);align-items:center;font-weight:700;display:inline-flex}.members-list li{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.member-role-email{color:var(--on-dark-muted);overflow-wrap:anywhere}.member-role-email .member-email{display:inline}.remove-member{border:1px solid var(--outline-dark);width:44px;height:44px;color:var(--on-dark);background:0 0;border-radius:50%;padding:0;font-size:24px}.role-help{color:var(--on-dark-muted)}.owner-badge{background:var(--accent);color:var(--ink)}.outline-badge{border:1px solid var(--outline-dark);color:var(--on-dark)}.detail-sidebar{align-content:start;gap:20px;min-width:0;display:grid}.items-panel,.members-panel{gap:22px}.panel-heading .button-link{min-height:44px;padding:8px 14px;font-size:.875rem}.item-thumbnail{background:var(--tile-sage);border-radius:16px;flex:0 0 96px;place-items:center;width:96px;height:96px;display:grid;overflow:hidden}.item-thumbnail img{object-fit:contain;width:96px;height:96px;display:block}.thumbnail-placeholder{color:var(--ink-muted);font-size:2rem}.items-list{grid-template-columns:minmax(0,1fr);gap:16px;padding:0;list-style:none;display:grid}.items-list li{border:1px solid var(--border);overflow-wrap:anywhere;background:var(--surface);border-radius:22px;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;padding:16px;display:flex}.item-card-heading{align-content:start;justify-items:start;gap:10px;min-width:0;display:grid}.item-card-heading>a{min-height:44px;color:var(--ink);overflow-wrap:anywhere;align-items:center;font-size:1.15rem;font-weight:700;display:flex}.items-list li>p{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.9rem}.item-card-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;display:flex}.items-list li>button{border-color:var(--border-strong);color:var(--ink);background:0 0}.item-card-actions>a{align-items:center;min-height:44px;padding:6px 10px;display:inline-flex}.members-list li{border-top:1px solid var(--divider-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:14px 0;display:flex}.members-list li>span{overflow-wrap:anywhere;gap:6px;min-width:0;font-size:.875rem;display:grid}.member-identity{unicode-bidi:isolate}.member-avatar{background:var(--tile-blue);width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.member-name{overflow-wrap:anywhere;font-weight:700}.member-email{overflow-wrap:anywhere;unicode-bidi:isolate}.missing-name{color:var(--ink-disabled);font-weight:600}.members-list .role-badge{justify-self:start}.members-list button{min-height:44px;padding:6px 10px;font-size:.8rem}.members-panel,.create-panel{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}.members-panel label{color:var(--on-dark)}.members-panel input{background:var(--surface);color:var(--ink)}.members-panel form{border-top:1px solid var(--divider-dark);padding-top:22px}.members-panel form p{color:var(--on-dark-muted);font-size:.8rem}.settings-panel{gap:16px}.settings-panel button{justify-self:start}.danger-button{color:var(--danger);border-color:var(--danger);background:0 0;justify-self:start}.actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.button-link{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--ink);border-radius:99px;justify-content:center;align-items:center;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-flex}.page .button-link{color:var(--ink)}.editor-page{max-width:960px}.editor-page .panel>button{justify-self:start}.action-icon{vertical-align:middle;width:24px;height:24px;margin-right:8px}.editor-page .item-form{gap:16px;display:grid}.editor-page .item-form>label{gap:8px;display:grid}.image-preview-field{grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:20px;display:grid}.image-preview{background:var(--tile-yellow);border-radius:16px;place-items:center;width:140px;height:140px;display:grid;overflow:hidden}.image-preview .item-thumbnail,.image-preview .item-thumbnail img{flex-basis:140px;width:140px;height:140px}.purchase-panel{justify-items:start}.detail-main>.panel-heading{margin:0}.detail-main>label{gap:8px;font-size:14px;font-weight:600;display:grid}.detail-main input[type=search]{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:48px;color:var(--ink);border-radius:99px;padding:10px 18px}.detail-main>.items-list{margin:0}.members-list.members-admin li,.members-list.members-readonly li{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.members-list.members-admin li>span,.members-list.members-readonly li>span{gap:5px;min-width:0;display:grid}.members-list.members-admin .member-role-email{color:var(--on-dark-muted)}.members-list.members-readonly .role-badge{justify-self:end}.members-list.members-readonly .owner-badge{background:var(--accent);color:var(--ink)}.members-list.members-readonly .outline-badge{border:1px solid var(--outline-dark);color:var(--on-dark);background:0 0}.members-list .member-avatar{place-items:center;display:grid}.members-list .remove-member{border:1px solid var(--outline-dark);width:44px;height:44px;color:var(--on-dark);background:0 0;border-radius:50%;place-items:center;padding:0;font-size:23px;display:grid}.members-list .remove-member:hover{background:var(--divider-dark)}.leave-action{justify-self:start}.detail-main .back-link:hover{text-decoration:underline}.members-panel .role-help{color:var(--on-dark-muted);line-height:1.5}.candidate-combobox{gap:8px;min-width:0;display:grid;position:relative}.candidate-combobox>label{font-size:14px;font-weight:600}.candidate-input-wrap{align-items:center;display:flex;position:relative}.candidate-input-wrap input{padding-right:54px}.candidate-toggle{width:44px;height:44px;min-height:44px;color:var(--ink);background:0 0;border:0;padding:0;font-size:22px;position:absolute;top:2px;right:2px}.candidate-options{z-index:4;border:1px solid var(--border-strong);background:var(--surface);max-height:min(320px,50vh);color:var(--ink);box-shadow:none;border-radius:14px;top:100%;left:0;right:0;overflow:auto;padding:4px!important;position:absolute!important}.candidate-options-above{top:auto;bottom:100%}.candidate-options li{cursor:pointer;border-radius:10px;align-items:center;gap:10px;min-height:56px;padding:6px;display:flex}.candidate-options li>span:last-child{gap:2px;min-width:0;display:grid}.candidate-options small{color:var(--ink-muted);overflow-wrap:anywhere}.candidate-options .candidate-active,.candidate-options li:hover{background:var(--bg)}.candidate-avatar{width:34px;height:34px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.route-examples{margin:0}@media (width<=600px){.image-preview-field{grid-template-columns:1fr;justify-items:start;gap:8px}}.state{border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);border-radius:22px;margin:0;padding:16px 20px;line-height:1.5}.state.error{color:var(--danger);background:#fff1eb;border-color:#e8b7a8}.dialog-backdrop{z-index:5;background:#1c1311b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{width:min(100%,520px);max-height:calc(100vh - 32px);overflow:visible}.dialog .danger-button{justify-self:stretch}.dialog button:last-child{border-color:var(--border-strong);color:var(--ink);background:0 0}.site-footer{background:var(--ink);color:var(--on-dark-muted);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:22px max(32px,50% - 640px);font-size:.82rem;display:flex}.site-footer span:first-child{color:var(--on-dark);font-weight:700}.skip{z-index:6;background:var(--surface);align-items:center;min-height:44px;padding:12px;display:inline-flex;position:absolute;top:-100px;left:12px}.skip:focus{top:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-user-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.admin-user-row{border-top:1px solid var(--divider);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:16px 0;display:flex}.admin-user-identity{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.admin-user-identity bdi{unicode-bidi:isolate}.admin-user-identity bdi:first-child{font-weight:700}.admin-user-identity small{color:var(--ink-muted)}.admin-delete-button{border-radius:50%;flex:none;place-items:center;width:44px;height:44px;min-height:44px;padding:9px;display:grid}.admin-delete-button svg{width:24px;height:24px}.items-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px}.items-list li.wish-card{border-radius:22px;grid-template-rows:auto 1fr auto;gap:12px;padding:12px;display:grid}.wish-card .item-card-heading{grid-template-rows:145px auto;gap:10px;width:100%;display:grid}.wish-card .item-thumbnail{background:var(--wish-tile,var(--tile-sage));border-radius:16px;flex:auto;width:100%;height:145px;min-height:145px}.wish-card .item-thumbnail img{width:100%;height:100%;padding:10px}.wish-card .item-card-heading>a{align-items:flex-start;min-height:44px;font-size:1.125rem;line-height:1.3}.wish-card .reservation-status{color:var(--ink-soft);font-weight:600}.wish-card.reservation-other{background:0 0;border-style:dashed}.wish-card.reservation-other .item-thumbnail img:not(.thumbnail-placeholder){opacity:.45;filter:grayscale(.6)}.wish-card.reservation-other .item-card-heading>a{color:var(--ink-disabled)}.wish-card.reservation-mine{box-shadow:inset 0 0 0 2px var(--accent)}.wish-card .item-card-actions{width:100%}.wish-card .item-card-actions button{min-height:44px}.purchase-panel{border:0;border-top:2px solid var(--accent);background:0 0;border-radius:0;padding:20px 0}@media (width<=860px){.detail-layout{grid-template-columns:minmax(0,1fr)}.detail-sidebar{order:2}}@media (width<=760px){.auth-page{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:32px}.auth-page .page-heading{border-radius:28px;min-height:260px;padding:28px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.create-panel{order:initial}}@media (width>=601px){.items-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}}@media (width<=600px){.topbar-inner{flex-direction:column;align-items:flex-start;gap:12px;width:calc(100% - 32px);padding:14px 0}.topbar nav{flex-wrap:wrap;justify-content:flex-start;width:100%}.topbar nav a{padding:8px 12px}.account-menu{display:contents}.account-menu button{order:1}.account-menu span{order:2;width:100%}.page{gap:24px;width:calc(100% - 32px);padding:32px 0 56px}.page-heading h1{font-size:clamp(44px,12vw,60px)}.panel{padding:22px}.wishlist-list li{grid-template-columns:56px minmax(0,1fr) auto;gap:10px;padding:14px}.wishlist-list li:after{display:none}.site-footer{padding:20px 16px}}@media (width<=380px){.panel-heading .button-link{width:100%}.wishlist-list li{grid-template-columns:44px minmax(0,1fr)}.wishlist-list .role-badge{grid-column:2;justify-self:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.auth-page.login-page{padding-top:72px;display:block}.login-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px;display:grid}.login-hero{min-width:0}.login-hero p{max-width:620px;color:var(--ink-soft);margin:22px 0 0;font-size:clamp(16px,2vw,20px);line-height:1.5}.login-form{min-height:420px}.login-form h2{font-size:32px}.login-form hr{border:0;border-top:1px solid var(--divider);width:100%}.login-form>p:last-child{border:0;margin:0;padding:0}.outline-nav{border:1px solid var(--outline-dark);min-height:44px;color:var(--on-dark);font:inherit;background:0 0;border-radius:99px;justify-content:center;align-items:center;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-flex}.topbar nav a.outline-nav:hover{background:var(--divider-dark);color:var(--on-dark)}.profile-panel{max-width:680px}.profile-panel>button{justify-self:start}@media (width<=760px){.auth-page.login-page{padding-top:32px}.login-layout{grid-template-columns:minmax(0,1fr);gap:20px}.login-hero p{margin:0}.login-form{min-height:0}.auth-page.login-page .page-heading h1{font-size:clamp(44px,12vw,60px)}}
