html{font-size:16px;scroll-padding-top:var(--header-height,160px)}
html[data-text-size=large]{font-size:19px}
html[data-text-size=largest]{font-size:22px}
body{font-size:1rem}
[hidden]{display:none!important}
.app-shell{width:calc(100% - 40px);max-width:1920px;margin:12px auto 30px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
.site-header{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;gap:10px 24px;padding:14px 22px;top:10px;margin:0;border:1px solid #fff;border-radius:24px;background:rgba(240,250,251,.96);z-index:35}
.site-header>.brand{grid-column:1;grid-row:1}.site-header>.search{grid-column:2;grid-row:1;min-width:0;width:100%}.header-actions{grid-column:3;grid-row:1}
.header-tools{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;border-top:1px solid #c8dedf;padding-top:8px}
.service-links{display:flex;gap:8px 24px;flex-wrap:wrap}.service-links a{font-size:1.0625rem;min-height:44px;white-space:normal;gap:8px}.service-links svg{display:block;flex-shrink:0;width:23px;height:23px}
.text-size-control{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.text-size-control label{font-size:1rem}.text-size-control select{color:#073347;background:#fff;border:1px solid #80a5ac;border-radius:12px;padding:8px 12px;font:inherit;min-height:44px;max-width:100%}
.brand small{font-size:1rem;line-height:1.4}.brand{min-width:0}.search input{font-size:1.125rem;min-width:0}.search button{font-size:1rem;min-height:48px}
.workspace{grid-template-columns:15rem minmax(0,1fr);gap:20px;margin-top:20px;align-items:start}
.sidebar{background:rgba(237,249,249,.9);border:1px solid white;border-radius:24px;padding:12px;position:sticky;top:var(--header-height,160px);max-height:calc(100dvh - var(--header-height,160px) - 15px);overflow:auto;backdrop-filter:blur(20px)}
.side-link{font-size:1.1875rem;min-height:56px}.side-promo p{font-size:1.375rem}.side-promo small{font-size:1rem}.sidebar nav{gap:10px}
.main-panel{padding:18px;background:rgba(242,251,251,.92);min-width:0}.hero{min-height:150px;padding:24px 28px}.hero h1{font-size:2rem}.hero p{font-size:1.125rem}.hero-note{font-size:1.625rem}
.product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:16px}.product-card{padding:14px;min-width:0}.product-card h3{font-size:1.1875rem;line-height:1.4}.product-card .pack,.card-icons span{font-size:1rem}.card-icons{flex-wrap:wrap}.product-card .primary{font-size:1.125rem;min-height:52px;white-space:normal}.product-price{font-size:1.5rem}.product-image-link{aspect-ratio:3/4}.product-image-link .sample-label{font-size:1rem;background:#fff9e7;color:#644410}
.site-footer{font-size:1rem;flex-wrap:wrap;gap:16px 24px;background:rgba(240,250,251,.96)}.site-footer nav{max-width:none;flex:1 1 500px;gap:10px 24px;font-size:1rem}.site-footer nav a{display:inline-flex;align-items:center;min-height:44px}.footer-tagline{font-size:1rem}
.breadcrumb,.detail-meta,.trait-tile,.pack,.muted,small{font-size:1rem}.trait-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}.trait-tile{min-height:70px}.section-heading{gap:16px;flex-wrap:wrap}.shortcuts{flex-wrap:wrap}.chip{min-height:48px;font-size:1rem}.primary,.secondary{min-height:48px}
.variant-picker{display:grid;gap:6px;font-size:1rem;font-weight:600;margin:10px 0}.variant-picker select{font:inherit;color:#073347;background:white;border:1px solid #9abdc2;border-radius:10px;padding:10px 8px;width:100%;min-height:48px}.variant-picker select:focus{outline:3px solid #e7a64a}.variant-picker small{font-weight:400}.buy-panel{flex-wrap:wrap;gap:14px}.cart-line{flex-wrap:wrap}.cart-line-info{min-width:0}.cart-line-info small{overflow-wrap:anywhere}
.card-icons{display:flex;gap:8px}.card-icons svg{width:1.5rem;height:1.5rem;flex-shrink:0}
.product-detail{grid-template-columns: minmax(0,1fr) minmax(0,1.15fr)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}.field input,.field select,.field textarea{font-size:1rem}.category-tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}
.preview-photo{display:block;position:relative;aspect-ratio:3/4}.preview-photo>img{position:absolute;inset:0;width:100%;height:100%;max-height:none!important}.preview-photo>svg{position:absolute;left:calc(50% - 30px);top:calc(50% - 30px)}
.trait-chip,.preview-label,.preview-caption,.preview-description,.help,.data-table th,.data-table td,.badge,.admin-footer{font-size:1rem!important}.preview-label{letter-spacing:0}.variant-row{margin-top:20px}.category-row{flex-wrap:wrap}.category-row .button{margin-left:0}.category-row>div{flex:1}.admin-shell{max-width:1920px}.field-grid.three{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.product-preview h3{font-size:1.25rem}.editor-grid{grid-template-columns:minmax(0,1fr) minmax(290px,22rem)}
.showcase-controls .button{margin:8px 12px 8px 0}.showcase-controls p{max-width:70ch}.preview-photo img{image-orientation:from-image}
@media(max-width:1200px){.workspace{grid-template-columns:13rem minmax(0,1fr)}.header-tools{gap:8px}.service-links{gap:8px 16px}.editor-grid{grid-template-columns:minmax(0,1fr)}.preview-column{position:static;max-width:420px}.preview-column:not(.show-preview .preview-column){display:none}.show-preview .preview-column{display:block}.mobile-only#toggle-preview{display:inline-flex}}
@media(max-width:900px){.product-detail{grid-template-columns:1fr}.cart-layout{grid-template-columns:1fr}.hero-note{display:none}.hero{padding:20px}.brand span{font-size:1.5rem}.brand small{font-size:1rem}}
@media(max-width:760px){
 .app-shell{width:calc(100% - 16px);margin:8px auto 110px;min-height:100vh}.site-header{grid-template-columns:44px minmax(0,1fr) auto;padding:10px;gap:8px;top:0;border-radius:18px}.site-header>.brand{grid-column:2;grid-row:1;justify-content:center;gap:6px}.site-header>.brand small{display:none}.site-header>.brand img{width:30px;height:36px}.site-header>.brand span{font-size:1.25rem}.site-header>#menu-toggle{grid-column:1;grid-row:1}.site-header>.search{grid-column:1/-1;grid-row:2}.header-actions{grid-column:3;grid-row:1}.header-tools{grid-row:3;padding-top:3px;border:0;justify-content:center}.header-tools .service-links{display:none}.text-size-control{gap:8px;justify-content:center}.text-size-control label{font-size:1rem}.text-size-control select{padding:5px 8px;min-height:44px}
 .workspace{display:block;margin-top:12px}.sidebar{position:fixed;top:0;left:0;bottom:0;max-height:none;z-index:50;width:min(370px,92vw);border-radius:0;padding:18px 16px 115px;background:#edf8f8;transform:translateX(-110%)}.sidebar.open{transform:translateX(0)}.main-panel{padding:12px;border:1px solid #fff;border-radius:20px;background:rgba(242,251,251,.94)}.hero{min-height:120px;padding:16px}.hero h1{font-size:1.625rem}.hero p{font-size:1rem}.section-heading h2{font-size:1.5rem}.product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:12px}.product-card h3{font-size:1.125rem}.product-card .primary{font-size:1rem}.shortcuts{gap:8px}.chip{padding:8px 12px}.site-footer nav{flex-basis:100%;justify-content:flex-start}.mobile-bottom{z-index:40;padding:8px 4px calc(8px + env(safe-area-inset-bottom))}.mobile-bottom>a{font-size:1rem;min-width:0;overflow-wrap:anywhere}.mobile-bottom span{max-width:100%}.trait-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr))}.cart-line-actions{flex-wrap:wrap}.detail-photo img{max-width:100%;height:auto;max-height:500px}.content-page h1{font-size:1.75rem}.content-page{padding:8px 0}.filter-row{flex-wrap:wrap}.filter-row label{max-width:100%}.admin-shell{padding:8px}.editor-actions{flex-wrap:wrap}.editor-actions>div{flex-wrap:wrap}.stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}.traits-grid{grid-template-columns:1fr}.preview-column{width:100%}.field-grid{grid-template-columns:1fr}
}
/* Independent glass panels: the navigation occupies the full left column. */
.app-shell{display:grid;grid-template-columns:15rem minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:18px 20px;align-items:start}
.app-shell>.sidebar{grid-column:1;grid-row:1/4;top:12px;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);background:linear-gradient(145deg,rgba(231,253,249,.54),rgba(214,239,243,.32));backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%);box-shadow:inset 0 1px 0 #ffffffb0,0 12px 32px #123b4820}
.sidebar .side-promo{flex:1;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;margin-top:8px}.sidebar .side-promo>svg{margin-bottom:auto}
.app-shell>.site-header{grid-column:2;grid-row:1;min-width:0;padding:12px 18px;gap:6px 18px;background:linear-gradient(120deg,rgba(241,255,254,.66),rgba(222,246,251,.44));backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);box-shadow:inset 0 1px 0 #ffffffe0,0 10px 30px #173f5120}
.app-shell>.workspace{display:block;grid-column:2;grid-row:2;min-width:0;margin:0}
.app-shell>.site-footer{grid-column:2;grid-row:3;min-width:0;margin:0;background:linear-gradient(120deg,#edffffa6,#deeff780)}
.main-panel{background:linear-gradient(125deg,rgba(232,252,249,.55),rgba(220,242,249,.36));backdrop-filter:blur(22px) saturate(120%);-webkit-backdrop-filter:blur(22px) saturate(120%);box-shadow:inset 0 1px 0 #ffffffa0,0 12px 35px #123c4924}
.header-tools{padding-top:2px;border:0}.service-links{gap:4px 22px}.service-links a{min-height:40px}.header-actions{gap:8px;align-items:center}.brand small{font-size:1rem}.product-card{background:linear-gradient(135deg,#f9ffffbd,#e6f5f9a3);box-shadow:inset 0 1px 0 #ffffffb0,0 5px 18px #16475012}.product-card h3{color:#073347}.product-image-link{border-radius:12px;overflow:hidden}
.font-control{position:relative;flex-shrink:0}.font-toggle{font-size:1.2rem;font-weight:700;letter-spacing:-1px}.font-options{position:absolute;right:0;top:calc(100% + 10px);width:15rem;max-width:calc(100vw - 32px);padding:10px;background:#effafb;border:1px solid #fff;border-radius:18px;box-shadow:0 12px 35px #08354838;z-index:60}.font-options strong{display:block;font-size:1rem;padding:5px 10px}.font-options button{display:block;width:100%;min-height:48px;text-align:left;padding:10px;border-radius:10px;background:transparent;font-size:1rem}.font-options button[aria-pressed=true]{background:#087f8d;color:white}.font-options button:hover{box-shadow:inset 0 0 0 2px #087f8d}
@media(max-width:1200px){.app-shell{grid-template-columns:13rem minmax(0,1fr)}.app-shell>.site-header{grid-template-columns:minmax(0,1fr) auto}.site-header>.brand{grid-column:1;grid-row:1;justify-content:flex-start}.header-actions{grid-column:2;grid-row:1}.site-header>.search{grid-column:1/-1;grid-row:2}.header-tools{grid-row:3}.service-links{gap:4px 16px}}
@media(max-width:760px){.app-shell{display:block}.app-shell>.site-header{grid-template-columns:44px minmax(0,1fr) auto;padding:10px;gap:8px;top:0}.site-header>.brand{grid-column:2;grid-row:1}.header-actions{grid-column:3}.site-header>.brand span{font-size:1.2rem}.site-header>.brand img{width:26px;height:32px}.site-header>.brand{gap:4px}.header-actions{gap:5px}.font-toggle{font-size:1rem}.header-tools{display:none}.app-shell>.workspace{margin-top:12px}.app-shell>.site-footer{margin-top:14px}.app-shell>.sidebar{top:0;height:100dvh;max-height:none;background:rgba(229,246,245,.96)}.sidebar .side-promo{display:none}.main-panel{background:linear-gradient(125deg,#e8fcf9b3,#dcf2f980);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.mobile-bottom{background:rgba(230,248,250,.8);backdrop-filter:blur(22px)}.font-options{right:-49px}.site-header>.brand span{overflow-wrap:anywhere}.site-header>.brand img{flex-shrink:0}}
@media(prefers-reduced-transparency:reduce){.app-shell>.site-header,.app-shell>.sidebar,.main-panel,.app-shell>.site-footer,.product-card,.mobile-bottom{background:#eff8f8;backdrop-filter:none;-webkit-backdrop-filter:none}}
/* Compact at rest; focus expands search without moving neighbouring controls. */
.site-header>.search{width:min(100%,24rem);justify-self:start;transition:width .2s ease}
.site-header>.search:focus-within{width:100%}
.hero{min-height:0;padding:14px 20px;gap:16px}
.hero h1{font-size:1.625rem;line-height:1.2;margin:0 0 6px}
.hero p{font-size:1rem;line-height:1.4;margin:0}
.hero-note{font-size:1.25rem;line-height:1.15}
@media(max-width:760px){.hero{padding:12px 14px}.hero h1{font-size:1.375rem}.site-header>.search{width:min(100%,24rem)}}
@media(prefers-reduced-motion:reduce){.site-header>.search{transition:none}}
