:root{--color-bg:oklch(98.5% .008 82);--color-surface:oklch(100% 0 0);--color-surface-warm:oklch(96.5% .012 78);--color-ink:oklch(22% .025 52);--color-muted:oklch(42% .026 55);--color-brand:oklch(46% .09 52);--color-brand-dark:oklch(29% .07 42);--color-accent:oklch(68% .13 28);--color-accent-soft:oklch(90% .045 32);--color-fresh:oklch(66% .07 145);--color-border:oklch(84% .023 72);--shadow-soft:0 8px 18px oklch(25% .04 55/.12);--radius-sm:6px;--radius-md:8px;--radius-lg:8px;--space-page:clamp(18px, 4vw, 56px);--max-page:1180px;--font-body:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--font-display:Georgia, "Times New Roman", serif}.construction-mode-notice{min-height:44px;padding:8px var(--space-page);color:var(--color-brand-dark);background:var(--color-accent-soft);border-bottom:1px solid color-mix(in oklch, var(--color-accent) 38%, var(--color-border));justify-content:center;align-items:center;gap:14px;font-size:.92rem;font-weight:700;display:flex}.construction-mode-notice a{min-height:32px;color:var(--color-brand-dark);text-underline-offset:4px;align-items:center;text-decoration-thickness:2px;display:inline-flex}.site-footer__links{flex-wrap:wrap;flex:none;gap:10px;display:flex}.admin-page{min-height:100svh;color:var(--color-ink);background:color-mix(in oklch, var(--color-bg) 64%, var(--color-surface));font-family:var(--font-body);font-size:1rem}.admin-header{border-bottom:1px solid var(--color-border);min-height:72px;padding:10px max(var(--space-page), calc((100vw - 1120px) / 2));background:var(--color-surface);grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:18px;display:grid}.admin-header__brand{align-items:center;width:fit-content;min-height:44px;display:inline-flex}.admin-header__brand img{object-fit:contain;object-position:left center;width:min(190px,48vw);max-height:54px}.admin-header__identity{justify-items:end;min-width:0;line-height:1.25;display:grid}.admin-header__identity span{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:700;overflow:hidden}.admin-header__identity small{color:var(--color-muted);font-size:.82rem}.admin-page__intro,.admin-page__content{width:min(100% - (2 * var(--space-page)), 1120px);margin:0 auto}.admin-page__intro{padding:42px 0 30px}.admin-page__intro h1{font-family:var(--font-body);letter-spacing:0;margin:0;font-size:2rem;line-height:1.2}.admin-page__intro p{color:var(--color-muted);margin:8px 0 0;line-height:1.55}.admin-page__content{padding-bottom:72px}.admin-panel{border-top:1px solid var(--color-border);padding:32px 0}.admin-panel:last-child{border-bottom:1px solid var(--color-border)}.admin-panel__heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.admin-panel__heading h2,.account-password-form h3,.one-time-secret h3{font-family:var(--font-body);letter-spacing:0;margin:0}.admin-panel__heading h2{font-size:1.32rem;line-height:1.25}.admin-panel__heading p,.account-password-form>p,.one-time-secret p{max-width:68ch;color:var(--color-muted);margin:6px 0 0;line-height:1.5}.admin-button,.admin-icon-button{border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.admin-button{border:1px solid #0000;gap:8px;min-height:44px;padding:0 14px;text-decoration:none}.admin-button--primary{color:#fff;background:var(--color-brand-dark)}.admin-button--primary:hover:not(:disabled){background:var(--color-brand)}.admin-button--secondary{color:var(--color-brand-dark);background:var(--color-surface);border-color:var(--color-border)}.admin-button--secondary:hover:not(:disabled){border-color:var(--color-brand);background:color-mix(in oklch, var(--color-surface) 84%, var(--color-accent-soft))}.admin-button--danger,.admin-icon-button--danger{color:oklch(39% .13 29);background:oklch(97% .018 28);border-color:oklch(78% .07 28)}.admin-button:disabled,.admin-icon-button:disabled{cursor:not-allowed;opacity:.55}.admin-icon-button{border:1px solid var(--color-border);width:44px;height:44px;color:var(--color-brand-dark);background:var(--color-surface);flex:0 0 44px;padding:0}.admin-icon-button:hover:not(:disabled){border-color:var(--color-brand);background:var(--color-accent-soft)}.admin-feedback,.admin-empty{border-radius:var(--radius-sm);margin:16px 0;padding:13px 14px;line-height:1.5}.admin-feedback--error{color:oklch(34% .11 29);background:oklch(97% .018 28);border:1px solid oklch(74% .08 28)}.admin-empty{color:var(--color-muted);background:var(--color-surface-warm)}.admin-muted{color:var(--color-muted);font-size:.92rem;line-height:1.5}.admin-actions,.admin-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-inline-status{color:var(--color-muted);font-size:.92rem;font-weight:700}.site-access-form{gap:18px;display:grid}.admin-switch{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;width:min(100%,660px);min-height:64px;display:flex}.admin-switch span{gap:4px;display:grid}.admin-switch small{color:var(--color-muted);font-size:.9rem;line-height:1.45}.admin-switch input{width:48px;height:28px;accent-color:var(--color-brand);cursor:pointer;flex:none;margin:0}.admin-status{border-radius:var(--radius-sm);align-items:center;width:fit-content;min-height:28px;padding:3px 9px;font-size:.82rem;font-weight:800;line-height:1.2;display:inline-flex}.admin-status--success,.admin-status--active{color:oklch(32% .075 145);background:oklch(93% .045 145)}.admin-status--warning,.admin-status--expired{color:oklch(37% .085 65);background:oklch(94% .05 75)}.admin-status--redeemed{color:oklch(32% .07 245);background:oklch(94% .035 245)}.admin-status--revoked,.admin-status--inactive{color:var(--color-muted);background:color-mix(in oklch, var(--color-border) 46%, var(--color-surface))}.one-time-secret{border:1px solid color-mix(in oklch, var(--color-fresh) 58%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in oklch, var(--color-fresh) 7%, var(--color-surface));gap:14px;margin:20px 0;padding:18px;display:grid}.one-time-secret__heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.one-time-secret h3,.account-password-form h3{font-size:1.05rem}.secret-value{grid-template-columns:90px minmax(0,1fr) 44px;align-items:center;gap:10px;display:grid}.secret-value>span{color:var(--color-muted);font-size:.88rem;font-weight:700}.secret-value code{overflow-wrap:anywhere;border-radius:var(--radius-sm);min-width:0;color:var(--color-brand-dark);background:var(--color-surface);padding:10px;font-size:.88rem;line-height:1.45}.admin-table-wrap{border-top:1px solid var(--color-border);max-width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:.92rem}.admin-table th{color:var(--color-muted);background:color-mix(in oklch, var(--color-surface-warm) 62%, var(--color-surface));font-size:.8rem;font-weight:800}.admin-table th,.admin-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:13px 12px}.admin-table td strong,.admin-table__secondary{display:block}.admin-table__secondary{max-width:260px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.admin-table__actions{text-align:right}.admin-table__actions .admin-row-actions{justify-content:flex-end;min-width:300px}.account-identity{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 28px;display:grid}.account-identity div{min-width:0;padding:16px 18px 16px 0}.account-identity dt{color:var(--color-muted);font-size:.82rem;font-weight:700}.account-identity dd{overflow-wrap:anywhere;margin:5px 0 0;font-weight:700}.account-password-form{gap:16px;width:min(100%,700px);display:grid}.account-password-form__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.account-password-form .admin-button{width:fit-content}.admin-sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;top:0;left:0;overflow:hidden}@media (width<=760px){.site-footer__links{width:100%}.admin-header{grid-template-columns:minmax(0,1fr) auto}.admin-header__identity{display:none}.admin-page__intro{padding-top:30px}.admin-panel__heading{flex-direction:column;align-items:stretch}.admin-panel__heading>.admin-button{width:fit-content}.admin-users-table th,.admin-users-table td{min-width:150px}.account-identity,.account-password-form__fields{grid-template-columns:1fr}.account-identity div{border-bottom:1px solid var(--color-border)}.account-identity div:last-child{border-bottom:0}}@media (width<=520px){.construction-mode-notice{flex-direction:column;align-items:flex-start;gap:2px}.site-footer__links{flex-direction:column}.admin-header{gap:10px;padding-left:16px;padding-right:16px}.admin-header__brand img{width:min(160px,44vw)}.admin-header>.admin-button{padding:0 10px;font-size:.88rem}.admin-page__intro,.admin-page__content{width:calc(100% - 32px)}.admin-page__intro h1{font-size:1.75rem}.admin-panel{padding:26px 0}.admin-panel__heading>.admin-button,.admin-actions .admin-button,.account-password-form .admin-button{width:100%}.admin-switch{align-items:flex-start}.secret-value{grid-template-columns:minmax(0,1fr) 44px}.secret-value>span{grid-column:1/-1}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--color-ink);background:linear-gradient(180deg, oklch(100% 0 0/.58), transparent 340px), var(--color-bg);font-family:var(--font-body);margin:0}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button,a{color:inherit}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.skip-link{z-index:100;border-radius:var(--radius-sm);color:var(--color-surface);background:var(--color-brand-dark);padding:10px 14px;font-weight:700;text-decoration:none;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.page-shell,.page-shell__background{min-height:100vh}.page-section{padding:clamp(54px, 8vw, 104px) var(--space-page)}.page-inner{max-width:var(--max-page);margin:0 auto}.section-title{font-family:var(--font-display);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(2.35rem,6vw,4.75rem);line-height:1}.button{border-radius:var(--radius-md);color:#fff;background:var(--color-brand-dark);cursor:pointer;border:0;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.button.secondary{color:var(--color-brand-dark);background:var(--color-surface);border:1px solid var(--color-border)}.button:disabled{cursor:not-allowed;opacity:.55}.site-header{z-index:10;padding:12px var(--space-page);background:color-mix(in oklch, var(--color-bg) 90%, white);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky;top:0;box-shadow:0 1px oklch(100% 0 0/.5)}.brand-link{flex:none;align-items:center;text-decoration:none;display:inline-flex}.brand-link img{width:min(220px,42vw);height:auto}.site-header nav{align-items:center;gap:clamp(12px,2vw,28px);display:flex}.site-header nav a{border-radius:var(--radius-sm);min-height:44px;color:var(--color-brand-dark);align-items:center;padding:0 8px;font-size:.97rem;font-weight:700;text-decoration:none;display:inline-flex}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--color-accent)}.site-header nav a[aria-current=page]{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}.cart-button{border-radius:var(--radius-md);color:#fff;background:var(--color-brand);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-weight:700;display:inline-flex}.cart-button:hover{background:var(--color-brand-dark)}.cart-button strong{border-radius:var(--radius-sm);min-width:24px;min-height:24px;color:var(--color-brand-dark);background:var(--color-accent-soft);place-items:center;font-size:.82rem;line-height:1;display:inline-grid}.shell-intro{align-items:center;min-height:clamp(360px,62vh,560px);display:grid}.shell-intro__inner{grid-template-columns:minmax(84px,150px) minmax(0,1fr);align-items:center;gap:clamp(22px,5vw,48px);display:grid}.shell-intro__mark{filter:drop-shadow(0 12px 20px oklch(28% .07 42/.13));width:clamp(84px,16vw,150px)}.shell-intro p{max-width:58ch;color:var(--color-muted);margin:18px 0 0;font-size:clamp(1rem,2vw,1.2rem);line-height:1.65}.site-footer{padding:40px var(--space-page);color:#fff;background:linear-gradient(90deg, var(--color-brand-dark), color-mix(in oklch, var(--color-brand-dark) 84%, var(--color-fresh))), var(--color-brand-dark);justify-content:space-between;align-items:center;gap:24px;display:flex}.site-footer__brand{align-items:center;gap:14px;display:flex}.site-footer img{width:72px;height:auto}.site-footer p{font-family:var(--font-display);margin:0;font-size:1.25rem;line-height:1.1}.site-footer address{color:oklch(96% .012 80);max-width:54ch;font-style:normal;line-height:1.6}.site-footer a{border-radius:var(--radius-md);min-height:44px;color:var(--color-brand-dark);background:var(--color-surface);align-items:center;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.cart-layer{z-index:20;position:fixed;inset:0}.cart-scrim{background:oklch(18% .035 55/.38);position:absolute;inset:0}.cart-drawer{overscroll-behavior:contain;width:min(420px,100vw);height:100dvh;color:var(--color-ink);background:var(--color-surface);padding:24px;position:absolute;inset:0 0 0 auto;overflow-y:auto;box-shadow:-8px 0 18px oklch(20% .04 55/.18)}.cart-drawer h2{font-family:var(--font-display);letter-spacing:0;margin:26px 0 10px;font-size:clamp(1.8rem,6vw,2.5rem)}.cart-drawer p{color:var(--color-muted);margin:0;line-height:1.6}.cart-drawer__close{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:44px;color:var(--color-brand-dark);background:var(--color-surface-warm);cursor:pointer;padding:0 14px;font-weight:700}.cart-drawer__close:hover{background:var(--color-accent-soft)}@media (width<=760px){.site-header{flex-wrap:wrap;align-items:flex-start}.site-header nav{order:3;width:100%;padding-bottom:4px;overflow-x:auto}.shell-intro__inner{grid-template-columns:1fr}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hero-layout,.about-layout{grid-template-columns:minmax(0,.95fr) minmax(280px,1.05fr);align-items:center;gap:clamp(28px,6vw,72px);display:grid}.home-hero{isolation:isolate;align-items:center;min-height:min(480px,100svh - 220px);padding-top:clamp(28px,4vw,42px);padding-bottom:clamp(28px,4vw,38px);display:grid;position:relative;overflow:hidden}.home-hero:before{content:"";z-index:-1;opacity:.82;background:linear-gradient(90deg,oklch(100% 0 0/.94),oklch(100% 0 0/.76) 48%,oklch(100% 0 0/.18)),url(/assets/process/vanilla-cake-frosted.jpg) 50%/cover;position:absolute;inset:0}.home-hero .page-inner{z-index:1;position:relative}.home-hero h1{max-width:11ch;font-family:var(--font-display);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(2.6rem,6.3vw,4.55rem);line-height:.96}.hero-copy p,.section-heading p,.about-page p{max-width:64ch;color:var(--color-muted);margin:18px 0 0;font-size:clamp(1rem,2vw,1.14rem);line-height:1.68}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-brand-art{border:1px solid color-mix(in oklch, var(--color-border) 82%, var(--color-fresh));border-radius:var(--radius-lg);background:linear-gradient(140deg, color-mix(in oklch, var(--color-surface) 90%, var(--color-fresh)), var(--color-surface-warm)), var(--color-surface);min-height:260px;box-shadow:var(--shadow-soft);align-content:center;justify-items:center;gap:14px;padding:clamp(20px,4vw,36px);display:grid}.hero-brand-art img{filter:drop-shadow(0 12px 20px oklch(28% .07 42/.12));width:min(330px,76%);height:auto}.hero-feature{border:1px solid color-mix(in oklch, var(--color-border) 62%, var(--color-fresh));border-radius:var(--radius-md);width:min(100%,420px);color:var(--color-brand-dark);background:color-mix(in oklch, var(--color-surface) 86%, var(--color-fresh));padding:14px 16px}.hero-feature strong,.hero-feature span{display:block}.hero-feature strong{font-family:var(--font-display);letter-spacing:0;font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.12}.hero-feature span{color:var(--color-muted);margin-top:6px;line-height:1.55}.section-heading{max-width:780px;margin-bottom:28px}.section-heading--compact{margin-top:clamp(42px,7vw,76px)}.baking-process{background:linear-gradient(180deg, var(--color-surface), color-mix(in oklch, var(--color-accent-soft) 24%, var(--color-bg))), var(--color-surface);overflow:hidden}.baking-process__heading{margin-bottom:clamp(26px,5vw,48px)}.baking-process__steps{gap:clamp(18px,4vw,34px);display:grid}.baking-step{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-height:clamp(280px,42vw,420px);display:grid;position:relative;overflow:hidden}.baking-step img{object-fit:cover;opacity:.34;filter:saturate(.88)contrast(.95);width:100%;height:100%;position:absolute;inset:0}.baking-step:after{content:"";background:linear-gradient(90deg,oklch(100% 0 0/.92),oklch(100% 0 0/.65) 44%,oklch(100% 0 0/.12)),linear-gradient(#0000,oklch(23% .04 52/.13));position:absolute;inset:0}.baking-step__content{z-index:1;align-content:center;max-width:560px;padding:clamp(22px,5vw,52px);display:grid;position:relative}.baking-step__content span{color:var(--color-accent);font-weight:800}.baking-step__content h3{font-family:var(--font-display);margin:10px 0 0;font-size:clamp(1.8rem,4vw,3.1rem);line-height:1.02}.baking-step__content p{max-width:54ch;color:var(--color-muted);margin:16px 0 0;font-size:clamp(1rem,2vw,1.12rem);line-height:1.62}.facebook-panel{border-top:1px solid color-mix(in oklch, var(--color-border) 72%, var(--color-fresh));border-bottom:1px solid color-mix(in oklch, var(--color-border) 72%, var(--color-fresh));background:linear-gradient(100deg, color-mix(in oklch, var(--color-fresh) 13%, var(--color-surface)) 0 46%, var(--color-bg) 46% 100%), var(--color-surface)}.facebook-panel__layout{grid-template-columns:minmax(0,.88fr) minmax(280px,.72fr);align-items:center;gap:clamp(28px,6vw,72px);display:grid}.facebook-panel__copy{justify-items:start;gap:22px;display:grid}.facebook-panel__copy p{max-width:62ch;color:var(--color-muted);margin:0;font-size:clamp(1rem,2vw,1.14rem);line-height:1.68}.facebook-window{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden;box-shadow:0 5px 14px oklch(25% .04 55/.08)}.facebook-window__bar{border-bottom:1px solid var(--color-border);color:#fff;background:var(--color-brand-dark);justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:0 16px;font-weight:700;display:flex}.facebook-window__bar a{border-radius:var(--radius-sm);min-height:38px;color:var(--color-brand-dark);background:var(--color-accent-soft);align-items:center;padding:0 10px;font-size:.9rem;text-decoration:none;display:inline-flex}.facebook-window__feed{background:linear-gradient(180deg, color-mix(in oklch, var(--color-surface-warm) 72%, white), var(--color-surface)), var(--color-surface);gap:14px;max-height:520px;padding:16px;display:grid;overflow-y:auto}.facebook-post{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:16px}.facebook-post span{color:var(--color-accent);margin-bottom:8px;font-size:.92rem;font-weight:700;display:block}.facebook-post h3{font-family:var(--font-display);margin:0;font-size:clamp(1.25rem,2.8vw,1.7rem);line-height:1.1}.facebook-post p{color:var(--color-muted);margin:10px 0 16px;line-height:1.58}.facebook-post a{border-bottom:2px solid var(--color-accent);min-height:44px;color:var(--color-brand-dark);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.facebook-post a:hover{color:var(--color-accent)}.order-page{background:linear-gradient(180deg, color-mix(in oklch, var(--color-accent-soft) 28%, transparent), transparent 300px), var(--color-surface)}.product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;display:grid}.product-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-rows:auto 1fr;display:grid;overflow:hidden;box-shadow:0 5px 14px oklch(25% .04 55/.08)}.product-card__photo{aspect-ratio:4/3;background:linear-gradient(135deg, color-mix(in oklch, var(--color-accent-soft) 52%, white), color-mix(in oklch, var(--color-fresh) 14%, white)), var(--color-surface-warm);place-items:center;padding:22px;display:grid}.product-card__photo img{object-fit:contain;max-width:min(82%,250px);max-height:150px}.product-card__body{flex-direction:column;gap:14px;padding:20px;display:flex}.product-card h3,.portfolio-category h2,.order-notes h2{font-family:var(--font-display);letter-spacing:0;margin:0;font-size:clamp(1.45rem,3vw,2rem);line-height:1.08}.product-card p,.portfolio-category p{color:var(--color-muted);margin:0;line-height:1.58}.product-meta{color:var(--color-brand-dark);flex-wrap:wrap;gap:10px;margin-top:auto;font-size:.95rem;font-weight:700;display:flex}.product-meta span{align-items:center;gap:6px;min-height:32px;display:inline-flex}.product-action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.product-action strong{color:var(--color-brand-dark);font-size:1.14rem}.portfolio-page{background:linear-gradient(180deg, var(--color-bg), color-mix(in oklch, var(--color-surface) 72%, var(--color-fresh)))}.portfolio-grid{gap:18px;display:grid}.portfolio-category{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in oklch, var(--color-surface) 94%, var(--color-fresh));grid-template-columns:minmax(0,.95fr) minmax(190px,.55fr);align-items:center;gap:18px;padding:clamp(18px,3vw,26px);display:grid}.portfolio-category__copy{min-width:0}.portfolio-category__link{border-bottom:2px solid var(--color-accent);width:fit-content;min-height:44px;color:var(--color-brand-dark);align-items:center;margin-top:16px;font-weight:700;text-decoration:none;display:inline-flex}.portfolio-category__link:hover{color:var(--color-accent)}.portfolio-photos{gap:10px;display:grid}.portfolio-photo{aspect-ratio:16/10;border:1px dashed color-mix(in oklch, var(--color-border) 70%, var(--color-brand));border-radius:var(--radius-md);background:var(--color-surface);place-items:center;padding:12px;display:grid}.portfolio-photo img{object-fit:contain;width:min(100%,220px);max-height:96px}.text-link{min-height:44px;color:var(--color-brand-dark);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:6px;align-items:center;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.portfolio-detail-page{background:linear-gradient(180deg, var(--color-bg), color-mix(in oklch, var(--color-surface) 82%, var(--color-fresh))), var(--color-bg)}.portfolio-detail-page__heading{margin-top:18px}.portfolio-detail-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;display:grid}.portfolio-detail-photo{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);gap:12px;margin:0;padding:14px;display:grid}.portfolio-detail-photo img{aspect-ratio:4/3;object-fit:contain;border:1px dashed color-mix(in oklch, var(--color-border) 70%, var(--color-brand));border-radius:var(--radius-md);background:var(--color-surface-warm);width:100%;padding:18px}.portfolio-detail-photo figcaption{color:var(--color-muted);font-size:.95rem;line-height:1.5}.portfolio-detail-nav{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.portfolio-detail-nav a{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:42px;color:var(--color-brand-dark);background:var(--color-surface);align-items:center;padding:0 12px;font-weight:700;text-decoration:none;display:inline-flex}.portfolio-detail-nav a[aria-current=page]{color:#fff;background:var(--color-brand-dark)}.about-page{background:var(--color-surface)}.order-notes{border:1px solid color-mix(in oklch, var(--color-border) 78%, var(--color-accent));border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in oklch, var(--color-accent-soft) 34%, white), var(--color-surface)), var(--color-surface);padding:clamp(20px,4vw,32px)}.order-notes ul{color:var(--color-muted);gap:10px;margin:18px 0 24px;padding-left:20px;line-height:1.55;display:grid}@media (width<=840px){.hero-layout,.about-layout,.facebook-panel__layout,.portfolio-category{grid-template-columns:1fr}.home-hero{min-height:auto;padding-top:clamp(28px,6vw,44px);padding-bottom:clamp(28px,6vw,40px)}.home-hero:before{background:linear-gradient(oklch(100% 0 0/.94),oklch(100% 0 0/.72)),url(/assets/process/vanilla-cake-frosted.jpg) 50%/cover}.home-hero h1{max-width:12ch;font-size:clamp(2.4rem,9vw,4.25rem)}.hero-layout{gap:24px}.facebook-panel{background:var(--color-surface)}.facebook-window__feed{max-height:480px}.hero-brand-art{min-height:210px;padding:clamp(18px,5vw,28px)}.baking-step{min-height:360px}.baking-step:after{background:linear-gradient(oklch(100% 0 0/.92),oklch(100% 0 0/.64))}.hero-brand-art img{width:min(280px,76%)}}@media (width<=520px){.site-header nav{justify-content:space-between;gap:4px;overflow-x:visible}.site-header nav a{padding:0 3px;font-size:.88rem}.home-hero{padding-bottom:20px}.product-action,.hero-actions{flex-direction:column;align-items:stretch}.button,.cart-button,.site-footer a{width:100%}.hero-brand-art{min-height:0;padding:18px}.hero-brand-art img{width:min(190px,70%)}.hero-feature{display:none}.product-card__body,.portfolio-category,.order-notes{padding:18px}}.cart-drawer__date{color:var(--color-brand-dark);gap:8px;margin:18px 0;font-weight:700;display:grid}.cart-drawer__date input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--color-ink);background:var(--color-surface);padding:0 10px}.cart-empty{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-warm);padding:16px}.cart-lines{gap:0;margin:18px 0;padding:0;list-style:none;display:grid}.cart-lines li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.cart-lines span{color:var(--color-brand-dark);font-weight:700;line-height:1.45}.cart-lines__remove{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:44px;color:var(--color-brand-dark);background:var(--color-surface-warm);cursor:pointer;flex:none;padding:0 12px;font-weight:700}.cart-lines__remove:hover{background:var(--color-accent-soft)}.cart-drawer__summary{border-top:1px solid var(--color-border);gap:12px;margin-top:22px;padding-top:18px;display:grid}.cart-drawer__summary strong{color:var(--color-brand-dark);font-size:1.12rem}.cart-drawer__summary p[role=alert]{border:1px solid color-mix(in oklch, var(--color-accent) 58%, var(--color-border));border-radius:var(--radius-md);color:var(--color-brand-dark);background:var(--color-accent-soft);margin:0;padding:12px}.cart-drawer__summary .button{width:100%}.construction-screen{min-height:100svh;padding:clamp(20px, 5vw, 56px) var(--space-page);background:var(--color-bg);place-items:center;display:grid}.construction-screen__inner{text-align:center;justify-items:center;gap:clamp(18px,3vh,28px);width:min(100%,620px);display:grid}.construction-screen__logo{filter:drop-shadow(0 8px 8px oklch(28% .07 42/.1));width:min(330px,78vw);height:auto}.construction-screen__notice{justify-items:center;gap:12px;display:grid}.construction-screen__notice h1{max-width:14ch;font-family:var(--font-display);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(2.15rem,7vw,3.8rem);line-height:1}.construction-screen__notice p{max-width:58ch;color:var(--color-muted);text-wrap:pretty;margin:0;font-size:clamp(1rem,2.5vw,1.12rem);line-height:1.62}.construction-screen__facebook{background:var(--color-brand-dark);gap:10px;width:min(100%,420px);min-height:52px}.construction-screen__facebook:hover{background:var(--color-brand)}.auth-separator{width:min(100%,460px);color:var(--color-brand-dark);align-items:center;gap:14px;font-weight:700;display:flex}.auth-separator:before,.auth-separator:after{background:var(--color-border);content:"";width:100%;height:1px}.auth-separator span{flex:none}.auth-form{text-align:left;gap:16px;width:100%;display:grid}.construction-screen .auth-form{width:min(100%,460px)}.auth-field{gap:7px;display:grid}.auth-field label{color:var(--color-brand-dark);font-size:.96rem;font-weight:700}.auth-field input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;min-height:48px;color:var(--color-ink);background:var(--color-surface);padding:0 13px}.auth-field input:hover:not(:disabled){border-color:var(--color-brand)}.auth-field input:disabled{cursor:not-allowed;color:var(--color-muted);background:var(--color-surface-warm)}.auth-field input[aria-invalid=true]{border-color:var(--color-accent)}.auth-field__error{color:var(--color-brand);margin:0;font-size:.9rem;font-weight:700;line-height:1.45}.auth-submit{width:100%;min-height:48px;margin-top:2px}.auth-error-summary,.auth-service-status{border:1px solid color-mix(in oklch, var(--color-accent) 48%, var(--color-border));border-radius:var(--radius-md);width:100%;color:var(--color-brand-dark);background:var(--color-accent-soft);margin:0;padding:13px 15px;line-height:1.5}.auth-error-summary p{margin:0;font-weight:800}.auth-error-summary ul{gap:5px;margin:8px 0 0;padding-left:20px;display:grid}.auth-service-status{text-align:left;width:min(100%,460px)}.auth-page{min-height:100svh;padding:clamp(24px, 6vw, 64px) var(--space-page);background:var(--color-surface-warm);place-items:center;display:grid}.auth-page__inner{justify-items:center;gap:24px;width:min(100%,590px);display:grid}.auth-page__brand{border-radius:var(--radius-sm);align-items:center;min-height:44px;display:inline-flex}.auth-page__brand img{width:min(255px,68vw);height:auto}.auth-page__panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;padding:clamp(22px,5vw,38px)}.auth-page__heading{gap:10px;margin-bottom:24px;display:grid}.auth-page__heading h1,.admin-placeholder h1{font-family:var(--font-display);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(2rem,6vw,3rem);line-height:1.04}.auth-page__heading p,.admin-placeholder p{color:var(--color-muted);text-wrap:pretty;margin:0;line-height:1.6}.auth-page__back-link{min-height:44px;color:var(--color-brand-dark);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:5px;align-items:center;margin-top:14px;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.auth-page--loading{background:var(--color-bg)}.auth-page__loading{color:var(--color-brand-dark);justify-items:center;gap:14px;font-weight:700;display:grid}.auth-page__loading img{width:96px;height:auto}.admin-placeholder{min-height:100svh;padding:clamp(24px, 6vw, 64px) var(--space-page);background:var(--color-bg);place-items:center;display:grid}.admin-placeholder__inner{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:88px minmax(0,1fr);align-items:center;gap:20px 26px;width:min(100%,840px);padding:clamp(24px,5vw,42px);display:grid}.admin-placeholder__inner>img{width:88px;height:auto}.admin-placeholder__identity{font-size:.94rem;font-weight:800;color:var(--color-brand)!important;margin-bottom:8px!important}.admin-placeholder__actions{flex-wrap:wrap;grid-column:2;gap:10px;display:flex}@media (width<=560px){.construction-screen{align-items:start;padding-top:24px}.construction-screen__inner{gap:17px}.construction-screen__logo{width:min(260px,74vw)}.construction-screen__notice h1{font-size:clamp(2rem,11vw,2.75rem)}.construction-screen__facebook{width:100%}.auth-page__panel{padding:20px}.admin-placeholder__inner{grid-template-columns:1fr}.admin-placeholder__actions{flex-direction:column;grid-column:1}.admin-placeholder__actions .button{width:100%}}
