:root{--ink:#0d1b2a;--accent:#0d1b2a;--gold:#c8a165;--danger:#b3402a;--paper:#f2e9dd;--card:#fbf6ee;--ink-03:color-mix(in srgb, var(--ink) 3%, transparent);--ink-06:color-mix(in srgb, var(--ink) 6%, transparent);--ink-12:color-mix(in srgb, var(--ink) 12%, transparent);--ink-55:color-mix(in srgb, var(--ink) 55%, transparent);--accent-08:color-mix(in srgb, var(--accent) 8%, transparent);--accent-15:color-mix(in srgb, var(--accent) 15%, transparent);--accent-40:color-mix(in srgb, var(--accent) 40%, transparent);--radius:14px;--mono:"SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", monospace;--hard:0 24px 48px -24px color-mix(in srgb, var(--ink) 28%, transparent);--hard-sm:0 10px 24px -14px color-mix(in srgb, var(--ink) 22%, transparent);--font-body:"Montserrat", "Inter", "Segoe UI", system-ui, sans-serif;--font-head:"Cormorant Garamond", Georgia, "Times New Roman", serif;--head-transform:none;--card-rot-a:0deg;--card-rot-b:0deg}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.01em;font-weight:500;line-height:1.18}.sans{font-family:inherit}a{color:var(--ink)}img{max-width:100%;display:block}.container{max-width:1120px;margin:0 auto;padding:0 1.25rem}.site-header{background:var(--paper);border-bottom:1px solid var(--ink-12);z-index:40;position:sticky;top:0}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1120px;margin:0 auto;padding:.75rem 1.25rem;display:flex}.logo{color:var(--ink);font-family:var(--font-head);letter-spacing:.18em;font-size:1.45rem;font-weight:600;line-height:1;text-decoration:none;display:block}.logo .o-star{letter-spacing:0;display:inline-block;position:relative}.logo .o-star svg{width:.42em;height:.42em;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)}.main-nav{flex-wrap:wrap;align-items:center;gap:1.25rem;font-size:.93rem;font-weight:500;display:flex}.main-nav a{color:var(--ink-55);text-decoration:none}.main-nav a:hover{color:var(--ink)}.cart-link{background:var(--ink);border-radius:6px;padding:.4rem 1.1rem;font-weight:600;color:var(--paper)!important}.cart-link:hover{opacity:.85}@media (width<=760px){.header-inner{gap:.45rem;padding:.6rem 1rem}.header-cart{order:2;margin-left:auto}.main-nav{scrollbar-width:none;flex-wrap:nowrap;order:3;gap:1.1rem;width:100%;padding-bottom:.15rem;padding-right:1.5rem;font-size:.92rem;overflow-x:auto;mask-image:linear-gradient(90deg,#000 88%,#0000)}.main-nav::-webkit-scrollbar{display:none}.main-nav a{white-space:nowrap}}.intro-bar{padding:3.5rem 0 2.25rem;position:relative}.wide-only{display:inline}@media (width<=900px){.intro-bar{padding:2.25rem 0 1.5rem}.wide-only{display:none}}.intro-bar .eyebrow{letter-spacing:.34em;text-transform:uppercase;color:var(--ink);font-size:.78rem;font-weight:700}.intro-bar h1{text-transform:var(--head-transform);letter-spacing:-.02em;overflow-wrap:anywhere;max-width:900px;margin:.7rem 0 .9rem;font-size:clamp(2.3rem,7.5vw,5.2rem);line-height:1.05}.intro-bar p{color:var(--ink-55);max-width:620px;font-size:1.05rem}.intro-links{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.btn{border:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-size:.8rem;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .12s,background .15s,color .15s;display:inline-flex}.btn-primary,.btn-outline,.btn-success{box-shadow:var(--hard-sm)}.btn-primary:hover,.btn-outline:hover,.btn-success:hover{box-shadow:var(--hard);transform:translateY(-1px)}.btn:active{box-shadow:none;transform:translateY(0)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-outline{color:var(--ink);background:0 0}.btn-success{background:var(--ink);color:var(--paper)}.btn-ghost{border:1.5px solid var(--ink-12);color:var(--ink-55);background:0 0;font-weight:600}.btn-ghost:hover{color:var(--ink);border-color:var(--ink)}.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);color:var(--paper)}.btn-sm{padding:.45rem .95rem;font-size:.7rem}.btn:disabled{opacity:.4;cursor:not-allowed}.section{padding-block:3rem}@media (width<=760px){.section{padding-block:2.25rem}}.section-head{border-top:1px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.5rem;padding-top:1.1rem;display:flex}.section-head h2{font-size:1.9rem}.section-head p{color:var(--ink-55);max-width:520px;font-size:.93rem}.box-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;display:grid}.box-card{border:none;border-top:1px solid var(--ink);background:0 0;border-radius:0;flex-direction:column;padding-top:.9rem;display:flex}@media (width<=760px){.box-grid{grid-template-columns:repeat(2,1fr);gap:.85rem}.box-grid .box-card:nth-child(odd),.box-grid .box-card:nth-child(2n){transform:none}.box-card{padding-top:.6rem}.card-body{gap:.3rem;padding:.6rem 0 0}.box-card h3{font-size:.95rem}.box-card .tagline{display:none}.card-media .badge{padding:.2rem .5rem;font-size:.58rem;top:.5rem;left:.5rem}.stock-note{font-size:.72rem}.box-footer{flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.box-footer .price{font-size:.95rem}.box-footer .btn-sm{padding:.28rem .7rem;font-size:.76rem}}.card-media{aspect-ratio:4/3;background:var(--ink-06);border-radius:8px;position:relative;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.box-card:hover .card-media img{transform:scale(1.04)}.card-media .badge{backdrop-filter:blur(4px);color:var(--accent);text-transform:uppercase;letter-spacing:.12em;background:#ffffffe0;border-radius:999px;padding:.28rem .7rem;font-size:.66rem;font-weight:700;position:absolute;top:.75rem;left:.75rem}.card-body{flex-direction:column;flex:1;gap:.45rem;padding:.95rem 0 0;display:flex}.box-card h3{font-size:1.15rem}.box-card h3 a{color:var(--ink);text-decoration:none}.box-card h3 a:hover{color:var(--accent)}.box-card .tagline{color:var(--ink-55);flex:1;font-size:.92rem}.box-footer{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.price{letter-spacing:-.02em;white-space:nowrap;font-size:1.1rem;font-weight:700}.soldout{color:var(--danger);font-size:.85rem;font-weight:700}.stock-note{color:var(--ink-55);font-size:.8rem}.box-type{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);align-self:flex-start;font-size:.7rem;font-weight:700;display:inline-block}.mosaic{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;display:grid}.tile{border-radius:var(--radius);aspect-ratio:1;background:var(--ink-06);box-shadow:var(--hard-sm);border:none;text-decoration:none;transition:transform .2s,box-shadow .2s;display:block;position:relative;overflow:hidden}.tile:hover{box-shadow:var(--hard);transform:translateY(-3px)}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.tile:hover img{transform:scale(1.05)}.tile .tile-label{background:linear-gradient(transparent, color-mix(in srgb, var(--ink) 80%, transparent));color:var(--paper);padding:1.8rem .9rem .8rem;font-size:.98rem;font-weight:600;position:absolute;inset:auto 0 0}@media (width<=760px){.mosaic{grid-template-columns:repeat(3,1fr);gap:.6rem}.tile{box-shadow:var(--hard-sm)}.tile .tile-label{padding:1.2rem .5rem .45rem;font-size:.72rem}.tile .tile-label small{display:none}}.banner-strip{background:var(--ink);color:var(--paper);border-radius:var(--radius);box-shadow:var(--hard);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:2.25rem 2.5rem;display:flex}.banner-strip h2{margin-bottom:.35rem;font-size:1.55rem}.banner-strip p{color:color-mix(in srgb, var(--paper) 70%, transparent);max-width:560px;font-size:.95rem}.banner-strip a{color:var(--paper)}.banner-strip .btn{background:var(--paper);color:var(--ink);border-color:var(--paper)}.banner-strip .btn:hover{background:var(--paper);color:var(--ink)}.steps{counter-reset:step;border-top:1px solid var(--ink);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;display:grid}.step{padding:1.5rem 1.4rem 1.5rem 0}.step+.step{border-left:1px solid var(--ink-12);padding-left:1.4rem}.step:before{counter-increment:step;content:counter(step, upper-roman) ".";font-family:var(--font-head);color:var(--gold);margin-bottom:.4rem;font-size:1.05rem;font-style:italic;display:block}.step h3{margin-bottom:.3rem;font-size:1.02rem}.step p{color:var(--ink-55);font-size:.9rem}@media (width<=760px){.steps{grid-template-columns:1fr}.step+.step{border-left:none;border-top:1px solid var(--ink-12);padding-left:0}}.product-hero{grid-template-columns:1.05fr 1fr;align-items:start;gap:2.5rem;padding:2.5rem 0 2rem;display:grid}@media (width<=800px){.product-hero{grid-template-columns:1fr}}.product-photo{border-radius:var(--radius);aspect-ratio:4/3;background:var(--ink-06);position:sticky;top:76px;overflow:hidden}.product-photo img{object-fit:cover;width:100%;height:100%}@media (width<=800px){.product-photo{position:static}}.product-info h1{margin:.35rem 0;font-size:2.1rem}.product-info .story{margin:1.25rem 0}.contents-list{gap:.45rem;margin:.9rem 0 1.25rem;list-style:none;display:grid}.contents-list li{background:var(--paper);border:1px solid var(--ink-12);border-radius:8px;justify-content:space-between;gap:.75rem;padding:.6rem .9rem;font-size:.92rem;display:flex}.contents-list .muted{color:var(--ink-55)}.contents-list a{color:var(--ink)}.buy-row{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.builder-layout{grid-template-columns:1.7fr 1fr;align-items:start;gap:1.5rem;display:grid}.component-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.9rem;display:grid}.component-card{background:var(--paper);border:1.5px solid var(--ink-12);cursor:pointer;text-align:left;font-family:inherit;font-size:inherit;color:inherit;border-radius:10px;flex-direction:column;gap:.3rem;padding:.9rem 1rem;transition:border-color .12s,background .12s;display:flex}.component-card:hover{border-color:var(--ink)}.component-card.selected{border-color:var(--accent);background:var(--accent-08)}.component-card.unavailable{opacity:.45;cursor:not-allowed}.component-card .name{justify-content:space-between;gap:.5rem;font-weight:600;display:flex}.component-card .desc{color:var(--ink-55);font-size:.82rem}.component-card .meta{color:var(--ink-55);font-size:.78rem}.builder-summary{background:var(--paper);border:1px solid var(--ink-12);border-radius:var(--radius);padding:1.25rem 1.4rem;position:sticky;top:76px}.builder-summary h3{margin-bottom:.6rem}.summary-row{justify-content:space-between;padding:.3rem 0;font-size:.92rem;display:flex}.summary-row.total{border-top:1px solid var(--ink-12);margin-top:.5rem;padding-top:.6rem;font-size:1.05rem;font-weight:800}.hint{color:var(--ink-55);margin:.5rem 0;font-size:.85rem}.hint.warn{color:var(--danger)}.hint.ok{color:var(--ink);font-weight:600}.builder-mobilebar{display:none}@media (width<=860px){.builder-layout{grid-template-columns:1fr}.builder-summary{position:static!important}.builder-mobilebar{z-index:30;background:var(--card,#fff);border-top:1px solid var(--ink-12);padding:.6rem 1rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom));box-shadow:0 -6px 20px var(--ink-12);justify-content:space-between;align-items:center;gap:.75rem;font-size:.92rem;display:flex;position:fixed;bottom:0;left:0;right:0}}.chip-row{flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem;display:flex}.chip{border:1px solid var(--ink-12);background:var(--paper);color:var(--ink-55);cursor:pointer;border-radius:999px;padding:.32rem .9rem;font-family:inherit;font-size:.86rem;text-decoration:none}.chip:hover{border-color:var(--ink);color:var(--ink)}.chip.active{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}.chip-danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.chip-danger:hover{background:var(--danger);border-color:var(--danger);color:var(--paper)}.size-heading{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-55);margin:1.1rem 0 .45rem;font-size:.78rem}.size-row{flex-wrap:wrap;gap:.5rem;display:flex}.size-chip{border:1.5px solid var(--ink-12);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:10px;flex-direction:column;flex:1 1 0;align-items:center;gap:.1rem;min-width:0;max-width:11rem;padding:.45rem .5rem;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.size-chip:hover{border-color:var(--ink)}.size-chip.active{border-color:var(--accent);background:var(--accent-08)}.size-chip.unavailable{opacity:.45}.size-letter{font-size:1rem;font-weight:700}.size-price{color:var(--ink-55);font-size:.78rem}.size-note{color:var(--ink-55);margin-top:.6rem;font-size:.9rem}.dedication-item{background:var(--card);border:1px solid var(--ink-12);border-radius:10px;margin-bottom:.5rem;padding:.75rem}.char-count{color:var(--ink-55);text-align:right;margin-top:.3rem;font-size:.8rem}.withdrawal-form{background:var(--card);border:1px solid var(--ink-12);border-radius:var(--radius);white-space:pre-wrap;padding:1.25rem;font-size:.85rem;overflow-x:auto}.admin-badge{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;background:var(--gold);color:var(--ink);vertical-align:middle;border-radius:4px;margin-left:.5rem;padding:.1rem .4rem;font-size:.62rem;font-weight:700}.admin-header .main-nav a.active{color:var(--ink);border-bottom:2px solid var(--gold);padding-bottom:2px;font-weight:700}.admin-header .header-inner{flex-wrap:nowrap}.admin-header .logo{white-space:nowrap;flex:none}.admin-header .main-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;flex:auto;gap:.95rem;min-width:0;padding-right:.5rem;font-size:.88rem;overflow-x:auto}.admin-header .main-nav::-webkit-scrollbar{display:none}@media (width<=1180px){.admin-header .main-nav{padding-right:1.25rem;mask-image:linear-gradient(90deg,#000 90%,#0000)}}.admin-header .main-nav a{white-space:nowrap}.admin-header .header-cart{white-space:nowrap;flex:none;align-items:center;display:flex}@media (width<=760px){.admin-header .header-inner{flex-wrap:wrap}.admin-header .main-nav{flex-basis:100%;order:3;width:100%}}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem;margin:1rem 0 1.75rem;display:grid}.kpi-card{background:var(--card);border:1px solid var(--ink-12);border-radius:var(--radius);padding:.9rem 1.1rem}.kpi-card .kpi-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-55);font-size:.72rem}.kpi-card .kpi-value{font-family:var(--font-head);font-size:1.7rem;line-height:1.2}.kpi-card .kpi-sub{color:var(--ink-55);font-size:.8rem}.admin-login-box{background:var(--card);border:1px solid var(--ink-12);border-radius:var(--radius);max-width:380px;margin:4rem auto;padding:1.75rem}.admin-subtabs{border-bottom:1px solid var(--ink-12);flex-wrap:wrap;gap:1.4rem;margin:.25rem 0 1.5rem;display:flex}.admin-subtabs button{font:inherit;color:var(--ink-55);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.55rem .15rem;font-size:.92rem;font-weight:600}.admin-subtabs button:hover{color:var(--ink)}.admin-subtabs button.active{color:var(--ink);border-bottom-color:var(--gold)}@media (width<=760px){.admin-subtabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:1.1rem;padding-right:1.5rem;overflow-x:auto;mask-image:linear-gradient(90deg,#000 88%,#0000)}.admin-subtabs::-webkit-scrollbar{display:none}.admin-subtabs button{white-space:nowrap}}.table-scroll{overflow-x:auto}.admin-form-row{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin:.75rem 0 1.5rem;display:flex}.photo-carousel{width:100%;height:100%;position:relative}.photo-carousel-track{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;height:100%;display:flex;overflow-x:auto}.photo-carousel-track::-webkit-scrollbar{display:none}.photo-carousel-track img{object-fit:cover;scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;height:100%}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.photo-carousel-track:focus-visible{outline:2px solid var(--paper);outline-offset:-4px}.photo-carousel-arrow{background:var(--paper);width:38px;height:38px;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 45%, transparent);color:var(--ink);cursor:pointer;border:none;border-radius:50%;place-items:center;font-size:1.5rem;line-height:1;transition:background .15s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.photo-carousel-arrow:hover{background:color-mix(in srgb, var(--paper) 88%, var(--ink))}.photo-carousel-arrow:disabled{opacity:.35;cursor:default}.photo-carousel-arrow.prev{left:.6rem}.photo-carousel-arrow.next{right:.6rem}.photo-carousel-dots{justify-content:center;gap:.45rem;display:flex;position:absolute;bottom:.7rem;left:0;right:0}.photo-carousel-dots button{border:1px solid color-mix(in srgb, var(--ink) 55%, transparent);background:color-mix(in srgb, var(--ink) 35%, transparent);cursor:pointer;border-radius:50%;width:10px;height:10px;padding:0;transition:background .15s,transform .15s}.photo-carousel-dots button.active{background:var(--paper);border-color:color-mix(in srgb, var(--ink) 55%, transparent);transform:scale(1.3)}@media (prefers-reduced-motion:reduce){.photo-carousel-arrow,.photo-carousel-dots button{transition:none}.photo-carousel-dots button.active{transform:none}.photo-carousel-track{scroll-behavior:auto}}.admin-editor{border:1px solid var(--ink-12);border-radius:var(--radius);background:var(--card);margin:0 0 1.5rem;padding:1.1rem 1.25rem}.admin-editor h3,.admin-editor h4{margin:.4rem 0 .6rem;font-size:1.05rem}.admin-editor .admin-form-row{margin:.5rem 0 .9rem}.badge{white-space:nowrap;border-radius:6px;padding:.18rem .55rem;font-size:.78rem;font-weight:700;display:inline-block}.badge-ok{color:#2e5f49;background:#3c7a5e24}.badge-warn{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.badge-muted{background:var(--ink-06);color:var(--ink-55)}.qty-pos{color:#2e5f49;font-weight:600}.qty-neg,.expiry-warn{color:var(--danger);font-weight:600}.cookie-bar{inset-inline:0;z-index:60;background:var(--ink);color:var(--paper);position:fixed;bottom:0;box-shadow:0 -6px 24px #0d1b2a40}.cookie-bar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;max-width:1080px;margin:0 auto;padding:1rem 1.25rem;display:flex}.cookie-bar p{max-width:60ch;margin:0;font-size:.88rem}.cookie-bar a{color:var(--gold)}.cookie-actions{flex-wrap:wrap;gap:.6rem;display:flex}.cookie-bar .btn-outline{color:var(--paper);border-color:#f2e9dd80}.error-page{text-align:center;padding:5rem 1rem 6rem}.error-page .error-code{font-family:var(--font-head);color:var(--gold);margin-bottom:.5rem;font-size:5rem;line-height:1}.error-page h1{margin-bottom:.75rem}ul:not([class]){padding-left:1.35em;list-style:none}ul:not([class])>li{position:relative}ul:not([class])>li:before{content:"✦";color:var(--gold);font-size:.82em;position:absolute;top:.12em;left:-1.35em}.feature-split{background:var(--card);border:1px solid var(--ink-12);border-radius:var(--radius);grid-template-columns:1.2fr 1fr;align-items:center;gap:2rem;display:grid;overflow:hidden}.feature-split .feature-photo img{object-fit:cover;width:100%;height:100%;min-height:320px;display:block}.feature-split .feature-body{padding:2rem 2.5rem 2rem .5rem}@media (width<=760px){.feature-split{grid-template-columns:1fr}.feature-split .feature-photo img{min-height:220px}.feature-split .feature-body{padding:0 1.25rem 1.5rem}}.cart-table{border-collapse:collapse;background:var(--paper);border:1px solid var(--ink-12);border-radius:var(--radius);width:100%;font-size:.95rem;overflow:hidden}.cart-table th,.cart-table td{text-align:left;border-bottom:1px solid var(--ink-12);vertical-align:top;padding:.8rem 1rem}.cart-table td:last-child{white-space:nowrap}.cart-table th{background:var(--ink-03);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-55);font-size:.78rem}.cart-table .item-detail{color:var(--ink-55);white-space:normal;margin-top:.2rem;font-size:.82rem}.qty-controls{align-items:center;gap:.5rem;display:inline-flex}.qty-controls button{border:1px solid var(--ink-12);background:var(--paper);cursor:pointer;border-radius:6px;width:28px;height:28px;font-size:1rem;line-height:1}.qty-controls button:hover{border-color:var(--accent);color:var(--accent)}.cart-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1.5rem;margin:1.25rem 0;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0;display:grid}@media (width<=640px){.form-grid{grid-template-columns:1fr}}.form-field{flex-direction:column;gap:.3rem;font-size:.88rem;font-weight:600;display:flex}.form-field.full{grid-column:1/-1}.form-field input,.form-field select,.form-field textarea,.text-input{border:1px solid var(--ink-12);background:var(--paper);color:var(--ink);border-radius:8px;min-height:44px;padding:.65rem .8rem;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.3}.form-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%230d1b2a' stroke-opacity='0.55' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;padding-right:2.3rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.text-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.alert{border-radius:10px;margin:1rem 0;padding:.85rem 1.1rem;font-size:.93rem}.alert-error{background:color-mix(in srgb, var(--danger) 8%, transparent);color:var(--danger);border:1px solid var(--danger);font-weight:500}.alert-success{background:var(--ink-03);color:var(--ink);border:1px solid var(--ink)}.alert-info{background:var(--accent-08);color:var(--ink);border:1px solid var(--accent-40)}.shipping-options{gap:.6rem;display:grid}.shipping-option{border:1.5px solid var(--ink-12);cursor:pointer;background:var(--paper);border-radius:10px;align-items:flex-start;gap:.75rem;padding:.8rem 1rem;display:flex}.shipping-option.selected{border-color:var(--accent);background:var(--accent-08)}.shipping-option input{accent-color:var(--accent);margin-top:.3rem}.shipping-option small{color:var(--ink-55)}.checkbox-row{cursor:pointer;align-items:flex-start;gap:.6rem;font-size:.95rem;display:flex}.checkbox-row input{width:18px;height:18px;accent-color:var(--accent);margin-top:.25rem}textarea.gift-textarea{resize:vertical;width:100%;min-height:90px}.status-badge{border-radius:6px;padding:.25rem .7rem;font-size:.82rem;font-weight:700;display:inline-block}.status-NEW,.status-PAYMENT_PENDING{background:var(--accent-15);color:var(--accent)}.status-PAID,.status-PICKING,.status-QUALITY_CHECK,.status-PACKED{background:var(--ink);color:var(--paper)}.status-SHIPPED,.status-DELIVERED{background:var(--ink-06);color:var(--ink);border:1px solid var(--ink)}.status-PAYMENT_FAILED,.status-COMPLAINT,.status-QUARANTINED{background:var(--accent);color:var(--paper)}.status-CANCELLED,.status-RETURN_REQUESTED,.status-RETURNED,.status-REFUNDED{background:var(--ink-06);color:var(--ink-55)}.order-panel{background:var(--paper);border:1px solid var(--ink-12);border-radius:var(--radius);margin:1.5rem 0;padding:1.75rem}.order-progress{flex-wrap:wrap;gap:.4rem;margin:1rem 0 .5rem;padding:0;font-size:.8rem;list-style:none;display:flex}.order-progress li{background:var(--paper);border:1px solid var(--ink-12);color:var(--ink-55);border-radius:999px;padding:.25rem .7rem}.order-progress li.done{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}.gateway-box{border:2px dashed var(--accent);border-radius:var(--radius);text-align:center;margin-top:1.25rem;padding:1.5rem}.gateway-box .actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1rem;display:flex}.qr-row{flex-wrap:wrap;gap:1.25rem;margin-top:1rem;display:flex}.qr-item{text-align:center;font-size:.85rem}.qr-item img{border:1px solid var(--ink-12);background:var(--paper);border-radius:8px;width:130px;height:130px;padding:6px}.content-page{max-width:720px;margin:0 auto;padding:2.75rem 1.25rem}.content-page h1{font-size:2.1rem}.content-page .lead{color:var(--ink-55);margin:.75rem 0 2rem;font-size:1.08rem}.content-page a{color:var(--accent)}.content-section{margin:2rem 0}.content-section h2{margin-bottom:.6rem;font-size:1.3rem}.content-section ul{padding-left:1.25rem}.page-hero-photo{border-radius:var(--radius);aspect-ratio:21/9;background:var(--ink-06);margin-bottom:1.75rem;overflow:hidden}.page-hero-photo img{object-fit:cover;width:100%;height:100%}.facts-list{gap:.6rem;margin:1rem 0;padding:0;list-style:none;display:grid}.facts-list li{background:var(--paper);border:1px solid var(--ink-12);border-left:4px solid var(--accent);border-radius:0 8px 8px 0;padding:.7rem 1rem;font-size:.93rem}.story-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.25rem 0;display:grid}.story-card{background:var(--paper);border:1px solid var(--ink-12);border-radius:var(--radius);padding:1.1rem 1.25rem}.story-card h3{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.4rem;font-size:.78rem}.story-card p{font-size:.95rem}.food-info{background:var(--ink-03);border:1px solid var(--ink-12);border-radius:var(--radius);margin:1.5rem 0;padding:1.25rem 1.5rem;font-size:.9rem}.food-info dt{margin-top:.6rem;font-weight:700}.food-info dd{color:var(--ink-55);margin:.15rem 0 0}.allergen-badge{background:var(--accent-15);color:var(--accent);border-radius:4px;margin-right:.3rem;padding:.1rem .5rem;font-size:.82rem;font-weight:700;display:inline-block}.admin-table{border-collapse:collapse;background:var(--paper);width:100%;font-size:.88rem}.admin-table th,.admin-table td{border:1px solid var(--ink-12);text-align:left;vertical-align:top;padding:.6rem .75rem}.admin-table th{background:var(--ink-03)}.admin-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin-table .admin-actions{flex-direction:column;align-items:stretch}.chip-count{opacity:.65;margin-left:.4rem;font-size:.78rem;font-weight:700}.gift-note{background:var(--accent-08);border:1px solid var(--accent-40);border-radius:6px;margin-top:.4rem;padding:.4rem .6rem;font-size:.82rem}.outline-text{color:var(--ink-55);font-style:italic}.hero-photo{aspect-ratio:21/9;background:var(--ink-06);border-radius:10px;overflow:hidden}.hero-photo img{object-fit:cover;width:100%;height:100%}@media (width<=760px){.hero-photo{aspect-ratio:4/3;border-radius:10px}}.claim{font-family:var(--font-head);color:var(--ink);margin-top:.4rem;font-size:1.45rem;font-style:italic}.site-footer{background:var(--ink);color:color-mix(in srgb, var(--paper) 60%, transparent);margin-top:3rem;padding:2.75rem 0;font-size:.88rem}.site-footer a{color:color-mix(in srgb, var(--paper) 92%, transparent)}.site-footer strong{color:var(--paper)}.footer-cols{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;display:grid}.legal-note{border-top:1px solid color-mix(in srgb, var(--paper) 18%, transparent);margin-top:1.75rem;padding-top:1.25rem;font-size:.8rem;line-height:1.55}.page-title{padding:2.5rem 0 .5rem}.page-title h1{font-size:2.1rem}.page-title p{color:var(--ink-55);max-width:640px;margin-top:.4rem}.page-title a{color:var(--accent)}.empty-note{text-align:center;color:var(--ink-55);padding:3rem 0}.media-picker{flex-direction:column;gap:.7rem;display:flex}.form-label{font-size:.88rem;font-weight:600}.form-label small{color:var(--ink-55);font-weight:400}.media-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.media-grid-lg{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.media-thumb{border:1px solid var(--ink-12);background:var(--paper);border-radius:10px;flex-direction:column;gap:.4rem;padding:.5rem;display:flex;position:relative}.media-thumb img{aspect-ratio:4/3;object-fit:cover;background:var(--ink-06);border-radius:6px;width:100%}.media-badge{background:var(--ink);color:var(--paper);letter-spacing:.04em;border-radius:999px;padding:.1rem .45rem;font-size:.68rem;font-weight:600;position:absolute;top:.85rem;left:.85rem}.media-thumb-actions{flex-wrap:wrap;gap:.3rem;display:flex}.media-meta{flex-direction:column;gap:.1rem;min-width:0;font-size:.78rem;display:flex}.media-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.media-meta small{color:var(--ink-55)}.media-drop{border:1.5px dashed var(--ink-12);background:var(--paper);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.media-drop.is-over{border-color:var(--accent);background:var(--ink-06)}.media-drop label{cursor:pointer;font-weight:600}.media-link-row{align-items:center;gap:.5rem;display:flex}.media-link-row .text-input{flex:auto;min-width:0}.work-status{border:1px solid var(--ink-12);border-left:5px solid var(--accent);background:var(--paper);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;padding:.9rem 1.1rem;display:flex}.work-status strong{flex:320px;font-size:1.02rem}.work-status small{color:var(--ink-55);font-size:.8rem}.work-step{margin-top:2rem}.work-step>h2{font-family:var(--font-body);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:.6rem;margin:0 0 .8rem;font-size:1.05rem;font-weight:700;display:flex}.work-num{background:var(--ink);width:1.75rem;height:1.75rem;color:var(--paper);font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:inline-flex}.work-card{border:1px solid var(--ink-12);background:var(--paper);border-radius:10px;margin-bottom:.85rem;padding:.9rem 1.1rem}.work-card-alert{border-color:var(--accent);border-left-width:5px}.work-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.work-card-head code{font-family:var(--mono);color:var(--ink-55);font-size:.78rem}.work-list{margin:0;padding:0;font-size:1rem;list-style:none}.work-list li{border-bottom:1px dashed var(--ink-12);padding:.4rem 0}.work-list li:last-child{border-bottom:0}.work-qty{min-width:2.6rem;font-family:var(--mono);font-weight:700;display:inline-block}.work-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.85rem;display:grid}.work-address{font-family:var(--mono);white-space:pre-wrap;margin:0 0 .5rem;font-size:1rem;line-height:1.5}.dedication-text{border-left:4px solid var(--accent);background:var(--ink-06);white-space:pre-wrap;border-radius:0 8px 8px 0;margin:0 0 .5rem;padding:.8rem 1rem;font-size:1.1rem;line-height:1.6}.order-line{align-items:flex-start;gap:.85rem;display:flex}.order-line-photo{aspect-ratio:4/3;object-fit:cover;background:var(--ink-06);width:72px;box-shadow:var(--hard-sm);border-radius:10px;flex:none}.order-line-text{min-width:0}@media (width<=30rem){.order-line-photo{width:56px}}.thumb{vertical-align:middle;margin-right:.5rem;display:inline-block;position:relative}.thumb-small{object-fit:cover;background:var(--ink-06);border-radius:7px;width:34px;height:34px;display:block}.thumb-zoom{z-index:30;background:var(--card);border:1px solid var(--ink-12,var(--ink-06));width:240px;box-shadow:var(--hard);border-radius:12px;padding:.35rem;display:none;position:absolute;bottom:calc(100% + .4rem);left:0}.thumb:hover .thumb-zoom,.thumb:focus-within .thumb-zoom{display:block}.thumb-zoom img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%;display:block}.thumb-zoom-label{padding:.35rem .15rem .1rem;font-size:.85rem;font-weight:600;display:block}@media (hover:none){.thumb-zoom{display:none!important}}.card-preview{flex-wrap:wrap;gap:.75rem;margin:.4rem 0 .7rem;display:flex}.card-face{text-align:center;width:148px;height:105px;box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;padding:10px;display:flex;overflow:hidden}.card-front{background:var(--card-accent,#0d1b2a);color:#f2e9dd}.card-back{color:#0d1b2a;background:#f2e9dd;justify-content:space-between;padding:11px 13px}.card-wordmark{font-family:var(--font-head);letter-spacing:.32em;margin-right:-.32em;font-size:15px;font-weight:500}.card-wordmark-sm{letter-spacing:.3em;margin-right:-.3em;font-size:9px}.card-star{color:#c8a165}.card-rule{background:#f2e9dd80;flex:0 0 1px;width:26px;height:1px;margin:6px auto;display:block}.card-claim{letter-spacing:.28em;text-transform:uppercase;font-size:6px}.card-dest{letter-spacing:.2em;text-transform:uppercase;opacity:.85;margin-top:8px;font-size:5.5px}.card-emoji{margin-top:3px;font-size:13px}.card-label{letter-spacing:.3em;text-transform:uppercase;color:#0d1b2a8c;font-size:5.5px}.card-dedication{font-family:var(--font-head);white-space:pre-wrap;overflow-wrap:anywhere;flex:1;justify-content:center;align-items:center;margin:0;font-size:11px;font-style:italic;font-weight:500;line-height:1.45;display:flex}
