:root{--paper:#f5efe3;--ink:#433a31;--clay:#a65036;--sage:#777d59;--line:#d9cebd}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}button{border:0;background:var(--clay);color:#fff8ed;padding:12px 22px;border-radius:6px}button:hover{filter:brightness(.93)}button:focus-visible,a:focus-visible{outline:3px solid #b68c41;outline-offset:4px}header{max-width:1320px;margin:auto;padding:28px 40px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font:30px Georgia}.brand small{display:block;font:9px Arial;letter-spacing:2.5px;margin-top:7px}.private{margin-left:auto;font-size:12px;color:#77715e}main{max-width:1240px;margin:auto;padding:0 40px}.intro{display:flex;align-items:center;justify-content:space-between;padding:50px 0 42px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--clay)}h1{font:48px/1.2 Georgia;margin:12px 0}h2{font:25px Georgia}.intro p:last-child{color:#817360}.seal{border:1px solid #b8ac8b;border-radius:50%;width:145px;height:145px;text-align:center;padding:20px;font:italic 14px Georgia;transform:rotate(9deg);color:var(--sage)}.seal span{font-size:40px}.tabs{display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--line)}.tabs button{background:none;color:#817360;border-radius:0;padding:15px 0}.tabs button.active{color:var(--clay);border-bottom:3px solid var(--clay)}.tabs span{margin-left:auto;font-size:12px}.tools{display:flex;gap:12px;padding:24px 0}.search{display:flex;align-items:center;gap:10px;flex:1;background:#fffaf1;border:1px solid var(--line);border-radius:6px;padding:0 16px;font-size:25px}.search input{border:0;background:none;min-width:0;width:100%;outline:none}select,input,textarea{color:var(--ink);border:1px solid var(--line);border-radius:5px;background:#fffaf1;padding:12px}select{max-width:100%}.sectionline{display:flex;align-items:center;justify-content:space-between}.sectionline span{font-size:12px;color:#82745f}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.card{display:block;text-align:left;background:#fcf8ef;padding:0;color:var(--ink);border:1px solid #e3d9c9;border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #59432a06}.card img{display:block;width:100%;aspect-ratio:1.12;object-fit:cover}.card .body{padding:18px}.card h3{font:23px Georgia;margin:7px 0}.maker{font-size:10px;letter-spacing:1.8px;color:#89775f}.meta{display:flex;justify-content:space-between;color:#82745f;font-size:12px;margin:14px 0}.badge{font-size:10px;border-radius:20px;padding:5px 10px;background:#e4e8d8;color:#556039;display:inline-block}.badge.low{background:#f0e2bf;color:#806128}.badge.out{background:#ead8cf;color:#9a543b}.badge.wish{background:#e4dfed;color:#746282}footer{text-align:center;margin:48px 0 30px;font-size:11px;color:#8b7d67}dialog{border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);padding:30px;width:760px;max-width:94vw;max-height:90vh;overflow:auto}dialog::backdrop{background:#34271980;backdrop-filter:blur(3px)}.close{float:right;background:none;color:var(--ink);padding:3px 10px;font-size:25px}.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:20px}.heroimg{width:100%;border-radius:8px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label.field{display:flex;flex-direction:column;font-size:12px;gap:5px;margin:12px 0}textarea{min-height:100px;width:100%}.quiet{background:transparent;color:var(--clay);border:1px solid var(--line)}.notice{background:#eae3d5;padding:12px;border-radius:6px;font-size:12px}.photos{display:flex;gap:8px;flex-wrap:wrap}.photos img{width:90px;height:90px;object-fit:cover;border-radius:6px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 20px;border-radius:8px;display:none}.empty{grid-column:1/-1;text-align:center;padding:50px}.mode{display:flex;gap:8px;flex-wrap:wrap}.mode button{padding:9px 15px}.formgrid input{width:100%}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.tools{flex-wrap:wrap}.search{flex-basis:100%}}@media(max-width:650px){header{padding:20px;gap:12px}.brand{font-size:23px}.brand small{font-size:8px}.private{display:none}header button{margin-left:auto;padding:10px 12px;font-size:12px}main{padding:0 20px}.intro{padding:30px 0}.seal{display:none}h1{font-size:36px}.intro p:last-child{font-size:13px}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.card .body{padding:12px}.card h3{font-size:20px}.tools{gap:8px}.tools select{flex:1;min-width:0;padding:10px;font-size:11px}.sectionline h2{font-size:22px}.detailgrid,.formgrid{grid-template-columns:1fr}dialog{padding:20px}.tabs{gap:20px}.meta{font-size:10px}}@media(prefers-reduced-motion:no-preference){.card{transition:transform .2s}.card:hover{transform:translateY(-4px)}}

.tabs{padding-top:16px}

.tools{flex-wrap:wrap}.tools .search{min-width:260px}@media(max-width:650px){.tools .search{flex-basis:100%;min-width:0}.tools select{flex:1 1 40%}}

.filter-menu{position:relative;flex:0 0 auto}.filter-menu summary{list-style:none;border:1px solid var(--line);background:#fffaf1;border-radius:6px;padding:12px 20px;cursor:pointer}.filter-menu summary::-webkit-details-marker{display:none}.filter-menu summary::after{content:' ▾'}.filter-menu[open] summary{border-color:var(--clay)}.filter-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:5;width:300px;max-width:calc(100vw - 40px);padding:20px;background:#fcf8ef;border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 35px #433a3125;display:grid;gap:12px}.filter-panel h3{font:22px Georgia;margin:0 0 4px}.filter-panel select{width:100%}.tools .search{min-width:0}@media(max-width:650px){.tools .search{flex:1 1 0}.filter-menu summary{padding:12px}.filter-panel{width:280px}}
/* Keep the menu within the content area, even when its trigger wraps. */
.tools{position:relative}.filter-menu{position:static}.filter-panel{right:0;left:auto;top:calc(100% - 16px);max-height:min(480px,65vh);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:1000px){.filter-panel{left:0;right:auto}}

.color-picker{border:1px solid var(--line);border-radius:8px;margin:14px 0;padding:12px;min-width:0;grid-column:1/-1}.color-picker legend{font-size:13px;padding:0 5px}.color-picker p{font-size:12px;margin:0 0 10px;color:#82745f}.color-choices{display:flex;flex-wrap:wrap;gap:8px}.color-choices label{position:relative;cursor:pointer}.color-choices input{position:absolute;opacity:0;width:1px;height:1px;padding:0}.color-choices span{display:block;border:1px solid var(--line);border-radius:18px;background:#fffaf1;padding:5px 12px;font-size:12px}.color-choices input:checked+span{background:#e4e8d8;border-color:var(--sage);color:#43502d}.color-choices input:checked+span::before{content:'✓ ';}.color-choices input:focus-visible+span{outline:3px solid #b68c41;outline-offset:2px}

.glaze-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.danger{color:#923e2c;border-color:#b67761}button.danger:not(.quiet){background:#923e2c;color:#fffaf1}button:disabled{opacity:.6;cursor:wait}.tabs{flex-wrap:wrap;gap:20px}

[hidden],label.field[hidden]{display:none!important}.description-option{display:flex;align-items:center;gap:10px;margin:18px 0;font-size:14px}.description-option input{accent-color:var(--clay);width:18px;height:18px}

.card{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;touch-action:pan-y}.card img{-webkit-user-drag:none}.card-menu{position:fixed;z-index:30;width:230px;max-width:calc(100vw - 16px);padding:8px;background:#fcf8ef;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 32px #433a3133}.card-menu p{font:17px Georgia;margin:6px 10px 10px;overflow-wrap:anywhere}.card-menu button{display:block;width:100%;text-align:left;background:transparent;color:var(--ink);padding:10px 12px}.card-menu button:hover,.card-menu button:focus-visible{background:#eae3d5}.card-menu button.danger{color:#923e2c;background:transparent}

.landing{min-height:100svh;background:#e2caa5;display:flex;flex-direction:column;overflow:hidden}.landing-sky{flex:1;min-height:60svh;display:grid;place-items:center;padding-top:8svh}.landing-logo{width:min(70vw,300px);height:auto}.landing-waves{display:block;width:100%;height:12svh;object-fit:fill;margin-bottom:-1px}.landing-bottom{min-height:20svh;background:#626663;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 20px 32px;gap:8px}.landing-signin{position:relative;width:205px;height:85px;padding:0;background:url('assets/landing-button.svg') center/100% 100% no-repeat;color:#c16425;border-radius:0;font:bold italic 28px Georgia,serif}.landing-signin:hover{filter:brightness(.96)}#sessionStatus{margin:0;font-size:12px;color:#82745f;min-height:20px}@media(min-width:700px){.landing-sky{min-height:58svh;padding-top:0}.landing-logo{width:360px}.landing-waves{height:16svh}.landing-bottom{min-height:26svh}.landing-signin{width:230px;height:95px}}

.landing{width:100%;max-width:none}.landing-waves{position:relative;flex:none;overflow:hidden;height:15svh;min-height:100px;max-height:200px;object-fit:initial}.landing-waves svg{display:block;width:100%;height:100%;overflow:visible}.wave-clay,.wave-sage,.wave-cream{transform-box:view-box;transform-origin:center;will-change:transform}.wave-clay{animation:clay-drift 14s ease-in-out infinite alternate}.wave-sage{animation:sage-drift 18s ease-in-out infinite alternate}.wave-cream{animation:cream-drift 16s ease-in-out infinite alternate}@keyframes clay-drift{from{transform:translateX(-6%) translateY(4%)}to{transform:translateX(6%) translateY(-4%)}}@keyframes sage-drift{from{transform:translateX(6%) translateY(-4%)}to{transform:translateX(-6%) translateY(4%)}}@keyframes cream-drift{from{transform:translateX(-5%)}to{transform:translateX(5%) translateY(3%)}}@media(min-width:700px){.landing-waves{height:20svh;max-height:220px}}@media(prefers-reduced-motion:reduce){.wave-clay,.wave-sage,.wave-cream{animation:none;will-change:auto}}

.wave-clay{animation-delay:-7s}.wave-sage{animation-delay:-9s}.wave-cream{animation-delay:-8s}

.landing-waves{overflow:visible;height:clamp(145px,22svh,260px);min-height:0;max-height:none;z-index:1;pointer-events:none}.landing-bottom{position:relative;z-index:2}.landing-sky{min-height:52svh}@media(min-width:700px){.landing-waves{height:clamp(190px,26svh,300px)}.landing-sky{min-height:48svh}}

@font-face{font-family:'Gasoek One';src:url('assets/gasoek-one.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}.landing-signin{font-family:'Gasoek One',sans-serif;font-weight:400;font-style:normal;font-size:27px;font-synthesis:none}#authDialog h2{font-family:'Gasoek One',sans-serif;font-weight:400;font-style:normal;font-size:26px;line-height:1.25;font-synthesis:none}#signIn{font-family:'Gasoek One',sans-serif;font-weight:400;font-size:16px}

.landing-signin{color:#fff8ed}#sessionStatus{color:#fff8ed}

.landing-signin{background:none;border:0;color:#c16425}

html,body{background:#e2caa5}html.signed-in,html.signed-in body{background:var(--paper)}.landing-sky{padding-top:calc(8svh + env(safe-area-inset-top,0px))}.landing-bottom{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}header{padding-top:calc(28px + env(safe-area-inset-top,0px));padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}@media(min-width:700px){.landing-sky{padding-top:env(safe-area-inset-top,0px)}}@media(max-width:650px){header{padding-top:calc(20px + env(safe-area-inset-top,0px));padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}}

.landing-waves{height:clamp(200px,29svh,320px)}@media(min-width:700px){.landing-waves{height:clamp(260px,33svh,380px)}}

.landing-waves{height:clamp(285px,36svh,420px)}.landing-sky{min-height:42svh}@media(min-width:700px){.landing-waves{height:clamp(320px,36svh,460px)}.landing-sky{min-height:38svh}}
