/* Shell Paints v59: larger-screen presentation. Phone styles stay in the
   original stylesheet, including short mobile landscape viewports. */
.wideCustomerNav{display:none}
@media (min-width:768px) and (min-height:601px), (min-width:1101px), (orientation:landscape) and (min-width:568px) and (max-height:600px){
  .app{--workspace-width:1240px;--page-gutter:28px;--wide-header-height:76px}
  .app>header,.homeHeroMode>header{position:sticky;inset:auto;top:0;display:flex;height:calc(var(--wide-header-height) + env(safe-area-inset-top));gap:14px;padding:env(safe-area-inset-top) var(--page-gutter) 0;background:#fffdf9f5;border-bottom:1px solid var(--premium-line);box-shadow:0 3px 16px #30231509;backdrop-filter:blur(14px);z-index:35}
  .app>header .brand,.homeHeroMode>header .brand{position:static;display:flex!important;transform:none;flex:0 0 auto;order:1}
  .app>header .brand img{width:114px;height:58px}
  .app>header>.menuIcon{display:none}
  .app>header>.backArrow{order:0;width:36px;height:36px;min-width:36px;font-size:24px}
  .app>header>.headerActions{order:3;margin-left:auto;display:flex;align-items:center;gap:4px}
  .homeHeroMode>header .searchHeaderIcon{display:inline-grid}
  .wideCustomerNav{display:flex;align-items:center;gap:2px;order:2;margin-left:auto}
  .wideCustomerNav button{position:relative;min-height:42px;padding:10px 12px;background:none;color:var(--navy-2);box-shadow:none;border-radius:8px;font-size:13px;font-weight:650;white-space:nowrap}
  .wideCustomerNav button:hover{background:#efe5d655}
  .wideCustomerNav button.active{color:var(--gold-3);background:#efe5d680}
  .wideCustomerNav button.active:after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;background:var(--gold-2);border-radius:2px}
  .app main{padding-bottom:40px;min-height:calc(100dvh - var(--wide-header-height))}
  .app main>section:not(.auth):not(.roleGate),.customHome>section:not(.hero),.customizableHomeSection>section{width:100%;max-width:var(--workspace-width);padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
  .catalog,.shadeCatalogue,.visual,.profile,.ordersPage{padding-top:32px}
  .catalog>h1,.shadeCatalogue>h1,.visual>h1,.profile>h1,.ordersPage>h1{font-size:48px;line-height:1.05;margin:8px 0 16px}
  .catalog>p:not(.eyebrow),.shadeIntro,.visual>p:not(.eyebrow){font-size:15px;max-width:760px;margin:0 0 20px}
  .app input:not([type=range]):not([type=checkbox]):not([type=radio]),.app select,.app textarea{font-size:14px;padding:12px;min-width:0}
  .app .search{height:46px;padding-left:44px!important;font-size:14px}
  .app label{font-size:13px;line-height:1.5}
  .app button:focus-visible,.app a:focus-visible{outline:3px solid #a97828;outline-offset:3px}
  .catalogDivisions,.shadeCatalogueTabs{max-width:760px;margin:18px 0}
  .catalogDivisions button,.shadeCatalogueTabs button{font-size:13px;min-height:42px}
  .chips{gap:8px;margin:12px 0 22px}
  .chips button{font-size:13px;padding:8px 14px}
  .shadeFamilyChips{flex-wrap:wrap;overflow:visible}

  /* Home: independent card composition; per-device hero art/settings retained. */
  .homeHeroMode .customHome>.customizableHomeSection:not(.hero){width:100%;max-width:none}
  .homeHeroMode .homeActions,.homeActions{max-width:var(--workspace-width);margin:0 auto;padding:22px var(--page-gutter)}
  .homeHeroMode .primaryTiles,.primaryTiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
  .homeHeroMode .primaryTiles button,.primaryTiles button{min-height:0;height:auto;aspect-ratio:1.65/1;padding:18px;border-radius:16px}
  .primaryTiles .mockupImageCard{background-size:cover}
  .homeHeroMode .primaryTiles b,.primaryTiles b{font-size:25px}
  .homeHeroMode .miniTiles,.miniTiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px}
  .homeHeroMode .miniTiles button,.miniTiles button{min-height:70px;padding:12px;font-size:13px}
  .homeHeroMode .categorySection,.homeHeroMode .collectionSection{padding:28px var(--page-gutter)}
  .sectionTitle{margin-bottom:18px}
  .sectionTitle h2{font-size:32px}
  .sectionTitle .link{font-size:13px}
  .finishGroups{gap:22px}
  .finishGroup h3{font-size:11px}
  .homeHeroMode .finishCards button,.finishCards button{flex-basis:120px;height:150px}
  .finishCards b{font-size:15px}
  .homeHeroMode .collections,.collections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;overflow:visible;scroll-snap-type:none;padding-bottom:0}
  .homeHeroMode .collections article,.collections article{width:100%;min-width:0;height:220px;min-height:0;flex-basis:auto;padding:24px}
  .collections b{font-size:28px}
  .collections small{font-size:14px}
  .categoryCards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:18px}
  .categoryCards button{display:flex;position:relative;flex-direction:column;align-items:stretch;min-height:220px}
  .categoryTexture{height:120px}
  .categoryCards b{font-size:20px}
  .homeHeroMode .productGrid,.productGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
  .product,.catalog.texuraa .product{display:block;min-height:0;padding:0 0 16px;border-radius:16px}
  .product .swatch,.catalog.texuraa .product .swatch{position:relative;width:100%;height:auto;aspect-ratio:1.25/1;margin:0 0 14px;border-radius:15px 15px 0 0}
  .catalog.texuraa .product:after{display:none}
  .product>small,.product>b,.product>p,.catalog.texuraa .product>small,.catalog.texuraa .product>b,.catalog.texuraa .product>p{margin-left:14px;margin-right:14px}
  .product>b,.catalog.texuraa .product>b{font-size:23px;line-height:1.15;margin-top:5px;margin-bottom:5px}
  .product>small{font-size:9px}
  .product>p{font-size:12px;line-height:1.4}
  .steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}

  /* Full catalogue is a compact grid. Preview shade strips remain scrollable. */
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px}
  .wallLargeCatalogueMode .shadeGrid>button{padding:8px;border-radius:13px;min-width:0!important;align-self:start}
  .wallLargeCatalogueMode .shadeGrid b{font-size:13px;line-height:1.3}
  .wallLargeCatalogueMode .shadeGrid small{font-size:12px}
  .productShadeGrid>button,.shadeGrid>button{flex-basis:130px!important;width:130px!important;min-width:130px!important}
  .productShadeGrid b,.shadeGrid b{font-size:12px;line-height:1.3}
  .productShadeGrid small,.shadeGrid small{font-size:11px}

  /* Visualiser and colour mockups: preview left, controls right. */
  .previewWorkspace{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:28px;margin-top:18px}
  .previewWorkspaceRoom,.previewWorkspaceControls{min-width:0}
  .previewWorkspaceRoom{position:sticky;top:calc(var(--wide-header-height) + 18px)}
  .previewWorkspaceRoom .wallPaintRoomPreview,.previewWorkspaceRoom .moreColourPreview,.previewWorkspaceRoom .visualRoomPreviewLarge{width:100%;margin:0;padding:0;border:0;border-radius:16px;box-shadow:none}
  .previewWorkspaceRoom .visualModeTabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 12px}
  .previewWorkspaceRoom .visualModeTabs button{font-size:12px;min-height:42px}
  .previewWorkspaceRoom .sceneGallery .shadePreview{aspect-ratio:4/3;border-radius:16px;max-height:none}
  .previewWorkspaceRoom .shadePreview img,.previewWorkspaceRoom .shadePreview canvas{display:block;width:100%;height:100%;object-fit:cover}
  .previewWorkspaceControls{padding:20px;border:1px solid var(--premium-line);border-radius:18px;background:#fffdf9b8;box-shadow:var(--premium-shadow-soft)}
  .previewWorkspaceControls h2,.previewWorkspaceControls h3{font-size:26px;margin:0 0 12px}
  .previewWorkspaceControls .compactShadeSearch,.previewWorkspaceControls .wallShadePreviewHeading.compactShadeSearch{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
  .previewWorkspaceControls .compactShadeSearch h2{width:100%;margin:0}
  .previewWorkspaceControls .compactShadeSearch .search{flex:1;min-width:170px}
  .previewWorkspaceControls .shadeFamilyChips{flex-wrap:wrap;margin:0 0 14px;gap:6px}
  .previewWorkspaceControls .shadeFamilyChips button{font-size:11px;padding:7px 10px}
  .previewWorkspaceControls .selectedShadeBar{position:static;width:100%;max-width:none;margin:20px 0 0;grid-template-columns:36px minmax(0,1fr);padding:12px;box-shadow:none;gap:10px}
  .previewWorkspaceControls .selectedShadeBar>span{width:36px;height:36px}
  .previewWorkspaceControls .selectedShadeBar>button{grid-column:1/-1;width:100%;margin-top:4px;min-height:42px}
  .previewWorkspaceControls .selectedShadeBar b{font-size:14px}
  .previewWorkspaceControls .notice{font-size:12px;margin:16px 0 0}
  .previewWorkspaceControls .selectVisualizerShade{width:100%;margin-top:16px}
  .previewWorkspace .visualUpload{height:auto;min-height:340px;margin:0;width:100%;border-radius:16px}
  .previewWorkspace .visualUpload img{height:auto;max-height:540px}
  .previewWorkspace .compare{margin:12px 0 0}
  .moreColourSelection{padding:12px 0;margin:0;gap:12px}
  .visual>label{max-width:500px;padding:12px;margin-bottom:18px}
  .wallShadePreviewMode,.productMoreColoursMode{padding-bottom:38px}
  .shadeDisclaimer{font-size:11px;line-height:1.5}

  /* Product details are a full workspace instead of a tall mobile sheet. */
  .productOverlay{align-items:center;justify-content:center;padding:24px;z-index:80}
  .productSheet{width:min(1160px,100%)!important;max-width:1160px;height:auto!important;max-height:calc(100dvh - 48px)!important;min-height:0;padding:28px!important;border:1px solid var(--premium-line);border-radius:22px!important;overflow:auto;background:var(--cream-1)}
  .productSheet>.close.backArrow{position:sticky;left:0;right:auto;top:0;z-index:10;margin:0 0 14px;width:38px;height:38px;background:#fffdf9f2;box-shadow:0 3px 10px #0001}
  .productDesktopLayout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}
  .productMediaColumn,.productDetailsColumn{min-width:0}
  .productMediaColumn .detailArt{border-radius:16px;overflow:hidden;min-height:0}
  .productMediaColumn .detailArt.coverMedia img{width:100%;height:auto;max-height:440px;object-fit:cover}
  .productMediaColumn .detailArt.containMedia img{max-height:400px;object-fit:contain}
  .productMediaColumn .productMockupSection,.productMediaColumn .productShadeSection,.productMediaColumn .creativoSection{margin:16px 0 0!important;padding:14px}
  .productMediaColumn .productMediaStrip{padding:10px 0}
  .productDetailsColumn .productIntro{padding:0;min-height:0}
  .productDetailsColumn .productIntro h2{font-size:38px;line-height:1.06;margin:8px 0 14px}
  .productDetailsColumn .productDescription{font-size:14px;line-height:1.6}
  .productDetailsColumn .productContainerDisplay{position:relative;float:right;top:auto;right:auto;width:86px;height:100px;margin:0 0 8px 12px}
  .productDetailsColumn .productFeatureChips,.productDetailsColumn .productSpecs{margin:16px 0}
  .productDetailsColumn .productSpecs{grid-template-columns:1fr 1fr}
  .productDetailsColumn .productSpecs dd{font-size:13px;line-height:1.45}
  .productDetailsColumn .productSpecs dt{font-size:10px}
  .productDetailsColumn .packSelector{margin:18px 0;padding:14px}
  .productDetailsColumn>.two,.productDetailsColumn>label,.productDetailsColumn>textarea{margin:12px 0}
  .productDetailsColumn>.two{grid-template-columns:1fr 1fr}
  .productDetailsColumn>button:last-child{width:100%;margin:16px 0 0}

  /* Account, orders, sign-in and operational screens. */
  .profile{max-width:960px!important}
  .profile form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;padding:22px;border:1px solid var(--premium-line);border-radius:16px;background:#fffdf9}
  .profile form>.two,.profile form>button{grid-column:1/-1}
  .profile form>button{justify-self:start;min-width:240px;margin-top:14px}
  .profile .support{max-width:640px;flex-direction:row}
  .ordersPage .stack{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}
  .orderCard{min-width:0;padding:22px;font-size:14px}
  .auth,.portalAuth{width:min(100% - 48px,540px);margin:40px auto}
  .sheet:not(.productSheet){width:min(600px,100%);max-width:100%;padding:32px}
  .payment .amount{font-size:46px}
  .toast{top:calc(var(--wide-header-height) + 12px);left:auto;right:24px;max-width:360px}

  /* Admin: permanent sidebar, wider forms and a docked hero preview. */
  .adminMode>header{display:none!important}
  .adminMode main{padding:0;min-height:100dvh}
  .adminShell{display:grid;grid-template-columns:210px minmax(0,1fr);padding:76px 0 0;min-height:100dvh;overflow:visible}
  .adminMobileTop{display:grid;position:fixed;inset:0 0 auto;height:76px;grid-template-columns:68px minmax(0,1fr) 42px;gap:14px;padding:0 28px;background:#fffdf9f5;border-bottom:1px solid var(--premium-line);z-index:55}
  .adminMobileTop img{width:62px;height:52px}
  .adminMobileTop b{font-size:18px}
  .adminMobileTop small{font-size:10px}
  .adminSidebar,.adminShell aside{display:flex!important;position:sticky;top:76px;min-height:calc(100dvh - 76px);height:calc(100dvh - 76px);padding:22px 14px;overflow-y:auto;flex-direction:column;gap:5px}
  .adminSidebar h2{display:block;font-size:24px;margin:0 0 20px}
  .adminSidebar h2 small{font-size:10px}
  .adminSidebar>button{font-size:13px;min-height:42px}
  .adminMobileNav,.adminMoreOverlay{display:none!important}
  .adminBody{width:100%;min-width:0;max-width:1440px!important;padding:28px 28px 44px!important;margin:0 auto}
  .adminPageHead h1{font-size:38px}
  .adminShell .metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .adminShell .metrics article{min-width:0;padding:18px}
  .adminShell .metrics article:last-child{grid-column:auto}
  .adminShell .metrics b{font-size:30px}
  .adminShell .adminList>article{grid-template-columns:minmax(180px,1fr) auto auto;gap:16px;padding:18px}
  .adminShell .productAdminList>article{grid-template-columns:68px minmax(160px,1fr) auto}
  .adminShell .actions{display:flex!important;width:auto;gap:8px}
  .adminShell .actions button,.adminShell .actions .button{width:auto;min-height:38px;font-size:11px;padding:9px 14px}
  .adminShell .productToolbar{position:static;display:flex;flex-direction:row;align-items:center;margin:0;padding:14px}
  .adminShell .productToolbar input{max-width:480px;order:1}
  .adminShell .productToolbar>button{order:2;margin-left:auto}
  .editorGrid,.appearanceAdmin .editorGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}
  .editorChecks{grid-template-columns:1fr 1fr}
  .variantGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mediaGrid,.mockupAdminGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mockupAdminGrid article{display:grid;grid-template-columns:1fr}
  .mockupAdminGrid img,.mockupAdminGrid div{grid-column:auto}
  .mockupUploadRow{grid-template-columns:1fr 1fr auto}
  .mockupTitleEditor{grid-template-columns:1fr 1fr}
  .shadeAdminToolbar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shadeAdminGrid{grid-template-columns:1fr}
  .productSpecificShades article{grid-template-columns:54px minmax(120px,1fr) auto auto auto}
  .productEditor{width:min(1080px,92vw);height:100dvh;max-height:100dvh;border-radius:0;padding:0 28px 40px!important}
  .editorHead{margin:0 -28px 20px;padding:18px 70px 14px 28px}
  .editorSave{position:sticky;inset:auto;bottom:0;padding:14px 0;margin:0;background:#fffdf9f5}
  .appearanceHistoryBar,.heroEditorTabs{top:76px}
  .appearancePublish{bottom:16px;width:100%;min-height:44px}
  .heroAssetPreviews{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px}
  .heroGroupedControlGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .heroDeviceEditor.grouped{padding:16px;gap:12px}
  .heroSettingGroupBody{padding:16px}
  .heroSettingGroup>summary{padding:14px 16px}
  .heroPreviewOverlay{top:96px;right:24px;width:340px;max-height:calc(100dvh - 120px);overflow:auto}
  .adminBody:has(.heroPreviewOverlay){padding-right:390px!important}
  .heroPreviewToolbar{grid-template-columns:1fr 34px}
  .heroPreviewToolbar>b{display:none}
  .heroPreviewModeTabs button{font-size:8px;padding:6px 3px!important}
  .heroLivePreview.mobile{width:min(100%,260px)}
  .promoterDash{display:grid;grid-template-columns:190px minmax(0,1fr)}
  .promoterDash aside{position:sticky;top:76px;display:flex;flex-direction:column;height:calc(100dvh - 76px);padding:24px 16px;overflow:auto}
  .promoterDash aside h2{display:block;font-size:25px}
  .promoterDash .metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* Tablet keeps quick access at the bottom and uses a compact header. */
@media (min-width:768px) and (max-width:1199px) and (min-height:601px), (min-width:1101px) and (max-width:1199px){
  .app{--workspace-width:1040px;--page-gutter:24px;--wide-header-height:68px}
  .app>header .brand img{width:94px;height:50px}
  .wideCustomerNav button{font-size:11px;padding:9px 8px}
  .wideCustomerNav button:nth-last-child(-n+2){display:none}
  .app>header .headerIcon{width:34px;height:34px;padding:6px}
  .app>header .headerIcon svg{width:22px;height:22px}
  .app>header{gap:8px}
  .app main{padding-bottom:94px}
  .bottom{display:grid;position:fixed;bottom:0;left:0;right:0;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(66px + env(safe-area-inset-bottom));padding:4px 24px env(safe-area-inset-bottom);background:#fffdf9f5;border-top:1px solid var(--premium-line);border-radius:0;backdrop-filter:blur(16px);z-index:40}
  .bottom button{display:flex;justify-content:center;align-items:center;gap:10px;background:none;box-shadow:none;color:#53606a;font-size:12px;padding:10px 8px;border-radius:8px}
  .bottom span{height:24px;display:block;font-size:0}
  .bottom svg{width:22px;height:22px}
  .bottom button.active{border-top:0;background:#efe5d680;color:var(--gold-3)}
  .bottom button.active:after{display:none}
  .catalog>h1,.shadeCatalogue>h1,.visual>h1,.profile>h1,.ordersPage>h1{font-size:40px}
  .homeHeroMode .primaryTiles,.primaryTiles{gap:12px}
  .homeHeroMode .primaryTiles button,.primaryTiles button{aspect-ratio:1.35/1;padding:14px}
  .homeHeroMode .primaryTiles b,.primaryTiles b{font-size:21px}
  .homeHeroMode .productGrid,.productGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px}
  .homeHeroMode .collections article,.collections article{height:190px;padding:18px}
  .collections b{font-size:23px}
  .collections small{font-size:12px}
  .homeHeroMode .finishCards button,.finishCards button{flex-basis:102px;height:130px}
  .previewWorkspace{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}
  .previewWorkspaceControls{padding:14px}
  .previewWorkspaceControls h2,.previewWorkspaceControls h3{font-size:23px}
  .previewWorkspaceControls .compactShadeSearch .search{flex-basis:100%;min-width:0}
  .productShadeGrid>button,.shadeGrid>button{flex-basis:112px!important;width:112px!important;min-width:112px!important}
  .productOverlay{padding:18px}
  .productSheet{padding:22px!important;max-height:calc(100dvh - 36px)!important}
  .productDesktopLayout{gap:20px}
  .productDetailsColumn .productIntro h2{font-size:32px}
  .productDetailsColumn .productSpecs{grid-template-columns:1fr}
  .adminShell{grid-template-columns:172px minmax(0,1fr);padding-top:68px}
  .adminMobileTop{height:68px}
  .adminSidebar,.adminShell aside{top:68px;height:calc(100dvh - 68px);min-height:calc(100dvh - 68px);padding:18px 10px}
  .adminSidebar h2{font-size:21px}
  .adminSidebar>button{padding:10px!important;font-size:12px}
  .adminBody{padding:24px 20px 40px!important}
  .adminShell .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adminShell .adminList>article{grid-template-columns:minmax(0,1fr);gap:12px}
  .adminShell .productAdminList>article{grid-template-columns:58px minmax(0,1fr)}
  .adminShell .productAdminList .actions{grid-column:1/-1}
  .mockupAdminGrid,.mediaGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mockupUploadRow{grid-template-columns:1fr 1fr}
  .heroAssetPreviews{grid-template-columns:repeat(2,minmax(0,1fr))}
  .heroPreviewOverlay{width:min(340px,42vw);right:18px;top:86px}
  .adminBody:has(.heroPreviewOverlay){padding-right:20px!important}
  .appearanceHistoryBar,.heroEditorTabs{top:68px}
  .promoterDash{grid-template-columns:160px minmax(0,1fr)}
  .promoterDash .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:960px) and (max-width:1199px) and (min-height:601px), (min-width:1101px) and (max-width:1199px){
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (min-width:1200px){
  .bottom{display:none!important}
  .shadeCatalogue.wallLargeCatalogueMode{--workspace-width:1360px}
}
@media (min-width:1440px){
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .app{--page-gutter:36px}
}

/* v60: phone landscape workspaces; portrait rules and saved hero heights remain intact. */
@media (orientation:landscape) and (min-width:568px) and (max-height:600px){
  .app{--workspace-width:1100px;--page-gutter:16px;--wide-header-height:44px}
  .app>header,.homeHeroMode>header{height:calc(44px + env(safe-area-inset-top));gap:10px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
  .app>header .brand img{width:74px;height:38px}
  .app>header>.menuIcon{display:inline-grid;place-items:center;order:0;width:32px;height:32px;min-height:32px;padding:0;font-size:20px}
  .app>header>.backArrow{width:32px;height:32px;min-width:32px}
  .wideCustomerNav{display:none}
  .app>header .headerIcon{width:32px;height:32px;padding:5px}
  .app>header .headerIcon svg{width:22px;height:22px}
  .app>header .adminChip{font-size:9px;padding:6px 9px}
  .app main{padding-bottom:60px}
  .app main>section:not(.auth):not(.roleGate),.customHome>section:not(.hero),.customizableHomeSection>section{max-width:var(--workspace-width)!important;margin-left:auto;margin-right:auto}
  .homeHeroMode .homeActions,.homeActions{width:100%;max-width:var(--workspace-width)!important;padding:14px var(--page-gutter)}
  .homeHeroMode .primaryTiles,.primaryTiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .homeHeroMode .primaryTiles button,.primaryTiles button{aspect-ratio:1.5/1;padding:10px;border-radius:12px}
  .homeHeroMode .primaryTiles b,.primaryTiles b{font-size:clamp(15px,2.4vw,21px)}
  .homeHeroMode .miniTiles,.miniTiles{gap:10px;margin-top:10px}
  .homeHeroMode .miniTiles button,.miniTiles button{min-height:48px;padding:8px;font-size:11px}
  .homeHeroMode .categorySection,.homeHeroMode .collectionSection{padding:18px var(--page-gutter)}
  .sectionTitle h2{font-size:26px}
  .sectionTitle{margin-bottom:12px}
  .homeHeroMode .collections article,.collections article{height:150px;padding:16px}
  .collections b{font-size:22px}
  .collections small{font-size:11px}
  .homeHeroMode .finishCards button,.finishCards button{flex-basis:96px;height:116px}
  .homeHeroMode .productGrid,.productGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  .product>b,.catalog.texuraa .product>b{font-size:19px}
  .product>p{font-size:11px}
  .catalog,.shadeCatalogue,.visual,.profile,.ordersPage{padding-top:18px}
  .catalog>h1,.shadeCatalogue>h1,.visual>h1,.profile>h1,.ordersPage>h1{font-size:32px;margin:4px 0 10px}
  .catalog>p:not(.eyebrow),.shadeIntro,.visual>p:not(.eyebrow){font-size:13px;margin-bottom:12px}
  .chips{margin:8px 0 12px;gap:6px}
  .chips button{font-size:11px;padding:6px 10px}
  .catalogDivisions,.shadeCatalogueTabs{margin:10px 0}
  .catalogDivisions button,.shadeCatalogueTabs button{min-height:36px;font-size:12px}
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px}
  .productShadeGrid>button,.shadeGrid>button{width:100px!important;min-width:100px!important;flex-basis:100px!important}
  .wallLargeCatalogueMode .shadeGrid>button{width:100%!important;min-width:0!important}
  .previewWorkspace{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;margin-top:10px}
  .previewWorkspaceRoom{top:54px}
  .previewWorkspaceRoom .sceneGallery .shadePreview{aspect-ratio:4/3;max-height:calc(100dvh - 124px)}
  .previewWorkspaceRoom .visualModeTabs{margin-bottom:8px;gap:4px}
  .previewWorkspaceRoom .visualModeTabs button{min-height:32px;padding:7px;font-size:10px}
  .previewWorkspaceControls{padding:12px;border-radius:12px}
  .previewWorkspaceControls h2,.previewWorkspaceControls h3{font-size:21px;margin-bottom:8px}
  .previewWorkspaceControls .compactShadeSearch{gap:6px;margin-bottom:8px}
  .previewWorkspaceControls .compactShadeSearch .search{flex-basis:100%;height:36px;min-width:0;font-size:12px}
  .previewWorkspaceControls .shadeFamilyChips{margin-bottom:8px;gap:5px}
  .previewWorkspaceControls .shadeFamilyChips button{font-size:10px;padding:5px 8px}
  .previewWorkspaceControls .selectedShadeBar{margin-top:10px;padding:9px}
  .previewWorkspaceControls .selectedShadeBar b{font-size:12px}
  .moreColourSelection{padding:8px 0;font-size:12px}
  .previewWorkspace .visualUpload{min-height:180px}
  .previewWorkspace .visualUpload img{max-height:calc(100dvh - 128px);object-fit:contain}
  .productOverlay{padding:10px}
  .productSheet{padding:14px!important;max-height:calc(100dvh - 20px)!important;border-radius:14px!important}
  .productDesktopLayout{gap:16px}
  .productSheet>.close.backArrow{width:32px;height:32px;margin-bottom:8px}
  .productDetailsColumn .productIntro h2{font-size:28px}
  .productDetailsColumn .productDescription{font-size:12px}
  .productDetailsColumn .productSpecs{grid-template-columns:1fr}
  .productMediaColumn .detailArt.coverMedia img,.productMediaColumn .detailArt.containMedia img{max-height:calc(100dvh - 110px)}
  .profile form{padding:14px;gap:0 14px}
  .ordersPage .stack{gap:12px}
  .orderCard{padding:14px;font-size:12px}
  .auth,.portalAuth{margin:16px auto;padding-top:12px;width:min(100% - 32px,680px)}
  .auth h1,.portalAuth h1{font-size:32px}
  .auth form,.portalAuth form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;padding:14px}
  .auth form>.two,.portalAuth form>.two,.auth form>button,.portalAuth form>button,.auth form>p,.portalAuth form>p{grid-column:1/-1}
  .sheet:not(.productSheet){padding:18px;max-height:calc(100dvh - 20px);overflow:auto}
  .bottom{display:grid!important;position:fixed;inset:auto 0 0;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(44px + env(safe-area-inset-bottom));padding:2px max(16px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(16px,env(safe-area-inset-left));border-radius:0;background:#fffdf9f5;backdrop-filter:blur(16px);border-top:1px solid var(--premium-line);z-index:40}
  .bottom button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:5px;border-radius:6px;font-size:10px;box-shadow:none;background:transparent}
  .bottom span{display:block;height:20px;font-size:0}
  .bottom svg{width:20px;height:20px}
  .bottom button.active{border-top:0;background:#efe5d680;color:var(--gold-3)}
  .bottom button.active:after{display:none}
  .adminMode main{padding:0;min-height:100dvh}
  .adminShell{display:grid;grid-template-columns:132px minmax(0,1fr);padding-top:44px;padding-bottom:0;overflow:visible}
  .adminMobileTop{height:44px;grid-template-columns:44px minmax(0,1fr) 32px;gap:9px;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}
  .adminMobileTop img{width:42px;height:34px}
  .adminMobileTop b{font-size:14px}
  .adminMobileTop small{font-size:8px}
  .adminSidebar,.adminShell aside{display:flex!important;top:44px;height:calc(100dvh - 44px);min-height:0;padding:12px 8px}
  .adminSidebar h2{font-size:18px;margin-bottom:12px}
  .adminSidebar>button{font-size:11px;min-height:34px;padding:8px!important}
  .adminBody{padding:16px!important;min-width:0}
  .adminPageHead h1{font-size:26px}
  .adminMobileNav,.adminMoreOverlay{display:none!important}
  .adminShell .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .adminShell .metrics article{padding:12px;min-height:76px}
  .adminShell .metrics b{font-size:24px}
  .adminShell .adminList>article,.adminShell .productAdminList>article{grid-template-columns:minmax(0,1fr);gap:8px;padding:12px}
  .adminShell .actions{flex-wrap:wrap}
  .adminShell .actions button{min-height:34px;padding:7px 10px}
  .editorGrid,.appearanceAdmin .editorGrid,.heroGroupedControlGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
  .mediaGrid,.mockupAdminGrid,.heroAssetPreviews{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .heroAssetPreviews img{height:auto}
  .heroImageGestureSurface{min-height:0}
  .heroPreviewOverlay{top:54px;right:12px;width:min(280px,43vw);max-height:calc(100dvh - 66px);overflow:auto}
  .adminBody:has(.heroPreviewOverlay){padding-right:16px!important}
  .heroPreviewToolbar{grid-template-columns:1fr 30px}
  .heroLivePreview.mobile{width:min(100%,180px)}
  .heroSettingGroupBody{padding:12px}
  .heroSettingGroup>summary{padding:10px 12px}
  .appearanceHistoryBar,.heroEditorTabs{top:44px}
  .appearancePublish{bottom:10px}
  .productEditor{width:min(100%,920px);padding:0 16px 24px!important}
  .editorHead{margin:0 -16px 12px;padding:12px 60px 12px 16px}
  .promoterDash{grid-template-columns:132px minmax(0,1fr)}
  .promoterDash aside{top:44px;height:calc(100dvh - 44px);padding:12px 8px}
  .promoterDash aside h2{font-size:20px}
  .promoterDash .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (orientation:landscape) and (min-width:568px) and (max-width:699px) and (max-height:600px){
  .homeHeroMode .productGrid,.productGrid,.wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .previewWorkspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .previewWorkspaceControls{padding:9px}
  .previewWorkspaceControls h2,.previewWorkspaceControls h3{font-size:18px}
  .adminShell,.promoterDash{grid-template-columns:112px minmax(0,1fr)}
  .adminBody{padding:12px!important}
  .editorGrid,.appearanceAdmin .editorGrid,.heroGroupedControlGrid{grid-template-columns:1fr}
}
/* Tablet landscape: compact spacing, full navigation and wider catalogue rows. */
@media (orientation:landscape) and (min-width:768px) and (max-width:1100px) and (min-height:601px), (orientation:landscape) and (min-width:1101px) and (max-width:1366px) and (min-height:601px) and (pointer:coarse){
  .app{--workspace-width:1366px;--page-gutter:24px;--wide-header-height:58px}
  .app>header,.homeHeroMode>header{height:calc(58px + env(safe-area-inset-top))}
  .app>header .brand img{width:88px;height:46px}
  .app main{padding-bottom:26px}
  .bottom{display:none!important}
  .wideCustomerNav button{font-size:12px;padding:8px 9px}
  .wideCustomerNav button:nth-last-child(-n+2){display:block}
  .homeHeroMode .homeActions,.homeActions{width:100%;max-width:1366px!important;padding:18px var(--page-gutter)}
  .homeHeroMode .primaryTiles,.primaryTiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .homeHeroMode .primaryTiles button,.primaryTiles button{aspect-ratio:1.65/1;padding:14px}
  .homeHeroMode .primaryTiles b,.primaryTiles b{font-size:24px}
  .homeHeroMode .collections article,.collections article{height:185px;padding:20px}
  .homeHeroMode .productGrid,.productGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
  .wallLargeCatalogueMode .shadeGrid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px}
  .catalog,.shadeCatalogue,.visual,.profile,.ordersPage{padding-top:22px}
  .catalog>h1,.shadeCatalogue>h1,.visual>h1,.profile>h1,.ordersPage>h1{font-size:38px;margin-bottom:12px}
  .previewWorkspace{gap:20px;margin-top:12px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .previewWorkspaceControls{padding:16px}
  .previewWorkspaceRoom .visualModeTabs button{min-height:36px}
  .previewWorkspaceRoom .sceneGallery .shadePreview{max-height:calc(100dvh - 154px)}
  .productSheet{padding:22px!important;max-height:calc(100dvh - 36px)!important}
  .productDesktopLayout{gap:22px}
  .adminShell{grid-template-columns:176px minmax(0,1fr);padding-top:58px}
  .adminMobileTop{height:58px}
  .adminSidebar,.adminShell aside{top:58px;min-height:0;height:calc(100dvh - 58px)}
  .adminBody{padding:22px!important}
  .adminShell .metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
  .heroPreviewOverlay{top:72px;right:18px;max-height:calc(100dvh - 90px)}
  .appearanceHistoryBar,.heroEditorTabs{top:58px}
  .promoterDash{grid-template-columns:176px minmax(0,1fr)}
  .promoterDash aside{top:58px;height:calc(100dvh - 58px)}
  .promoterDash .metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
