/* ALTACO portal 1.1.8 adoption. Values from tokens.css; current guideline 2.2. */
*{scrollbar-width:thin;scrollbar-color:#b89a7b88 transparent}
*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#b89a7b88;border:2px solid transparent;border-radius:10px;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:#947454bb}
html{scrollbar-gutter:stable}html:focus-within{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink)}
button,input,select,textarea{font-family:var(--font-body)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.altaco-icon{display:inline-block;width:18px;height:18px;min-width:18px;flex:0 0 18px;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.icon,.direction-icon,.header-icon{stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.direction-icon{width:18px;height:18px;min-width:18px}
.button{border-radius:var(--radius-control);transition:background var(--duration),border-color var(--duration),box-shadow var(--duration)}
.button.dark{background:var(--brand-surface);color:var(--on-brand)}.button.dark:hover{background:#65231b}
.icon-action,.menu-toggle,.close,.quantity button,.password-toggle{min-height:44px;min-width:44px;border-radius:var(--radius-control)}
header:not(.topbar):not(.dialog-header){background:var(--brand-surface);color:var(--on-brand)}
header .brand{perspective:none}header .brand img{transform:none;filter:none;transition:opacity var(--duration)}header .brand:after{content:none;animation:none}header .brand:hover img,header .brand:focus-visible img{transform:none;filter:none;opacity:.82}
.brand-motion{transition:opacity var(--duration),transform var(--duration)}.brand-motion:hover{transform:translateY(-2px)}
.altaco-enter{animation:altaco-reveal 700ms cubic-bezier(.22,.61,.36,1) both}@keyframes altaco-reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.page-activity{position:fixed;top:0;left:0;right:0;height:3px;z-index:300;pointer-events:none;overflow:hidden;opacity:0;background:var(--brand-line)}.page-activity:before{content:'';position:absolute;inset:0 65% 0 0;background:var(--altaco-sand);transform:translateX(-110%)}
.altaco-leaving .page-activity{opacity:1}.altaco-leaving .page-activity:before{animation:altaco-progress 1s ease-in-out infinite}@keyframes altaco-progress{to{transform:translateX(400%)}}
.is-busy{cursor:progress;opacity:.8}.is-busy:before{content:'';width:16px;height:16px;flex:0 0 16px;border:1.7px solid currentColor;border-right-color:transparent;border-radius:50%;animation:altaco-spin .8s linear infinite}@keyframes altaco-spin{to{transform:rotate(360deg)}}
[data-image-state=loading]{position:relative;background:var(--soft)}[data-image-state=loading]:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#f8f5ed55 50%,transparent 80%);background-size:220% 100%;animation:altaco-image 1.5s ease-in-out infinite;pointer-events:none}@keyframes altaco-image{to{background-position:-220% 0}}
.image-fallback{position:absolute;inset:0;display:grid;place-items:center;padding:18px;text-align:center;background:var(--soft);color:var(--muted);font:12px/1.6 var(--font-body)}
.field-error,.form-feedback{font:12px/1.6 var(--font-body);color:#912d21;margin:7px 0 0;letter-spacing:0;text-transform:none}.form-feedback{padding:12px 14px;background:#efdbd4;border-left:2px solid #912d21;border-radius:5px;margin:0 0 18px}.field-error[hidden],.form-feedback[hidden]{display:none}
[aria-invalid=true]{border-color:#a43d2a!important}.table-empty td{padding:32px 20px;text-align:center;color:var(--muted);white-space:normal}
.table-wrap[data-scroll-table]{max-height:min(65dvh,660px);overflow:auto;scrollbar-gutter:stable}.table-wrap[data-scroll-table] thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px var(--line)}
tbody tr:not(.table-empty):hover{background:#d3c39b12}tbody tr:focus-within{background:#d3c39b26}
.product-image,.home-product-image,.story-cover,.guide-cover,.guide-hero,.product-picture{isolation:isolate}
/* Workspace surfaces share the portal's light and dark tokens. */
html[data-workspace]{--bg:var(--canvas);--paper:var(--surface);--red:var(--altaco-terracotta);--sand:var(--altaco-sand);color-scheme:light}html[data-workspace][data-theme=dark]{color-scheme:dark}
html[data-workspace] body{font:14px/1.6 var(--font-body)}
html[data-workspace] h1,html[data-workspace] h2,html[data-workspace] h3{font-family:var(--font-display);font-weight:600}
html[data-workspace] .workspace{min-width:0;display:flex;flex-direction:column;min-height:100dvh}html[data-workspace] .content{width:100%;flex:1}
html[data-workspace] .topbar{background:var(--surface);min-height:84px;height:auto;padding-top:12px;padding-bottom:12px}
html[data-workspace] .demo-banner{background:var(--soft);color:var(--muted)}html[data-workspace] .demo-banner a{color:var(--ink);text-underline-offset:4px}
html[data-workspace] .button{background:var(--brand-surface);border-color:var(--brand-surface);color:var(--on-brand);min-height:44px;border-radius:5px}
html[data-workspace] .button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}html[data-workspace] .button.secondary:hover{background:var(--soft)}
html[data-workspace] .button.danger{background:transparent;color:#a54332;border-color:#a5433266}
html[data-workspace] .panel,html[data-workspace] .product-card,html[data-workspace] .company-card,html[data-workspace] .metric{background:var(--surface);border-color:var(--line);border-radius:8px}
html[data-workspace] .metric.featured{background:var(--brand-surface);color:var(--on-brand)}html[data-workspace] .metric.featured .label,html[data-workspace] .metric.featured small{color:#d3c39bd9}
html[data-workspace] .activity .icon-box,html[data-workspace] .product-picture,html[data-workspace] .document-example,html[data-workspace] .upload-zone,html[data-workspace] .user-greeting{background:var(--soft);border-color:var(--line)}
html[data-workspace] .user-greeting:after{display:none}
html[data-workspace] th{background:var(--soft);color:var(--muted)}
html[data-workspace] label{font-size:12px}html[data-workspace] input:not([type=checkbox]):not([type=file]),html[data-workspace] select,html[data-workspace] textarea{background:var(--canvas);color:var(--ink);border-color:var(--line);border-radius:5px;font-size:16px;min-height:44px}
html[data-workspace] input::placeholder,html[data-workspace] textarea::placeholder{color:var(--muted);opacity:.85}
html[data-workspace] .notice{background:var(--soft);color:var(--ink);border-color:var(--line)}html[data-workspace] .notice.warn{background:#792c2114;border-color:#a54332}
html[data-workspace] .help,html[data-workspace] .places-note{color:var(--muted);font-size:11px}
html[data-workspace] .status{background:var(--soft);color:var(--ink)}html[data-workspace] .status.approved,html[data-workspace] .status.shipped,html[data-workspace] .status.paid{background:#e1e9dc;color:#304f35}html[data-workspace] .status.cancelled,html[data-workspace] .status.debt{background:#efded3;color:#8a3927}
html[data-workspace] dialog{background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:10px}
html[data-workspace] .close{display:inline-grid;place-items:center;min-height:44px;min-width:44px}html[data-workspace] .close:hover{background:var(--soft)}
html[data-workspace] .toast{background:var(--brand-surface);color:var(--on-brand)}html[data-workspace] .login-gate{background:var(--surface);border-color:var(--line)}
html[data-workspace] .login-gate img{height:44px;width:160px;object-fit:contain}html[data-workspace] .workspace-release{border-color:var(--line)}
html[data-workspace][data-theme=dark] .login-gate img{filter:brightness(0) saturate(100%) invert(86%) sepia(15%) saturate(472%) hue-rotate(2deg) brightness(90%)}
html[data-workspace][data-theme=dark] .status.approved,html[data-workspace][data-theme=dark] .status.shipped,html[data-workspace][data-theme=dark] .status.paid{background:#293d2d;color:#b9d5b6}
html[data-workspace][data-theme=dark] .status.cancelled,html[data-workspace][data-theme=dark] .status.debt{background:#4a2924;color:#f2b7a5}
html[data-workspace][data-theme=dark] .notice.warn{background:#4a2924;color:#efc8b9}
html[data-workspace][data-theme=dark] .field-error{color:#f2b7a5}html[data-workspace][data-theme=dark] .form-feedback{background:#4a2924;color:#f2b7a5}
html[data-workspace] .icon{width:18px;height:18px;flex:0 0 18px;stroke-width:1.7}
/* Brand navigation. Only the middle list scrolls; logo/footer stay reachable. */
html[data-workspace] .sidebar{background:var(--brand-surface);color:var(--on-brand);padding:26px 16px 16px;overflow:hidden;min-width:0}
.sidebar .logo{padding:2px 10px 18px;min-height:64px;flex-shrink:0}.sidebar .logo-full{width:150px;max-width:100%;height:38px;object-fit:contain;object-position:left center}.sidebar .logo-compact{display:none}
.sidebar .workspace-label{padding:0 10px 15px;color:#d3c39bb3;font-size:9px;flex-shrink:0}
.sidebar .side-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding:12px 0 30px;padding-bottom:30px;display:block;scrollbar-color:#d3c39b66 transparent}
.nav-group{margin-bottom:17px}.nav-group:last-child{margin-bottom:0}.nav-group-title{font:600 9px/1.5 var(--font-display);letter-spacing:.11em;text-transform:uppercase;color:#d3c39b99;margin:0;padding:5px 12px 7px}
.sidebar .side-nav a{color:var(--on-brand);border-radius:5px;min-height:44px;padding:11px 12px;gap:12px;line-height:1.5;margin-bottom:3px;font-size:12px}
.sidebar .side-nav a.active{background:#d3c39b;color:#3a211c}.sidebar .side-nav a:hover:not(.active){background:#d3c39b16}.sidebar .side-nav a:focus-visible{outline-color:#d3c39b;outline-offset:-2px}
.nav-label{min-width:0;overflow-wrap:break-word}.sidebar-hint{flex-shrink:0;text-align:center;font:10px/1.6 var(--font-body);color:#d3c39bba;padding:6px 0}.sidebar-hint[hidden]{display:none!important}
.sidebar .sidebar-bottom{flex-shrink:0;border-color:#d3c39b44;padding-bottom:max(0px,env(safe-area-inset-bottom))}.sidebar .sidebar-bottom small{color:#d3c39bb3}.sidebar .avatar{background:#d3c39b26;color:#d3c39b;flex-shrink:0}.sidebar .close:hover{background:#d3c39b16}
.sidebar-preferences:empty{display:none}.sidebar-preferences{border-top:1px solid #d3c39b44;padding:10px 0;flex-shrink:0;display:flex;flex-direction:column;gap:8px}
.sidebar-toggle{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);margin-right:8px}
.sidebar-toggle:hover{background:var(--soft)}.sidebar-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.theme-control{display:flex;align-items:center;gap:6px;font:12px var(--font-body)}.theme-control select{width:106px;font-size:12px!important;min-height:44px;padding:9px 8px!important}
.workspace .top-actions{gap:10px}.nav-tooltip{position:fixed;z-index:400;max-width:240px;padding:9px 13px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:0 8px 24px #24171326;border-radius:5px;font:12px/1.5 var(--font-body);pointer-events:none}
@media(min-width:761px){
 html[data-workspace] .shell{grid-template-columns:236px minmax(0,1fr);transition:grid-template-columns var(--duration) ease}
 html[data-sidebar=collapsed] .shell{grid-template-columns:80px minmax(0,1fr)}
 html[data-sidebar=collapsed] .sidebar{padding-left:10px;padding-right:10px}
 html[data-sidebar=collapsed] .sidebar .logo{padding:0 8px 18px;min-height:64px;display:grid;place-items:center}
 html[data-sidebar=collapsed] .logo-full{display:none}html[data-sidebar=collapsed] .sidebar .logo-compact{display:block;width:32px;height:32px;object-fit:contain}
 html[data-sidebar=collapsed] .workspace-label,html[data-sidebar=collapsed] .nav-group-title,html[data-sidebar=collapsed] .sidebar-user,html[data-sidebar=collapsed] .sidebar-bottom .avatar{display:none}
 html[data-sidebar=collapsed] .side-nav a{justify-content:center;padding:11px 0;width:44px;margin:0 auto 4px}
 html[data-sidebar=collapsed] .nav-label{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
 html[data-sidebar=collapsed] .nav-group{padding-bottom:10px;border-bottom:1px solid #d3c39b33;margin-bottom:10px}html[data-sidebar=collapsed] .nav-group:last-child{border:0}
 html[data-sidebar=collapsed] .sidebar-bottom{justify-content:center}html[data-sidebar=collapsed] .sidebar-bottom .close{margin:0!important}
 html[data-sidebar=collapsed] .sidebar-hint{font-size:0;min-height:23px}html[data-sidebar=collapsed] .sidebar-hint:after{content:'↓';font-size:14px}
}
@media(max-width:1100px) and (min-width:761px){.workspace .topbar{padding-left:24px;padding-right:24px;flex-wrap:wrap;gap:8px}.workspace .breadcrumb{font-size:10px}.workspace .top-actions{margin-left:auto}.workspace .content{padding-left:24px;padding-right:24px}}
@media(max-width:760px){
 .sidebar-toggle{display:none}html[data-workspace] .sidebar{width:min(290px,calc(100vw - 44px));padding:22px 16px 16px}
 .sidebar .logo-full{display:block}.sidebar .logo-compact{display:none}.sidebar .side-nav{padding-bottom:30px}.sidebar .workspace-label{display:block}
 .sidebar-preferences .theme-control{width:100%;justify-content:space-between;color:#d3c39b}.sidebar-preferences select{width:100%;background:#f8f5ed!important;color:#3a211c!important;border-color:#d3c39b55!important}.sidebar-preferences .theme-control select{width:145px}
 .workspace .topbar{height:68px;min-height:68px;padding:10px 16px;gap:10px}.workspace .breadcrumb{gap:6px;min-width:0;flex:1}.workspace .breadcrumb>span{display:none}.workspace .breadcrumb #crumb{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
 .workspace .mobile-toggle{width:44px;height:44px;min-width:44px;border-radius:5px}.workspace .top-actions{gap:8px;margin-left:auto}.workspace .lang{min-width:55px;font-size:13px!important}.workspace .back-link{display:grid;place-items:center;width:44px;height:44px;font-size:0}.workspace .back-link .icon{display:block}
 .workspace .content{padding:26px 17px 40px}.workspace .demo-banner{font-size:10px}.workspace .page-title h1{font-size:30px;line-height:1.2}.workspace .page-title{gap:14px}.workspace .page-title>.stack{flex-wrap:wrap;gap:8px}
 .workspace .button{white-space:normal;line-height:1.5}.workspace .table-wrap table{min-width:650px}.workspace .form-grid{gap:16px}.theme-control select,input,textarea{font-size:16px}
 .nav-tooltip{display:none}
}
@media(prefers-reduced-motion:reduce){html,html:focus-within{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.altaco-enter{opacity:1;transform:none}}
@media(forced-colors:active){*{scrollbar-color:auto}.sidebar .side-nav a.active{outline:2px solid Highlight}.is-busy:before{border-color:ButtonText}}

:root:not([data-theme=dark]){--ink:#3a211c;--muted:#725c4d;--line:#cbbda6;--soft:#e0d6c2}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.sidebar-dismiss{display:none!important}@media(max-width:760px){.sidebar-dismiss{display:grid!important;position:absolute;top:14px;right:12px;background:transparent;color:#d3c39b;border:0}.sidebar .logo{padding-right:48px}html[data-workspace] body.menu-open{overflow:hidden}}

header .brand img,footer .footer-main img{height:auto}.sidebar .side-nav a .icon{stroke-linecap:round;stroke-linejoin:round}

html[data-workspace] :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}body:not([data-mode])>header :is(a,button,select):focus-visible{outline-color:var(--on-brand)}

@media(max-width:760px){.sidebar-preferences .theme-control select,.workspace .lang{font-size:16px!important}.language-select{font-size:16px}}

html[data-workspace][data-theme=dark]{--red:var(--altaco-sand);--green:#b9d5b6}
html[data-workspace] .button{font-size:13px;font-weight:600}
.workspace .top-actions #role-select{width:180px;max-width:180px}
.sidebar-preferences #role-select{width:100%;max-width:none;font-size:16px}
.sidebar-preferences .theme-control .sr-only{position:static;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal;margin:0}
html[data-workspace][data-theme=dark] .chart .bar:not(.dark),html[data-workspace][data-theme=dark] .chart .legend i.sand{background:transparent;border:1px solid var(--altaco-sand)}
