/* Admin-only 3D pastel theme. Login and reseller portal are deliberately outside this scope. */
:root {
  --iloa-purple-950:#23134f;
  --iloa-purple-900:#39246b;
  --iloa-purple-700:#5d38b5;
  --iloa-purple-500:#8456e8;
  --iloa-lavender-500:#a995ec;
  --iloa-lavender-300:#ddd0fa;
  --iloa-lavender-100:#f0eafb;
  --iloa-pink:#fce1ef;
  --iloa-mint:#e0f4e7;
  --iloa-blue:#30559b;
  --iloa-blue-tint:#e3efff;
  --iloa-peach:#fff0d9;
  --iloa-bg:#f3f0fa;
  --iloa-surface:#fffdfd;
  --iloa-border:#e4dcf2;
  --iloa-text:#2e244b;
  --iloa-muted:#716584;
  --iloa-shadow:4px 6px 16px #64518c17,-2px -2px 9px #ffffffb8;
  --iloa-highlight:inset 0 1px 2px #fff;
  --iloa-radius:20px;
  --iloa-shadow-raised:0 3px 5px #63429120,0 9px 18px #6b4c9412,inset 0 2px 2px #ffffffed;
  --iloa-shadow-inset:inset 2px 3px 7px #7b5ba00e,inset -2px -2px 5px #fff;
  --iloa-success:#276447;
  --iloa-danger:#aa345f;
}
body:not(.portal-mode):has(.workspace:not([hidden])) {
  --purple:var(--iloa-purple-700);
  --deep:var(--iloa-purple-950);
  --pink:var(--iloa-pink);
  --bg:var(--iloa-bg);
  --text:var(--iloa-text);
  --muted:var(--iloa-muted);
  --border:var(--iloa-border);
  --green:var(--iloa-success);
  --orange:#a56824;
  background:linear-gradient(130deg,#eee6ff,var(--iloa-bg) 45%,#f9f3f8);
  color:var(--iloa-text);
}
@scope (body:not(.portal-mode):has(.workspace:not([hidden]))) {
  .sidebar{
    inset:10px auto 10px 10px;
    width:224px;
    padding:25px 12px 18px;
    border:1px solid #ffffff65;
    border-radius:28px;
    background:linear-gradient(155deg,#7964c9,#7462ca 65%,#725bbf);
    color:white;
    box-shadow:5px 7px 18px #6948a533,inset 1px 2px 4px #ffffff8f;
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:#ffffff60 transparent
  }
  .sidebar .brand{
    color:white;
    padding:0 9px;
    letter-spacing:2px;
    text-shadow:0 2px 2px #4d32996b
  }
  .sidebar .brand-mark{
    background:linear-gradient(145deg,#fff0fb,#f5bfe4);
    color:#9e2c97;
    box-shadow:0 3px 5px #43207840,inset 1px 2px 2px white;
    border:1px solid #ffffffbd
  }
  .sidebar .brand small{
    color:#fff;
    font-size:8px;
    letter-spacing:2px
  }
  .sidebar .nav-label{
    color:#f2ecff;
    margin:28px 11px 13px;
    font-size:9px;
    letter-spacing:1.5px
  }
  .sidebar #navigation{
    gap:5px
  }
  .sidebar #navigation a{
    color:#fff;
    padding:11px 13px;
    border-radius:17px;
    font-size:12px;
    min-height:43px;
    text-shadow:0 1px 2px #39246b55;
    transition:background .15s,box-shadow .15s
  }
  .sidebar #navigation a:hover{
    background:#ffffff16
  }
  .sidebar #navigation a.active{
    background:linear-gradient(135deg,#fffaff,#e2d4ff);
    color:var(--iloa-purple-700);
    border:1px solid #fff;
    box-shadow:0 3px 7px #452d9b38,inset 0 2px 2px white;
    text-shadow:none;
    font-weight:700
  }
  .sidebar .nav-icon{
    font-size:19px;
    filter:drop-shadow(0 2px 1px #34217465)
  }
  .sidebar-footer{
    color:#f0eaff;
    border-top:1px solid #ffffff29;
    padding:18px 11px 0;
    margin-top:auto;
    font-size:10px
  }
  .sidebar-footer small{
    color:#eee5ff
  }
  .live-dot{
    background:#e6d7ff
  }
  .topbar{
    height:auto;
    min-height:78px;
    margin:10px 20px 0;
    border:1px solid #fff;
    border-radius:24px;
    background:linear-gradient(145deg,#fff,#faf4fd);
    padding:15px 22px;
    gap:15px;
    box-shadow:var(--iloa-shadow-raised)
  }
  .topbar>span:first-child{
    white-space:nowrap;
    color:var(--iloa-purple-900);
    font-weight:700
  }
  .topbar>span:first-child .muted{
    font-weight:400;
    font-size:11px
  }
  .cloud-actions{
    flex:1;
    gap:8px;
    align-items:center
  }
  .operations-header{
    flex:1;
    display:flex;
    gap:9px;
    align-items:center
  }
  .operations-header [data-ops=search]{
    flex:1;
    min-width:140px;
    text-align:left;
    font-size:11px;
    font-weight:400;
    color:var(--iloa-purple-900);
    padding:11px 16px;
    border-radius:18px;
    background:linear-gradient(120deg,#f8f2ff,#eee5fc);
    border:1px solid #fff;
    box-shadow:var(--iloa-shadow-raised)
  }
  .operations-header [data-ops=notifications]{
    background:linear-gradient(#fff,#f2eafa);
    border:1px solid white;
    border-radius:14px;
    min-height:38px;
    min-width:38px;
    box-shadow:var(--iloa-shadow-raised)
  }
  .operations-header [data-ops=notifications]>span:not(.badge){
    display:none
  }
  .operations-header .badge{
    background:var(--iloa-pink);
    color:#96265f
  }
  .profile{
    color:var(--iloa-purple-950);
    font-size:11px;
    white-space:normal
  }
  .profile:before{
    content:'◉';
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    flex:0 0 32px;
    border-radius:50%;
    background:linear-gradient(135deg,#fff,#decafa);
    color:var(--iloa-purple-700);
    box-shadow:var(--iloa-shadow-raised);
    font-size:19px
  }
  .profile-menu{
    min-width:0
  }
  .profile-options{
    border-radius:16px;
    border-color:var(--iloa-border);
    box-shadow:var(--iloa-shadow-raised)
  }
  #logout.logout-button,#refresh-cloud{
    background:linear-gradient(#fff,#f3ecfc);
    color:var(--iloa-purple-900);
    border:1px solid #fff;
    box-shadow:var(--iloa-shadow-raised);
    font-size:10px;
    min-height:36px;
    padding:8px 10px;
    border-radius:12px
  }
  #network-status{
    background:var(--iloa-mint);
    color:var(--iloa-success);
    box-shadow:var(--iloa-highlight);
    font-size:9px;
    padding:7px 9px;
    border-radius:12px;
    white-space:nowrap
  }
  main{
    padding:24px 24px 20px;
    max-width:1760px
  }
  .heading{
    margin-bottom:22px
  }
  .heading h1{
    color:var(--iloa-purple-950);
    font-size:30px;
    font-weight:750;
    letter-spacing:-.8px
  }
  .heading p{
    font-size:12px;
    line-height:1.6
  }
  .panel,.stat,.product-card,.ops-panel,.report-kpi{
    border:1px solid #ffffffed;
    border-radius:var(--iloa-radius);
    box-shadow:var(--iloa-shadow-raised);
    background:linear-gradient(145deg,#fff,#fcf8fe)
  }
  .panel-head{
    padding:18px 20px;
    border-color:var(--iloa-border);
    background:linear-gradient(120deg,#fcf9ff,#fff8fc);
    border-radius:var(--iloa-radius) var(--iloa-radius) 0 0
  }
  .panel h2,.panel-head h2{
    font-size:15px;
    color:var(--iloa-purple-950)
  }
  .stats{
    gap:16px
  }
  .stat{
    padding:20px
  }
  .stat strong{
    color:var(--iloa-purple-950);
    font-variant-numeric:tabular-nums
  }
  .stat-icon,.avatar{
    background:linear-gradient(#f8edff,#e1d0fa);
    color:var(--iloa-purple-700);
    box-shadow:var(--iloa-shadow-raised)
  }
  .welcome{
    border:1px solid #fff;
    background:linear-gradient(120deg,#6f4cc0,#aa8be6);
    border-radius:22px;
    box-shadow:var(--iloa-shadow-raised)
  }
  .welcome .eyebrow{
    color:#f0dfff
  }
  .welcome .flower{
    color:#e7c9ff
  }
  .welcome h2{
    color:#fff
  }
  .btn{
    color:var(--iloa-purple-900);
    background:linear-gradient(145deg,#fff,#f1eafa);
    border:1px solid #ffffffee;
    border-radius:13px;
    box-shadow:var(--iloa-shadow-raised);
    transition:box-shadow .15s,background .15s
  }
  .btn:hover{
    background:linear-gradient(#fff,#eadcfb);
    box-shadow:0 4px 9px #69429924,inset 0 2px 2px #fff
  }
  .btn:active{
    box-shadow:var(--iloa-shadow-inset)
  }
  .btn.primary{
    background:linear-gradient(140deg,#a07aff,#7646df);
    color:#fff;
    border-color:#b89af1;
    box-shadow:0 4px 8px #6c42b637,inset 0 2px 3px #d7c1ff
  }
  .btn.primary:hover{
    background:linear-gradient(140deg,#956bec,#6636cc)
  }
  .btn.danger{
    background:linear-gradient(#fff5fa,var(--iloa-pink));
    color:var(--iloa-danger);
    border-color:#f8d4e5
  }
  .btn.small{
    padding:8px 11px
  }
  .btn:disabled{
    opacity:.55
  }
  .btn.primary.user-delete-confirm{
    background:#b42335;
    color:white;
    border-color:#b42335
  }
  button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
    outline:3px solid var(--iloa-purple-700);
    outline-offset:3px
  }
  input,select,textarea{
    color:var(--iloa-text);
    background:linear-gradient(140deg,#fff,#faf6ff);
    border:1px solid #d9cdeb;
    border-radius:12px;
    box-shadow:var(--iloa-shadow-inset)
  }
  input:focus,select:focus,textarea:focus{
    border-color:var(--iloa-purple-500);
    box-shadow:0 0 0 3px #8456e81c,var(--iloa-shadow-inset)
  }
  input::placeholder,textarea::placeholder{
    color:#897a9d
  }
  label,.form-note{
    color:var(--iloa-muted)
  }
  .photo-drop,.photo-editor{
    background:#faf6ff;
    border-color:var(--iloa-border)
  }
  .form-footer{
    border-color:var(--iloa-border)
  }
  table{
    color:var(--iloa-text)
  }
  th{
    background:linear-gradient(#f1e8ff,#e9ddfb);
    color:var(--iloa-purple-900);
    border-color:var(--iloa-border);
    font-size:10px;
    font-weight:600;
    letter-spacing:.1px
  }
  td{
    border-color:#efe7f6;
    font-variant-numeric:tabular-nums
  }
  tbody tr:hover{
    background:#f8f1ff
  }
  .table-wrap{
    border-color:var(--iloa-border)
  }
  .badge{
    border-radius:10px;
    box-shadow:var(--iloa-highlight);
    font-weight:600
  }
  .badge.green{
    background:linear-gradient(#e5fbf0,#cceddf);
    color:var(--iloa-success)
  }
  .badge.orange{
    background:var(--iloa-peach);
    color:#81501d
  }
  .badge.red{
    background:var(--iloa-pink);
    color:var(--iloa-danger)
  }
  .badge.purple,.badge.blue{
    background:var(--iloa-lavender-100);
    color:var(--iloa-purple-700)
  }
  .summary-strip{
    background:#f7f0fc;
    border-color:var(--iloa-border)
  }
  .pagination .active,.product-view-buttons .primary{
    background:linear-gradient(#a884fa,#7d4fe0);
    color:white;
    border-color:#af8ee7
  }
  dialog{
    border:1px solid white;
    border-radius:24px;
    color:var(--iloa-text);
    background:linear-gradient(135deg,#fff,#fcf7ff);
    box-shadow:0 25px 70px #3e24663d,inset 0 2px 2px #fff
  }
  dialog::backdrop{
    background:#2b1a514f
  }
  .dialog-heading{
    background:linear-gradient(110deg,#fff,#f4eafb);
    border-color:var(--iloa-border)
  }
  .dialog-heading h2{
    color:var(--iloa-purple-950)
  }
  .icon-button{
    color:var(--iloa-purple-700)
  }
  .stock-preview,.receive-intro{
    background:var(--iloa-lavender-100);
    color:var(--iloa-purple-900)
  }
  .stock-location-dialog .stock-preview{
    border-color:var(--iloa-border)
  }
  .supplier-options,.lifecycle-menu,.product-actions-menu,.stock-actions-popup{
    background:linear-gradient(130deg,#fff,#f6effc);
    border:1px solid white;
    border-radius:18px;
    box-shadow:0 9px 25px #5d378d2e,inset 0 2px 2px #fff
  }
  .stock-actions-popup .btn:hover,.supplier-options button:hover{
    background:var(--iloa-lavender-100)
  }
  .stock-actions-popup [data-stock-action=correct]{
    color:var(--iloa-purple-700);
    background:linear-gradient(#eee1ff,#e4d3fa)
  }
  .stock-actions-popup [data-stock-action=correct]:before{
    content:'✎';
    margin-right:9px
  }
  .stock-actions-popup [data-stock-action=view]:before{
    content:'◇';
    margin-right:9px
  }
  .stock-actions-popup [data-stock-action=product-history]:before{
    content:'◷';
    margin-right:9px
  }
  .stock-sales-link,.stock-sold-count{
    color:var(--iloa-purple-700)
  }
  .stock-sales-link:hover{
    background:var(--iloa-lavender-100)
  }
  .stock-sales-kpis section{
    background:linear-gradient(#fff,#f0e7fb);
    box-shadow:var(--iloa-highlight)
  }
  .stock-sales-kpis section:first-child{
    border-color:var(--iloa-lavender-500)
  }
  .stock-sales-kpis strong{
    color:var(--iloa-purple-950)
  }
  .stock-correction-body .stock-sales-product{
    padding:14px;
    border:1px solid white;
    border-radius:17px;
    background:linear-gradient(125deg,#f6edff,#fff7fc);
    box-shadow:var(--iloa-highlight)
  }
  .stock-correction-table th{
    background:#eee3fb
  }
  .stock-correction-body .form-note{
    padding:11px 13px;
    border-radius:12px;
    background:var(--iloa-peach);
    font-size:11px
  }
  .stock-correction-input input:focus{
    outline-color:var(--iloa-purple-700)
  }
  .stock-page>.heading{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:145px;
    padding:30px 30px 30px 105px;
    border-radius:24px;
    border:1px solid #fff;
    background:linear-gradient(110deg,#e1d2ff,#f0ddf5 65%,#ddd0f8);
    box-shadow:var(--iloa-shadow-raised);
    margin-bottom:18px
  }
  .stock-page>.heading:before{
    content:'◇';
    display:grid;
    place-items:center;
    position:absolute;
    left:25px;
    top:35px;
    width:58px;
    height:65px;
    border:1px solid #f8eeff;
    border-radius:18px;
    background:linear-gradient(135deg,#c6aaff,#8b5ee3);
    box-shadow:0 6px 9px #6c4ab344,inset 0 2px 2px #eddcff;
    color:white;
    font-size:47px;
    text-shadow:0 3px 2px #7c46cb
  }
  .stock-page>.heading>div{
    max-width:62%
  }
  .stock-page>.heading h1{
    font-size:32px
  }
  .stock-page>.heading p{
    color:var(--iloa-purple-900)
  }
  .stock-page>.heading:after{
    content:'';
    position:absolute;
    right:20px;
    bottom:0;
    width:340px;
    height:145px;
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22360%22%20height%3D%22150%22%20viewBox%3D%220%200%20360%20150%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22box%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23ffe6b7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23e3ac74%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22metal%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23d1bcf6%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%239276c4%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22truck%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23bda0ff%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23794dcc%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cellipse%20cx%3D%22185%22%20cy%3D%22140%22%20rx%3D%22158%22%20ry%3D%228%22%20fill%3D%22%238e6bb8%22%20opacity%3D%22.18%22%2F%3E%3Cg%20stroke%3D%22%239577bd%22%20stroke-width%3D%224%22%20fill%3D%22none%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M70%20132V24l93-13v122M70%2052l93-10M70%2092l93-9M70%20131l93-8%22%2F%3E%3Cpath%20d%3D%22m70%2024%2013%207%2093-13M163%2011l13%207v111M70%2092l12%206%2094-8%22%20opacity%3D%22.55%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22url(%23box)%22%20stroke%3D%22%23f6d4a3%22%20stroke-width%3D%221%22%3E%3Crect%20x%3D%2286%22%20y%3D%2235%22%20width%3D%2226%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%22122%22%20y%3D%2227%22%20width%3D%2229%22%20height%3D%2219%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2290%22%20y%3D%2267%22%20width%3D%2229%22%20height%3D%2220%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%22128%22%20y%3D%2261%22%20width%3D%2224%22%20height%3D%2224%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2285%22%20y%3D%22106%22%20width%3D%2230%22%20height%3D%2222%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%22121%22%20y%3D%22101%22%20width%3D%2234%22%20height%3D%2225%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2230%22%20y%3D%22108%22%20width%3D%2231%22%20height%3D%2229%22%20rx%3D%223%22%2F%3E%3Crect%20x%3D%2210%22%20y%3D%22121%22%20width%3D%2224%22%20height%3D%2217%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%22191%22%20y%3D%2277%22%20width%3D%2254%22%20height%3D%2248%22%20rx%3D%224%22%2F%3E%3Crect%20x%3D%22197%22%20y%3D%2231%22%20width%3D%2245%22%20height%3D%2244%22%20rx%3D%224%22%2F%3E%3C%2Fg%3E%3Cg%20stroke%3D%22%23fff2d9%22%20stroke-width%3D%224%22%3E%3Cpath%20d%3D%22M219%2032v42M216%2078v45M44%20110v24M104%2069v17%22%2F%3E%3C%2Fg%3E%3Cg%3E%3Cpath%20d%3D%22M263%2074h28l15%2021v36h-50V91Z%22%20fill%3D%22url(%23truck)%22%20stroke%3D%22%236e4caa%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M260%2077V20h39v67%22%20fill%3D%22none%22%20stroke%3D%22url(%23metal)%22%20stroke-width%3D%227%22%2F%3E%3Cpath%20d%3D%22M250%2035v93h-57%22%20fill%3D%22none%22%20stroke%3D%22%2372539b%22%20stroke-width%3D%225%22%2F%3E%3Cpath%20d%3D%22M269%2047h14v32h-14z%22%20fill%3D%22%23f8e6ca%22%2F%3E%3Ccircle%20cx%3D%22264%22%20cy%3D%22132%22%20r%3D%2212%22%20fill%3D%22%2359456f%22%2F%3E%3Ccircle%20cx%3D%22264%22%20cy%3D%22132%22%20r%3D%226%22%20fill%3D%22%23bfaad9%22%2F%3E%3Ccircle%20cx%3D%22301%22%20cy%3D%22132%22%20r%3D%2210%22%20fill%3D%22%2359456f%22%2F%3E%3Ccircle%20cx%3D%22301%22%20cy%3D%22132%22%20r%3D%225%22%20fill%3D%22%23bfaad9%22%2F%3E%3Cpath%20d%3D%22M285%2090h16%22%20stroke%3D%22%23e4cbff%22%20stroke-width%3D%223%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-repeat:no-repeat;
    background-position:right bottom;
    background-size:contain;
    z-index:-1;
    pointer-events:none
  }
  .stock-workspace-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    padding:0;
    background:transparent;
    border:0
  }
  .stock-workspace-tabs .btn{
    flex:1;
    font-size:11px;
    min-height:49px;
    padding:11px 12px;
    border:1px solid white;
    border-radius:18px;
    background:linear-gradient(#fff,#f2e8fc);
    box-shadow:var(--iloa-shadow-raised)
  }
  .stock-workspace-tabs .btn.primary{
    background:linear-gradient(#ad8aff,#7c49e2);
    color:white;
    border-color:#c4a9f9
  }
  .stock-workspace-tabs [data-stock-action=receive]{
    background:linear-gradient(#f4fff8,var(--iloa-mint));
    color:var(--iloa-success)
  }
  .stock-workspace-tabs [data-stock-action=out]{
    background:linear-gradient(#fff6fb,var(--iloa-pink));
    color:var(--iloa-danger)
  }
  .stock-workspace-tabs [data-stock-action=transfer]{
    background:linear-gradient(#fff,#e8e1ff);
    color:var(--iloa-purple-700)
  }
  .stock-workspace-tabs [data-stock-action=receive]:before{
    content:'↓';
    margin-right:8px;
    font-size:20px
  }
  .stock-workspace-tabs [data-stock-action=out]:before{
    content:'↑';
    margin-right:8px;
    font-size:20px
  }
  .stock-workspace-tabs [data-stock-action=transfer]:before{
    content:'⇄';
    margin-right:8px;
    font-size:20px
  }
  .stock-workspace-kpis{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:13px;
    margin:0 0 22px
  }
  .stock-workspace-kpis .panel{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:20px 14px;
    border:1px solid #fff;
    border-radius:20px;
    min-width:0;
    background:linear-gradient(140deg,#faf5ff,#eadefa);
    box-shadow:var(--iloa-shadow-raised)
  }
  .stock-workspace-kpis .stock-kpi-green{
    background:linear-gradient(140deg,#f4fff7,var(--iloa-mint))
  }
  .stock-workspace-kpis .stock-kpi-blue{
    background:linear-gradient(140deg,#f6faff,var(--iloa-blue-tint))
  }
  .stock-workspace-kpis .panel:nth-child(4){
    background:linear-gradient(140deg,#fffaf2,var(--iloa-peach))
  }
  .stock-workspace-kpis .panel.stock-kpi-violet{
    background:linear-gradient(140deg,#fff5fa,var(--iloa-pink))
  }
  .stock-kpi-icon{
    display:grid;
    place-items:center;
    width:46px;
    height:48px;
    flex:0 0 46px;
    border-radius:17px;
    background:linear-gradient(135deg,#d9c2ff,#a47be9);
    color:#54319e;
    border:1px solid #ffffff9c;
    box-shadow:0 3px 5px #7755a52b,inset 0 2px 2px #ffffffd4
  }
  .stock-kpi-icon svg{
    width:27px;
    height:27px;
    filter:drop-shadow(0 2px 1px #ffffffa6)
  }
  .stock-kpi-green .stock-kpi-icon{
    background:linear-gradient(135deg,#c6f6d5,#8ed5a7);
    color:#23643c
  }
  .stock-kpi-blue .stock-kpi-icon{
    background:linear-gradient(135deg,#c5e7ff,#8bbfea);
    color:#285f9e
  }
  .stock-workspace-kpis .panel:nth-child(4) .stock-kpi-icon{
    background:linear-gradient(135deg,#ffe7b9,#f4c87e);
    color:#8b571c
  }
  .stock-kpi-violet .stock-kpi-icon{
    background:linear-gradient(135deg,#ffd4ee,#e9a5d1);
    color:#9a2c73
  }
  .stock-kpi-copy{
    min-width:0
  }
  .stock-workspace-kpis small{
    display:block;
    font-size:11px;
    color:var(--iloa-purple-900)
  }
  .stock-workspace-kpis strong{
    display:block;
    margin:8px 0 5px;
    font-size:27px;
    line-height:1.2;
    color:var(--iloa-purple-950);
    font-variant-numeric:tabular-nums;
    letter-spacing:-.7px
  }
  .stock-kpi-copy>span{
    font-size:10px;
    color:var(--iloa-muted)
  }
  .stock-workspace-filters{
    padding:18px 20px;
    gap:12px;
    background:transparent
  }
  .stock-workspace-filters label{
    font-size:11px;
    gap:7px
  }
  .stock-workspace-filters input,.stock-workspace-filters select{
    min-height:42px;
    padding:10px 12px;
    font-size:11px;
    border-color:#e0d3f0;
    box-shadow:var(--iloa-shadow-raised)
  }
  .stock-workspace-situation{
    overflow:visible
  }
  .stock-situation-table td,.stock-situation-table th{
    padding:12px 8px;
    font-size:12px
  }
  .stock-situation-table th{
    font-size:10px
  }
  .stock-situation-table td strong{
    color:var(--iloa-purple-950);
    font-weight:650
  }
  .stock-situation-table .product-photo{
    border:2px solid white;
    border-radius:12px;
    box-shadow:0 2px 5px #6b498b23
  }
  .stock-row-actions{
    gap:5px
  }
  .stock-row-actions .btn,.stock-admin-actions summary{
    min-height:36px;
    padding:8px 9px;
    font-size:10px
  }
  .stock-admin-actions summary{
    background:linear-gradient(#fff,#ede2fc);
    border:1px solid white;
    border-radius:12px;
    box-shadow:var(--iloa-shadow-raised)
  }
  .stock-workspace-situation .panel-head h2:before{
    content:'▦';
    margin-right:10px;
    color:var(--iloa-purple-700)
  }
  .product-card .category{
    color:var(--iloa-muted)
  }
  .product-card .product-price,.product-card .price,.product-card-price{
    color:var(--iloa-purple-700)
  }
  .product-photo-empty{
    background:linear-gradient(135deg,#eee4fc,#fbe7f4);
    color:var(--iloa-purple-700)
  }
  .product-monogram small{
    color:var(--iloa-muted)
  }
  .product-detail .detail-tabs [aria-selected=true]{
    background:linear-gradient(#a17af1,#7950cf);
    color:white;
    border-color:#b997ed
  }
  .page-footer{
    color:var(--iloa-muted);
    border-color:var(--iloa-border)
  }
  @media(max-width:1250px){
    .topbar{
      gap:10px;
      padding:14px 16px;
      flex-wrap:wrap
    }
    .operations-header [data-ops=search]{
      min-width:145px
    }
    .stock-workspace-kpis{
      gap:9px
    }
    .stock-workspace-kpis .panel{
      padding:16px 10px;
      gap:8px
    }
    .stock-kpi-icon{
      width:36px;
      height:40px;
      flex-basis:36px
    }
    .stock-workspace-tabs .btn{
      flex:none
    }
    .stock-page>.heading>div{
      max-width:58%
    }
  }
  @media(max-width:1000px){
    .stock-workspace-kpis{
      grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .cloud-actions{
      flex-wrap:wrap
    }
    .operations-header{
      min-width:200px
    }
    .stock-workspace-tabs .btn{
      flex:1
    }
    .stock-page>.heading{
      padding-left:95px
    }
    .stock-page>.heading:after{
      width:230px;
      opacity:.8
    }
    .stock-page>.heading>div{
      max-width:70%
    }
  }
  @media(max-width:700px){
    .sidebar{
      inset:auto 0 0 0;
      width:100%;
      border-radius:20px 20px 0 0;
      padding:9px 10px 6px;
      overflow:visible
    }
    .sidebar #navigation{
      gap:5px;
      overflow-x:auto;
      scrollbar-width:none;
      padding:4px 0
    }
    .sidebar #navigation a{
      font-size:10px;
      padding:8px 9px;
      min-height:48px;
      border-radius:13px
    }
    .sidebar .nav-label,.sidebar-footer{
      display:none
    }
    .topbar{
      margin:8px 10px 0;
      padding:12px;
      min-height:0;
      border-radius:18px;
      gap:9px
    }
    .topbar>span:first-child{
      font-size:12px
    }
    .topbar>span:first-child .muted{
      display:none
    }
    .cloud-actions{
      flex-basis:100%;
      min-width:0;
      gap:7px
    }
    .operations-header{
      flex:1;
      min-width:0;
      gap:5px
    }
    .operations-header [data-ops=search]{
      min-width:0;
      padding:9px 10px;
      font-size:11px
    }
    .profile{
      font-size:10px;
      max-width:140px
    }
    .profile:before{
      width:25px;
      height:25px;
      flex-basis:25px;
      font-size:15px
    }
    #logout.logout-button,#refresh-cloud{
      font-size:10px;
      min-height:36px;
      padding:7px 9px
    }
    #network-status{
      font-size:9px;
      margin-left:auto
    }
    main{
      padding:20px 14px
    }
    .heading{
      gap:12px;
      flex-wrap:wrap
    }
    .heading h1{
      font-size:25px
    }
    .stock-page>.heading{
      min-height:120px;
      padding:24px 18px;
      border-radius:19px
    }
    .stock-page>.heading:before{
      display:none
    }
    .stock-page>.heading h1{
      font-size:27px
    }
    .stock-page>.heading:after{
      width:160px;
      right:-45px;
      opacity:.18
    }
    .stock-page>.heading>div{
      max-width:100%
    }
    .stock-workspace-tabs{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:8px
    }
    .stock-workspace-tabs .btn{
      font-size:11px;
      min-height:47px;
      padding:9px 6px;
      white-space:normal;
      border-radius:14px
    }
    .stock-workspace-kpis{
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:10px
    }
    .stock-workspace-kpis .panel{
      padding:15px 11px;
      gap:9px
    }
    .stock-workspace-kpis .panel:last-child{
      grid-column:1/-1
    }
    .stock-workspace-kpis strong{
      font-size:25px
    }
    .stock-workspace-kpis small{
      font-size:10px
    }
    .stock-kpi-copy>span{
      font-size:9px
    }
    .stock-kpi-icon{
      width:33px;
      height:38px;
      flex-basis:33px;
      border-radius:13px
    }
    .stock-kpi-icon svg{
      width:23px;
      height:23px
    }
    .stock-workspace-filters{
      padding:14px;
      gap:11px
    }
    .stock-situation-table td{
      padding:0;
      font-size:12px
    }
    .stock-situation-table tr{
      padding:14px;
      border:1px solid white;
      box-shadow:var(--iloa-shadow-raised);
      border-radius:18px;
      background:linear-gradient(140deg,#fff,#faf5fe)
    }
    .stock-situation-table .stock-row-actions .btn,.stock-admin-actions summary{
      min-height:44px;
      font-size:11px
    }
    .stock-correction-body{
      padding:12px
    }
    .stock-correction-body .stock-sales-product{
      padding:10px
    }
    .stock-correction-body .stock-sales-product .product-photo{
      width:60px;
      height:60px;
      flex-basis:60px
    }
  }
  @media(prefers-reduced-motion:reduce){
    .btn,.sidebar #navigation a{
      transition:none
    }
  }
}

/* V1.32.1 — shared density for the three internal management tables. */
@scope (body:not(.portal-mode):has(.workspace:not([hidden]))) {
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) { --compact-action-shadow:0 2px 4px #63429116,inset 0 1px 1px white; }
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) :is(td,th){line-height:1.3;vertical-align:middle;white-space:normal;overflow-wrap:anywhere}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) td{padding:7px 8px;font-size:12px}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) th{padding:9px 8px;font-size:10px}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) td small{display:block;font-size:11px;line-height:1.25;margin-top:2px;color:var(--iloa-muted)}
  :is(.product-management-table,.stock-situation-table) .product-photo,
  .product-management-table .product-photo.thumb{width:44px;height:44px;min-height:0;flex:0 0 44px;aspect-ratio:1;border-radius:10px;box-shadow:0 2px 4px #6b498b1c}
  :is(.product-management-table,.stock-situation-table) .product-photo img{object-fit:contain;width:100%;height:100%}
  .product-management-table .product-table-name{gap:8px;align-items:center}
  .product-management-table .product-table-name strong{font-size:12px;line-height:1.25;font-weight:600}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) td :is(.btn,summary){min-height:36px;padding:7px 8px;line-height:1.2;font-size:11px;border-radius:11px;box-shadow:var(--compact-action-shadow);white-space:nowrap;width:auto}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) .badge{padding:4px 6px;font-size:10px;line-height:1.2}
  .reseller-network-table{width:100%;max-width:100%;overflow:visible}
  .reseller-network-table table{table-layout:fixed;min-width:0;width:100%}
  :is(.product-management-table,.reseller-network-table) .lifecycle-menu{position:relative;min-width:0;margin:0;width:auto}
  :is(.product-management-table,.reseller-network-table) .lifecycle-menu[open]{display:inline-block}
  :is(.product-management-table,.reseller-network-table) .lifecycle-options{position:absolute;right:0;top:calc(100% + 5px);width:220px;max-width:calc(100vw - 48px);z-index:35}
  :is(.product-management-table,.stock-situation-table,.reseller-network-table) :is(.lifecycle-options,.stock-actions-popup) .btn{min-height:40px;width:100%;white-space:normal;text-align:left}
  .reseller-network-table tr:has(details[open]){position:relative;z-index:6}
  @media(min-width:1200px){
    :is(.product-management-table,.stock-situation-table,.reseller-network-table) tbody tr{height:60px}
    :is(.product-row-actions,.stock-row-actions,.reseller-network-table td>.actions){display:flex;flex-wrap:nowrap;align-items:center;gap:5px;min-width:0}
    .product-management-table th:nth-child(1){width:22%}.product-management-table th:nth-child(2){width:14%}.product-management-table th:nth-child(3){width:8%}.product-management-table th:nth-child(4){width:9%}.product-management-table th:nth-child(5){width:10%}.product-management-table th:nth-child(6){width:12%}.product-management-table th:nth-child(7){width:10%}.product-management-table th:nth-child(8){width:15%}
    .stock-situation-table th:last-child{width:200px}.stock-situation-table th:nth-child(4){width:9%}
    .reseller-network-table th:first-child{width:17%}.reseller-network-table th:nth-child(2){width:10%}.reseller-network-table th:nth-child(3){width:7%}.reseller-network-table th:nth-child(4),.reseller-network-table th:nth-child(5),.reseller-network-table th:nth-child(6){width:10%}.reseller-network-table th:nth-child(7){width:9%}.reseller-network-table th:last-child{width:27%}
  }
  @media(max-width:1199px){
    .reseller-network-table table,.reseller-network-table tbody{display:block;width:100%;min-width:0}
    .reseller-network-table thead{display:none}
    .reseller-network-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}
    .reseller-network-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px;border:1px solid white;border-radius:18px;background:linear-gradient(140deg,#fff,#faf5fe);box-shadow:var(--iloa-shadow-raised);min-width:0}
    .reseller-network-table td{display:block;padding:0;border:0;min-width:0}
    .reseller-network-table td:before{content:attr(data-label);display:block;margin-bottom:4px;font-size:10px;color:var(--iloa-muted)}
    .reseller-network-table td:first-child,.reseller-network-table td:last-child{grid-column:1/-1}
    .reseller-network-table td:first-child:before,.reseller-network-table td:last-child:before{display:none}
    :is(.product-management-table,.stock-situation-table,.reseller-network-table) td :is(.btn,summary){min-height:44px;white-space:normal;display:inline-flex;align-items:center;justify-content:center}
    .reseller-network-table td>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
    .reseller-network-table .lifecycle-menu>summary{width:100%}
    .stock-situation-table td{padding:0}.stock-situation-table tr{gap:8px;padding:12px}
    .product-management-table td{padding:0}.product-management-table tbody>tr{padding:12px;gap:12px}
  }
  @media(max-width:600px){.reseller-network-table tbody{grid-template-columns:1fr}.product-management-table .product-table-name strong{font-size:14px}.stock-situation-table td{font-size:12px}}
}
