@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{--forest:#173b34;--forest-deep:#0f2925;--mint:#dfe9e3;--green:#2d5e54;--green-soft:#edf4f0;--lime:#dce7b4;--paper:#f4f2ed;--white:#fff;--ink:#171b18;--muted:#5d655f;--line:#d6d1c8;--rust:#b75e49;--rust-soft:#f6e4df;--amber:#906126;--amber-soft:#f7f0e3;--radius:10px;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink);font:400 14px/1.55 var(--font)}
body.login-page{background-image:linear-gradient(rgba(244,242,237,var(--login-background-opacity,.42)),rgba(244,242,237,var(--login-background-opacity,.42))),var(--login-background-image);background-position:center;background-size:cover;background-attachment:fixed}
@media(max-width:620px){body.login-page{background-image:linear-gradient(rgba(244,242,237,var(--login-background-opacity,.42)),rgba(244,242,237,var(--login-background-opacity,.42))),var(--login-mobile-background-image,var(--login-background-image))}}
.auth-layout.login-layout{align-items:stretch;background:transparent}
.auth-layout.login-layout .auth-aside{background-color:rgba(23,59,52,var(--login-presentation-opacity,1))}
.auth-layout.login-layout .auth-panel-login{background-color:rgba(255,255,255,var(--login-form-opacity,1))}
button,input,select{font:inherit}
a{color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a9d184;outline-offset:2px}
.topbar{height:78px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding:0 max(28px,calc((100vw - 1600px)/2));background:var(--forest);border-bottom:1px solid var(--forest-deep);color:#fff;gap:0}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;min-width:205px}.brand-mark{width:38px;height:38px;flex:none;border-radius:8px;display:grid;place-items:center;background:var(--lime);color:var(--forest-deep);font:800 18px var(--display)}.brand-logo{width:auto;max-width:var(--brand-logo-max-width,112px);height:var(--brand-logo-size,44px);flex:none;object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font:800 15px var(--display);letter-spacing:.3px}.brand small{color:#d2e1d9;font-size:11px;margin-top:1px}
.brand.brand-with-logo{min-width:0}
@media(max-width:620px){.brand-logo{height:min(var(--brand-logo-size,44px),56px);max-width:min(var(--brand-logo-max-width,112px),110px)}}
.top-nav{display:flex;align-self:stretch;align-items:center;justify-self:center;gap:5px}.nav-link{position:relative;display:flex;align-items:center;min-height:40px;padding:0 15px;border-radius:5px;color:#d2e1d9;text-decoration:none;font-size:13px;font-weight:700}.nav-link:hover{background:#285047;color:#fff}.nav-link.active{background:var(--lime);color:var(--forest-deep)}
.user-menu{justify-self:end;display:flex;align-items:center;gap:10px;font-size:12px}.user-avatar{width:32px;height:32px;display:inline-grid;place-items:center;flex:none;border-radius:50%;background:var(--mint);color:var(--forest);font-size:12px;font-weight:700}.user-name{color:#fff;font-weight:600}.logout-form{margin-left:9px;padding-left:17px;border-left:1px solid #ffffff40}.text-button{border:1px solid transparent;border-radius:5px;background:none;padding:8px 10px;color:#d2e1d9;font-size:12px;cursor:pointer}.text-button:hover{border-color:#f0d7d0;background:var(--rust-soft);color:var(--rust)}
.page-shell{width:min(1180px,calc(100% - 56px));margin:0 auto;padding:32px 0 80px}.notice{padding:13px 16px;border-radius:6px;margin-bottom:22px;font-size:13px}.notice.success{background:var(--green-soft);color:var(--forest);border:1px solid #c6dfd0}.notice.error{background:var(--rust-soft);color:#8d3b26;border:1px solid #f0cfc2}
.pwa-install-notice{display:flex;align-items:center;gap:13px;margin-bottom:22px;padding:12px 14px;border:1px solid #b9d4c2;border-radius:7px;background:var(--green-soft);color:var(--forest);box-shadow:0 8px 22px rgba(23,59,52,.06)}.pwa-install-notice[hidden]{display:none}.pwa-install-mark{width:34px;height:34px;display:grid;place-items:center;flex:none;border-radius:6px;background:var(--forest);color:var(--lime);font:800 19px var(--display)}.pwa-install-copy{min-width:0;flex:1}.pwa-install-copy strong{display:block;font:800 13px var(--display)}.pwa-install-copy p{margin:2px 0 0;color:var(--muted);font-size:11px}.pwa-install-action{min-height:36px;padding:0 13px;flex:none;font-size:11px}.pwa-install-dismiss{width:30px;height:30px;display:grid;place-items:center;flex:none;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.pwa-install-dismiss:hover{background:#d8e9de;color:var(--forest)}
.site-footer{padding:14px 24px 20px;border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:11px}
body.login-page .site-footer{border-top-color:#ffffff30;background:var(--forest-deep);color:#e5eee8}
.site-footer p{margin:0}
.site-footer a{color:var(--forest);font-weight:700;text-decoration:none}
body.login-page .site-footer a{color:var(--lime)}
.site-footer a:hover{text-decoration:underline}
.eyebrow{display:flex;align-items:center;gap:8px;color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.live-dot{width:7px;height:7px;border-radius:50%;background:#5aa77a;box-shadow:0 0 0 3px #e5f2e9}.catalog-intro{display:flex;justify-content:space-between;align-items:flex-end;padding:0 0 26px;border-bottom:1px solid var(--line)}h1,h2,p{margin-top:0}.catalog-intro h1,.page-heading h1{font:800 30px/1.2 var(--display);letter-spacing:0;margin:9px 0 5px}.catalog-intro p,.page-heading p{margin:0;color:var(--muted);font-size:13px}.catalog-total{display:flex;align-items:baseline;gap:8px;color:var(--muted);font-size:12px}.catalog-total strong{color:var(--forest);font:800 21px var(--display)}
.catalog-toolbar{padding:20px 0 16px}.search-form{display:grid;grid-template-columns:minmax(220px,1fr) 190px 180px auto;gap:9px}.search-box{height:44px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--muted)}.search-box>span{font-size:23px;line-height:1;color:var(--green)}.search-box input{width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.search-box input:focus-visible{outline:0}.search-box kbd{padding:1px 5px;border:1px solid var(--line);border-radius:4px;background:var(--paper);font:11px var(--font)}.select-wrap select,.stack-form input,.stack-form select{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--ink);font-size:13px}.button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 17px;border:1px solid transparent;border-radius:6px;text-decoration:none;font-weight:700;font-size:12px;cursor:pointer;transition:background .15s,border-color .15s}.button.primary{background:var(--forest);color:var(--white)}.button.primary:hover{background:var(--forest-deep)}.button.secondary{background:var(--white);border-color:var(--line);color:var(--forest)}.button.secondary:hover{border-color:#a8bcb0;background:#f9fbf8}.button.full{width:100%}.search-submit{min-height:44px}.results-meta{display:flex;justify-content:space-between;padding:13px 1px 0;color:var(--muted);font-size:11px}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px;background:var(--white)}table{width:100%;border-collapse:collapse;text-align:left}thead{background:#eef2ed}th{height:39px;padding:0 15px;color:#65736c;font-size:10px;font-weight:700;letter-spacing:.45px;text-transform:uppercase;white-space:nowrap}td{height:55px;padding:8px 15px;border-top:1px solid #edf0eb;font-size:12px}tbody tr:hover{background:#fafbf8}.code-cell{font:600 12px var(--display);color:var(--forest);white-space:nowrap}.code-cell small{display:block;margin-top:2px;color:var(--muted);font:10px var(--font)}.designation-cell{min-width:240px;max-width:520px;font-weight:600}.category-tag,.source-tag,.role-tag{display:inline-flex;padding:4px 8px;border-radius:4px;background:#eef1ee;color:#5b6c62;font-size:10px;font-weight:700;white-space:nowrap}.category-tag.foret{background:#e6f1e9;color:#306548}.category-tag.fraise{background:#f7eadf;color:#97552f}.category-tag.taraud{background:#e9eef3;color:#486278}.category-tag.alesoir{background:#f0eaf6;color:#725188}.category-tag.filiere{background:#fbf1dc;color:#8a641a}.availability{display:inline-flex;align-items:center;gap:7px;color:#637169;font-size:11px;white-space:nowrap}.availability i{width:7px;height:7px;border-radius:50%;background:#a8b1ab}.availability.in-stock{color:#32704d}.availability.in-stock i{background:#4e9e69}.availability.out-stock,.availability.negative{color:#a14b35}.availability.out-stock i,.availability.negative i{background:#c5684f}.availability.unknown{color:#77817c}.stock-cell{width:76px;text-align:right;font:700 13px var(--display);font-variant-numeric:tabular-nums}.stock-cell.negative,.stock-number.negative{color:var(--rust)}.align-right{text-align:right}.row-link{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--green);text-decoration:none;font-size:15px}.row-link:hover{background:var(--green-soft);border-color:#c5dfce}.empty-table{text-align:center;padding:45px 12px}.empty-table>span{display:block;color:#9bb19f;font-size:26px}.empty-table strong{font:700 15px var(--display)}.empty-table p{margin:5px 0 0;color:var(--muted);font-size:12px}.pagination{display:flex;justify-content:center;align-items:center;gap:24px;padding:22px;color:var(--muted);font-size:12px}.pagination a{color:var(--forest);font-weight:700;text-decoration:none}.pagination a:hover{text-decoration:underline}.catalog-total span{white-space:nowrap}.first-import{margin-top:22px;padding:18px 20px;border-left:3px solid var(--green);background:#eaf1e9}.first-import span{font-size:10px;letter-spacing:1px;font-weight:700;color:var(--green)}.first-import p{margin:4px 0;color:var(--muted);font-size:12px}.first-import a{font-size:12px;color:var(--forest);font-weight:700;text-decoration:none}
.auth-layout{min-height:calc(100vh - 200px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;max-width:1050px;margin:0 auto;background:var(--white);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 18px 50px #18352b0b}.auth-aside{position:relative;min-height:510px;display:flex;flex-direction:column;justify-content:center;padding:64px;background:var(--forest);color:var(--white);isolation:isolate;overflow:hidden}.auth-aside:after{position:absolute;z-index:-1;content:"";width:390px;height:390px;right:-115px;bottom:-170px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 48px #ffffff09,0 0 0 96px #ffffff06}.auth-aside .eyebrow{color:var(--lime)}.auth-aside h1{margin:26px 0 17px;font:800 clamp(34px,4vw,52px)/1.08 var(--display);letter-spacing:0}.auth-aside p{max-width:360px;margin:0;color:#d2dfd8;font-size:14px;line-height:1.8}.aside-rule{width:45px;height:2px;margin-top:44px;background:var(--lime)}.aside-caption{margin-top:12px;color:#a8c2b3;font-size:9px;font-weight:700;letter-spacing:1.2px}.auth-panel{padding:54px clamp(28px,5vw,64px)}.auth-panel h2{margin:10px 0 6px;font:800 26px var(--display)}.muted{color:var(--muted);font-size:12px;line-height:1.7}.auth-panel>.muted{margin:0 0 25px}.stack-form{display:grid;gap:15px}.stack-form label{display:grid;gap:6px;font-size:11px;font-weight:700;color:#485650}.stack-form input,.stack-form select{height:43px}.stack-form .button{margin-top:5px;min-height:46px}.helper{margin:19px 0 0;color:var(--muted);font-size:10px}.helper code,.setup-error code{padding:2px 4px;background:#eef1ed;border-radius:3px;font-size:11px}.setup-error{max-width:650px;margin:70px auto;padding:34px;background:var(--white);border:1px solid var(--line);border-radius:7px}.setup-error h1{font:800 24px var(--display)}.setup-error p{color:var(--muted);font-size:13px}
.auth-panel.auth-panel-login{position:relative;padding-top:112px}
.auth-panel-login>.muted,.auth-panel-login>.helper{color:var(--forest-deep)}
.auth-panel-login>.helper{font-weight:600}
.login-brand{position:absolute;top:18px;right:24px;max-width:min(180px,calc(100% - 48px));height:min(var(--brand-logo-size,44px),72px);display:flex;align-items:center;justify-content:flex-end}
.login-brand img{display:block;width:auto;max-width:min(var(--brand-logo-max-width,112px),100%);height:100%;object-fit:contain}
.login-brand>span{color:var(--forest);font:800 15px var(--display)}
@media(max-width:620px){.auth-panel.auth-panel-login{padding-top:84px}.login-brand{top:14px;right:18px;height:min(var(--brand-logo-size,44px),56px)}}
.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px}.page-heading h1{margin-bottom:6px}.admin-heading .button{margin-bottom:2px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:23px}.metric{min-height:95px;padding:16px 18px;background:var(--white);border:1px solid var(--line);border-radius:6px}.metric span,.metric strong{display:block}.metric span{color:var(--muted);font-size:10px;font-weight:600}.metric strong{margin-top:10px;color:var(--forest);font:800 23px var(--display);font-variant-numeric:tabular-nums}.metric strong.metric-date{font-size:14px}.admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:14px}.customer-admin-grid{grid-template-columns:minmax(270px,.6fr) minmax(0,1.4fr)}.admin-column,.admin-side{padding:22px;background:var(--white);border:1px solid var(--line);border-radius:6px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2{margin:4px 0 0;font:700 16px var(--display)}.step-no{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font:700 11px var(--display);color:var(--muted)}.admin-column>p{max-width:590px;margin:9px 0 16px}.upload-form{display:flex;align-items:center;gap:12px;padding:13px;border:1px dashed #becbc0;border-radius:6px;background:#fafbf8}.file-control{position:relative;display:flex;align-items:center;gap:10px;flex:1;min-width:0;cursor:pointer}.file-control>span:nth-child(2){min-width:0}.file-control strong,.file-control small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-control strong{font-size:11px}.file-control small{margin-top:2px;color:var(--muted);font-size:10px}.file-control input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-icon{width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:5px;background:#e6f0e8;color:var(--forest);font:800 10px var(--display)}.csv-icon{background:#f8eddf;color:#9c6732}.upload-form .button{flex:none;min-height:38px;padding:0 12px;font-size:10px}.section-gap{margin-top:28px}.compact-form{gap:10px;margin-top:15px}.compact-form label{font-size:10px}.compact-form input,.compact-form select{height:36px;font-size:12px}.compact-form .button{min-height:38px;margin-top:1px}.account-list{display:grid;margin-top:18px;border-top:1px solid var(--line)}.account-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf0eb}.small-avatar{width:25px;height:25px;font-size:10px}.account-row>span:nth-child(2){min-width:0;flex:1}.account-row strong,.account-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-row strong{font-size:10px}.account-row small{color:var(--muted);font-size:9px}.role-tag{font-size:9px}.history-section{margin-top:25px}.history-section>.section-heading{margin-bottom:12px}.history-section th,.history-section td{padding-left:13px;padding-right:13px}.history-section td{height:46px}.source-tag.xlsm{background:#e7f1e9;color:#33684a}.source-tag.csv{background:#f8ecdf;color:#986138}.table-empty{text-align:center;color:var(--muted)}
.back-link{display:inline-block;margin:0 0 20px;color:var(--green);font-size:12px;font-weight:700;text-decoration:none}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:34px;align-items:start}.detail-main,.stock-panel{background:var(--white);border:1px solid var(--line);border-radius:7px}.detail-main{padding:28px}.detail-main h1{margin:9px 0 4px;font:800 27px/1.3 var(--display)}.detail-code{margin:0;color:var(--muted);font-size:12px}.detail-main h2{margin:30px 0 12px;font:700 15px var(--display)}.spec-list{margin:0}.spec-list div{display:grid;grid-template-columns:minmax(140px,1fr) 1.2fr;gap:15px;padding:9px 0;border-top:1px solid #edf0eb}.spec-list dt{color:var(--muted);font-size:11px}.spec-list dd{font-size:12px;font-weight:600;overflow-wrap:anywhere}.stock-panel{display:grid;justify-items:start;gap:5px;padding:22px}.stock-number{font:800 38px var(--display);color:var(--forest);font-variant-numeric:tabular-nums}.stock-caption,.stock-date{color:var(--muted);font-size:11px}.stock-date{padding-top:12px;margin-top:10px;border-top:1px solid var(--line);width:100%}.empty-state{padding:35px;background:var(--white);border:1px solid var(--line);border-radius:7px}.empty-state h1{font:800 22px var(--display)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.page-shell{width:min(100% - 36px,760px);padding-top:28px}.topbar{padding:0 18px;gap:22px}.brand{min-width:auto}.user-name{display:none}.search-form{grid-template-columns:minmax(190px,1fr) 1fr 1fr}.search-submit{grid-column:1/-1}.admin-grid{grid-template-columns:1fr}.admin-side{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.admin-side>.section-heading{grid-column:1/-1}.account-list{align-self:start;margin-top:15px}.auth-layout{grid-template-columns:1fr minmax(300px,.9fr)}.auth-aside{padding:38px;min-height:450px}.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.topbar{height:62px;padding:0 13px;gap:15px}.brand-mark{width:34px;height:34px}.brand strong{font-size:13px}.brand small{font-size:9px}.top-nav{gap:13px}.nav-link{font-size:11px}.user-menu{gap:7px}.user-avatar{width:27px;height:27px}.logout-form{margin-left:2px}.text-button{font-size:10px}.page-shell{width:calc(100% - 28px);padding:24px 0 46px}.catalog-intro{align-items:flex-start}.catalog-intro h1,.page-heading h1{font-size:24px}.catalog-intro p{max-width:230px;font-size:11px}.catalog-total{display:grid;gap:0;justify-items:end;font-size:9px}.catalog-total strong{font-size:18px}.search-form{grid-template-columns:1fr 1fr}.search-box{grid-column:1/-1}.select-wrap select{font-size:11px;padding:0 8px}.search-submit{grid-column:1/-1}.results-meta{font-size:9px}.catalog-table th,.catalog-table td{padding-left:9px;padding-right:9px}.catalog-table table{min-width:760px}.metric-grid{gap:7px}.metric{padding:13px;min-height:82px}.metric strong{font-size:19px}.metric strong.metric-date{font-size:12px}.admin-heading{align-items:flex-start;gap:12px}.admin-heading>.button{font-size:10px;padding:0 9px;white-space:nowrap}.admin-heading p{max-width:240px}.admin-column,.admin-side{padding:15px}.upload-form{align-items:stretch;flex-direction:column}.upload-form .button{width:100%}.file-control{min-height:38px}.admin-side{display:block}.history-section th,.history-section td{white-space:nowrap}.product-detail{grid-template-columns:1fr;gap:12px}.detail-main{padding:20px}.detail-main h1{font-size:21px}.stock-panel{grid-template-columns:1fr auto;align-items:center}.stock-panel .eyebrow,.stock-panel .stock-caption,.stock-panel .stock-date{grid-column:1}.stock-number{grid-column:2;grid-row:1/3}.stock-date{margin:5px 0 0}.spec-list div{grid-template-columns:minmax(105px,1fr) 1.2fr}.auth-layout{min-height:0;grid-template-columns:1fr}.auth-aside{min-height:210px;padding:28px}.auth-aside h1{margin:15px 0 9px;font-size:29px}.auth-aside p{font-size:11px}.aside-rule,.aside-caption{display:none}.auth-aside:after{width:240px;height:240px;right:-100px;bottom:-150px}.auth-panel{padding:27px}.auth-panel h2{font-size:22px}.setup-error{margin:30px auto;padding:23px}.setup-error h1{font-size:19px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.family-shortcuts{padding:19px 0 21px;border-bottom:1px solid var(--line)}.family-shortcuts-heading{display:flex;justify-content:space-between;gap:14px;margin-bottom:11px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.8px}.family-shortcuts-heading span:last-child{font-weight:400;letter-spacing:0}.family-shortcuts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.family-shortcuts-grid>a,.family-shortcuts-grid>.family-shortcut{min-width:0;min-height:62px;display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:var(--white);text-decoration:none;transition:border-color .15s,transform .15s}.family-shortcuts-grid>a:hover{border-color:#9eb8a3;transform:translateY(-1px)}.family-shortcuts-grid>.family-shortcut{cursor:not-allowed;opacity:.58}.family-shortcuts-grid>.family-shortcut .family-shortcut-icon{opacity:.75}.family-shortcuts-grid>a>span:nth-child(2),.family-shortcuts-grid>.family-shortcut>span:nth-child(2){min-width:0;flex:1}.family-shortcuts-grid strong,.family-shortcuts-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-shortcuts-grid strong{font-size:11px}.family-shortcuts-grid small{margin-top:2px;color:var(--muted);font-size:9px}.family-shortcuts-grid>a>b{color:var(--green);font-size:13px}.family-shortcut-icon{width:31px;height:31px;display:grid;place-items:center;flex:none;border-radius:5px;font:800 11px var(--display)}.foret-icon{background:#e6f1e9;color:#306548}.fraise-icon{background:#f7eadf;color:#97552f}.taraud-icon{background:#e9eef3;color:#486278}.alesoir-icon{background:#e9f1ef;color:#3a706c}.filiere-icon{background:#fbf1dc;color:#8a641a}
.manufacturer-link{display:inline-flex;align-items:center;gap:7px;margin-top:17px;color:var(--green);font-size:11px;font-weight:700;text-decoration:none}.manufacturer-link:hover{text-decoration:underline}.manufacturer-link span{font-size:14px}

.admin-notes-section>.section-heading{margin-bottom:14px}.admin-note-form{position:relative;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.1fr) minmax(260px,1.5fr) auto;align-items:end;gap:12px;margin-bottom:30px;padding:20px;background:var(--white);border:1px solid var(--line);border-radius:6px}.admin-note-form label,.admin-note-edit-form{display:grid;gap:6px;color:#485650;font-size:11px;font-weight:700}.admin-note-form input,.admin-note-form textarea,.admin-note-edit-form textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 13px/1.5 var(--font)}.admin-note-form input{height:42px;padding:0 11px}.admin-note-form input[readonly]{background:#f3f5f1;color:var(--muted)}.admin-note-form textarea,.admin-note-edit-form textarea{min-height:74px;padding:9px 11px;resize:vertical}.admin-note-submit{min-height:42px}.admin-note-product-suggestions{position:absolute;z-index:5;top:76px;left:20px;width:min(420px,calc(40% - 20px));max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:5px;background:#fff;box-shadow:0 10px 24px #15271a20}.admin-note-product-suggestions[hidden]{display:none}.admin-note-suggestion{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #edf0eb;background:#fff;color:var(--ink);text-align:left;font-size:12px;cursor:pointer}.admin-note-suggestion:last-child{border-bottom:0}.admin-note-suggestion:hover,.admin-note-suggestion:focus-visible{background:var(--green-soft);color:var(--forest)}.admin-notes-list-heading{margin-bottom:12px}.admin-notes-count{color:var(--muted);font-size:11px}.admin-notes-table{min-width:880px}.admin-notes-table .admin-note-content{max-width:380px;white-space:pre-wrap;overflow-wrap:anywhere}.admin-note-date{min-width:155px;color:var(--muted);font-size:11px;white-space:nowrap}.admin-note-date small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.admin-note-actions{display:flex;align-items:flex-start;gap:7px;white-space:nowrap}.admin-note-actions details{position:relative}.admin-note-actions summary{min-height:32px;padding:0 10px;list-style:none;cursor:pointer}.admin-note-actions summary::-webkit-details-marker{display:none}.admin-note-edit-form{position:absolute;z-index:4;top:38px;right:0;width:min(340px,80vw);padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 10px 24px #15271a20}.admin-note-edit-form .button{justify-self:end}
@media(max-width:760px){.admin-note-form{grid-template-columns:1fr 1fr}.admin-note-text-field{grid-column:1/-1}.admin-note-submit{justify-self:start}.admin-note-product-suggestions{top:76px;left:20px;width:calc(50% - 26px)}}
@media(max-width:480px){.admin-note-form{grid-template-columns:1fr;padding:15px}.admin-note-text-field{grid-column:auto}.admin-note-product-suggestions{top:74px;width:calc(100% - 30px)}}
.admin-note-product-picker{position:relative;min-width:0}.admin-note-product-picker .admin-note-product-suggestions{top:calc(100% + 4px);left:0;width:100%}
.admin-note-actions{align-items:center;gap:8px;min-width:170px}.admin-note-actions form{margin:0}.admin-note-actions summary.button.secondary,.admin-note-actions .danger-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border-radius:5px;font:700 11px var(--font);line-height:1;cursor:pointer}.admin-note-actions summary.button.secondary{border:1px solid var(--line);background:var(--white);color:var(--forest)}.admin-note-actions summary.button.secondary:hover{border-color:#a8bcb0;background:#f9fbf8}.admin-note-actions .danger-button{border:1px solid #a93428;background:#b63b2f;color:#fff}.admin-note-actions .danger-button:hover{border-color:#8f2d23;background:#992f25}.admin-note-actions summary.button.secondary:focus-visible,.admin-note-actions .danger-button:focus-visible{outline:3px solid #a9d184;outline-offset:2px}
.admin-note-heading-actions{display:flex;align-items:center;gap:12px}.admin-note-heading-actions form{margin:0}.admin-note-delete-all{min-height:36px;padding:0 12px;border:1px solid #c98d87;border-radius:5px;background:#fff;color:#8f3932;font:700 10px var(--font);white-space:nowrap;cursor:pointer}.admin-note-delete-all:hover:not(:disabled){background:#fbefed}.admin-note-delete-all:disabled{border-color:#e1e4e0;color:#9aa29d;cursor:not-allowed}
@media(max-width:480px){.admin-note-heading-actions{align-items:flex-end;flex-direction:column;gap:8px}.admin-note-delete-all{white-space:normal}}
.button.secondary.manufacturer-link{min-height:44px;padding:0 18px;border-color:var(--green);background:var(--green);color:var(--white);font-size:12px}
.button.secondary.manufacturer-link{min-height:56px;max-width:100%;padding:0 22px;gap:10px;border-color:var(--green);background:var(--green);color:var(--white);font-size:16px;line-height:1.25;text-align:center;white-space:normal}
.button.secondary.manufacturer-link span{font-size:18px}

.search-input-group{display:flex;min-width:0;gap:8px}
.search-input-group .search-box{flex:1;min-width:0}
.barcode-scan-trigger{width:44px;height:44px;display:grid;place-items:center;flex:none;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--forest);cursor:pointer;transition:background .15s,border-color .15s}
.barcode-scan-trigger:hover{border-color:#9eb8a3;background:var(--green-soft)}
.barcode-scan-trigger svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.admin-note-code-input-group{display:flex;gap:8px}.admin-note-code-input-group input{flex:1}.admin-note-code-input-group .barcode-scan-trigger{height:42px}
.barcode-scanner-dialog{width:min(620px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);overflow:auto;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #10251f55}
.barcode-scanner-dialog[open]{animation:barcode-dialog-enter .18s ease-out both}
.barcode-scanner-dialog::backdrop{background:#10251f99;backdrop-filter:blur(3px)}
.barcode-scanner-content{padding:20px}
.barcode-scanner-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.barcode-scanner-header .eyebrow{margin:0 0 4px;font-size:9px}
.barcode-scanner-header h2{margin:0;font:800 19px/1.25 var(--display)}
.barcode-scanner-close{width:34px;height:34px;display:grid;place-items:center;flex:none;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:25px;line-height:1;cursor:pointer}
.barcode-scanner-close:hover{background:#e8ebe5;color:var(--ink)}
.barcode-scanner-controls{display:flex;align-items:end;flex-wrap:wrap;gap:9px;margin-bottom:12px}
.barcode-camera-control{display:grid;flex:1;gap:4px;color:var(--muted);font-size:10px;font-weight:700}
.barcode-camera-control[hidden],.barcode-zoom-control[hidden],.barcode-torch-toggle[hidden],.barcode-scanner-footer [hidden]{display:none}
.barcode-camera-control select{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font-size:12px}
.barcode-zoom-control{width:135px;display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:700}
.barcode-zoom-control input{width:100%;height:20px;margin:0;accent-color:var(--forest)}
.barcode-torch-toggle{min-height:38px;padding:0 11px;font-size:11px}
.barcode-scanner-frame{position:relative;display:grid;min-height:240px;max-height:min(58dvh,520px);aspect-ratio:16/10;place-items:center;overflow:hidden;border:1px solid #283a34;border-radius:6px;background:#101715}
.barcode-scanner-view{width:100%;height:100%;min-height:240px}
.barcode-scanner-view video{width:100%!important;height:100%!important;max-height:min(58dvh,520px);object-fit:cover}
.barcode-scanner-view img{display:none!important}
.barcode-scanner-reticle{position:absolute;top:50%;left:50%;width:84%;height:42%;border:2px solid #dce7b4;border-radius:5px;box-shadow:0 0 0 999px #10171538;pointer-events:none;transform:translate(-50%,-50%);transition:border-color .15s,box-shadow .15s}
.barcode-scanner-frame[data-scan-state="detected"] .barcode-scanner-reticle{border-color:#74d39b;box-shadow:0 0 0 999px #10171538,0 0 0 4px #74d39b55}
.barcode-scanner-description{margin:10px 0 4px;color:var(--muted);font-size:11px}
.barcode-scanner-status{min-height:20px;margin:0;color:var(--green);font-size:12px;font-weight:700;overflow-wrap:anywhere}
.barcode-scanner-status[data-state="error"]{color:var(--rust)}
.barcode-scanner-status[data-state="success"]{color:#287348}
.barcode-scanner-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}
body:has(.barcode-scanner-dialog[open]){overflow:hidden}
@keyframes barcode-dialog-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:620px){.search-input-group{grid-column:1/-1}.barcode-scanner-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.barcode-scanner-content{padding:15px}.barcode-scanner-frame,.barcode-scanner-view{min-height:210px}.barcode-scanner-frame{aspect-ratio:4/3}.barcode-scanner-header h2{font-size:17px}}
@media(prefers-reduced-motion:reduce){.barcode-scanner-dialog[open]{animation:none}}
.button.secondary.manufacturer-link:hover{border-color:var(--forest-deep);background:var(--forest-deep);text-decoration:none}
.catalog-family-cell{min-width:140px}.catalog-family-cell .subfamily-name{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.import-loading-dialog{position:relative;width:min(460px,calc(100% - 32px));max-width:none;padding:0;overflow:hidden;border:1px solid #e1e7e3;border-radius:12px;background:var(--white);color:var(--ink);box-shadow:0 28px 90px #07241e40}
.import-loading-dialog[open]{display:block}
.import-loading-dialog::backdrop{background:#0d2924a6;backdrop-filter:blur(5px)}
.import-dialog-accent{height:5px;background:linear-gradient(90deg,#10b981,#2d8c72,#173b34)}
.import-dialog-body{padding:24px}
.import-dialog-close{position:absolute;top:16px;right:16px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:#83908a;font-size:22px;line-height:1;cursor:pointer}
.import-dialog-close:hover{background:#f1f4f2;color:var(--forest)}
.import-loading-header{display:flex;align-items:flex-start;gap:15px;padding-right:30px}
.import-loading-mark{width:48px;height:48px;display:grid;place-items:center;flex:none;border:1px solid transparent;border-radius:10px;background:var(--forest);color:var(--lime);box-shadow:0 3px 8px #173b3414}
.import-loading-mark::before{content:'A';font:800 19px var(--display)}
.import-loading-copy{min-width:0;flex:1}
.import-heading-line{min-height:20px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:5px}
.import-loading-copy>.import-heading-line>.eyebrow{display:flex;align-items:center;gap:7px;color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}
.import-loading-copy h2{margin:3px 0 5px;color:#14231f;font:800 21px/1.3 var(--display)}
.import-loading-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.import-loading-dialog.is-complete{width:min(720px,calc(100% - 32px))}
.import-loading-dialog.is-complete .import-dialog-body{padding:25px 28px 22px}
.import-loading-dialog.is-complete .import-loading-mark{border-color:#ccebd9;background:#eff9f3;color:#087653;box-shadow:none}
.import-loading-dialog.is-success .import-loading-mark::before{content:'✓';font-size:25px}
.import-loading-dialog.is-error .import-loading-mark{border-color:#f0cfc2;background:var(--rust-soft);color:#8d3b26}
.import-loading-dialog.is-error .import-loading-mark::before{content:'!';font-size:23px}
.import-loading-dialog.is-complete .import-loading-copy>.import-heading-line>.eyebrow{min-height:24px;padding:3px 9px;border-radius:99px;background:#eaf6ee;color:#176344;font-size:9px;letter-spacing:.8px}
.import-loading-dialog.is-error .import-loading-copy>.import-heading-line>.eyebrow{background:var(--rust-soft);color:#8d3b26}
.import-summary-context{color:#7a8780;font-size:11px;font-weight:500}
.import-loading-dialog.is-error #import-loading-message{color:#8d3b26}
.import-summary{margin-top:21px}
.import-summary-rate{margin-bottom:18px;padding:13px 15px;border:1px solid #e5e9e7;border-radius:9px;background:#f7f9f8}
.import-summary-rate-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;color:#58645e;font-size:11px}
.import-summary-rate-heading>span{display:flex;align-items:center;gap:7px;color:#293b34;font-weight:700}
.import-summary-rate-icon{width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#dff2e6;color:#16815c;font-size:11px;font-weight:800}
.import-summary-rate-heading strong{color:#17251f;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.import-summary-rate-heading small{margin-left:5px;color:#77827c;font-size:10px;font-weight:500}
.import-summary-rate-track{height:7px;overflow:hidden;border-radius:99px;background:#e2e8e4}
.import-summary-rate-track span{width:100%;height:100%;display:block;border-radius:inherit;background:#16815c;transition:width .35s ease}
.import-summary-label{margin:0 0 9px;color:#7a8780;font-size:9px;font-weight:800;letter-spacing:1px}
.import-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.import-summary-grid.has-four-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.customer-csv-import-result>p:not(.muted){display:none}
.import-summary-card{min-width:0;min-height:145px;display:flex;flex-direction:column;padding:13px;border:1px solid;border-radius:9px}
.import-summary-card-success{border-color:#ccebd9;background:#f0faf4;color:#176344}
.import-summary-card-neutral{border-color:#e0e5e2;background:#f7f8f7;color:#59655f}
.import-summary-card-warning{border-color:#f0ddae;background:#fff9eb;color:#875b1c}
.import-summary-card-heading{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:10px;font-weight:700;line-height:1.35}
.import-summary-card-heading>span:first-child{min-width:0;overflow-wrap:anywhere}
.import-summary-card-mark{width:20px;height:20px;display:grid;place-items:center;flex:none;border-radius:50%;background:#d8f0e1;font-size:11px;font-weight:800}
.import-summary-card-neutral .import-summary-card-mark{background:#e6eae8;color:#64716a}
.import-summary-card-warning .import-summary-card-mark{background:#f7eac9;color:#875b1c}
.import-summary-card-value{display:block;margin-top:17px;color:#123e2d;font:800 25px/1.1 var(--display);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.import-summary-card-neutral .import-summary-card-value{color:#25332d}
.import-summary-card-warning .import-summary-card-value{color:#714b13}
.import-summary-card-detail{margin:auto 0 0;padding-top:12px;color:inherit;font-size:10px;line-height:1.4;opacity:.86}
.import-summary-audit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(90px,.65fr) minmax(130px,.85fr);gap:12px;margin-top:16px;padding:11px 13px;border:1px solid #e4e9e6;border-radius:8px;background:#f7f9f8}
.import-summary-audit div{min-width:0}
.import-summary-audit div+div{padding-left:12px;border-left:1px solid #dce3df}
.import-summary-audit span,.import-summary-audit strong{display:block}
.import-summary-audit span{margin-bottom:3px;color:#89938e;font-size:8px;font-weight:800;letter-spacing:.8px}
.import-summary-audit strong{overflow:hidden;color:#37463f;font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.import-loading-track{height:7px;margin-top:18px;overflow:hidden;border-radius:99px;background:#e4ece7}
.import-loading-track span{width:36%;height:100%;display:block;border-radius:inherit;background:#19815e;animation:import-loading-slide 1.35s ease-in-out infinite}
.import-dialog-actions{display:flex;justify-content:flex-end;margin-top:19px;padding-top:15px;border-top:1px solid #edf0ee}
.import-loading-dialog.is-complete .import-dialog-actions{margin-top:17px}
.import-loading-dialog.is-complete .import-cancel-button{min-height:42px;padding:0 18px;border-color:var(--forest);background:var(--forest);color:var(--white)}
.import-loading-dialog.is-complete .import-cancel-button:hover{border-color:var(--forest-deep);background:var(--forest-deep)}
.import-dialog-accent[hidden],.import-dialog-close[hidden],.import-summary[hidden],.import-summary-rate[hidden]{display:none!important}
@keyframes import-loading-slide{from{transform:translateX(-110%)}to{transform:translateX(290%)}}
@media(max-width:620px){.import-loading-dialog.is-complete{width:calc(100% - 24px)}.import-dialog-body,.import-loading-dialog.is-complete .import-dialog-body{padding:21px 18px 18px}.import-summary-grid,.import-summary-grid.has-four-metrics{grid-template-columns:1fr}.import-summary-card{min-height:112px}.import-summary-card-value{margin-top:10px}.import-summary-card-detail{padding-top:8px}.import-summary-audit{grid-template-columns:1fr 1fr;gap:10px}.import-summary-audit div+div{padding-left:0;border-left:0}.import-summary-audit div:first-child{grid-column:1/-1}.import-summary-audit div:last-child{padding-left:10px;border-left:1px solid #dce3df}}
@media(max-width:400px){.import-dialog-body,.import-loading-dialog.is-complete .import-dialog-body{padding:19px 15px 16px}.import-loading-header{gap:11px;padding-right:22px}.import-loading-mark{width:42px;height:42px}.import-loading-copy h2{font-size:18px}.import-summary-rate-heading{align-items:flex-start}.import-summary-rate-heading small{display:block;margin:3px 0 0}.import-summary-audit{grid-template-columns:1fr}.import-summary-audit div:first-child{grid-column:auto}.import-summary-audit div:last-child{padding-left:0;border-left:0}}
@media(prefers-reduced-motion:reduce){.import-loading-track span,.import-summary-rate-track span{width:100%;animation:none;transition:none}}
.finder-heading{margin:10px 0 22px}.finder-heading h1{margin:8px 0 5px;font:800 clamp(2.1rem,3vw,3.2rem)/1.08 var(--display);letter-spacing:-.05em}.finder-heading p{margin:0;color:var(--muted);font-size:12px}.finder-type-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:870px}.finder-type{position:relative;min-height:84px;display:flex;align-items:center;gap:14px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff 0%,#f7f4ef 100%);text-decoration:none;box-shadow:0 1px 0 rgba(23,59,52,.02);transition:border-color .15s,transform .15s,box-shadow .15s}.finder-type:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--forest);border-radius:12px 0 0 12px}.finder-type:hover{border-color:#a9b8ae;background:#fff;transform:translateY(-2px);box-shadow:0 10px 18px rgba(23,59,52,.06)}.finder-type-mark{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:7px;background:var(--forest);color:var(--lime);font:800 15px var(--display);box-shadow:0 6px 12px rgba(23,59,52,.12)}.finder-type-copy{min-width:0;flex:1}.finder-type-copy strong,.finder-type-copy small{display:block}.finder-type-copy strong{font:800 17px/1.2 var(--display);color:var(--ink);letter-spacing:-.03em}.finder-type-copy small{margin-top:4px;color:var(--muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.finder-type-arrow{color:var(--green);font-size:18px;line-height:1}
.finder-type-mark-icon{background:#edf4ef;color:var(--forest);box-shadow:none}
.finder-type-mark-icon svg{width:28px;height:28px;max-width:100%;max-height:100%}
.finder-type-mark-icon:not(.has-custom-icon) svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.has-custom-icon svg[fill="#000"],.has-custom-icon svg[fill="#000000"],.has-custom-icon svg[fill="black"]{fill:currentColor}
.has-custom-icon svg[stroke="#000"],.has-custom-icon svg[stroke="#000000"],.has-custom-icon svg[stroke="black"]{stroke:currentColor}
.finder-form{display:grid;gap:11px}.finder-fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--white)}.finder-fieldset legend{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 0 10px;font:700 12px var(--display)}.finder-fieldset legend span{color:var(--muted);font:400 10px var(--font);text-align:right}.finder-dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.finder-input{display:grid;gap:5px;color:#485650;font-size:10px;font-weight:600}.finder-input input,.finder-simple-search input,.finder-stock select{width:100%;height:39px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:12px}.finder-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.finder-checks{display:flex;flex-wrap:wrap;gap:6px;max-height:174px;overflow:auto}.finder-check{position:relative;display:inline-flex;align-items:center;cursor:pointer}.finder-check input{position:absolute;width:1px;height:1px;opacity:0}.finder-check span{min-height:30px;display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:#4f5b55;font-size:10px;line-height:1.25}.finder-check input:checked+span{border-color:var(--forest);background:var(--forest);color:#fff}.finder-check input:focus-visible+span{outline:3px solid #a9d184;outline-offset:2px}.finder-materials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.finder-material-group{min-width:0;display:flex;align-items:flex-start;gap:8px;padding:9px;border:1px solid #edf0eb;border-radius:5px}.finder-material-group>div{display:flex;flex-wrap:wrap;gap:5px}.iso-mark{width:24px;height:24px;display:grid;place-items:center;flex:none;border-radius:4px;background:#e9efeb;color:var(--forest);font:800 10px var(--display)}.iso-mark.P{background:#dceaf7;color:#2c6fb5}.iso-mark.M{background:#fff3bd;color:#765f00}.iso-mark.K{background:#f9dedd;color:#ad312d}.iso-mark.N{background:#e1f1e2;color:#347941}.iso-mark.S{background:#fbe7d7;color:#a75217}.iso-mark.H{background:#e7e9eb;color:#5c6368}.finder-actions{display:flex;align-items:center;gap:9px}.finder-stock{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px}.finder-stock select{width:auto;min-width:150px;height:38px}.finder-count{margin-left:auto;color:var(--muted);font-size:10px}.finder-results{margin-top:25px}.finder-results-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.finder-results-heading h2{margin:4px 0 0;font:800 18px var(--display)}.finder-results-list{display:grid;border-top:1px solid var(--line)}.finder-result{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 13px;border-bottom:1px solid var(--line);background:var(--white);text-decoration:none}.finder-result:hover{background:#fafbf8}.finder-result-main{min-width:0;display:grid;gap:4px}.finder-result-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 14px/1.3 var(--display)}.finder-result-ref{color:var(--muted);font-size:10px}.finder-result-specs{display:flex;flex-wrap:wrap;gap:3px 14px;margin-top:2px;color:#45564c;font-size:10px}.finder-result-specs i{margin-right:3px;color:var(--muted);font-style:normal}.finder-result-side{width:158px;display:grid;grid-template-columns:1fr auto;align-items:center;justify-items:end;flex:none;gap:3px 9px}.finder-stock-number{font:800 16px var(--display);font-variant-numeric:tabular-nums;color:var(--forest)}.finder-stock-number.negative{color:var(--rust)}.finder-result-stock{color:var(--muted);font-size:9px}.finder-iso-strip{grid-column:1/-1;display:flex;gap:3px}.finder-iso-strip span{width:19px;height:20px;display:grid;place-items:center;border:1px solid var(--line);border-radius:3px;color:#87928b;font:700 9px var(--display)}.finder-iso-strip span.compatible{border-color:transparent;background:#e4f0e7;color:#38734e}.finder-simple-search{display:flex;gap:9px;max-width:720px;margin:16px 0}.finder-simple-search label{flex:1}.finder-simple-search input{height:42px}.finder-simple-search select{height:42px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;font-size:11px}
@media(max-width:900px){.family-shortcuts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finder-materials{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.family-shortcuts{padding:14px 0 16px}.family-shortcuts-heading{display:grid;gap:3px}.family-shortcuts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.family-shortcuts-grid>a{min-height:56px;padding:7px}.family-shortcut-icon{width:28px;height:28px}.finder-heading h1{font-size:23px}.finder-type-list{grid-template-columns:1fr}.finder-dimensions{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-choice-grid{grid-template-columns:1fr}.finder-materials{grid-template-columns:1fr 1fr;gap:6px}.finder-material-group{padding:6px;gap:6px}.finder-check span{min-height:28px;padding:4px 7px;font-size:9px}.finder-actions{flex-wrap:wrap}.finder-count{order:3;width:100%;margin:0}.finder-actions .button{flex:1;padding:0 10px}.finder-stock{width:100%;justify-content:space-between}.finder-stock select{flex:1}.finder-result{gap:8px;padding:11px 8px}.finder-result-title{font-size:12px;white-space:normal}.finder-result-ref{font-size:9px}.finder-result-specs{gap:2px 9px;font-size:9px}.finder-result-side{width:105px;gap:3px 5px}.finder-stock-number{font-size:14px}.finder-iso-strip{gap:2px}.finder-iso-strip span{width:16px;height:18px;font-size:8px}.finder-simple-search{flex-wrap:wrap}.finder-simple-search label{flex-basis:100%}.finder-simple-search select{flex:1}}

.catalog-table table{table-layout:fixed}
.table-export-bar{display:flex;justify-content:flex-end;margin:0 0 8px}
.table-export-bar .button{font-size:11px}
.catalog-table th,.catalog-table td{padding:12px 16px}
.catalog-table th{height:43px}
.catalog-table td{height:62px}
.catalog-table-internal th:nth-child(1),.catalog-table-internal td:nth-child(1){width:12%}
.catalog-table-internal th:nth-child(2),.catalog-table-internal td:nth-child(2){width:24%}
.catalog-table-internal th:nth-child(3),.catalog-table-internal td:nth-child(3){width:12%}
.catalog-table-internal th:nth-child(4),.catalog-table-internal td:nth-child(4){width:10%}
.catalog-table-internal th:nth-child(5),.catalog-table-internal td:nth-child(5){width:14%}
.catalog-table-internal th:nth-child(6),.catalog-table-internal td:nth-child(6){width:9%}
.catalog-table-internal th:nth-child(7),.catalog-table-internal td:nth-child(7){width:11%}
.catalog-table-internal th:nth-child(8),.catalog-table-internal td:nth-child(8){width:5%}
.catalog-table-internal th:nth-child(9),.catalog-table-internal td:nth-child(9){width:4%}
.catalog-table-client th:nth-child(1),.catalog-table-client td:nth-child(1){width:16%}
.catalog-table-client th:nth-child(2),.catalog-table-client td:nth-child(2){width:38%}
.catalog-table-client th:nth-child(3),.catalog-table-client td:nth-child(3){width:16%}
.catalog-table-client th:nth-child(4),.catalog-table-client td:nth-child(4){width:20%}
.catalog-table-client th:nth-child(4),.catalog-table-client td:nth-child(4){width:30%}
.product-row{cursor:pointer}
.product-row .code-cell a{color:inherit;text-decoration:none}
.product-row .code-cell a:hover{text-decoration:underline}
@media(max-width:620px){.catalog-table-internal table{min-width:920px}}
.catalog-material-cell{white-space:nowrap}
.catalog-material-cell .finder-iso-strip{grid-column:auto;display:flex;justify-content:flex-start;gap:2px}
.catalog-material-cell .finder-iso-strip span{width:16px;height:18px;font-size:8px}
.product-status-tag{display:inline-flex;align-items:center;padding:4px 7px;border-radius:4px;background:#e7f1e9;color:#33684a;font-size:10px;font-weight:700;white-space:nowrap}
.product-status-tag.draft{background:#fff0d8;color:#895b11}
.location-filter{min-height:44px;display:flex;align-items:center;gap:7px;color:#485650;font-size:11px;font-weight:600;white-space:nowrap}
.location-filter input{width:15px;height:15px;margin:0;accent-color:var(--forest)}
.catalog-search-sticky{position:sticky;top:0;z-index:30;padding:9px max(14px,calc((100vw - 1600px)/2));border-bottom:1px solid var(--line);background:rgba(244,242,237,.96);backdrop-filter:blur(10px)}
.catalog-search-sticky .search-form{width:min(1180px,100%);margin:0 auto}

.admin-heading-actions,.product-manage-actions,.product-editor-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.admin-section-nav{display:flex;gap:8px;overflow-x:auto;margin:0 0 22px;border-bottom:1px solid var(--line)}.admin-section-link{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-bottom:2px solid transparent;color:var(--muted);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.admin-section-link:hover,.admin-section-link.active{border-color:var(--forest);color:var(--forest)}
@media(max-width:620px){.admin-section-nav{gap:0}.admin-section-link{flex:1;justify-content:center;min-width:0;padding:0 8px;font-size:10px;white-space:normal;text-align:center}}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 23px}.settings-panel{min-width:0;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:6px}.settings-form{margin-top:16px}.settings-form input[type=file]{height:auto;min-height:40px;padding:8px}.stack-form input[type=checkbox]{width:16px;height:16px;flex:none;margin:0;padding:0;border:0;background:transparent;accent-color:var(--forest)}.branding-preview{display:flex;align-items:center;gap:12px;padding:9px;border:1px solid #edf0eb;border-radius:5px}.branding-preview img{width:56px;height:56px;object-fit:contain}.branding-preview img.favicon-preview{width:32px;height:32px}.branding-preview label{display:flex;align-items:center;gap:7px;font-size:11px}
.product-material-fit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.product-material-fit>label{min-width:0;display:grid;gap:7px;padding:10px;border:1px solid #edf0eb;border-radius:5px}
.product-material-fit>label>span{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600}
.product-material-fit select{width:100%;height:37px;padding:0 8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.product-manage-actions{margin-top:18px}
.product-manage-actions form{margin:0}
.product-editor{max-width:980px;display:grid;gap:13px}
.product-editor>.section-heading{padding:18px 20px;background:var(--white);border:1px solid var(--line);border-radius:6px}
.product-editor>.section-heading h1{margin:4px 0 0;font:800 21px var(--display)}
.product-editor-form{display:grid;gap:12px}
.product-core-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.product-core-fields label,.product-field-row label{min-width:0;display:grid;gap:5px;color:#485650;font-size:10px;font-weight:600}
.product-core-fields input,.product-core-fields select,.product-field-row input{width:100%;min-width:0;height:38px;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 12px var(--font)}
.product-image-field{min-width:0;display:grid;align-content:start;gap:7px}
.product-image-field>label{display:grid;gap:5px;color:#485650;font-size:10px;font-weight:600}
.product-image-field input[type=file]{height:auto;min-height:38px;padding:7px;font-size:10px}
.product-image-preview{display:flex;align-items:center;gap:8px}
.product-image-preview img{width:58px;height:42px;object-fit:contain;border:1px solid #edf0eb;border-radius:4px;background:#fff}
.product-image-preview label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}
.product-image-preview input[type=checkbox]{width:14px;height:14px;accent-color:var(--forest)}
.product-detail-image{display:grid;place-items:center;margin:18px 0 0;min-height:90px;overflow:hidden;border:1px solid #edf0eb;border-radius:5px;background:#f8faf8}
.product-detail-image img{display:block;width:100%;max-height:360px;object-fit:contain}
.product-status-badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:4px;background:#fff0d8;color:#895b11;font-size:9px;font-weight:800;letter-spacing:.4px}
.product-field-wide{grid-column:span 2}
.product-field-list{display:grid;gap:8px}
.product-field-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(0,1.4fr) 38px;align-items:end;gap:8px}
.product-field-row .button{width:38px;min-width:38px;padding:0;font-size:17px}
.product-field-row .product-field-drag{cursor:grab;touch-action:none}
.product-field-row .product-field-drag:active{cursor:grabbing}
.product-field-row.is-dragging{opacity:.45}
.add-product-field{margin-top:10px}
.product-delete-form{padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:620px){.admin-heading-actions{width:100%}.admin-heading-actions .button{flex:1;justify-content:center;white-space:normal}.product-core-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-material-fit{grid-template-columns:repeat(2,minmax(0,1fr))}.product-field-wide{grid-column:1/-1}.product-field-row{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.product-field-row label:nth-of-type(2){grid-column:2/4}.product-field-row .product-field-drag{grid-column:1;grid-row:1}.product-field-row .remove-product-field{grid-column:3;grid-row:1}}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}}
@media(max-width:620px){.catalog-table th,.catalog-table td{padding:9px}.catalog-table th{height:39px}.catalog-table td{height:55px}}

.custom-family-icon{background:#edf0e9;color:#536d57}
.taxonomy-add-card{position:relative;min-width:0;min-height:42px;border:1px solid rgba(23,59,52,.38);border-radius:8px;background:rgba(255,255,255,.08);align-self:flex-start;display:flex;align-items:center}
.taxonomy-add-card>summary{min-height:40px;display:flex;align-items:center;gap:8px;list-style:none;color:var(--green);font-size:14px;line-height:1;cursor:pointer;padding:0 14px;font-weight:700;font-family:var(--display);letter-spacing:-.02em;white-space:nowrap}
.taxonomy-add-card>summary::before{content:"＋";display:inline-block;font-size:20px;line-height:1;color:var(--green);transform:translateY(-1px)}
.taxonomy-add-card>summary::-webkit-details-marker{display:none}
.taxonomy-inline-form{position:absolute;z-index:5;top:calc(100% + 5px);right:0;width:min(290px,calc(100vw - 36px));display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:0 12px 28px rgba(23,59,52,.12)}
.taxonomy-inline-form label{display:grid;gap:5px;color:#485650;font-size:10px;font-weight:700}
.taxonomy-inline-form input{width:100%;height:38px;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 12px var(--font)}

.logo-editor[hidden]{display:none!important}
.brand-size-control{gap:6px!important}
.brand-size-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.brand-size-heading output{color:var(--forest);font-variant-numeric:tabular-nums}
.brand-size-control input[type=range]{width:100%;height:20px;padding:0;border:0;background:transparent;accent-color:var(--forest)}
.logo-editor{display:grid;gap:13px;padding:14px;border:1px solid #dfe4dd;border-radius:6px;background:#f8faf7}
.logo-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.logo-editor-heading strong,.logo-editor-heading small{display:block}
.logo-editor-heading strong{font:700 13px var(--display);color:var(--forest)}
.logo-editor-heading small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.5}
.logo-editor-heading .text-button{flex:none;padding:4px 7px;font-size:10px}
.logo-editor-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(150px,.8fr);align-items:start;gap:14px}
.logo-editor-preview{display:grid;gap:10px;min-width:0}
.logo-canvas-frame{display:grid;place-items:center;min-height:120px;max-height:320px;overflow:hidden;border:1px solid #d5ded5;border-radius:5px;background-color:#fff;background-image:linear-gradient(45deg,#e9eee9 25%,transparent 25%),linear-gradient(-45deg,#e9eee9 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e9eee9 75%),linear-gradient(-45deg,transparent 75%,#e9eee9 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}
.logo-canvas-frame canvas{display:block;width:100%;height:auto;max-height:320px;touch-action:none;cursor:grab}
.logo-canvas-frame canvas:active{cursor:grabbing}
.logo-canvas-frame canvas:focus-visible{outline:3px solid #a9d184;outline-offset:-3px}
.logo-zoom-label{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:4px 8px!important;color:var(--muted)!important;font-size:10px!important}
.logo-zoom-label output{font-variant-numeric:tabular-nums}
.logo-zoom-label input[type=range]{grid-column:1/-1;width:100%;height:20px;padding:0;border:0;background:transparent;accent-color:var(--forest)}
.logo-editor-controls{display:grid;gap:10px;min-width:0}
.logo-editor-controls>label,.logo-dimensions>label{display:grid;gap:4px;color:#485650;font-size:10px;font-weight:700}
.logo-editor-controls select,.logo-dimensions input{width:100%;min-width:0;height:35px;padding:0 8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.logo-dimensions{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:6px}
.logo-dimensions>span{padding-bottom:8px;color:var(--muted);font-size:11px}
.logo-ratio-lock{display:flex!important;align-items:center;gap:7px!important;min-height:24px}
.logo-ratio-lock input[type=checkbox]{width:15px;height:15px}
.logo-reset{min-height:34px;padding:0 8px;font-size:10px}
.logo-editor-status{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.logo-editor-status.is-error{color:var(--rust);font-weight:700}
.branding-preview [data-edit-current-logo]{flex:none;min-height:32px;padding:0 9px;font-size:10px}
@media(max-width:620px){.logo-editor{padding:11px}.logo-editor-layout{grid-template-columns:1fr}.logo-editor-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.logo-ratio-lock,.logo-reset{grid-column:1/-1}.logo-canvas-frame{max-height:250px}.logo-canvas-frame canvas{max-height:250px}.branding-preview{flex-wrap:wrap}.branding-preview label{flex:1}}

.customer-account-list{gap:0}
.customer-account-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px 12px;padding:14px 0}
.customer-account-info{min-width:0;display:grid;gap:3px}
.customer-account-info strong{color:var(--ink);font-size:12px}
.customer-account-info small{color:var(--muted);font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.customer-account-status{grid-column:3;grid-row:1}
.customer-account-status.is-active{background:#e7f2e9;color:#32704d}
.customer-account-status.is-inactive{background:#f4e9e6;color:#9b4937}
.customer-account-actions{grid-column:2/4;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.customer-account-actions form{margin:0}
.managed-account-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px 10px}
.user-account-actions{grid-column:2/4;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}
.user-account-actions form{margin:0}
.user-edit-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.customer-action{min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--forest);font:600 10px var(--font);text-decoration:none;white-space:nowrap;cursor:pointer}
.customer-action:hover{border-color:#a8bcb0;background:#f7faf6}
.customer-action.delete-customer-action{border-color:#e5c7c0;color:#a14b35}
.customer-action.delete-customer-action:hover{border-color:#d7a69b;background:#fbf3f1}
.customer-workspace{display:grid;grid-template-columns:minmax(270px,.36fr) minmax(0,.64fr);align-items:start;gap:16px}
.customer-ip-policy{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 16px;padding:13px 18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 2px 8px #15271a08}
.customer-ip-policy-copy{min-width:0}
.customer-ip-policy-copy h2{margin:3px 0;font:700 14px var(--display)}
.customer-ip-policy-copy p{margin:0;color:var(--muted);font-size:11px}
.customer-ip-policy-form{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex:none;margin:0}
.customer-ip-policy-form label{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:11px;font-weight:700;white-space:nowrap}
.customer-ip-policy-form input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--forest)}
.customer-ip-policy-form .button{min-height:36px;padding:0 14px;font-size:11px}
.customer-directory,.customer-detail-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:0 2px 8px #15271a08}
.customer-directory{display:flex;flex-direction:column;max-height:760px}
.customer-directory-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#f8faf8;border-bottom:1px solid var(--line)}
.customer-directory-header h2,.customer-list-toolbar h2{margin:4px 0 0;font:700 15px var(--display)}
.customer-directory-header .button{min-height:32px;padding:0 10px;font-size:10px}
.customer-directory-search{display:grid;gap:5px;padding:13px 15px;color:var(--muted);font-size:10px;font-weight:700}
.customer-directory-search input{width:100%;height:37px;padding:0 11px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.customer-directory-list{overflow-y:auto;min-height:120px}
.customer-directory-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 13px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}
.customer-directory-footer>div,.customer-table-footer nav{display:flex;align-items:center;gap:6px}
.customer-page-button{width:28px;height:28px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--forest);font:600 16px/1 var(--font);text-decoration:none;cursor:pointer}
.customer-page-button:hover:not(:disabled):not([aria-disabled=true]){border-color:#a8bcb0;background:#f7faf6}
.customer-page-button:disabled,.customer-page-button[aria-disabled=true]{color:#aab2ad;cursor:default;pointer-events:none}
.customer-directory-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:9px;padding:13px 14px;border-bottom:1px solid #edf0eb;color:inherit;text-decoration:none}
.customer-directory-item[hidden]{display:none}
.customer-directory-item:hover{background:#f8faf8}
.customer-directory-item.is-selected{border-left:3px solid var(--forest);background:#eff7f1}
.customer-directory-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#e6f0e8;color:var(--forest);font-size:11px;font-weight:800}
.customer-directory-info{min-width:0}
.customer-directory-info strong,.customer-directory-info small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.customer-directory-info strong{font-size:11px}
.customer-directory-info small{margin-top:2px;color:var(--muted);font-size:9px}
.customer-directory-count{display:inline-flex;margin-top:7px;padding:3px 7px;border-radius:999px;background:#edf4ef;color:var(--forest);font-size:9px;font-weight:700}
.customer-account-status.is-active{background:#e7f4eb;color:#287044}
.customer-account-status.is-inactive{background:#f8ecdf;color:#986138}
.customer-directory-empty{padding:18px;color:var(--muted);font-size:11px;text-align:center}
.customer-detail-column{display:grid;min-width:0;gap:14px}
.customer-overview{padding:18px 20px 0}
.customer-overview-main{display:flex;align-items:center;gap:12px}
.customer-overview-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.customer-overview-title h2{margin:0;font:700 18px var(--display)}
.customer-code{padding:3px 7px;border:1px solid var(--line);border-radius:4px;background:#f7f8f6;color:var(--muted);font:600 10px var(--font)}
.customer-overview-main p{margin:5px 0 0;color:var(--muted);font-size:10px}
.customer-overview-main p strong{color:var(--ink)}
.customer-overview-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-left:auto}
.customer-overview-actions form{margin:0}
.customer-overview{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.customer-detail-tabs{display:flex;flex-basis:100%;gap:18px;overflow-x:auto;border-top:1px solid #edf0eb}
.customer-detail-tabs a{display:inline-flex;align-items:center;gap:6px;min-height:42px;border-bottom:2px solid transparent;color:var(--muted);font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}
.customer-detail-tabs a.is-active{border-color:var(--forest);color:var(--forest)}
.customer-detail-tabs a span{padding:2px 6px;border-radius:999px;background:#e8f1ea}
.customer-settings-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px}
.customer-settings-panel h2{margin:5px 0;font:700 15px var(--display)}
.customer-settings-panel p{margin:0;color:var(--muted);font-size:10px}
.customer-settings-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.customer-settings-status form{margin:0}
.customer-add-product-form{display:grid;gap:8px;padding:15px 17px;border-bottom:1px solid var(--line);background:#f8faf8}
.customer-add-product-form>label{color:var(--ink);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.customer-product-picker{display:flex;gap:8px}
.customer-product-picker input{flex:1;min-width:0;height:37px;padding:0 11px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.customer-product-picker .button{min-height:37px;padding:0 12px;white-space:nowrap}
.customer-product-picker .customer-product-scan-trigger{width:42px;height:37px}
.customer-add-product-form .manual-product-search-status{font-size:10px}
.customer-search-hint{margin:0;color:var(--muted);font-size:9px}
.customer-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px}
.customer-list-toolbar h2{font-size:13px}
.customer-list-toolbar-actions{display:flex;align-items:end;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.manual-date-filter{display:flex;align-items:end;gap:7px;flex-wrap:wrap}
.manual-date-filter label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:700}
.manual-date-filter input{min-height:33px;padding:6px 8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:500 10px var(--font)}
.manual-date-filter .button{min-height:33px;padding:0 9px;font-size:10px}
.manual-date-filter .manual-product-search-status{flex-basis:100%}
.customer-authorized-products{margin:0}
.customer-authorized-table{width:100%;border-collapse:collapse;font-size:10px;text-align:left}
.customer-authorized-table th{padding:10px 9px;border-bottom:1px solid var(--line);background:#f8faf8;color:#59655f;font-size:9px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.customer-authorized-table td{padding:10px 9px;border-bottom:1px solid #edf0eb;color:#485650;vertical-align:middle}
.customer-authorized-table tbody tr:hover{background:#fafbf9}
.customer-authorized-table .customer-select-cell{width:34px;text-align:center}
.customer-authorized-table input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--forest)}
.customer-authorized-table .customer-article-code{color:var(--ink);font-family:monospace;font-weight:700;white-space:nowrap}
.customer-bulk-actions{display:flex;justify-content:flex-end}
.customer-bulk-actions form{margin:0}
.customer-bulk-actions .button{min-height:33px;padding:0 10px;font-size:9px;white-space:nowrap}
.customer-bulk-actions .button:disabled{border-color:#e1e4e0;background:#f4f5f3;color:#9aa29d;opacity:1;cursor:not-allowed}
.customer-authorized-products .table-wrap{overflow-x:auto}
.customer-authorized-products td form{margin:0}
.customer-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;color:var(--muted);font-size:9px}
.customer-table-footer nav>span{padding:0 3px;white-space:nowrap}
.customer-history-preview,.client-purchase-history{padding:15px 17px}
.customer-history-preview{margin-top:16px}
.customer-history-preview .section-heading,.client-purchase-history .section-heading{margin-bottom:10px}
.customer-history-preview .section-heading h2,.client-purchase-history .section-heading h2{font-size:13px}
.customer-history-subtitle{margin:3px 0 0;color:var(--muted);font-size:9px}
.customer-history-empty{display:grid;justify-items:center;gap:4px;padding:18px 12px;border:1px solid #edf0eb;border-radius:6px;background:#fafbf9;text-align:center}
.customer-history-empty svg{width:24px;height:24px;margin-bottom:3px;color:#b9c9c4}
.customer-history-empty strong{color:#485650;font-size:10px}
.customer-history-empty small{color:var(--muted);font-size:9px}
.customer-edit-card{padding:18px}
.customer-edit-card .compact-form{max-width:520px}
.customer-form-actions{display:flex;gap:8px;flex-wrap:wrap}
.customer-empty-state{padding:32px}
.customer-empty-state h2{margin:0;font:700 17px var(--display)}
.customer-empty-state p{margin-bottom:0}
.client-create-dialog{width:min(520px,calc(100% - 28px));max-width:none;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);box-shadow:0 22px 70px #10231e40}
.client-edit-dialog{width:min(600px,calc(100% - 28px));max-height:calc(100% - 28px);overflow-y:auto}
.client-create-dialog::backdrop{background:#10231e88;backdrop-filter:blur(2px)}
.client-create-form{display:grid;gap:15px;padding:22px}
.client-create-form>header,.client-create-form>footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.client-create-form>header{padding-bottom:13px;border-bottom:1px solid #edf0eb}
.client-create-form h2{margin:4px 0 0;font:700 18px var(--display)}
.client-create-form>header .customer-action{min-width:32px;padding:0;font-size:17px}
.client-create-form>p{margin:0;color:var(--muted);font-size:11px}
.client-create-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.client-create-fields label{display:grid;gap:5px;font-size:10px;font-weight:700}
.client-create-fields input{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.client-create-password{grid-column:1/-1}
.client-create-password small{color:var(--muted);font-weight:400}
.client-edit-fields{gap:16px 14px}
.client-edit-fields label{gap:6px;font-size:11px}
.client-edit-fields input{height:42px;padding:0 12px;font-size:12px}
.client-edit-password{grid-column:1/-1}
.client-edit-password small{color:var(--muted);font-size:10px;font-weight:400}
.client-create-form>footer{justify-content:flex-end;padding-top:13px;border-top:1px solid #edf0eb}
.customer-workspace~.history-section{margin-top:16px}
@media(max-width:900px){.customer-workspace{grid-template-columns:minmax(0,1fr)}.customer-directory{max-height:460px}}
@media(max-width:620px){.customer-ip-policy,.customer-ip-policy-form{align-items:stretch;flex-direction:column}.customer-ip-policy{gap:12px;padding:14px}.customer-ip-policy-form{gap:10px}.customer-ip-policy-form .button{width:100%}.customer-directory-header,.customer-list-toolbar{align-items:flex-start;flex-direction:column}.customer-overview{align-items:flex-start}.customer-overview-actions{margin-left:0}.customer-list-toolbar,.customer-list-toolbar-actions,.manual-date-filter{width:100%}.customer-list-toolbar-actions{align-items:stretch;flex-direction:column}.manual-date-filter{align-items:stretch}.manual-date-filter label{flex:1;min-width:145px}.customer-bulk-actions form,.customer-bulk-actions .button{width:100%}.customer-authorized-table{min-width:620px}.customer-table-footer{align-items:flex-start;flex-direction:column}.customer-product-picker{align-items:stretch;flex-direction:column}.customer-product-picker .button{width:100%}.customer-settings-panel,.customer-settings-status{align-items:flex-start;flex-direction:column}.client-create-form{padding:17px}.client-create-fields{grid-template-columns:1fr}.client-create-password,.client-edit-password{grid-column:auto}}
.manual-product-list{display:grid;gap:7px;margin-top:12px}
.manual-list-heading{align-items:center;gap:12px}
.manual-date-filter{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.manual-date-filter label{display:grid;gap:4px;font-size:10px;font-weight:700;color:#485650}
.manual-date-filter input{min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font:500 11px var(--font)}
.manual-date-filter .button{min-height:36px;padding:0 10px}
.manual-date-filter .manual-product-search-status{flex-basis:100%}
.manual-product-suggestions{max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:5px;background:#fff}
.manual-product-suggestions[hidden]{display:none}
.manual-product-suggestions .admin-note-suggestion{font:400 11px/1.45 var(--font)}
.manual-product-search-status{margin:0;font-size:10px}
.manual-product-selection{display:flex;flex-wrap:wrap;gap:6px}
.manual-product-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:5px;background:#f7faf6;color:var(--ink);font-size:10px}
.manual-product-chip>span{overflow-wrap:anywhere}
.manual-product-chip-remove{flex:none;padding:0 3px;border:0;background:transparent;color:var(--rust);font-size:16px;line-height:1;cursor:pointer}
.manual-product-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:5px}
.manual-product-row label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;cursor:pointer}
.manual-product-row label>input{flex:none}
.manual-product-row span{min-width:0}
.manual-product-row strong,.manual-product-row small{display:block;overflow-wrap:anywhere}
.manual-product-row strong{font-size:10px}
.manual-product-row small{margin-top:2px;color:var(--muted);font-size:9px}
.manual-product-list>.button{justify-self:start}
@media(max-width:620px){.manual-list-heading{align-items:flex-start;flex-direction:column}.manual-date-filter{width:100%}.manual-date-filter label{flex:1;min-width:180px}}
@media(max-width:620px){.customer-account-row{grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding:12px 0}.customer-account-actions{grid-column:1/-1;padding-left:39px}.customer-account-status{font-size:9px}}
.page-intro{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:var(--forest-deep);pointer-events:none;animation:page-intro-dismiss .5s ease-in 1.05s forwards}
.page-intro:before{position:absolute;width:min(72vw,560px);aspect-ratio:1;border:1px solid #c6e2a144;border-radius:50%;content:"";animation:page-intro-ring 1.2s ease-out both}
.page-intro-logo{position:relative;display:grid;place-items:center;max-width:calc(100vw - 40px);animation:page-intro-arrive .75s cubic-bezier(.2,.75,.25,1) both}
.page-intro-logo img{display:block;width:auto;max-width:min(82vw,560px);max-height:min(46vh,280px);object-fit:contain}.page-intro-logo-image{animation:page-intro-logo-pulse 1.15s ease-out .12s both;filter:drop-shadow(0 12px 24px #0000002e)}.page-intro-pwa-fallback{width:min(42vw,220px)!important;height:min(42vw,220px);border-radius:28%;object-fit:contain}
.page-intro-logo>span{color:#fff;font:800 clamp(28px,7vw,56px)/1.1 var(--display);text-align:center}
@keyframes page-intro-arrive{from{opacity:0;transform:translateY(18px) scale(.82)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes page-intro-logo-pulse{0%{opacity:0;transform:scale(.72) rotate(-4deg)}55%{opacity:1;transform:scale(1.06) rotate(1deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes page-intro-ring{from{opacity:0;transform:scale(.72)}45%{opacity:.7}to{opacity:0;transform:scale(1.08)}}
@keyframes page-intro-dismiss{to{visibility:hidden;opacity:0}}
@media(prefers-reduced-motion:reduce){.page-intro{display:none;animation:none}.page-intro-logo,.page-intro:before{animation:none}}
.taxonomy-inline-form .button{min-height:38px}
.taxonomy-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.taxonomy-delete-family{flex:none;margin-top:7px;border-color:rgba(183,94,73,.35);background:var(--rust-soft);color:var(--rust)}
.taxonomy-managed-item{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px}
.taxonomy-delete{width:34px;height:34px;display:grid;place-items:center;border:1px solid #e8d5ce;border-radius:6px;background:#fff;color:var(--rust);font-size:20px;cursor:pointer}
.taxonomy-delete:hover:not(:disabled){background:var(--rust-soft)}
.taxonomy-delete:disabled,.taxonomy-delete-family:disabled{opacity:.45;cursor:not-allowed}
.taxonomy-managed-item form{margin:0}
.back-link{display:inline-block;margin:0 0 22px;color:var(--green);font-size:12px;font-weight:800;text-decoration:none;letter-spacing:.02em}
.taxonomy-header-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;margin-left:auto;padding-top:2px}
.custom-query-field{grid-column:1/-1;max-width:680px}
.custom-filter-admin{margin:0 0 13px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.custom-filter-admin>summary{padding:12px 15px;color:var(--forest);font-size:12px;font-weight:700;cursor:pointer}
.custom-filter-admin-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:14px;padding:0 14px 14px}
.custom-filter-config-form{display:grid;align-content:start;gap:10px}
.custom-filter-config-form>label{display:grid;gap:5px;color:#485650;font-size:10px;font-weight:700}
.custom-filter-config-form input,.custom-filter-config-form select{width:100%;height:38px;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 12px var(--font)}
.custom-filter-config-form .finder-fieldset{padding:10px}
.custom-filter-config-form .finder-checks{max-height:145px}
.custom-filter-picker{position:relative;z-index:1}
.custom-filter-picker[open]{z-index:8}
.custom-filter-picker>summary{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--forest);font-size:11px;font-weight:600;list-style:none;cursor:pointer}
.custom-filter-picker>summary::-webkit-details-marker{display:none}
.custom-filter-picker>summary:after{content:'⌄';color:var(--green);font-size:15px}
.custom-filter-picker[open]>summary{border-color:#9eb8a3;border-radius:5px 5px 0 0}
.custom-filter-picker>summary small{margin-left:auto;color:var(--muted);font-size:9px;font-weight:400}
.custom-filter-picker-panel{position:absolute;top:100%;left:0;right:0;max-height:min(60vh,480px);overflow:auto;padding:10px;border:1px solid #9eb8a3;border-top:0;border-radius:0 0 5px 5px;background:#fff;box-shadow:0 10px 24px #17252120}
.custom-filter-picker-search{position:sticky;top:0;z-index:1;display:block;padding:0 0 8px;background:#fff}
.custom-filter-picker-search input{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 12px var(--font)}
.custom-filter-no-match{margin:8px 2px;color:var(--muted);font-size:11px}
.custom-filter-field-list{display:grid;gap:7px}
.custom-filter-field-option{display:grid;grid-template-columns:minmax(0,1fr) minmax(155px,.45fr);align-items:center;gap:10px;padding:7px;border:1px solid #edf0eb;border-radius:5px}
.custom-filter-field-option[hidden]{display:none}
.custom-filter-field-option .finder-check{min-width:0}
.finder-input select{width:100%;height:39px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:12px}
.custom-control-type{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;color:var(--muted);font-size:9px}
.custom-control-type select{height:32px;font-size:10px}
.custom-control-stack{display:grid;gap:5px}
.custom-input-condition[hidden]{display:none}
.custom-control-fixed{justify-self:start;padding:5px 8px;border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:10px}
.configured-field-disabled{opacity:.5;cursor:not-allowed}
.custom-filter-section-list{display:grid;align-content:start;gap:8px;font-size:11px}
.custom-filter-section-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;border:1px solid #edf0eb;border-radius:5px}
.custom-filter-section-row>span{min-width:0;display:grid;gap:3px}
.custom-filter-section-row small{overflow-wrap:anywhere;color:var(--muted);font-size:9px}
.custom-filter-section-row form{margin:0}
.custom-filter-section-row>.button{flex:none;padding:6px 9px;font-size:10px}
.custom-filter-config-form>.custom-filter-cancel{justify-self:start}
.custom-configured-filter{display:grid;gap:12px}
.custom-filter-criterion{display:grid;gap:7px}
.custom-filter-criterion>strong{color:#485650;font-size:10px;font-weight:600}
.custom-filter-text-fields{padding-top:10px;border-top:1px solid #edf0eb}
@media(max-width:700px){.custom-filter-admin-content{grid-template-columns:1fr}.custom-filter-config-form>.button{width:100%}.custom-filter-field-option{grid-template-columns:minmax(0,1fr) 145px;gap:6px}.custom-control-type{grid-template-columns:1fr;gap:3px}}
@media(max-width:420px){.custom-filter-field-option{grid-template-columns:1fr}.custom-control-type{grid-template-columns:auto minmax(0,1fr)}}
@media(max-width:620px){.taxonomy-add-card>summary{min-height:54px}.taxonomy-inline-form{left:0;right:auto;width:min(290px,calc(100vw - 40px))}.taxonomy-heading-row{align-items:flex-start}.taxonomy-delete-family{padding:0 9px;font-size:10px}.taxonomy-managed-item{grid-template-columns:minmax(0,1fr) 29px;gap:4px}.taxonomy-delete{width:29px;height:29px}}

.custom-finder-page{max-width:1180px;margin:0 auto}
.custom-finder-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:5px 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.custom-finder-heading h1{margin:7px 0 5px;font:800 30px/1.2 var(--display)}
.custom-finder-heading p{margin:0;color:var(--muted);font-size:12px}
.custom-filter-status{flex:none;padding:6px 10px;border:1px solid #d7e3d9;border-radius:5px;background:#edf4ee;color:var(--forest);font-size:10px;font-weight:600}
.custom-finder-form{gap:13px}
.custom-finder-form>.finder-fieldset{padding:16px 18px;border-radius:7px}
.custom-finder-form>.finder-fieldset>legend{padding-bottom:12px;font-size:13px}
.custom-filter-empty{padding:17px 18px;border:1px dashed #cbd7cd;border-radius:7px;background:#fafcf9}
.custom-filter-empty strong{display:block;color:var(--forest);font:700 13px var(--display)}
.custom-filter-empty p{margin:4px 0 0;color:var(--muted);font-size:11px}
.custom-finder-form .finder-dimensions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px}
.custom-finder-form .finder-input{gap:7px;color:#3d4d46;font-size:11px}
.custom-finder-form .finder-input input,.custom-finder-form .finder-input select{height:42px;padding:0 11px;font-size:13px}
.custom-finder-form .custom-query-field{max-width:680px}
.custom-finder-form .custom-configured-filter{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:11px 13px;padding:17px 18px 18px;border-left:3px solid var(--green);box-shadow:0 2px 8px #17252108}
.custom-finder-form .custom-configured-filter>legend{grid-column:1/-1;align-items:center;padding:0 0 12px;font:700 15px var(--display)}
.custom-finder-form .custom-configured-filter>legend span{padding:4px 8px;border-radius:4px;background:#f0f4f0;color:var(--muted);font-size:10px}
.custom-filter-criteria-layout{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:11px 13px}
.custom-filter-criterion{grid-column:span var(--custom-filter-span,12);min-width:0}
.custom-filter-criterion-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.custom-filter-criterion-controls{display:none;flex:none;align-items:center;gap:5px}
.custom-filter-layout-editing .custom-filter-criterion-controls{display:flex}
.custom-filter-layout-toggle{grid-column:1/-1;justify-self:end;min-height:30px;padding:0 9px;font-size:10px}
.custom-filter-criterion-drag{width:26px;height:26px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--forest);cursor:grab;font-size:12px;line-height:1;touch-action:none;user-select:none}
.custom-filter-criterion-drag:active{cursor:grabbing}
.custom-filter-criterion-width{height:26px;padding:0 5px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font:400 10px var(--font)}
.custom-filter-criterion.is-dragging{opacity:.45}
.custom-filter-layout-status{display:none;grid-column:1/-1;min-height:14px;color:var(--muted);font-size:9px}
.custom-filter-layout-editing .custom-filter-layout-status{display:block}
.custom-filter-layout-status.has-error{color:#a34535}
.custom-finder-form .custom-configured-filter .finder-dimensions{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.custom-finder-form .custom-configured-filter>.finder-materials{grid-column:1/-1}
.custom-finder-form .custom-filter-criterion{gap:9px;padding:12px;border:1px solid #e8ede8;border-radius:6px;background:#fbfcfa}
.custom-finder-form .custom-filter-criterion>strong{color:var(--ink);font-size:11px}
.custom-finder-form .custom-filter-criterion .finder-checks{max-height:140px;gap:7px}
.custom-finder-form .finder-check span{min-height:34px;padding:6px 10px;font-size:11px}
.custom-finder-form .finder-materials{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.custom-finder-form .finder-material-group{align-items:flex-start;padding:11px;border-color:#e8ede8;border-radius:6px;background:#fbfcfa}
.custom-finder-form .finder-material-group>div{gap:6px}
.custom-filter-actions{display:grid;grid-template-columns:minmax(180px,230px) auto minmax(120px,1fr) auto auto;align-items:end;gap:10px;padding:13px 15px;border:1px solid var(--line);border-radius:7px;background:#fff}
.custom-filter-actions .finder-stock{display:grid;gap:5px;color:var(--muted);font-size:10px}
.custom-filter-actions .finder-stock select{height:42px}
.custom-filter-actions .finder-count{justify-self:end;margin:0;color:var(--muted);font-size:11px}
.custom-finder-page .finder-results{margin-top:18px}
.custom-finder-page .finder-results .table-wrap{border-radius:7px}
.custom-table-columns-button{white-space:nowrap}
.custom-table-column-save-status{margin-right:auto;color:var(--muted);font-size:10px;white-space:nowrap}
.custom-table-columns-dialog{width:min(480px,calc(100% - 28px));max-height:min(680px,calc(100dvh - 28px));padding:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 24px 70px #102c2740}
.custom-table-columns-dialog::backdrop{background:#10251f80;backdrop-filter:blur(3px)}
.client-notification{display:flex;align-items:flex-start;gap:14px;margin:0 0 14px;padding:14px 16px;border:1px solid #f0cfc2;border-left:4px solid var(--rust);border-radius:7px;background:var(--rust-soft);color:#8d3b26;box-shadow:0 8px 22px rgba(141,59,38,.06)}
.client-notification-content{flex:1;min-width:0;white-space:normal;overflow-wrap:anywhere;font-size:13px}
.client-notification form{flex:none}
.client-notification-dismiss{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:23px;line-height:1;cursor:pointer}
.client-notification-dismiss:hover{background:#f4dcd3;color:#8d3b26}
.admin-notifications-section{padding:21px}
.admin-notifications-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.admin-notifications-heading h2{margin:4px 0;font:700 19px var(--display)}
.admin-notifications-heading p,.admin-notifications-list-heading p{margin:0;color:var(--muted);font-size:11px}
.admin-notifications-count{flex:none;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:#f8faf8;color:#52635a;font-size:10px;font-weight:700}
.admin-notification-form{display:grid;gap:9px;margin:0 0 24px;padding:15px;border:1px solid var(--line);border-radius:7px;background:#f8faf8}
.admin-notification-form label{color:#485650;font-size:11px;font-weight:700}
.admin-notification-form textarea{display:block;width:100%;min-height:88px;margin-top:6px;padding:11px 12px;resize:vertical;border:1px solid #d8ded7;border-radius:5px;background:#fff;color:var(--ink);font:400 12px/1.55 var(--font)}
.admin-notification-form textarea::placeholder{color:#929d96}
.admin-notification-form textarea:focus{outline:2px solid #b9d4c2;outline-offset:1px;border-color:#789d85}
.admin-notification-compose-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-notification-compose-footer>span{color:var(--muted);font-size:10px}
.admin-notification-compose-footer .button{min-height:36px;font-size:11px}
.admin-notifications-list-heading{margin-bottom:10px}
.admin-notifications-list-heading h3{margin:0 0 3px;font:700 14px var(--display)}
.admin-notification-list{display:grid;gap:9px}
.admin-notification-card{min-width:0;padding:14px;border:1px solid var(--line);border-radius:7px;background:#fff}
.admin-notification-card-header,.admin-notification-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-notification-status{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#eef1ee;color:#5b6c62;font-size:10px;font-weight:700}
.admin-notification-status>span{width:6px;height:6px;border-radius:50%;background:currentColor}
.admin-notification-status.active{background:#e6f1e9;color:#306548}
.admin-notification-status.dismissed{background:#fbf1dc;color:#8a641a}
.admin-notification-status.deleted{background:#f0eeee;color:#737b76}
.admin-notification-created{color:var(--muted);font-size:10px}
.admin-notification-card-message{margin:12px 0;color:var(--ink);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.admin-notification-card-footer{align-items:flex-end;padding-top:10px;border-top:1px solid #edf0eb}
.admin-notification-timestamps{display:grid;gap:4px;color:var(--muted);font-size:9px}
.admin-notification-timestamps strong{color:#53625a;font-weight:700}
.admin-notification-actions{display:flex;align-items:center;gap:6px;flex:none}
.admin-notification-actions form{margin:0}
.admin-notification-actions .button,.admin-notification-actions .customer-action{min-height:32px;font-size:10px}
.admin-notifications-empty{display:grid;justify-items:center;gap:5px;padding:28px 16px;border:1px dashed #d8ded7;border-radius:7px;background:#fbfcfa;text-align:center}
.admin-notifications-empty>span{display:grid;width:36px;height:36px;place-items:center;margin-bottom:4px;border-radius:50%;background:#edf4ef;color:var(--forest);font-size:17px}
.admin-notifications-empty strong{font:700 12px var(--display)}
.admin-notifications-empty p{margin:0;color:var(--muted);font-size:10px}
@media(max-width:760px){.admin-notifications-section{padding:16px}.admin-notification-card-footer{align-items:flex-start;flex-direction:column}.admin-notification-actions{width:100%}}
@media(max-width:480px){.admin-notifications-heading{flex-direction:column;gap:8px}.admin-notification-compose-footer{align-items:flex-start;flex-direction:column}.admin-notification-compose-footer .button{width:100%}.admin-notification-actions form,.admin-notification-actions button{flex:1}.admin-notification-actions form{display:flex}}
.custom-table-columns-dialog>header,.custom-table-columns-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;background:#fff}
.custom-table-columns-dialog>header{border-bottom:1px solid var(--line)}
.custom-table-columns-dialog h2{margin:0;font:700 16px var(--display)}
.custom-table-columns-dialog>p{margin:0;padding:12px 17px 8px;color:var(--muted);font-size:11px}
.custom-table-columns-close{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:22px;cursor:pointer}
.custom-table-columns-close:hover{background:var(--green-soft);color:var(--forest)}
.custom-table-columns-list{display:grid;gap:5px;max-height:min(54vh,440px);overflow:auto;padding:8px 17px 16px}
.custom-table-columns-list label{min-height:38px;display:flex;align-items:center;gap:9px;padding:6px 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:11px;cursor:pointer}
.custom-table-columns-list input{width:16px;height:16px;flex:none;accent-color:var(--forest)}
.custom-table-columns-dialog>footer{justify-content:space-between;border-top:1px solid var(--line)}
.custom-table-column-table table{width:max-content;min-width:100%;table-layout:auto}
.custom-table-column-table th[data-custom-table-column],.custom-table-column-table td[data-custom-table-column]{min-width:150px;max-width:340px;overflow-wrap:anywhere;white-space:normal}
@media(max-width:760px){.custom-finder-heading{align-items:flex-start}.custom-filter-actions{grid-template-columns:minmax(150px,1fr) minmax(110px,1fr);align-items:center}.custom-filter-actions .finder-stock,.custom-filter-actions .finder-count{grid-column:1/-1}.custom-filter-actions .finder-count{justify-self:start}.custom-filter-actions .button{width:100%}}
@media(max-width:620px){.custom-finder-heading{gap:10px;margin-bottom:16px}.custom-finder-heading h1{font-size:24px}.custom-filter-status{font-size:9px}.custom-finder-form>.finder-fieldset,.custom-finder-form>.custom-configured-filter{padding:13px}.custom-finder-form .custom-configured-filter{grid-template-columns:minmax(0,1fr)}.custom-finder-form .custom-configured-filter>legend{grid-column:1}.custom-finder-form .custom-filter-criteria-layout{grid-template-columns:minmax(0,1fr)}.custom-finder-form .custom-filter-criteria-layout>.custom-filter-criterion{grid-column:1/-1}.custom-finder-form .finder-materials{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.custom-finder-form .finder-material-group{padding:8px}.custom-finder-form .finder-check span{min-height:31px;padding:5px 8px;font-size:10px}.custom-filter-actions{grid-template-columns:1fr 1fr;padding:10px}.custom-filter-actions .button{padding:0 9px;font-size:11px}}

.catalog-intro-actions{display:flex;align-items:center;gap:22px}
.family-config-open{min-height:38px;padding:0 12px;font-size:11px}
.family-config-open>span{color:var(--green);font-size:18px;line-height:1}
.family-config-dialog{width:min(1060px,calc(100% - 32px));height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);overflow:hidden;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);box-shadow:0 24px 70px #17252140}
.family-config-dialog[open]{display:flex;flex-direction:column}
.family-config-dialog::backdrop{background:#12251f80;backdrop-filter:blur(2px)}
body:has(.family-config-dialog[open]){overflow:hidden}
.family-config-dialog [hidden]{display:none!important}
.family-config-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 28px 18px;border-bottom:1px solid var(--line);flex:none}
.family-config-header h2{margin:7px 0 4px;font:800 21px/1.25 var(--display)}
.family-config-header p{margin:0;color:var(--muted);font-size:12px}
.family-config-close{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--muted);font-size:23px;line-height:1;cursor:pointer}
.family-config-close:hover{border-color:#a8bcb0;color:var(--forest)}
.family-config-tabs{display:flex;gap:14px;padding:0 28px;border-bottom:1px solid var(--line);overflow-x:auto;flex:none}
.family-config-tab{position:relative;min-height:48px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:0 8px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:600 12px var(--font);cursor:pointer}
.family-config-tab:hover{color:var(--forest)}
.family-config-tab.is-active{border-bottom-color:var(--forest);color:var(--forest);font-weight:700}
.family-config-tab>span:first-child{color:var(--green);font-size:16px}
.family-config-tab-count{min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:10px;background:#e8f1ec;color:var(--forest);font-size:10px}
.family-config-body{min-height:0;flex:1;overflow-y:auto;padding:22px 28px 26px;background:#f7f8f6}
.family-config-tab-panel.is-active{display:block}
.family-config-tab-panel[data-family-panel="icons"].is-active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:14px}
.family-group-toolbar{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff}
.family-group-search{min-width:0;min-height:36px;flex:1;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:5px;color:#87918b}
.family-group-search input{width:100%;height:34px;border:0;outline:0;background:transparent;color:var(--ink);font:400 12px var(--font)}
.family-group-search input::placeholder{color:#89948e}
.family-group-instruction{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px 12px;border:1px solid #dce9e2;border-radius:5px;background:#eff6f2;color:#315847;font-size:11px}
.family-group-instruction span{font-size:15px}
.family-config-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.family-config-section{min-width:0;padding:22px;background:#fff;border:1px solid var(--line);border-radius:7px}
.family-config-section+.family-config-section{border-left:1px solid var(--line)}
.family-delete-management{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);align-items:center;gap:22px;margin-top:16px;padding:20px;border:1px solid #ead6d3;border-radius:7px;background:#fff}
.family-delete-management h3{margin:0 0 5px;color:#813d37;font:700 14px/1.3 var(--display)}
.family-delete-management>div>p{margin:0;color:var(--muted);font-size:11px}
.family-delete-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 10px}
.family-delete-form label{grid-column:1/-1;display:grid;gap:6px;color:#485650;font-size:11px;font-weight:700}
.family-delete-form select{width:100%;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:12px}
.family-delete-status{grid-column:1;margin:0;color:var(--muted);font-size:10px;line-height:1.4}
.family-delete-form .danger-button{min-height:36px;padding:0 11px;border:1px solid #c98d87;border-radius:5px;background:#fff;color:#8f3932;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer}
.family-delete-form .danger-button:hover:not(:disabled){background:#fbefed}
.family-delete-form .danger-button:disabled{border-color:#e1e4e0;color:#9aa29d;cursor:not-allowed}
.family-config-section h3{margin:0 0 5px;font:700 15px/1.3 var(--display)}
.family-config-section>p{margin:0 0 18px;color:var(--muted);font-size:11px}
.family-config-form{display:grid;align-content:start;gap:14px}
.family-config-form label,.family-icon-edit-form label{display:grid;gap:6px;color:#485650;font-size:11px;font-weight:700}
.family-config-form input,.family-config-form select,.family-icon-edit-form select{width:100%;height:42px;padding:0 11px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font-size:13px}
.family-config-form .button,.family-icon-edit-form .button{width:100%;min-height:42px;margin-top:2px}
.family-icon-choice{min-width:0;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:end;gap:11px}
.family-icon-preview{width:52px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;background:#edf4ef;color:var(--forest)}
.family-icon-preview:not(.has-custom-icon) svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.family-icon-preview.has-custom-icon svg{width:30px;height:30px;max-width:100%;max-height:100%}
.family-icon-management{min-width:0;padding:20px;background:#fff;border:1px solid var(--line);border-radius:7px}
.family-icon-management-copy h3{margin:0 0 5px;font:700 15px/1.3 var(--display)}
.family-icon-management-copy p{margin:0 0 16px;color:var(--muted);font-size:11px}
.family-icon-edit-form{display:grid;align-content:start;gap:14px}
.family-icon-edit-form input[type=file]{height:auto;min-height:38px;padding:8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:400 11px var(--font)}
.family-icon-catalogue-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:5px;background:#f7f8f6;color:var(--muted);font-size:11px}
.family-icon-sample{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #cbd9d0;border-radius:5px;background:#fff;color:var(--forest);font-size:11px}
.family-icon-preview-small{width:22px;height:22px;display:grid;place-items:center}
.family-icon-preview-small:not(.has-custom-icon) svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.family-icon-preview-small.has-custom-icon svg{width:20px;height:20px;max-width:100%;max-height:100%}
.family-config-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 28px;border-top:1px solid var(--line);background:#fff;flex:none}
.family-config-footer .button{min-height:38px;padding:0 15px}
.family-config-footer .family-group-save{width:auto;margin:0}
.family-shortcut-icon:not(.has-custom-icon) svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.family-shortcut-icon.has-custom-icon svg{width:24px;height:24px;max-width:100%;max-height:100%}
@media(max-width:700px){.family-config-forms{grid-template-columns:1fr}.family-config-tab-panel[data-family-panel="icons"].is-active{grid-template-columns:1fr}.family-config-section{padding:20px}.family-config-section+.family-config-section{border-top:1px solid var(--line);border-left:1px solid var(--line)}.family-delete-management{grid-template-columns:1fr;gap:16px}.family-config-dialog{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.family-config-header{padding:19px 20px 16px}.family-config-header h2{font-size:19px}.family-config-tabs{gap:8px;padding:0 18px}.family-config-tab{font-size:11px}.family-config-body{padding:18px}.family-config-footer{padding:11px 18px}}
@media(max-width:620px){.catalog-intro-actions{flex-direction:column-reverse;align-items:flex-end;gap:8px}.family-config-open{min-height:34px;padding:0 9px;font-size:10px}.family-group-config{padding:18px 15px}.family-config-header{padding:17px 15px 14px}.family-config-header p{max-width:34ch}.family-config-tabs{gap:4px;padding:0 10px}.family-config-tab{min-height:44px;gap:5px;padding:0 6px;font-size:10px}.family-config-body{padding:14px 12px 18px}.family-group-toolbar{align-items:stretch;flex-direction:column}.family-group-add{align-self:flex-start}.family-config-section{padding:17px}.family-delete-management{padding:16px}.family-delete-form{grid-template-columns:minmax(0,1fr)}.family-delete-status{grid-column:1}.family-delete-form .danger-button{width:100%}.family-config-footer{padding:10px 12px}.family-config-footer .button{flex:1}.family-icon-management{padding:18px}}

.page-shell{width:calc(100% - 56px)}
.custom-finder-page{max-width:none}
@media(max-width:900px){.page-shell{width:calc(100% - 36px)}}

.family-group-config{padding:19px 24px 17px;border-bottom:1px solid var(--line)}
.family-group-config-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.family-group-config-heading h3{margin:0;font:700 13px var(--display)}
.family-group-config-heading p{margin:4px 0 0;color:var(--muted);font-size:10px}
.family-group-add{min-height:34px;flex:none;padding:0 10px;font-size:10px}
.family-group-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:start;gap:10px}
.family-group-config{padding:0;border:0}
.family-group-column{min-width:0;padding:9px;border:1px solid var(--line);border-radius:5px;background:#fafbf8}
.family-group-column-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.family-group-column-heading label{min-width:0;flex:1}
.family-group-drag-handle{width:28px;height:28px;flex:none;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--forest);cursor:grab;touch-action:none;user-select:none}
.family-group-drag-handle:active{cursor:grabbing}
.family-group-column-heading input{width:100%;height:33px;padding:0 8px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);font:700 11px var(--font)}
.family-group-column-heading strong{font:700 11px var(--display)}
.family-group-remove{padding:5px;border:0;background:none;color:var(--rust);font:600 9px var(--font);cursor:pointer}
.family-group-dropzone{min-height:50px;display:flex;flex-wrap:wrap;align-content:flex-start;gap:5px;padding:5px;border:1px dashed #c7d0c8;border-radius:4px;transition:background .15s,border-color .15s}
.family-group-dropzone.is-drop-target{border-color:var(--green);background:var(--green-soft)}
.family-group-item{min-width:0;min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:3px 4px 3px 5px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);font:600 10px var(--font)}
.family-group-item-name{min-width:0;overflow-wrap:anywhere}
.family-item-drag-handle,.family-item-copy,.family-item-remove{width:24px;height:24px;flex:none;display:grid;place-items:center;padding:0;border:0;border-radius:3px;background:transparent;color:var(--muted);font:600 12px var(--font);cursor:pointer}
.family-item-drag-handle{cursor:grab;touch-action:none;user-select:none}
.family-item-drag-handle:active{cursor:grabbing}
.family-item-copy:hover{background:var(--green-soft);color:var(--forest)}
.family-item-remove{color:var(--rust)}
.family-item-remove:hover{background:#faeeec}
.family-group-item-unassigned .family-group-item-name{padding-right:4px}
.family-group-item.is-dragging{opacity:.45}
.family-group-column.is-copy-target{outline:2px dashed var(--green);outline-offset:2px;cursor:pointer}
.family-group-column.is-copy-target:hover{background:var(--green-soft)}
.family-group-column.is-group-dragging{opacity:.5}
.family-group-column.is-group-drop-target{outline:2px dashed var(--green);outline-offset:2px}
.family-group-unassigned{background:#f3f2ee}
.family-group-unassigned{grid-column:1/-1}
.family-group-save{width:100%;min-height:38px;margin-top:11px}
.family-group-save-status{margin-right:auto;color:var(--muted);font-size:11px}
.family-shortcuts-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr));align-items:start;gap:14px 18px}
.family-shortcuts-group-heading{display:flex;align-items:center;gap:10px;margin:0 0 9px;padding:0 0 7px;border-bottom:1px solid var(--line)}
.family-shortcuts-group-heading h3{margin:0;color:var(--forest);font:700 13px var(--display)}
.family-shortcuts-group-heading span{color:var(--muted);font-size:10px}
.family-shortcuts-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:9px}
.family-shortcuts-grid strong{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
.family-shortcuts-grid>a{position:relative}
.finder-type:hover,.finder-type:focus-visible,.family-shortcuts-grid>a:hover,.family-shortcuts-grid>a:focus-visible{z-index:20}
.featured-image-preview{position:absolute;z-index:30;left:50%;bottom:calc(100% + 8px);width:min(230px,calc(100vw - 40px));padding:6px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 10px 26px rgba(23,59,52,.2);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,4px);transition:opacity .12s,transform .12s,visibility .12s}
.featured-image-preview img{display:block;width:100%;height:150px;object-fit:contain}
.finder-type:hover .featured-image-preview,.finder-type:focus-visible .featured-image-preview,.family-shortcuts-grid>a:hover .featured-image-preview,.family-shortcuts-grid>a:focus-visible .featured-image-preview{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(max-width:900px){.family-shortcuts-groups{grid-template-columns:1fr}}
@media(max-width:620px){.family-shortcuts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}}
@media(max-width:620px){.family-config-dialog{width:calc(100% - 20px)}.family-group-config{padding:16px 14px}.family-group-config-heading{display:grid}.family-group-add{justify-self:start}.family-group-board{grid-template-columns:1fr}.family-config-footer{flex-wrap:wrap}.family-group-save-status{flex:1 0 100%;text-align:center}}

.pwa-install-dialog{width:min(520px,calc(100% - 28px));max-width:none;max-height:min(760px,calc(100dvh - 28px));overflow:auto;padding:0;border:1px solid #cbd4ca;border-radius:12px;background:var(--paper);color:var(--ink);box-shadow:0 28px 90px #102c2752}
.pwa-install-dialog[open]{animation:pwa-guide-enter .22s ease-out both}
.pwa-install-dialog::backdrop{background:#10251f9c;backdrop-filter:blur(4px)}
.pwa-install-dialog-content{overflow:hidden;border-radius:inherit}
.pwa-install-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px;border-bottom:1px solid var(--line);background:#fff}
.pwa-install-dialog-kicker{display:flex;align-items:center;gap:7px;margin:0;color:var(--green);font-size:10px;font-weight:800;text-transform:uppercase}
.pwa-install-dialog-close{width:34px;height:34px;display:grid;place-items:center;flex:none;border:0;border-radius:50%;background:#f0f2ed;color:var(--ink);font-size:23px;line-height:1;cursor:pointer}
.pwa-install-dialog-main{padding:22px 24px 16px}
.pwa-install-dialog-main h2{margin:0 0 7px;font:800 22px/1.2 var(--display)}
.pwa-install-dialog-intro{min-height:38px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.pwa-guide-step[hidden]{display:none}
.pwa-guide-visual{position:relative;height:250px;display:grid;place-items:center;overflow:hidden;margin:16px 0 16px;border:1px solid #d7ddd4;border-radius:8px;background-color:#e9eee7;background-image:repeating-linear-gradient(135deg,transparent 0 18px,#ffffff55 18px 19px)}
.pwa-guide-phone{position:relative;width:142px;height:224px;overflow:hidden;padding:8px 8px 10px;border:4px solid #24332d;border-radius:23px;background:#fbfcf9;box-shadow:0 12px 24px #102c2728}
.pwa-guide-status{height:13px;display:flex;justify-content:space-between;padding:0 5px;color:#27352e;font-size:7px;font-weight:800}
.pwa-guide-browser-bar{height:27px;display:flex;align-items:center;justify-content:space-between;padding:0 6px;border-bottom:1px solid #e6e9e3;color:#35453d;font-size:8px;font-weight:700}
.pwa-guide-browser-menu{font-size:15px;line-height:1}
.pwa-guide-page-lines{display:grid;gap:8px;padding:17px 7px}
.pwa-guide-page-lines i{height:7px;border-radius:3px;background:#e5e9e2}
.pwa-guide-page-lines i:first-child{width:76%;height:10px;background:#c9d9ce}
.pwa-guide-page-lines i:nth-child(3){width:54%}
.pwa-guide-page-lines b{width:54px;height:18px;margin-top:7px;border-radius:4px;background:#315e50}
.pwa-guide-toolbar{position:absolute;right:0;bottom:0;left:0;height:32px;display:flex;align-items:center;justify-content:space-around;border-top:1px solid #e0e5dd;background:#f8faf6;color:#617168;font-size:12px}
.pwa-guide-share-target{width:25px;height:25px;display:grid;place-items:center;border:2px solid #ce5a3e;border-radius:7px;background:#fff;color:#b54631;box-shadow:0 0 0 4px #f5d8ce}
.pwa-guide-share-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pwa-guide-menu-icon{display:none;font-size:17px;font-weight:800;line-height:1}
.pwa-guide-callout{position:absolute;left:calc(50% + 53px);bottom:38px;display:flex;align-items:center;gap:5px;max-width:calc(50% - 58px);padding:7px 8px;border:1px solid #e2b1a4;border-radius:5px;background:#fff;color:#853a2c;font-size:9px;font-weight:800;line-height:1.3;box-shadow:0 5px 12px #7a37201c}
.pwa-guide-callout b{font-size:15px}
.pwa-guide-step h3{margin:0 0 5px;font:800 15px var(--display)}
.pwa-guide-step>p{min-height:39px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.pwa-guide-share-sheet{position:absolute;right:0;bottom:0;left:0;height:145px;padding:13px 8px 8px;border-radius:14px 14px 0 0;background:#f4f5f2;box-shadow:0 -6px 15px #16251c16}
.pwa-guide-share-apps{display:flex;justify-content:space-around;padding:0 3px 11px;border-bottom:1px solid #dfe3dd}
.pwa-guide-share-apps i{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#fff;color:#466858;font-size:10px;font-style:normal}
.pwa-guide-add-row{min-height:42px;display:grid;grid-template-columns:25px minmax(0,1fr) 12px;align-items:center;gap:6px;margin-top:8px;padding:0 5px;border:2px solid #ce5a3e;border-radius:6px;background:#fff;color:#303b34;font-size:7px;font-weight:800;line-height:1.25;box-shadow:0 0 0 3px #f5d8ce}
.pwa-guide-home-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:5px;background:#e9efe8;color:#315e50;font-size:16px}
.pwa-install-dialog--android .pwa-guide-share-target{border-color:#477c56;background:#edf5ed;color:#315e50;box-shadow:0 0 0 4px #d6e9d8}
.pwa-install-dialog--android .pwa-guide-share-icon{display:none}
.pwa-install-dialog--android .pwa-guide-menu-icon{display:block}
.pwa-install-dialog--android .pwa-guide-add-row{border-color:#477c56;box-shadow:0 0 0 3px #d6e9d8}
.pwa-install-dialog--android .pwa-guide-home-icon{border-radius:50%;background:#315e50;color:#fff}
.pwa-guide-home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 9px;padding:28px 12px 17px}
.pwa-guide-home-grid i,.pwa-guide-home-dock i{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:#dce8df}
.pwa-guide-home-grid i:nth-child(3n+2){background:#f1e4d3}
.pwa-guide-home-grid i:nth-child(3n){background:#e1e8f0}
.pwa-guide-home-grid .pwa-guide-app-icon{border:2px solid #ce5a3e;background:#315e50;color:#e5efbd;font:800 16px var(--display);box-shadow:0 0 0 4px #f5d8ce}
.pwa-guide-home-dock{display:flex;justify-content:center;gap:9px;padding:8px;border-radius:12px;background:#e8ece6}
.pwa-guide-home-dock i{width:25px;height:25px;background:#cad8cf}
.pwa-guide-confirm-mark{position:absolute;top:31px;left:calc(50% + 40px);width:37px;height:37px;display:grid;place-items:center;border:3px solid var(--paper);border-radius:50%;background:#398252;color:#fff;font-size:20px;font-weight:800;animation:pwa-guide-pop .35s .12s both}
.pwa-guide-progress{display:flex;align-items:center;gap:12px;margin-top:14px;color:var(--muted);font-size:10px}
.pwa-guide-progress span{flex:none}
.pwa-guide-progress b{color:var(--forest)}
.pwa-guide-progress progress{width:100%;height:5px;overflow:hidden;border:0;border-radius:5px;background:#d9dfd7;accent-color:#477c56}
.pwa-guide-progress progress::-webkit-progress-bar{border-radius:5px;background:#d9dfd7}
.pwa-guide-progress progress::-webkit-progress-value{border-radius:5px;background:#477c56;transition:width .2s}
.pwa-guide-progress progress::-moz-progress-bar{border-radius:5px;background:#477c56}
.pwa-install-dialog-footer{display:flex;justify-content:space-between;gap:10px;padding:14px 24px 19px;border-top:1px solid var(--line);background:#fff}
.pwa-install-dialog-footer .button{min-width:108px;min-height:40px}
.pwa-install-dialog-footer .button:disabled{opacity:.45;cursor:not-allowed}
body:has(.pwa-install-dialog[open]){overflow:hidden}
@keyframes pwa-guide-enter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes pwa-guide-pop{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
@media(max-width:520px){.pwa-install-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:10px}.pwa-install-dialog-main{padding:17px 17px 13px}.pwa-install-dialog-main h2{font-size:19px}.pwa-install-dialog-header{padding:13px 16px}.pwa-guide-visual{height:225px;margin:12px 0}.pwa-guide-phone{transform:scale(.92)}.pwa-install-dialog-footer{padding:12px 17px 15px}}
@media(prefers-reduced-motion:reduce){.pwa-install-dialog[open],.pwa-guide-confirm-mark{animation:none}}
@media(max-width:620px){
	.topbar{height:auto;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;padding:8px 13px 0}
	.top-nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));justify-self:stretch;justify-content:initial;min-height:48px;gap:6px;align-self:stretch;padding:5px 0 8px}
	.nav-link{justify-content:center;min-height:42px;padding:0 12px;font-size:11px}
	.user-menu{grid-column:2;grid-row:1;margin-left:0}
	.logout-form{margin-left:0;padding-left:8px}
	.text-button{padding:7px 8px;font-size:10px}
	.page-heading{align-items:stretch;flex-direction:column;gap:12px}
	.admin-heading-actions{width:100%}
	.taxonomy-heading-row{align-items:stretch;flex-direction:column;gap:14px}
	.taxonomy-heading-row .finder-heading{margin:0}
	.taxonomy-header-actions{width:100%;margin-left:0;justify-content:flex-start;flex-wrap:wrap}
}

.material-panel{display:grid;gap:14px;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:7px}
.material-panel h2{margin:5px 0 0;font:700 15px var(--display)}
.material-compatibility-list{margin:0;padding:0;list-style:none}
.material-compatibility-row{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;border-top:1px solid #edf0eb}
.material-panel .iso-mark{width:30px;height:30px;border-radius:5px;font-size:12px;font-weight:800}
.material-compatibility-copy{display:grid;gap:3px;min-width:0}
.material-compatibility-copy strong{font-size:11px}
.material-compatibility-copy small{color:var(--muted);font-size:10px}
.product-sidebar{display:grid;gap:18px;min-width:0}
@media(max-width:760px){.topbar{height:auto;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;padding:8px 18px 0}.top-nav{grid-column:1/-1;grid-row:2;min-height:48px;justify-content:center;gap:5px;align-self:stretch;padding-top:3px}.user-menu{grid-column:2;grid-row:1;margin-left:0;justify-self:end}.logout-form{margin-left:0;padding-left:8px}}

.search-form{grid-template-columns:minmax(220px,1fr) 190px 180px auto auto}
@media(max-width:900px){.search-form{grid-template-columns:minmax(190px,1fr) 1fr 1fr}}
@media(max-width:620px){.search-form{grid-template-columns:1fr 1fr}}

.stock-panel{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 18px}
.stock-panel-summary{min-width:0;display:grid;justify-items:start;gap:5px}
.stock-location{min-width:76px;display:grid;align-content:start;gap:7px;padding:4px 0 0 12px;border-left:1px solid #edf0eb}
.stock-location>span{color:var(--green);font-size:9px;font-weight:800;letter-spacing:1px}
.stock-location strong{font:700 15px var(--display);overflow-wrap:anywhere}
.stock-panel .stock-date{grid-column:1/-1}
@media(max-width:620px){.stock-panel{grid-template-columns:minmax(0,1fr) minmax(86px,auto);gap:10px 12px}.stock-location{min-width:0;padding-left:9px}.stock-location strong{font-size:13px}}