@font-face{font-family:ADPortsGroup;src:url(https://www.adportsgroup.com/assets/fonts/ADPortsGroup-Light.woff)format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ADPortsGroup;src:url(https://www.adportsgroup.com/assets/fonts/ADPortsGroup-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ADPortsGroup;src:url(https://www.adportsgroup.com/assets/fonts/ADPortsGroup-Bold.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--color-deep-blue:#2d3955;--color-ocean-blue:#218bc9;--color-digital-purple:#a187bf;--color-ecfz-red:#f9423a;--color-logistic-green:#70d647;--color-maritime-teal:#13c5bd;--color-ports-light-blue:#b0d6e3;--color-noatum-navy:#00204e;--color-white:#fff;--color-off-white:#f6f6f6;--color-pearl-grey:#d9d9d6;--color-silver-grey:#a7a8a9;--color-space-grey:#63666a;--shadow-level-1:#2d395514 0 2px 8px;--shadow-level-2:#2d39551f 0 4px 16px;--shadow-level-3:#2d395529 0 8px 24px;--focus-ring-width:2px;--focus-ring-offset:3px;--n-0:#fff;--n-25:#fafafa;--n-50:#f6f6f6;--n-100:#ececea;--n-200:#d9d9d6;--n-300:#c1c2bf;--n-400:#a7a8a9;--n-500:#858789;--n-600:#63666a;--n-700:#4a4f5f;--n-800:#2d3955;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;--space-xs:var(--space-4);--space-sm:var(--space-8);--space-md:var(--space-12);--space-lg:var(--space-20);--space-xl:var(--space-32);--space-2xl:var(--space-48);--text-micro:11px;--lh-micro:1.4;--text-sm:12px;--lh-sm:1.45;--text-body:14px;--lh-body:1.5;--text-lead:16px;--lh-lead:1.5;--text-h3:20px;--lh-h3:1.3;--text-h2:24px;--lh-h2:1.25;--text-h1:30px;--lh-h1:1.2;--row-h:32px;--control-h:32px;--control-h-sm:26px;--radius-sm:3px;--radius-md:5px;--radius-lg:8px;--motion-instant:90ms;--motion-fast:.14s;--motion-base:.2s;--motion-slow:.28s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-linear:linear;--surface-page:var(--n-0);--surface-muted:var(--n-50);--surface-raised:var(--n-0);--surface-inverse:var(--n-800);--surface-inverse-deep:#11172a;--text-primary:var(--n-800);--text-secondary:var(--n-600);--text-on-inverse:var(--n-0);--text-muted:var(--n-500);--text-disabled:var(--n-400);--border-subtle:var(--n-200);--border-strong:var(--n-400);--surface-zebra:var(--n-25)}[data-theme=dark]{--surface-page:#1b2236;--surface-muted:#232c44;--surface-raised:#2d3955;--surface-inverse:#11172a;--surface-inverse-deep:#0a0f1d;--text-primary:var(--color-white);--text-secondary:var(--color-pearl-grey);--text-on-inverse:var(--color-white);--border-subtle:#ffffff1f;--border-strong:#ffffff3d;--shadow-level-1:#2d395552 0 2px 8px;--shadow-level-2:#2d395570 0 4px 16px;--shadow-level-3:#2d39558f 0 8px 24px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text-primary);background:var(--surface-page);font-family:ADPortsGroup,Tahoma,sans-serif;transition:background-color .2s,color .2s}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;border:0}:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.top-nav{z-index:20;height:72px;color:var(--color-white);background:var(--color-deep-blue);justify-content:space-between;align-items:center;padding:0 80px;display:flex;position:fixed;top:0;left:0;right:0}.brand,.nav-links{align-items:center;gap:var(--space-md);font-size:14px;font-weight:700;display:flex}.brand-mark{width:40px;height:40px;color:var(--color-deep-blue);background:var(--color-white);border-radius:4px;place-items:center;display:grid}.nav-links a{align-items:center;min-height:44px;display:flex}.container{width:min(1280px,100% - 160px);margin:0 auto}.section{padding:var(--space-2xl) 0}.section-dark{color:var(--color-white);background:var(--color-deep-blue)}.section-light{background:var(--color-white)}.section-offwhite{background:var(--color-off-white)}.hero{min-height:720px;padding-top:72px;position:relative;overflow:hidden}.hero-grid{align-items:center;gap:var(--space-xl);grid-template-columns:minmax(0,7fr) minmax(280px,4fr);min-height:648px;display:grid;position:relative}.hero-copy{max-width:760px}.eyebrow{margin-bottom:var(--space-sm);font-size:14px;font-weight:700;line-height:1.4}.eyebrow.blue{color:var(--color-ocean-blue)}.eyebrow.red{color:var(--color-ecfz-red)}h1,h2,h3{font-weight:700}h1{font-size:var(--text-h1);line-height:var(--lh-h1);max-width:680px}h2{font-size:var(--text-h2);line-height:var(--lh-h2)}h3{font-size:var(--text-h3);line-height:var(--lh-h3)}p{color:inherit;font-size:var(--text-body);line-height:var(--lh-body)}.lead{max-width:620px;margin-top:var(--space-md);font-size:18px}.button-row,.button-stack{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.button-stack{flex-direction:column;align-items:flex-start}.btn{min-height:var(--control-h);justify-content:center;align-items:center;gap:var(--space-6);padding:0 var(--space-12);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-sm);white-space:nowrap;transition:background-color var(--motion-instant) var(--ease-standard), border-color var(--motion-instant) var(--ease-standard), color var(--motion-instant) var(--ease-standard);display:inline-flex}.btn-sm{min-height:var(--control-h-sm);padding:0 var(--space-8);font-size:var(--text-micro)}.btn-primary{color:var(--color-white);background:var(--color-deep-blue)}.btn-primary:hover,.btn-on-dark:hover{color:var(--color-white);box-shadow:var(--shadow-level-3);transform:translateY(-2px);background:var(--color-ocean-blue)!important}.cluster-button:hover{box-shadow:var(--shadow-level-3);transform:translateY(-2px)}.btn-secondary{color:var(--color-deep-blue);border:1px solid var(--color-deep-blue);background:0 0}.btn-secondary:hover,.btn-outline-dark:hover{color:var(--color-white);background:var(--color-ocean-blue);border-color:var(--color-ocean-blue)}.btn-on-dark{color:var(--color-deep-blue);background:var(--color-white)}.btn-outline-dark{color:var(--color-white);border:1px solid var(--color-white);background:0 0}.text-btn{min-height:var(--control-h);padding:0 var(--space-8);color:var(--color-deep-blue);font-weight:600;font-size:var(--text-sm);border-radius:var(--radius-sm);transition:background-color var(--motion-instant) var(--ease-standard), color var(--motion-instant) var(--ease-standard);background:0 0}.text-btn.light{color:var(--color-white)}.text-btn:hover{color:var(--color-ocean-blue);text-decoration:underline}.btn:disabled,.text-btn:disabled,.field-demo input:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}.sample-hover,.sample-pressed,.sample-error{color:var(--color-white)!important;background:var(--color-ocean-blue)!important;border-color:var(--color-ocean-blue)!important}.sample-pressed{transform:translateY(1px);box-shadow:0 1px 4px #2d39550f;background:#296487!important}.sample-focused{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.focus-measure{position:relative}.focus-measure:after{content:"2px ring / 3px offset";z-index:2;color:var(--color-white);background:var(--color-deep-blue);white-space:nowrap;box-shadow:var(--shadow-level-1);border-radius:4px;padding:4px 8px;font-size:12px;font-weight:700;line-height:1.2;position:absolute;bottom:calc(100% + 8px);left:0}.sample-error{background:var(--color-ecfz-red)!important;border-color:var(--color-ecfz-red)!important}.text-btn.sample-hover,.text-btn.sample-pressed,.text-btn.sample-error{box-shadow:none;text-decoration:underline;color:var(--color-ocean-blue)!important;background:0 0!important}.text-btn.sample-error{color:var(--color-ecfz-red)!important}.hero-panel,.demo-card,.service-card,.cluster-card,.token-card{box-shadow:var(--shadow-level-1);border-radius:8px}.hero-panel{padding:var(--space-md);color:var(--color-deep-blue);background:var(--color-white);box-shadow:var(--shadow-level-2)}.hero-panel strong{margin:var(--space-sm) 0;font-size:31px;line-height:1.2;display:block}.panel-kicker,.service-card span,.cluster-card span,.type-row span{font-size:12px;font-weight:700}.radar{border:1px solid #ffffff3d;border-radius:50%;position:absolute}.radar-one{width:520px;height:520px;top:120px;right:-120px}.radar-two{width:760px;height:760px;top:0;right:-240px}.section-heading{max-width:760px;margin-bottom:var(--space-xl)}.section-heading.narrow{max-width:680px}.section-heading p:last-child,.split p,.grid-demo p{margin-top:var(--space-sm);color:var(--color-space-grey)}.section-dark .section-heading p:last-child,.section-dark .lead,.footer p{color:var(--color-white)}.color-grid,.component-grid,.cluster-grid,.guidelines-grid,.state-grid,.input-grid,.card-playground-grid,.kpi-grid,.feedback-grid,.split-playground{gap:var(--space-md);display:grid}.color-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.token-card{background:var(--color-white);transition:box-shadow .2s,transform .2s;overflow:hidden}.token-card:hover,.service-card:hover,.cluster-card:hover{box-shadow:var(--shadow-level-3);transform:translateY(-2px)}.swatch{height:96px}.token-card div:last-child{padding:var(--space-sm)}code{margin:var(--space-xs) 0;color:var(--color-space-grey);font-family:Tahoma,sans-serif;font-size:14px;display:inline-block}.split,.grid-demo,.footer-grid{gap:var(--space-xl);grid-template-columns:5fr 7fr;align-items:start;display:grid}.type-list,.spacing-scale{background:var(--color-white);box-shadow:var(--shadow-level-1);border-radius:8px}.type-row{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-pearl-grey);grid-template-columns:1fr auto 1.3fr;align-items:center;display:grid}.type-row:last-child{border-bottom:0}.type-row small,.spacing-scale small,.token-card p,.service-card p,.cluster-card h3{color:var(--color-space-grey);line-height:1.6}.component-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-card,.service-card,.cluster-card{padding:var(--space-md);background:var(--color-white);color:var(--color-deep-blue)}.dark-demo{color:var(--color-white);box-shadow:none;background:#26334f}.card-accent{width:100%;height:2px;margin-bottom:var(--space-md);background:var(--color-ocean-blue)}.service-card p,.service-card a,.cluster-card h3{margin-top:var(--space-sm)}.service-card a{min-height:44px;color:var(--color-ocean-blue);align-items:center;font-weight:700;display:inline-flex}.cluster-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.cluster-card{border-top:2px solid var(--color-ocean-blue)}.cluster-button{min-height:44px;margin-top:var(--space-md);color:var(--color-deep-blue);border-radius:4px;padding:10px 16px;font-weight:700}.playground-stack{gap:var(--space-lg);display:grid}.focus-mode-bar{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);padding:var(--space-sm) var(--space-md);color:var(--color-deep-blue);background:var(--color-white);border:1px solid var(--color-ocean-blue);box-shadow:var(--shadow-level-1);border-radius:8px;display:flex}.focus-mode-bar p{color:var(--color-space-grey);margin-top:4px}.playground-panel{padding:var(--space-md);color:var(--color-deep-blue);background:var(--color-white);box-shadow:var(--shadow-level-1);border-radius:8px}.playground-header{justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md);align-items:start;display:flex}.playground-header.compact{margin-bottom:var(--space-sm)}.interactive-preview{gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-sm);background:var(--color-off-white);border-radius:8px;display:grid}.component-toggle-row{gap:var(--space-sm);padding:var(--space-sm);background:var(--color-white);border-radius:8px;display:grid}.component-toggle-header{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.component-toggle-header span,.toggle-label{margin-bottom:var(--space-xs);font-size:12px;font-weight:700;display:block}.input-toggle-grid{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.state-toggle-group{gap:var(--space-xs);flex-wrap:wrap;display:flex}.compact-toggle{margin-bottom:var(--space-sm)}.state-toggle{min-height:44px;color:var(--color-deep-blue);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:4px;padding:10px 14px;font-size:12px;font-weight:700}.state-toggle.is-active{color:var(--color-white);background:var(--color-deep-blue);border-color:var(--color-deep-blue)}.preview-stage{align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:var(--color-white);border-radius:8px;flex-wrap:wrap;display:flex}.focus-spec-row{justify-content:start;align-items:center;gap:var(--space-xs);min-height:44px;color:var(--color-deep-blue);background:var(--color-white);border-left:2px solid var(--color-ocean-blue);border-radius:4px;grid-template-columns:auto auto auto;padding:8px 12px;display:inline-grid}.focus-spec-row span,.focus-spec-row small{color:var(--color-space-grey);font-size:12px;font-weight:700}.focus-spec-row strong{color:var(--color-ocean-blue);font-size:14px}.focus-token-card{gap:var(--space-xs);padding:var(--space-sm);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:8px;display:grid}.focus-token-card>span{font-size:12px;font-weight:700}.focus-token-row{gap:var(--space-xs);min-height:44px;padding-top:var(--space-xs);border-top:1px solid var(--color-pearl-grey);grid-template-columns:96px minmax(0,1fr) auto;align-items:center;display:grid}.focus-token-row small{color:var(--color-space-grey);font-size:12px;font-weight:700}.focus-token-row code{color:var(--color-deep-blue);margin:0}.focus-token-row strong{color:var(--color-ocean-blue);font-size:14px}.state-chip{border-radius:4px;align-items:center;min-height:44px;padding:10px 16px;font-size:12px;font-weight:700;display:inline-flex}.badge{align-items:center;gap:var(--space-4);min-height:0;padding:var(--space-2) var(--space-8);font-size:var(--text-sm);white-space:nowrap;border:1px solid #0000;border-radius:99px;font-weight:600;line-height:1.3;display:inline-flex}.badge-tone-approved{background:var(--n-200);color:var(--n-800);border-color:var(--n-300)}.badge-tone-pending{color:var(--n-700);border-color:var(--n-400);background:0 0}.badge-tone-rejected{background:var(--n-700);color:var(--n-0);border-color:var(--n-700)}.state-chip{color:var(--color-deep-blue);background:var(--color-off-white)}.state-grid,.input-grid,.card-playground-grid,.kpi-grid,.feedback-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.state-sample,.field-demo{gap:var(--space-sm);padding:var(--space-sm);background:var(--color-off-white);border-radius:8px;flex-direction:column;display:flex}.state-sample span,.field-demo span,.play-card span{font-size:12px;font-weight:700}.dark-state-row{gap:var(--space-sm);margin-top:var(--space-md);padding:var(--space-md);background:var(--color-deep-blue);border-radius:8px;flex-wrap:wrap;display:flex}.field-demo input,.field-demo select,.field-demo textarea{width:100%;min-height:var(--control-h);padding:0 var(--space-8);color:var(--color-deep-blue);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-body);transition:border-color var(--motion-instant) var(--ease-standard), background-color var(--motion-instant) var(--ease-standard)}.field-demo textarea{min-height:calc(var(--control-h) * 2.5);padding:var(--space-6) var(--space-8);line-height:var(--lh-body);resize:vertical}.field-demo small{color:var(--color-space-grey);line-height:1.6}.field-demo.is-focused input{border-color:var(--color-ocean-blue);outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.field-demo.sample-hover input{border-color:var(--color-ocean-blue);box-shadow:var(--shadow-level-1)}.field-demo.sample-pressed input{border-color:#296487;transform:translateY(1px);box-shadow:0 1px 4px #2d39550f}.field-demo.sample-focused input{border-color:var(--color-ocean-blue);outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.field-demo.is-error input,.field-demo.sample-error input{border-color:var(--color-ecfz-red)}.field-demo.is-error small,.field-demo.sample-error small,.field-demo small.helper-error{color:var(--color-ecfz-red)}.field-demo.sample-disabled input{cursor:not-allowed;opacity:.48}.preview-field{background:var(--color-white);max-width:520px}.field-demo.wide{grid-column:span 2}.play-card{padding:var(--space-md);background:var(--color-white);box-shadow:var(--shadow-level-1);border-radius:8px;transition:box-shadow .2s,transform .2s}.play-card:hover,.selected-card{box-shadow:var(--shadow-level-3);transform:translateY(-2px)}.play-card h4,.dialog-preview h4{margin-top:var(--space-sm);font-size:20px;line-height:1.4}.play-card p,.dialog-preview p{margin-top:var(--space-sm);color:var(--color-space-grey)}.cluster-accent-card{border-top:2px solid var(--color-maritime-teal)}.digital-accent-card{border-top:2px solid var(--color-digital-purple)}.selected-card{border:1px solid var(--color-ocean-blue)}.image-placeholder{aspect-ratio:16/9;margin:calc(var(--space-md) * -1) calc(var(--space-md) * -1) var(--space-md);background:var(--color-deep-blue);border-radius:8px 8px 0 0}.split-playground{grid-template-columns:5fr 7fr}.badge-corporate{color:var(--color-white);background:var(--color-ocean-blue)}.badge-neutral{color:var(--color-deep-blue);background:var(--color-pearl-grey)}.badge-digital{color:var(--color-deep-blue);background:var(--color-digital-purple)}.badge-logistics{color:var(--color-deep-blue);background:var(--color-logistic-green)}.badge-ecfz{color:var(--color-white);background:var(--color-ecfz-red)}.badge-maritime{color:var(--color-deep-blue);background:var(--color-maritime-teal)}.badge-ports{color:var(--color-deep-blue);background:var(--color-ports-light-blue)}.badge-ports-intl{color:var(--color-white);background:var(--color-deep-blue)}[data-theme=dark] .badge-ports-intl{border:1px solid var(--border-subtle)}.badge.sample-hover{box-shadow:var(--shadow-level-2);transform:translateY(-2px)}.badge.sample-pressed{transform:translateY(1px);box-shadow:0 1px 4px #2d39550f}.badge.sample-focused{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.badge.sample-disabled{opacity:.48}.dialog-preview{padding:var(--space-md);background:var(--color-white);box-shadow:var(--shadow-level-2);border-radius:8px;position:relative}.dialog-preview.sample-hover{box-shadow:var(--shadow-level-3);transform:translateY(-2px)}.dialog-preview.sample-pressed{transform:translateY(1px);box-shadow:0 1px 4px #2d39550f}.dialog-preview.sample-focused{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.dialog-preview.sample-error{border:1px solid var(--color-ecfz-red)}.dialog-preview.sample-disabled{opacity:.58}.dialog-close{top:var(--space-sm);right:var(--space-sm);width:44px;height:44px;color:var(--color-deep-blue);background:var(--color-off-white);border-radius:4px;font-size:25px;position:absolute}.dialog-close.sample-focused{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.dialog-focus-spec{margin-top:var(--space-sm)}.dialog-actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.kpi-card,.feedback-card{padding:var(--space-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-level-1)}.kpi-card span,.feedback-card span,.data-table th{color:var(--color-space-grey);font-size:var(--text-sm);font-weight:700}.kpi-card strong{margin-top:var(--space-sm);color:var(--color-deep-blue);font-size:var(--text-h2);line-height:var(--lh-h2);font-variant-numeric:tabular-nums;display:block}.kpi-card p,.feedback-card p{margin-top:var(--space-xs);color:var(--color-space-grey)}.kpi-card small{margin-top:var(--space-sm);padding:var(--space-6) var(--space-8);color:var(--color-deep-blue);background:var(--color-off-white);border-left:2px solid var(--color-ocean-blue);border-radius:var(--radius-md);font-weight:700;display:inline-flex}.data-table-wrap{margin-top:var(--space-md);border:1px solid var(--color-pearl-grey);border-radius:8px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:640px}.data-table th,.data-table td{min-height:56px;padding:var(--space-sm);text-align:left;border-bottom:1px solid var(--color-pearl-grey)}.data-table th{background:var(--color-off-white)}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--color-off-white)}.feedback-card h4{margin-top:var(--space-sm);font-size:var(--text-h3);line-height:var(--lh-h3)}.feedback-card .text-btn{margin-top:var(--space-sm)}.feedback-error{border-top:2px solid var(--color-ecfz-red)}.feedback-loading{border-top:2px solid var(--color-ocean-blue)}.feedback-empty{border-top:2px solid var(--color-pearl-grey)}.loading-bars{gap:var(--space-xs);margin-top:var(--space-sm);display:grid}.loading-bars i{background:var(--color-pearl-grey);border-radius:4px;height:12px;display:block}.loading-bars i:nth-child(2){width:72%}.loading-bars i:nth-child(3){width:48%}.spacing-scale{padding:var(--space-md)}.spacing-scale div{gap:var(--space-sm);grid-template-columns:150px 1fr auto;align-items:center;min-height:48px;display:grid}.spacing-scale span{background:var(--color-ocean-blue);height:16px;display:block}.guidelines-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guidelines-grid article{padding:var(--space-lg);background:var(--color-off-white);border-radius:8px}ul{margin-top:var(--space-md);padding-left:var(--space-md)}li{margin-bottom:var(--space-sm);line-height:1.6}.footer{padding:var(--space-xl) 0}@media (width<=1100px){.top-nav{padding:0 40px}.container{width:min(100% - 80px,1280px)}.color-grid,.component-grid,.state-grid,.input-grid,.card-playground-grid,.kpi-grid,.feedback-grid,.cluster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.top-nav{height:56px;padding:0 20px}.nav-links{display:none}.container{width:calc(100% - 40px)}.section{padding:var(--space-xl) 0}.hero{min-height:560px;padding-top:56px}.hero-grid,.split,.grid-demo,.footer-grid,.guidelines-grid,.split-playground{gap:var(--space-lg);grid-template-columns:1fr}.hero-grid{min-height:auto;padding:var(--space-xl) 0}.hero-panel{margin-top:var(--space-lg)}.color-grid,.component-grid,.cluster-grid,.state-grid,.input-grid,.card-playground-grid,.kpi-grid,.feedback-grid,.input-toggle-grid{grid-template-columns:1fr}.field-demo.wide{grid-column:span 1}.playground-header,.focus-mode-bar,.dialog-actions{flex-direction:column;align-items:stretch}.button-row,.button-stack,.btn{width:100%}.type-row,.spacing-scale div,.focus-spec-row,.focus-token-row{grid-template-columns:1fr}.radar-one,.radar-two{opacity:.4}}.notification{gap:var(--space-8);padding:var(--space-12);background:var(--color-white);border-left:2px solid var(--color-ocean-blue);border-radius:var(--radius-md);box-shadow:var(--shadow-level-1);grid-template-columns:1fr auto;align-items:start;display:grid}.notification-success{border-left-color:var(--color-logistic-green)}.notification-warning,.notification-error{border-left-color:var(--color-ecfz-red)}.file-upload label span{color:var(--color-space-grey);font-size:var(--text-sm);font-weight:700}.notification-body{gap:var(--space-4);min-width:0;display:grid}.notification h4{color:var(--color-deep-blue);font-size:var(--text-body)}.notification-text{color:var(--color-space-grey);font-size:var(--text-sm);line-height:var(--lh-sm)}.notification-text>:first-child{margin-top:0}.notification-dismiss{min-width:var(--control-h-sm);min-height:var(--control-h-sm);color:var(--color-deep-blue);background:var(--color-off-white);border-radius:var(--radius-sm);font-size:var(--text-body);line-height:1}.notification-dismiss:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.chart-preview{align-items:end;gap:var(--space-md);min-height:280px;padding:var(--space-md);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.chart-preview div{border-radius:4px 4px 0 0;min-height:80px;position:relative}.chart-preview span{color:var(--color-deep-blue);text-align:center;font-size:12px;font-weight:700;position:absolute;bottom:calc(100% + 8px);left:0;right:0}.tabs-preview,.accordion-preview,.file-upload,.search-filter-bar{gap:var(--space-sm);margin-top:var(--space-md);display:grid}.tab-list{gap:var(--space-xs);border-bottom:1px solid var(--color-pearl-grey);flex-wrap:wrap;display:flex}.tab-list button{min-height:var(--control-h);padding:0 var(--space-12);color:var(--color-deep-blue);font-size:var(--text-sm);transition:color var(--motion-instant) var(--ease-standard), border-color var(--motion-instant) var(--ease-standard);background:0 0;border-bottom:2px solid #0000;font-weight:600}.tab-list button[aria-selected=true]{color:var(--color-ocean-blue);border-bottom-color:var(--color-ocean-blue)}.tab-panel,.accordion-item>div,.file-upload,.search-filter-bar{padding:var(--space-sm);background:var(--color-off-white);border-radius:8px}.tab-panel p,.accordion-item p,.file-upload p{color:var(--color-space-grey)}.accordion-item{background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:8px;overflow:hidden}.accordion-item>button{width:100%;min-height:var(--control-h);justify-content:space-between;align-items:center;gap:var(--space-sm);padding:0 var(--space-8);font-size:var(--text-body);color:var(--color-deep-blue);background:var(--color-white);text-align:left;font-weight:700;display:flex}.breadcrumb ol{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:var(--space-xs);color:var(--color-space-grey);margin:0;font-size:14px;display:inline-flex}.breadcrumb li:not(:last-child):after{content:"/";color:var(--color-silver-grey)}.breadcrumb a,.breadcrumb span{align-items:center;min-height:44px;display:inline-flex}.breadcrumb a:hover{color:var(--color-ocean-blue)}.breadcrumb [aria-current=page]{color:var(--color-deep-blue);font-weight:700}.filter-chip-row{gap:var(--space-xs);flex-wrap:wrap;display:flex}.filter-chip-row button,.file-row button{min-height:44px;color:var(--color-deep-blue);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:4px;padding:10px 14px;font-size:12px;font-weight:700}.file-upload label{gap:var(--space-xs);display:grid}.file-upload input{min-height:var(--control-h);color:var(--color-deep-blue);background:var(--color-white);border:1px solid var(--color-pearl-grey);font:inherit;border-radius:4px;padding:12px}.file-row{gap:var(--space-sm);padding:var(--space-sm);background:var(--color-white);border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;display:grid}.file-row strong{color:var(--color-deep-blue);font-size:12px}.upload-progress{background:var(--color-pearl-grey);border-radius:4px;height:12px;overflow:hidden}.upload-progress span{background:var(--color-ocean-blue);height:100%;display:block}.preview-link-grid,.preview-layout,.preview-two-column,.tab-content-grid{gap:var(--space-md);display:grid}.preview-link-grid{margin-bottom:var(--space-lg);grid-template-columns:repeat(4,minmax(0,1fr))}.preview-link-grid a{min-height:56px;padding:var(--space-sm);color:var(--color-deep-blue);background:var(--color-white);border-left:2px solid var(--color-ocean-blue);box-shadow:var(--shadow-level-1);border-radius:8px;align-items:center;font-size:12px;font-weight:700;display:flex}.preview-hero{padding:120px 0 var(--space-xl)}.preview-hero .breadcrumb{margin-bottom:var(--space-lg)}.preview-hero .breadcrumb li,.preview-hero .breadcrumb a,.preview-hero .breadcrumb span{color:var(--color-white)}.preview-layout{grid-template-columns:minmax(240px,3fr) minmax(0,9fr);align-items:start}.preview-rules{padding:var(--space-md);color:var(--color-deep-blue);background:var(--color-white);box-shadow:var(--shadow-level-1);border-radius:8px;position:sticky;top:96px}.preview-rules ul{padding-left:var(--space-sm)}.preview-workspace,.preview-controls,.file-upload-preview,.file-list-preview,.activity-list{gap:var(--space-sm);display:grid}.preview-two-column{grid-template-columns:minmax(220px,3fr) minmax(0,9fr);align-items:stretch}.chart-canvas,.notification-stage,.file-upload-preview{padding:var(--space-md);background:var(--color-off-white);border:1px solid var(--color-pearl-grey);border-radius:8px}.notification-action{align-self:center}.notification-stage-toast .notification{max-width:440px;margin-left:auto}.muted-copy,.activity-list p,.file-upload-preview p,.file-row small{color:var(--color-space-grey)}.tab-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-dropzone{gap:var(--space-xs);padding:var(--space-md);background:var(--color-white);border:1px solid var(--color-pearl-grey);border-radius:8px;display:grid}.upload-dropzone span,.upload-dropzone strong{color:var(--color-deep-blue)}.upload-dropzone input{min-height:48px;color:var(--color-deep-blue);background:var(--color-off-white);border:1px solid var(--color-pearl-grey);font:inherit;border-radius:4px;padding:12px}.file-upload-preview.is-disabled{opacity:.58}.file-list-preview .file-row{grid-template-columns:minmax(0,1fr) auto auto}.file-row span{gap:4px;display:grid}.file-row .upload-progress{grid-column:1/-1}.file-row-error{border-left:2px solid var(--color-ecfz-red)}.file-row-ready,.file-row-uploading{border-left:2px solid var(--color-ocean-blue)}@media (width<=767px){.notification,.file-row,.preview-layout,.preview-two-column,.preview-link-grid,.tab-content-grid{grid-template-columns:1fr}.preview-rules{position:static}.chart-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.tab-list{flex-wrap:nowrap;overflow-x:auto}}[data-theme=dark] .section-light{background:var(--surface-page)}[data-theme=dark] .section-offwhite{background:var(--surface-muted)}[data-theme=dark] .section-dark,[data-theme=dark] .top-nav,[data-theme=dark] .hero{color:var(--text-on-inverse);background:var(--surface-inverse-deep)}[data-theme=dark] .brand-mark{color:var(--surface-inverse-deep);background:var(--color-white)}[data-theme=dark] .hero-panel,[data-theme=dark] .token-card,[data-theme=dark] .demo-card,[data-theme=dark] .service-card,[data-theme=dark] .cluster-card,[data-theme=dark] .play-card,[data-theme=dark] .dialog-preview,[data-theme=dark] .kpi-card,[data-theme=dark] .feedback-card,[data-theme=dark] .focus-mode-bar,[data-theme=dark] .playground-panel,[data-theme=dark] .focus-token-card,[data-theme=dark] .component-toggle-row,[data-theme=dark] .preview-stage,[data-theme=dark] .focus-spec-row,[data-theme=dark] .preview-rules,[data-theme=dark] .preview-link-grid a,[data-theme=dark] .notification,[data-theme=dark] .accordion-item,[data-theme=dark] .accordion-item>button,[data-theme=dark] .file-row,[data-theme=dark] .upload-dropzone,[data-theme=dark] .type-list,[data-theme=dark] .spacing-scale,[data-theme=dark] .preview-field,[data-theme=dark] .chart-preview{color:var(--text-primary);background:var(--surface-raised)}[data-theme=dark] .field-demo input,[data-theme=dark] .field-demo select,[data-theme=dark] .field-demo textarea,[data-theme=dark] .file-upload input,[data-theme=dark] .upload-dropzone input,[data-theme=dark] .filter-chip-row button,[data-theme=dark] .file-row button,[data-theme=dark] .state-toggle{color:var(--text-primary);background:var(--surface-raised);border-color:var(--border-subtle)}[data-theme=dark] .state-toggle.is-active{color:var(--color-white);background:var(--color-ocean-blue);border-color:var(--color-ocean-blue)}[data-theme=dark] .state-sample,[data-theme=dark] .field-demo,[data-theme=dark] .interactive-preview,[data-theme=dark] .tab-panel,[data-theme=dark] .accordion-item>div,[data-theme=dark] .file-upload,[data-theme=dark] .search-filter-bar,[data-theme=dark] .guidelines-grid article,[data-theme=dark] .chart-canvas,[data-theme=dark] .notification-stage,[data-theme=dark] .file-upload-preview{background:var(--surface-muted);border-color:var(--border-subtle)}[data-theme=dark] .data-table-wrap{border-color:var(--border-subtle)}[data-theme=dark] .data-table th{color:var(--text-secondary);background:var(--surface-muted)}[data-theme=dark] .data-table th,[data-theme=dark] .data-table td,[data-theme=dark] .type-row,[data-theme=dark] .focus-token-row{border-color:var(--border-subtle)}[data-theme=dark] .data-table tbody tr:hover{background:var(--surface-muted)}[data-theme=dark] .data-table td,[data-theme=dark] .type-row,[data-theme=dark] .accordion-item>button{color:var(--text-primary)}[data-theme=dark] .section-heading p:last-child,[data-theme=dark] .split p,[data-theme=dark] .grid-demo p,[data-theme=dark] .type-row small,[data-theme=dark] .spacing-scale small,[data-theme=dark] .token-card p,[data-theme=dark] .service-card p,[data-theme=dark] .cluster-card h3,[data-theme=dark] .play-card p,[data-theme=dark] .dialog-preview p,[data-theme=dark] .kpi-card p,[data-theme=dark] .feedback-card p,[data-theme=dark] .notification-text,[data-theme=dark] .focus-mode-bar p,[data-theme=dark] .field-demo small,[data-theme=dark] .breadcrumb li,[data-theme=dark] .muted-copy,[data-theme=dark] .activity-list p,[data-theme=dark] .file-upload-preview p,[data-theme=dark] .file-row small,[data-theme=dark] code{color:var(--text-secondary)}[data-theme=dark] .section-dark .section-heading p:last-child,[data-theme=dark] .section-dark .lead,[data-theme=dark] .footer p,[data-theme=dark] .preview-hero .breadcrumb li,[data-theme=dark] .preview-hero .breadcrumb a,[data-theme=dark] .preview-hero .breadcrumb span{color:var(--text-on-inverse)}[data-theme=dark] .breadcrumb a:hover{color:var(--color-ocean-blue)}[data-theme=dark] .state-chip,[data-theme=dark] .kpi-card small,[data-theme=dark] .dialog-close,[data-theme=dark] .notification-dismiss,[data-theme=dark] .badge-neutral{color:var(--text-primary);background:var(--surface-muted)}[data-theme=dark] .loading-bars i,[data-theme=dark] .upload-progress{background:var(--border-subtle)}[data-theme=dark] .btn-secondary{color:var(--text-primary);border-color:var(--border-strong)}[data-theme=dark] .text-btn{color:var(--text-primary)}[data-theme=dark] .focus-spec-row span,[data-theme=dark] .focus-spec-row small,[data-theme=dark] .focus-token-row small,[data-theme=dark] .panel-kicker,[data-theme=dark] .service-card span,[data-theme=dark] .cluster-card span,[data-theme=dark] .type-row span,[data-theme=dark] .kpi-card span,[data-theme=dark] .feedback-card span,[data-theme=dark] .data-table th,[data-theme=dark] .file-upload label span,[data-theme=dark] .state-sample span,[data-theme=dark] .field-demo span,[data-theme=dark] .play-card span,[data-theme=dark] .file-row strong{color:var(--text-secondary)}.theme-toggle{background:#ffffff14;border-radius:4px;align-items:center;gap:4px;padding:4px;display:inline-flex}.theme-toggle button{min-width:44px;min-height:36px;color:var(--color-white);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;transition:background-color .2s,color .2s;display:inline-flex}.theme-toggle button[aria-pressed=true]{color:var(--color-deep-blue);background:var(--color-white)}.theme-toggle button:hover:not([aria-pressed=true]){background:#ffffff29}[data-theme=dark] .theme-toggle{background:#ffffff0f}a,button,[role=button],.btn,.text-btn,.state-toggle,.state-chip,.badge,.filter-chip-row button,.file-row button,.tab-list button,.accordion-item>button,.data-table tbody tr,.preview-link-grid a,.breadcrumb a{transition:background-color var(--motion-instant) var(--ease-standard), border-color var(--motion-instant) var(--ease-standard), color var(--motion-instant) var(--ease-standard)}:focus-visible{transition-property:background-color,border-color,color}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}a,button,[role=button],input,select,textarea{transition-duration:var(--motion-instant)!important;transition-property:background-color,border-color,color!important}}@font-face{font-family:ADPortsGroup;src:url(/fonts/ADPortsGroup-Light.woff)format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ADPortsGroup;src:url(/fonts/ADPortsGroup-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ADPortsGroup;src:url(/fonts/ADPortsGroup-Bold.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}html,body{font-family:ADPortsGroup,Tahoma,sans-serif}.app-shell{--app-nav-height:72px;background:var(--surface-page);min-height:100vh;color:var(--text-primary)}.app-nav{z-index:20;align-items:center;gap:var(--space-md);height:72px;padding-left:var(--space-lg);padding-right:var(--space-lg);background:var(--surface-inverse);color:var(--text-on-inverse);display:flex;position:sticky;top:0}.app-nav a{color:var(--text-on-inverse);text-transform:uppercase;min-height:44px;padding-left:var(--space-xs);padding-right:var(--space-xs);border-bottom:2px solid #0000;align-items:center;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.app-nav a.is-active{border-bottom-color:var(--color-ocean-blue)}.app-nav a:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.app-nav-spacer{flex:1}.role-switch{border:1px solid color-mix(in srgb, currentColor 40%, transparent);border-radius:999px;align-items:stretch;gap:2px;height:32px;padding:2px;display:inline-flex}.role-switch-option{padding-inline:var(--space-sm);color:inherit;font:inherit;letter-spacing:.02em;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.role-switch-option:hover[aria-pressed=false]{background:color-mix(in srgb, currentColor 18%, transparent)}.role-switch-option[aria-pressed=true]{background:var(--color-white);color:var(--surface-inverse);cursor:default}.role-switch-option:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.app-main{padding:var(--space-lg)}.stack-md{gap:var(--space-md);flex-direction:column;display:flex}.stack-sm{gap:var(--space-sm);flex-direction:column;display:flex}.stack-xs,.page-head{gap:var(--space-xs);flex-direction:column;display:flex}.muted{color:var(--text-secondary)}.kpi-row{gap:var(--space-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.link-row,.button-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.scroll-x{overflow-x:auto}.data-table select{min-height:44px;padding-left:var(--space-xs);padding-right:var(--space-xs);border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-primary);font:inherit;border-radius:4px}.data-table select:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.panel{padding:var(--space-md);background:var(--surface-raised);box-shadow:var(--shadow-level-1);border-radius:8px}.filter-bar{align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap;display:flex}.filter-bar-spacer{flex:1}.download-btn{align-items:center;gap:var(--space-xs);display:inline-flex}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-spinner{width:var(--icon-md);height:var(--icon-md);border:var(--focus-ring-width) solid currentColor;border-top-color:#0000;border-radius:50%;animation:.8s linear infinite btn-spin}@media (prefers-reduced-motion:reduce){.btn-spinner{animation-duration:.01ms;animation-iteration-count:1}}.form-grid{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.kpi-form-grid{gap:var(--space-12);grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;display:grid}.kpi-col-1{grid-column:span 1}.kpi-col-3{grid-column:span 3}.kpi-col-4{grid-column:1/-1}.kpi-form-secondary{margin-top:var(--space-16);padding-top:var(--space-12);border-top:1px solid var(--border-subtle)}@media (width<=900px){.kpi-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-col-3{grid-column:span 2}}.field-wide{grid-column:1/-1}.field-inline{gap:var(--space-xs);color:var(--text-primary);flex-direction:column;font-size:12px;font-weight:700;display:flex}.field-inline select,.field-inline input,.field-inline textarea,.value-input{min-height:48px;padding:var(--space-xs) var(--space-sm);border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-primary);font:inherit;border-radius:4px;font-weight:400}.field-inline select:focus-visible,.field-inline input:focus-visible,.field-inline textarea:focus-visible,.value-input:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.field-check{align-items:center;gap:var(--space-xs);flex-direction:row;min-height:48px}.field-check input{width:20px;height:20px;min-height:0;padding:0}.auth-page{--auth-control-h:40px;background:var(--surface-page);grid-template-columns:52fr 48fr;min-height:100dvh;display:grid}.auth-panel{padding:var(--space-48);background:var(--color-deep-blue);color:var(--color-white);flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.auth-radar{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.auth-radar-band{display:none}.auth-panel>:not(.auth-radar){position:relative}.auth-lockup{align-items:center;gap:var(--space-12);display:flex}.auth-lockup img{width:40px;height:40px;display:block}.auth-wordmark{font-size:var(--text-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--color-white);margin:0;font-weight:700}.auth-statement h2{letter-spacing:-.005em;max-width:10em;color:var(--color-white);margin:0;font-size:clamp(28px,3.1vw,40px);font-weight:300;line-height:1.15}.auth-rule{width:64px;height:2px;margin:var(--space-24) 0 var(--space-20);background:var(--color-ocean-blue);border:0}.auth-statement p{max-width:22em;font-size:var(--text-lead);color:#ffffffc7;margin:0;line-height:1.5}.auth-col{padding:var(--space-32) var(--space-48);background:var(--surface-page);flex-direction:column;display:flex}.auth-top{justify-content:flex-end;display:flex}.auth-top .theme-icon-toggle{color:var(--text-secondary);border-color:var(--border-subtle)}.auth-top .theme-icon-toggle:hover{border-color:var(--color-ocean-blue);color:var(--color-ocean-blue);background:0 0}.auth-body{padding:var(--space-24) 0;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.auth-inner{width:100%;max-width:380px}.auth-inner .eyebrow{margin:0 0 var(--space-8);font-size:var(--text-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ocean-blue);font-weight:700}.auth-inner h1{margin:0 0 var(--space-6);font-size:var(--text-h1);letter-spacing:-.01em;font-weight:700;line-height:1.2}.auth-lead{margin:0 0 var(--space-24);font-size:var(--text-lead);color:var(--text-secondary)}.auth-form{gap:var(--space-16);flex-direction:column;display:flex}.auth-field{gap:var(--space-6);flex-direction:column;display:flex}.auth-field[hidden]{display:none}.auth-field label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:700}.auth-control{display:flex;position:relative}.auth-field input{width:100%;min-height:var(--auth-control-h);padding:0 var(--space-12);font:inherit;font-size:var(--text-body);color:var(--text-primary);background:var(--surface-page);border:1px solid var(--border-strong);border-radius:var(--radius-md);transition:border-color var(--motion-instant) var(--ease-standard), box-shadow var(--motion-instant) var(--ease-standard)}.auth-field input::placeholder{color:var(--text-muted)}.auth-field input:hover{border-color:var(--color-ocean-blue)}.auth-field input:focus{border-color:var(--color-ocean-blue);outline:none;box-shadow:0 0 0 3px #218bc92e}.auth-field input.has-toggle{padding-right:64px}.auth-reveal{right:var(--space-4);height:30px;padding:0 var(--space-8);font:inherit;font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ocean-blue);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;font-weight:700;position:absolute;top:50%;transform:translateY(-50%)}.auth-reveal:hover{background:#218bc91a}.auth-btn-primary,.auth-btn-secondary{min-height:var(--auth-control-h);width:100%;padding:0 var(--space-16);font:inherit;font-size:var(--text-sm);letter-spacing:.08em;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--motion-instant) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.auth-btn-primary{color:var(--color-white);background:var(--color-deep-blue);border:1px solid var(--color-deep-blue)}[data-theme=dark] .auth-btn-primary{background:var(--color-ocean-blue);border-color:var(--color-ocean-blue)}.auth-btn-primary:hover{background:var(--color-ocean-blue);border-color:var(--color-ocean-blue);transform:translateY(-2px);box-shadow:0 8px 24px #2d395529}.auth-btn-secondary{color:var(--color-deep-blue);border:1px solid var(--border-strong);background:0 0}[data-theme=dark] .auth-btn-secondary{color:var(--text-primary)}.auth-btn-secondary:hover{border-color:var(--color-ocean-blue);color:var(--color-ocean-blue)}.auth-btn-primary:active,.auth-btn-secondary:active{transform:translateY(0)}.auth-btn-primary:disabled,.auth-btn-secondary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.auth-btn-sso{gap:var(--space-8)}.auth-ms-logo{flex:none;width:16px;height:16px}.auth-divider{align-items:center;gap:var(--space-12);margin:var(--space-24) 0;color:var(--text-muted);font-size:var(--text-sm);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-switch{text-align:center;font-size:var(--text-body);color:var(--text-secondary);margin:0}.auth-link{font-size:inherit;color:var(--color-ocean-blue);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-weight:700}.auth-link:hover{text-decoration:underline}.auth-foot{padding-top:var(--space-24);font-size:var(--text-micro);color:var(--text-muted);text-align:center;margin:0}@media (width<=900px){.auth-page{grid-template-columns:1fr}.auth-panel{padding:var(--space-24);justify-content:flex-start;gap:var(--space-20);min-height:190px}.auth-radar-portrait{display:none}.auth-radar-band{display:block}.auth-statement h2{font-size:24px}.auth-rule{margin:var(--space-12) 0}.auth-statement p{font-size:var(--text-body)}.auth-col{padding:var(--space-24) var(--space-20) var(--space-32)}.auth-body{padding:var(--space-16) 0}}@media (height<=760px) and (width>=901px){.auth-panel{padding:var(--space-32)}.auth-col{padding:var(--space-20) var(--space-40)}.auth-lead{margin-bottom:var(--space-16)}.auth-form{gap:var(--space-12)}.auth-divider{margin:var(--space-16) 0}.auth-foot{padding-top:var(--space-16)}}@media (prefers-reduced-motion:reduce){.auth-page *{transition-duration:1ms!important}.auth-btn-primary:hover{transform:none}}@media (width<=900px){.kpi-row{grid-template-columns:1fr}.app-nav{height:auto;padding-top:var(--space-xs);padding-bottom:var(--space-xs);flex-wrap:wrap}.form-grid{grid-template-columns:1fr}}.value-input{text-align:right;width:100%}.cell-num{text-align:right}.reject-row>td{background:var(--surface-muted)}.review-submit-bar{z-index:10;justify-content:flex-end;align-items:center;gap:var(--space-sm);padding-top:var(--space-xs);padding-bottom:var(--space-xs);background:var(--surface-page);display:flex;position:sticky;top:72px}@media (width<=900px){.review-submit-bar{top:0}}.review-section-head{align-items:center;gap:var(--space-xs);width:100%;min-height:44px;padding:var(--space-xs) var(--space-sm);background:var(--surface-muted);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border:none;border-radius:4px;display:flex}.review-section-head:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.review-section-chevron{color:var(--text-secondary);margin-left:auto;font-weight:700}.review-section .data-table-wrap{margin-top:var(--space-xs)}.review-table{font-size:12px}.review-table th,.review-table td{min-height:0;padding:var(--space-xs)}.review-table select,.review-table .value-input{min-height:var(--control-h);padding-top:0;padding-bottom:0}.review-table .button-row{gap:var(--space-xs);flex-wrap:nowrap}.review-table .button-row button{min-height:var(--control-h);padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.dialog-overlay{z-index:30;padding:var(--space-md);background:color-mix(in srgb, var(--color-deep-blue), transparent 45%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.review-dialog{background:var(--surface-raised);width:100%;max-width:640px;color:var(--text-primary)}.app-modal{max-height:calc(100vh - var(--space-32));flex-direction:column;display:flex;overflow:hidden}.app-modal-md{max-width:640px}.app-modal-lg{max-width:960px}.app-modal-xl{max-width:min(1180px,94vw)}.app-modal-body{min-height:0;padding-top:var(--space-sm);flex:auto;overflow:auto}.app-modal .dialog-actions{flex:none}.setting-toggle{align-items:center;gap:var(--space-sm);min-height:var(--control-h);color:var(--text-primary);font-weight:700;display:flex}.setting-toggle input{width:var(--icon-md);height:var(--icon-md)}.conflict-choices{grid-template-columns:repeat(auto-fit, minmax(calc(var(--space-2xl) * 2 + var(--space-xl)), 1fr));gap:var(--space-sm);margin-top:var(--space-sm);display:grid}.conflict-choice{gap:var(--space-xs);padding:var(--space-sm);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:8px;flex-direction:column;display:flex}.conflict-choice-label{color:var(--text-secondary);font-size:12px}.conflict-choice-source{gap:var(--space-xs);color:var(--text-secondary);border-top:1px solid var(--border-subtle);padding-top:var(--space-xs);flex-direction:column;font-size:12px;font-weight:300;display:flex}.conflict-choice-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.conflict-manual{margin-top:var(--space-sm)}.conflict-summary{max-width:min(860px,92vw);max-height:100%;overflow-y:auto}.conflict-list{gap:var(--space-md);margin-top:var(--space-md);flex-direction:column;display:flex}.conflict-item{padding:var(--space-sm);background:var(--surface-muted);box-shadow:var(--shadow-level-1)}.conflict-item-head{gap:var(--space-xs);color:var(--text-primary);flex-direction:column;display:flex}.conflict-choice.is-picked{border-color:var(--color-ocean-blue)}@keyframes bar-progress{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.feedback-loading .loading-bars i{background:var(--color-ocean-blue);transform-origin:0;width:100%;animation:.2s ease-in-out infinite alternate bar-progress}@media (prefers-reduced-motion:reduce){.feedback-loading .loading-bars i{animation:none}}.sheet-pick{align-items:center;gap:var(--space-xs);color:var(--text-primary);flex-direction:row;font-size:14px;font-weight:400;display:flex}.dashboard-grid{gap:var(--space-md);grid-template-columns:minmax(0,3fr) minmax(0,7fr);align-items:start;display:grid}.kpi-browser-list{flex-direction:column;display:flex}.kpi-browser-group{padding:var(--space-xs) var(--space-sm);background:var(--surface-muted);color:var(--text-secondary);text-transform:uppercase;font-size:12px;font-weight:700}.kpi-browser-item{justify-content:space-between;align-items:center;gap:var(--space-xs);width:100%;min-height:44px;padding:var(--space-xs) var(--space-sm);border:none;border-left:2px solid #0000;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;display:flex}.kpi-browser-item:hover{background:var(--surface-muted)}.kpi-browser-item[aria-selected=true]{border-left-color:var(--color-ocean-blue);font-weight:700}.kpi-browser-item:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.kpi-browser-badges{gap:var(--space-xs);flex-shrink:0;display:flex}.kpi-summary-row{gap:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.chart-wrap{width:100%}@media (width<=900px){.dashboard-grid,.kpi-summary-row{grid-template-columns:1fr}}.page-fit{block-size:calc(100dvh - var(--app-nav-height) - (2 * var(--space-lg)));min-block-size:0}.page-fit .pivot-wrap{flex:auto;min-block-size:0;max-block-size:none}.pivot-wrap{overscroll-behavior:contain;background:var(--surface-raised);border:1px solid var(--border-subtle);max-block-size:min(72vh,720px);box-shadow:var(--shadow-level-1);border-radius:8px;overflow:auto}.pivot-wrap.is-page-scroll{overscroll-behavior:auto;max-block-size:none}.pivot-wrap:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.pivot-table{border-collapse:separate;border-spacing:0;width:100%;color:var(--text-primary);font-size:14px}.pivot-table th,.pivot-table td{padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--border-subtle);white-space:nowrap;text-align:left;min-height:44px}.pivot-table thead th{z-index:3;background:var(--surface-muted);color:var(--text-secondary);text-transform:uppercase;font-size:12px;font-weight:700;position:sticky;top:0}.pivot-table thead tr:last-child th{top:calc(var(--space-md) + var(--space-xs));border-bottom:1px solid var(--border-strong)}.pivot-table .pivot-group-head{text-align:center;color:var(--text-primary);border-bottom:2px solid var(--color-ocean-blue)}.pivot-table th:first-child,.pivot-table td:first-child{z-index:1;background:var(--surface-raised);border-right:1px solid var(--border-strong);min-width:260px;position:sticky;left:0}.pivot-table thead th:first-child{z-index:4;background:var(--surface-muted)}.pivot-row-kpi td{background:var(--surface-muted);font-weight:700}.pivot-row-kpi td:first-child{background:var(--surface-muted)}.pivot-num{text-align:right;font-variant-numeric:tabular-nums}.pivot-label-breakdown,.pivot-label-sub{padding-left:var(--space-sm);color:var(--text-secondary);display:inline-block}.pivot-label-kpi{color:var(--text-primary);font-weight:700}.pivot-unit{margin-left:var(--space-xs);color:var(--text-secondary);font-size:12px;font-weight:400}.app-main .page-head h1{max-width:none;font-size:28px}.app-main h2,.app-main h3{font-size:18px}.app-main .data-table{font-size:14px}.caption{color:var(--text-secondary);font-size:12px;font-weight:300}.cluster-swatch{width:var(--swatch);height:var(--swatch);border-radius:var(--radius-sm);background:var(--sw-accent);border:1px solid #00000061;border-color:color-mix(in srgb, var(--sw-accent) 72%, #000);flex-shrink:0;display:inline-block}[data-theme=dark] .cluster-swatch{border-color:#ffffff6b;border-color:color-mix(in srgb, var(--sw-accent) 72%, #fff)}.kpi-browser-group{border-left:2px solid #0000}.cluster-accent-head{padding-left:var(--space-sm);border-left:2px solid #0000}.cluster-accent-cards .kpi-card{border-top:2px solid var(--cluster-accent,transparent)}.cluster-select-row{align-items:center;gap:var(--space-xs);display:flex}@keyframes page-enter{0%{opacity:0;transform:translateY(var(--space-xs))}to{opacity:1;transform:translateY(0)}}.page-enter{animation:.2s page-enter}.tab-list button{transition:color .2s,border-bottom-color .2s,background-color .2s}.kpi-card,.panel{transition:box-shadow .2s}.kpi-card:hover,.panel:hover{box-shadow:var(--shadow-level-2)}.data-table tbody tr,.kpi-browser-item{transition:background-color .2s}.skeleton{gap:var(--space-xs);display:grid}.skeleton-block{background:var(--color-pearl-grey);border-radius:4px;animation:1.2s ease-in-out infinite alternate skeleton-pulse;display:block}.skeleton-line{height:var(--skeleton-line-h);width:100%}.skeleton-card{height:calc(var(--space-2xl) + var(--space-lg))}.skeleton-chart{height:calc(var(--space-2xl) * 3 + var(--space-lg))}@keyframes skeleton-pulse{0%{opacity:1}to{opacity:.45}}@media (prefers-reduced-motion:reduce){.page-enter{animation:none}.tab-list button,.kpi-card,.panel,.data-table tbody tr,.kpi-browser-item{transition-duration:.01ms}.skeleton-block{animation:none}}.brand-lockup{align-items:center;gap:var(--space-xs);line-height:1;display:inline-flex}.brand-lockup>p,.brand-lockup .eyebrow,.brand-lockup strong{align-items:center;margin:0;line-height:1;display:flex}.brand-logo{width:var(--brand-logo-size);height:var(--brand-logo-size);object-fit:contain;object-position:center;transform:translateY(calc(var(--focus-ring-width) * -1));flex:none;align-self:center;display:block}.action-list{gap:var(--space-xs);margin:0;list-style:none;display:grid}.action-item{align-items:flex-start;gap:var(--space-sm);padding-top:var(--space-xs);padding-bottom:var(--space-xs);color:inherit;text-decoration:none;display:flex}.action-text{display:grid}.action-dot{width:var(--icon-xs);height:var(--icon-xs);margin-top:var(--space-xs);border-radius:50%;flex-shrink:0}.action-dot-todo{background:var(--color-ocean-blue)}.action-dot-draft{background:var(--color-silver-grey)}.action-dot-rejected{background:var(--color-ecfz-red)}.action-dot-review{background:var(--color-maritime-teal)}.action-dot-admin{background:var(--color-digital-purple)}.cross-role-nudge{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.home-grid{gap:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.home-card-wide{grid-column:span 2}@media (width<=1100px){.home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.home-grid{grid-template-columns:minmax(0,1fr)}.home-card-wide{grid-column:span 1}}.home-card-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.home-card-foot{border-top:1px solid var(--border-subtle);padding-top:var(--space-xs)}.home-clear{align-items:center;gap:var(--space-xs);color:var(--text-secondary);display:flex}.home-clear-mark{color:var(--color-logistic-green);font-weight:700}.home-warn{color:var(--color-ecfz-red)}.coverage-list{gap:var(--space-xs);margin:0;list-style:none;display:grid}.coverage-row{align-items:center;gap:var(--space-xs);display:flex}.coverage-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.coverage-bar{height:var(--bar-h);background:var(--surface-muted);border-radius:4px;flex:1;overflow:hidden}.coverage-bar.is-empty{opacity:.4}.coverage-fill{background:var(--color-ocean-blue);height:100%;display:block}.coverage-value{white-space:nowrap}.home-page{max-width:1440px;margin-inline:auto}.home-row-split{gap:var(--space-md);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:stretch;display:grid}@media (width<=1279px){.home-row-split{grid-template-columns:minmax(0,1fr)}}.cluster-coverage-list{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.cluster-coverage-row{align-items:center;gap:var(--space-xs) var(--space-md);padding-top:var(--space-xs);padding-bottom:var(--space-xs);border-top:1px solid var(--border-subtle);color:inherit;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr) minmax(0,1.1fr);text-decoration:none;display:grid}.cluster-coverage-list li:first-child .cluster-coverage-row{border-top:0}.cluster-coverage-label{align-items:center;gap:var(--space-xs);flex-wrap:wrap;min-width:0;display:flex}.cluster-coverage-meter{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.cluster-coverage-row>.caption{min-width:0}@media (width<=900px){.cluster-coverage-row>.caption{grid-column:1/-1}.cluster-coverage-row{grid-template-columns:minmax(0,1fr)}}.quality-scroll{max-height:min(46vh,360px);overflow-y:auto}.quality-legend{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.quality-group-head{align-items:center;gap:var(--space-xs);width:100%;min-height:var(--control-h);padding-inline:var(--space-xs);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;display:flex}.quality-group-head:hover{background:var(--surface-muted)}.quality-group-head:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.quality-group-title{font-weight:700}.quality-chevron{margin-left:auto;font-weight:700;line-height:1;transition:transform .2s}.quality-chevron.is-open{transform:rotate(90deg)}.quality-item{padding-inline:var(--space-xs)}.severity-mark{width:var(--icon-sm);height:var(--icon-sm);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.severity-critical{background:var(--color-ecfz-red);color:var(--color-white)}.severity-attention{background:var(--color-ocean-blue);color:var(--color-white)}.severity-info{background:var(--color-pearl-grey);color:var(--color-deep-blue)}.activity-table th,.activity-table td{padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.activity-table .activity-target{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.activity-table .activity-when{white-space:nowrap;text-align:right}.theme-icon-toggle{width:calc(var(--space-lg) + var(--space-xs));height:calc(var(--space-lg) + var(--space-xs));border:1px solid var(--border-strong);color:var(--text-on-inverse);font:inherit;cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.theme-icon-toggle:hover{background:var(--color-ocean-blue)}.theme-icon-toggle:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.app-nav a,.brand-lockup,.brand-lockup strong{white-space:nowrap}@media (width<=1280px){.app-nav{gap:var(--space-sm);padding-left:var(--space-md);padding-right:var(--space-md)}}.cluster-stat strong{font-size:18px}.activity-feed{gap:var(--space-xs);margin:0;list-style:none;display:grid}.activity-item{align-items:baseline;gap:var(--space-xs);display:flex}.activity-dot{width:var(--icon-xs);height:var(--icon-xs);border-radius:50%;flex-shrink:0;align-self:center}.activity-time{white-space:nowrap;margin-left:auto}[data-theme=dark] .tab-list{border-bottom-color:var(--border-subtle)}[data-theme=dark] .tab-list button,[data-theme=dark] .btn-secondary,[data-theme=dark] .text-btn,[data-theme=dark] .kpi-card strong,[data-theme=dark] .notification h4,[data-theme=dark] .file-row strong,[data-theme=dark] .upload-dropzone strong,[data-theme=dark] .breadcrumb [aria-current=page]{color:var(--text-primary)}[data-theme=dark] .btn-secondary{border-color:var(--border-strong)}[data-theme=dark] .tab-list button[aria-selected=true]{color:var(--color-ocean-blue)}.ai-prompt-input{width:100%;min-height:180px;padding:var(--space-sm);color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-subtle);font:inherit;resize:vertical;border-radius:4px;font-size:14px;line-height:1.6}.ai-prompt-input:focus-visible{border-color:var(--color-ocean-blue);outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.ai-diff{gap:var(--space-sm);margin:var(--space-sm) 0;grid-template-columns:1fr 1fr;display:grid}.ai-diff-text{max-height:200px;padding:var(--space-sm);color:var(--text-primary);background:var(--surface-muted);border:1px solid var(--border-subtle);font:inherit;white-space:pre-wrap;border-radius:8px;margin:0;font-size:12px;line-height:1.6;overflow:auto}@media (width<=720px){.ai-diff{grid-template-columns:1fr}}.spoc-form-wrap{max-width:100%;max-height:min(62vh,620px);overflow:auto}.fs-sheet{z-index:40;background:var(--surface-page);color:var(--text-primary);flex-direction:column;display:flex;position:fixed;inset:0}.fs-sheet-header{justify-content:space-between;align-items:center;gap:var(--space-md);padding-inline:var(--space-lg);padding-block:var(--space-sm);background:var(--surface-inverse);color:var(--text-on-inverse);display:flex}.fs-sheet-heading{gap:var(--space-xs);flex-direction:column;display:flex}.fs-sheet-header h2{color:var(--text-on-inverse);margin:0}.fs-sheet-subtitle{color:var(--color-pearl-grey)}.fs-sheet-body{min-height:0;padding:var(--space-md) var(--space-lg);flex-direction:column;flex:1;display:flex}.fs-sheet-body>.stack-sm{flex-direction:column;flex:1;min-height:0;display:flex}.fs-sheet-body .spoc-form-wrap{flex:1;min-height:0;max-height:none}.fs-sheet-footer{padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--border-subtle)}.spoc-form-table td{vertical-align:middle}.spoc-form-table .field-demo{gap:var(--space-xs);background:0 0;padding:0}.spoc-form-table .field-demo input{min-width:calc(var(--control-h) + var(--control-h-sm));text-align:right}.spoc-form-footer{justify-content:space-between;top:auto;bottom:0}.table-viewport{max-height:min(62vh,620px);overflow:auto}.table-viewport thead th{z-index:2;background:var(--surface-muted);position:sticky;top:0}.kpi-browser-list{max-height:min(62vh,620px);overflow-y:auto}.hero-centered{text-align:center;align-items:center;max-width:760px;margin-left:auto;margin-right:auto}.hero-centered .button-row{justify-content:center}.badge-row{gap:var(--space-xs);flex-wrap:wrap;display:flex}.assignment-chip{align-items:center;gap:var(--space-xs);display:inline-flex}.assignment-chip-remove{min-width:var(--control-h-sm);min-height:var(--control-h-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:0}.assignment-chip-remove:hover{color:var(--color-ecfz-red)}.assignment-add{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:inline-flex}:root{--icon-xs:6px;--icon-sm:10px;--icon-md:16px;--icon-lg:20px;--swatch:12px;--brand-logo-size:26px;--bar-h:8px;--skeleton-line-h:12px;--space-2xs:2px;--space-xs2:4px;--space-xs3:6px;--space-sm2:10px;--space-sm3:12px;--row-h:40px;--row-h-comfy:48px;--control-h:34px;--control-h-sm:28px;--radius-sm:4px;--radius-md:6px}body,.app-main{font-size:14px;line-height:1.45}.app-main h1,.app-main .page-head h1{font-size:24px;font-weight:700;line-height:1.25}.app-main h2{font-size:18px;line-height:1.3}.app-main h3{font-size:15px;line-height:1.35}.app-main h4{font-size:14px;line-height:1.35}.app-main .lead,.app-main .page-head p,.app-main .fs-sheet-subtitle{max-width:90ch;margin-top:var(--space-2xs);color:var(--text-secondary);font-size:13px;line-height:1.45}.app-main .caption,.app-main small{font-size:12px}.app-main .page-head>.caption,.app-main .field-inline>span,.app-main .field-demo>span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:700}.app-main .page-head{gap:var(--space-2xs);margin-bottom:var(--space-md)}.app-main .kpi-card{padding:var(--space-sm3) var(--space-sm)}.app-main .kpi-card strong{margin-top:var(--space-xs2);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.app-main .kpi-card p{margin-top:var(--space-2xs);font-size:13px}.app-main .kpi-card small{margin-top:var(--space-xs2);padding:var(--space-2xs) var(--space-xs2);font-size:12px}.app-main .btn{min-height:var(--control-h);padding:var(--space-xs3) var(--space-sm3);border-radius:var(--radius-sm);font-size:13px}.app-main .text-btn{min-height:var(--control-h);font-size:13px}.app-main .field-inline select,.app-main .field-inline input,.app-main .field-inline textarea,.app-main .field-demo input,.app-main .value-input,.app-main .data-table select{min-height:var(--control-h);padding:var(--space-xs3) var(--space-sm2);border-radius:var(--radius-sm);font-size:14px}.app-main .field-inline textarea{min-height:calc(var(--control-h) * 2)}.app-main .field-inline,.app-main .field-demo{gap:var(--space-xs2)}.app-main .filter-bar{gap:var(--space-sm2);padding:var(--space-sm2) var(--space-sm3);border-radius:var(--radius-md)}@media (width>=1280px){.app-main .filter-bar{flex-wrap:nowrap}}.app-main .panel{padding:var(--space-sm);border-radius:var(--radius-md)}.app-main .stack-md{gap:var(--space-sm)}.app-main .stack-sm{gap:var(--space-sm3)}.app-main .button-row{gap:var(--space-xs);margin-top:0}.app-main .data-table th,.app-main .data-table td{height:var(--row-h);padding:var(--space-xs2) var(--space-sm2);vertical-align:middle;font-size:13px;line-height:1.4}.app-main .data-table td{font-variant-numeric:tabular-nums}.app-main .data-table th{z-index:2;background:var(--surface-muted);white-space:nowrap;position:sticky;top:0}.app-main .data-table tbody tr:nth-child(2n){background:color-mix(in srgb, var(--text-primary) 2%, transparent)}.app-main .data-table tbody tr:hover{background:color-mix(in srgb, var(--color-ocean-blue) 7%, transparent)}.app-main .data-table-wrap{border-radius:var(--radius-md)}.table-actions{align-items:center;gap:var(--space-4,4px);flex-flow:row;display:flex}.icon-btn{width:var(--control-h-sm);height:var(--control-h-sm);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:0 0;justify-content:center;align-items:center;padding:0;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--color-ocean-blue);border-color:var(--color-ocean-blue);background:color-mix(in srgb, var(--color-ocean-blue) 10%, transparent)}.icon-btn.is-danger:hover:not(:disabled){color:var(--color-ecfz-red);border-color:var(--color-ecfz-red);background:color-mix(in srgb, var(--color-ecfz-red) 10%, transparent)}.icon-btn:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.table-pager{align-items:center;gap:var(--space-sm2);padding-top:var(--space-xs);color:var(--text-secondary);font-size:12px;display:flex}.table-pager .spacer{flex:1}.th-sort{align-items:center;gap:var(--space-xs2);color:inherit;font:inherit;text-transform:inherit;background:0 0;display:inline-flex}.th-sort:hover{color:var(--color-ocean-blue)}.th-sort:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.app-main .badge,.fs-sheet .badge{min-height:0;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);white-space:nowrap;border:1px solid;font-size:12px;font-weight:700;line-height:1.4}.app-main .badge-corporate{color:var(--color-ocean-blue);background:color-mix(in srgb, var(--color-ocean-blue) 12%, transparent)}.app-main .badge-neutral{color:var(--color-space-grey);background:color-mix(in srgb, var(--color-space-grey) 12%, transparent)}.app-main .badge-digital{color:var(--color-digital-purple);background:color-mix(in srgb, var(--color-digital-purple) 14%, transparent)}.app-main .badge-ecfz{color:var(--color-ecfz-red);background:color-mix(in srgb, var(--color-ecfz-red) 12%, transparent)}.app-main .badge-logistics{color:var(--color-logistic-green);background:color-mix(in srgb, var(--color-logistic-green) 16%, transparent)}.app-main .badge-maritime{color:var(--color-maritime-teal);background:color-mix(in srgb, var(--color-maritime-teal) 16%, transparent)}.app-main .badge-ports{color:var(--color-ocean-blue);background:color-mix(in srgb, var(--color-ports-light-blue) 40%, transparent)}.empty-state{align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-sm);text-align:center;color:var(--text-secondary);flex-direction:column;display:flex}.empty-state svg{color:var(--color-silver-grey)}.empty-state p{margin:0;font-size:14px}.pivot-table td.is-empty,.pivot-table .pivot-num:empty{opacity:.35}.pivot-table th:first-child,.pivot-table td:first-child{box-shadow:1px 0 0 var(--border-subtle), var(--shadow-level-1)}.pivot-table .pivot-group-start{border-left:2px solid var(--border-strong)}.pivot-table td{font-variant-numeric:tabular-nums}.app-nav{gap:var(--space-sm);height:56px;padding-left:var(--space-sm);padding-right:var(--space-sm)}.app-nav a{min-height:var(--control-h);font-size:13px}.brand-lockup strong{font-size:15px;line-height:1}@media (prefers-reduced-motion:reduce){.icon-btn,.app-main .btn{transition:none}}.brand-spinner{justify-content:center;align-items:center;display:inline-flex}.brand-spinner-mark{width:var(--icon-lg);height:var(--icon-lg);object-fit:contain;animation:1.4s linear infinite brand-spin}.brand-spinner-md .brand-spinner-mark{width:28px;height:28px}.brand-spinner-on-dark,[data-theme=dark] .brand-spinner-on-light{display:none}[data-theme=dark] .brand-spinner-on-dark{display:inline-block}.section-dark .brand-spinner-on-light,.app-nav .brand-spinner-on-light{display:none}.section-dark .brand-spinner-on-dark,.app-nav .brand-spinner-on-dark{display:inline-block}.skeleton .brand-spinner{justify-content:flex-start}.brand-loading{justify-items:center;gap:var(--space-xs);display:grid}@keyframes brand-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.brand-spinner-mark{animation:none}}.kpi-detail-modal-bar{align-items:center;gap:var(--space-8);margin-bottom:var(--space-12);display:flex}.kpi-detail-modal-unit{color:var(--text-secondary);font-size:var(--text-sm)}.kpi-detail-modal>.stack-md{gap:var(--space-16);grid-template-columns:minmax(240px,280px) 1fr;align-items:start;display:grid}.kpi-detail-modal>.stack-md>.page-head{display:none}.kpi-detail-modal>.stack-md>.kpi-summary-row{gap:var(--space-8);flex-direction:column;display:flex}.kpi-detail-modal>.stack-md>.panel{min-width:0}@media (width<=1100px){.kpi-detail-modal>.stack-md{grid-template-columns:1fr}}.pivot-select-hint{margin:var(--space-6) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.pivot-row-kpi.is-selectable{cursor:pointer}.pivot-row-kpi.is-selectable:hover>td{background:var(--n-100)}.pivot-row-kpi.is-selectable.is-selected>td{background:var(--n-100);box-shadow:inset var(--space-2) 0 0 var(--color-ocean-blue)}.pivot-row-kpi.is-selectable:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:calc(var(--focus-ring-width) * -1)}.tab-count{padding-inline:var(--space-4);background:var(--surface-muted);font-size:var(--text-micro);font-variant-numeric:tabular-nums;border-radius:99px;margin-inline-start:var(--space-4)}.modal-footer-summary{color:var(--text-secondary);font-size:var(--text-sm);margin-inline-end:auto}.kpi-breakdown-toggle{color:var(--color-ocean-blue);font-size:var(--text-sm);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.kpi-breakdown-detail td{background:var(--surface-muted);font-size:var(--text-sm);color:var(--text-secondary)}.kpi-breakdown-detail dl{gap:var(--space-4) var(--space-12);grid-template-columns:minmax(120px,max-content) 1fr;margin:0;display:grid}.admin-user-email{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere}.kpi-add-row{gap:var(--space-8);padding:var(--space-8);background:var(--surface-muted);border-radius:var(--radius-sm);grid-template-columns:minmax(200px,1fr) minmax(150px,auto) auto;align-items:end;display:grid}.kpi-dim-card{padding:var(--space-8);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}@media (width<=900px){.kpi-add-row{grid-template-columns:1fr;align-items:stretch}}.user-avatar{object-fit:cover;border-radius:50%;flex:none}.user-avatar-initials{background:color-mix(in srgb, currentColor 22%, transparent);justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.user-menu{display:inline-flex;position:relative}.user-menu-trigger{cursor:pointer;color:inherit;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:2px;display:inline-flex}.user-menu-trigger:hover{border-color:color-mix(in srgb, currentColor 45%, transparent)}.user-menu-trigger:focus-visible{outline:var(--focus-ring-width) solid var(--color-ocean-blue);outline-offset:var(--focus-ring-offset)}.user-menu-panel{top:calc(100% + var(--space-xs));z-index:40;min-width:260px;padding:var(--space-sm);gap:var(--space-sm);background:var(--surface-raised);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-level-3);flex-direction:column;display:flex;position:absolute;right:0}.user-menu-head{align-items:center;gap:var(--space-sm);display:flex}.user-menu-identity{flex-direction:column;min-width:0;display:flex}.user-menu-identity strong{font-size:var(--text-body)}.user-menu-email{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere}.user-menu-body{gap:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.user-menu-field,.user-menu-line{justify-content:space-between;align-items:center;gap:var(--space-sm);font-size:var(--text-body);margin:0;display:flex}.user-menu-field>span:first-child,.user-menu-line>span:first-child{color:var(--text-secondary)}.user-menu-foot{padding-top:var(--space-sm);border-top:1px solid var(--border-subtle)}.access-pending{max-width:420px;margin:var(--space-xl) auto;gap:var(--space-sm);padding:var(--space-lg);background:var(--surface-raised);color:var(--text-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-level-1);flex-direction:column;display:flex}.access-pending-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.section-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.section-head h2{color:var(--text-primary);margin:0}
