/* V7 visual language: restrained navy, generous white surfaces and clear workflow states. */
:root{--bg:#f4f7fb;--surface:#fff;--navy:#10254f;--brand:#2b58da;--bright:#5e8cff;--ink:#172338;--muted:#6b7b92;--line:#e3eaf3;--soft:#f8fbff;--green:#128a59;--orange:#a46000;--red:#c4374b;--shadow:0 12px 32px rgba(16,37,79,.045);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);font-size:14px;line-height:1.55;background:var(--bg)}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--brand);text-decoration:none}h1,h2,h3,h4,h5,p{margin:0}h1,h2,h3,h4{color:var(--navy)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7aa2ff;outline-offset:3px}input,select,textarea{min-width:0}svg{flex-shrink:0;vertical-align:middle}.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.skip-link{position:fixed;left:12px;top:-60px;padding:10px 14px;background:#fff;z-index:1000;border-radius:8px}.skip-link:focus{top:12px}.boot-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}.boot-screen h1{font-size:24px}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.brand-mark{display:block;position:relative;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#10254f,#3966e6);box-shadow:0 6px 16px #2b58da20;flex:0 0 auto}.brand-mark:before,.brand-mark:after{content:"";position:absolute;left:10px;right:10px;height:4px;border-radius:10px;background:#fff}.brand-mark:before{top:13px;transform:rotate(35deg)}.brand-mark:after{bottom:13px;transform:rotate(-35deg)}.topbar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.topbar-inner{max-width:1540px;margin:auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:12px;align-items:center}.brand h1{font-size:17px;letter-spacing:.04em}.brand p{font-size:10px;color:#8b97aa;letter-spacing:.13em;margin-top:3px}.top-actions{display:flex;align-items:center;gap:18px}.environment{font-size:11px;color:var(--muted);display:flex;gap:7px;align-items:center}.dot{display:inline-block;width:6px;height:6px;background:#28a273;border-radius:100%}.profile{display:flex;gap:9px;align-items:center}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#edf3ff;color:var(--brand);font-weight:700}.profile strong{font-size:12px;display:block;color:var(--navy)}.profile p{font-size:10px;color:var(--muted)}.role-select{border:1px solid var(--line);padding:7px;border-radius:8px;color:var(--brand);background:#fff;font-size:12px;max-width:160px}.icon-button{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted)}.icon-button:hover{background:#f0f5ff;color:var(--brand)}.workspace{max-width:1540px;margin:0 auto;display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding:25px 28px 36px}.sidebar{position:sticky;top:94px;align-self:start}.workspace-label{font-size:10px;letter-spacing:.12em;color:#8b97aa;padding:2px 14px 12px}.nav-group{margin-bottom:22px}.nav-label{font-size:10px;color:#8a97ab;padding:8px 14px;letter-spacing:.08em}.nav-item{width:100%;display:flex;align-items:center;gap:11px;padding:11px 14px;margin:3px 0;border:1px solid transparent;border-radius:11px;background:transparent;color:#69788f;text-align:left;font-size:13px}.nav-item .icon{width:18px;height:18px}.nav-item:hover{background:#ebf1fc}.nav-item.active{background:var(--navy);color:#fff;box-shadow:0 6px 16px #10254f12}.nav-item.active:after{content:"";width:5px;height:5px;border-radius:50%;background:#7d9dff;margin-left:auto}.side-card{margin-top:28px;border:1px solid #dae4f1;border-radius:14px;padding:16px;background:linear-gradient(150deg,#fff,#edf3ff)}.side-card .icon{color:var(--brand);margin-bottom:10px}.side-card h4{font-size:12px;margin-bottom:6px}.side-card p{font-size:11px;color:var(--muted);line-height:1.9}.main{min-width:0;outline:none}.breadcrumb{display:flex;align-items:center;gap:8px;color:#8793a5;font-size:11px;margin-bottom:17px}.breadcrumb span:last-child{color:var(--navy)}.breadcrumb .icon{width:13px;height:13px}.hero{position:relative;overflow:hidden;border-radius:20px;background:linear-gradient(116deg,#10254f 0%,#2249b5 70%,#3d6ae0 100%);padding:28px 30px;color:#fff;margin-bottom:24px;display:grid;grid-template-columns:1fr 225px;gap:20px;min-height:212px}.hero:after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ffffff0d;border-radius:50%;right:-45px;top:-210px;box-shadow:0 0 0 46px #ffffff04,0 0 0 92px #ffffff04}.hero h2{font-size:27px;color:#fff;line-height:1.5;font-weight:650;margin:11px 0 9px;letter-spacing:.02em}.hero p{font-size:12px;color:#d4def7;max-width:630px;line-height:1.9}.hero .eyebrow{color:#b9cdfa}.hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.hero-art{position:relative;display:grid;place-items:center;align-self:center;height:150px;z-index:1}.orbit{width:140px;height:140px;border:1px solid #ffffff28;border-radius:50%;position:relative;transform:rotate(-20deg)}.orbit:before,.orbit:after{content:"";position:absolute;border:1px solid #ffffff22;border-radius:50%;inset:16px}.orbit:after{inset:32px}.orbit-box{position:absolute;inset:33px;display:grid;place-items:center;background:linear-gradient(145deg,#ffffff31,#ffffff09);border:1px solid #ffffff60;border-radius:19px;transform:rotate(20deg);box-shadow:0 15px 40px #08255970}.orbit-box .icon{width:39px;height:39px;stroke:#fff;stroke-width:1}.orbit-chip{position:absolute;background:#ffffffee;color:var(--navy);border-radius:10px;padding:8px 11px;box-shadow:0 6px 14px #10254f20;font-size:10px;display:flex;align-items:center;gap:7px}.orbit-chip.a{top:13px;right:2px}.orbit-chip.b{bottom:3px;left:-4px}.orbit-chip .icon{width:15px;height:15px;color:var(--brand)}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px}.section-head h2{font-size:21px;letter-spacing:.02em}.section-head p{font-size:12px;color:var(--muted);margin-top:6px;max-width:700px;line-height:1.8}.head-actions{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:10px 15px;font-size:12px;font-weight:600;line-height:1.45;white-space:nowrap}.btn .icon{width:16px;height:16px}.btn.primary{background:var(--brand);color:#fff;box-shadow:0 3px 7px #2b58da10}.btn.primary:hover{background:#204ac5}.btn.secondary{background:#fff;color:var(--navy);border-color:#d9e3ef}.btn.secondary:hover{background:#f5f8ff}.btn.white{background:#fff;color:#2145aa}.btn.ghost{background:#ffffff0b;color:#fff;border-color:#ffffff32}.btn.danger{color:var(--red);background:#fff1f3;border-color:#f2d7dd}.btn.text{color:var(--brand);padding:6px 0;background:transparent}.btn.sm{padding:7px 10px;font-size:11px}.btn.full{width:100%}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric{padding:18px 18px 15px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);position:relative}.metric-icon{position:absolute;right:16px;top:17px;width:30px;height:30px;border-radius:9px;background:#f0f5ff;color:#5678c4;display:grid;place-items:center}.metric-icon .icon{width:16px;height:16px}.metric-label{font-size:11px;color:var(--muted);padding-right:29px}.metric-value{font-size:29px;line-height:1.3;margin:11px 0 9px;font-weight:650;color:var(--navy);font-variant-numeric:tabular-nums}.metric-sub{border-top:1px solid #f0f3f8;padding-top:9px;color:#8a97aa;font-size:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stack{display:grid;gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:var(--shadow);min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.panel-head h3{font-size:14px;display:flex;align-items:center;gap:8px}.panel-head h3:before{content:"";width:3px;height:13px;background:var(--brand);border-radius:2px}.panel-note{font-size:11px;color:var(--muted);line-height:1.8;margin-top:12px}.task-row{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #edf1f7}.task-row:first-child{padding-top:0}.task-row:last-child{border-bottom:0;padding-bottom:0}.task-icon{width:36px;height:36px;border-radius:10px;background:#f0f5ff;display:grid;place-items:center;color:var(--brand);flex-shrink:0}.task-row h4{font-size:12px;font-weight:600}.task-row p{font-size:10px;color:var(--muted);margin-top:3px}.task-row .grow{flex:1;min-width:0}.task-row .number{font-size:17px;color:var(--navy);font-weight:600}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick{background:#f9fbff;border:1px solid #e7edf6;border-radius:11px;padding:14px 9px;text-align:center;color:var(--navy)}.quick .icon{display:block;margin:0 auto 8px;color:#456ac7}.quick strong{font-size:11px}.quick span{display:block;font-size:9px;color:var(--muted);margin-top:3px}.quick:hover{border-color:#aac0f4;background:#f2f6ff}.demo-banner{display:flex;align-items:center;gap:8px;border:1px solid #e0e8f4;background:#f9fbff;border-radius:9px;padding:10px 13px;margin:0 0 20px;color:#758298;font-size:11px}.demo-banner .icon{width:15px;height:15px;color:#7590c1}.badge{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;padding:3px 7px;border-radius:5px;font-size:10px;line-height:1.5;color:#64738b;background:#f1f4f8;font-weight:500}.badge.blue{color:#2b58bf;background:#edf3ff}.badge.green{color:#138653;background:#eaf8f0}.badge.orange{color:#a96400;background:#fff3e2}.badge.red{color:#bd354a;background:#fff0f3}.badge.demo{color:#8591a3;background:#f3f5f9;border:1px solid #e6ebf2;font-size:9px}.badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.toolbar{display:grid;grid-template-columns:1.65fr repeat(3,1fr) 1.25fr;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label{font-size:11px;color:#5c6c84}.field input,.field select,.field textarea{width:100%;border:1px solid #dce4f0;border-radius:9px;background:#fff;color:var(--ink);padding:10px 11px;font-size:12px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#6f96ed;box-shadow:0 0 0 3px #2b58da09}.field input::placeholder,.field textarea::placeholder{color:#9ba7b8}.field textarea{min-height:95px;resize:vertical}.field small{font-size:10px;color:var(--muted)}.field.full{grid-column:1/-1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-error{color:#b52e41;background:#fff1f3;border:1px solid #f2d5dc;border-radius:8px;padding:11px 13px;font-size:12px;margin:13px 0}.form-error:empty{display:none}.result-line{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-bottom:14px}.result-line strong{color:var(--navy)}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:flex;flex-direction:column}.product-card:hover{border-color:#b7c9ee;transform:translateY(-2px);transition:transform .2s}.product-art{height:154px;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 90%,#ebdeca 0%,#f8f2e7 60%);overflow:hidden}.product-art.food{background:radial-gradient(ellipse at 50% 90%,#e6d7c1,#f8f2e7 68%)}.product-art.oil{background:radial-gradient(ellipse at 50% 90%,#d8dfbe,#f3f5e8 68%)}.product-art.fruit{background:radial-gradient(ellipse at 50% 90%,#f0d3ab,#fff3df 68%)}.product-art.home{background:radial-gradient(ellipse at 50% 90%,#cfdfe6,#edf5f9 68%)}.product-art .art-label{position:absolute;right:10px;bottom:8px;font-size:8px;color:#8c827c;letter-spacing:.04em}.product-art .demo{position:absolute;left:10px;top:10px;background:#ffffffc9;z-index:1}.package{width:98px;height:104px;border-radius:5px;background:linear-gradient(120deg,#d4b285,#f5ddac 68%,#bb9162);box-shadow:9px 12px 16px #7e624425;transform:rotate(-8deg);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #a3855433;color:#785b34}.package:before{content:"";position:absolute;inset:7px;border:1px solid #785b3440;border-radius:2px}.package .icon{width:30px;height:30px;stroke-width:1}.package b{font-size:14px;letter-spacing:.13em}.package small{font-size:6px;letter-spacing:.1em}.oil .package{border-radius:16px 16px 9px 9px;background:linear-gradient(100deg,#9caa5b,#e0df9a 65%,#a6b277);width:77px;color:#465831;transform:rotate(-5deg)}.oil .package:after{content:"";position:absolute;width:40px;height:10px;top:-7px;background:#53653c;border-radius:4px}.fruit .package{border-radius:50%;width:90px;height:90px;background:linear-gradient(130deg,#ffd081,#ef9b35);color:#966322;transform:rotate(7deg)}.fruit .package:before{inset:0;border:0;width:27px;height:12px;background:#839b5d;top:-4px;left:47px;border-radius:0 100%}.home .package{background:linear-gradient(100deg,#96b3c4,#dbeaf1 65%,#aac2d0);color:#55788d;border-radius:18px 18px 5px 5px}.product-body{padding:16px;display:flex;flex-direction:column;flex:1}.product-body h3{font-size:14px;line-height:1.55}.product-sub{font-size:10px;color:var(--muted);margin:4px 0 10px}.price-grid{display:grid;grid-template-columns:1fr 1fr 1fr;margin:12px 0;gap:6px}.price-grid>div{border-right:1px solid var(--line)}.price-grid>div:last-child{border:0}.price-grid small{display:block;font-size:9px;color:var(--muted)}.price-grid strong{display:block;font-size:17px;color:var(--navy);margin-top:3px;font-weight:650}.price-grid strong em{font-size:10px;font-style:normal;margin-right:2px}.why{padding:8px 10px;font-size:10px;line-height:1.8;color:#63728d;background:#f6f9ff;border-radius:7px;margin-bottom:10px}.why b{color:var(--brand);font-weight:500}.product-actions{margin-top:auto;display:flex;gap:7px;padding-top:14px}.product-actions .btn{flex:1}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{padding:19px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-width:0}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.card h3{font-size:14px;line-height:1.6}.card .subtitle{font-size:10px;color:var(--muted);margin-top:4px}.card-meta{font-size:11px;color:var(--muted);display:grid;gap:7px;line-height:1.7;margin:13px 0}.card-meta b{color:#455674;font-weight:500}.card-actions{border-top:1px solid #edf1f7;margin-top:15px;padding-top:14px;display:flex;flex-wrap:wrap;gap:8px}.card-actions .btn{flex:1}.selection-products{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.selection-item{display:flex;align-items:center;gap:5px;border:1px solid #e9eef5;border-radius:6px;padding:5px 7px;font-size:10px;color:#5b6e8c;background:#fafcff}.selection-item .icon{width:12px;height:12px}.table-wrap{width:100%;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px}.table{width:100%;border-collapse:collapse;min-width:670px}.table th{text-align:left;background:#f8faff;color:#7f8ba0;font-size:10px;font-weight:500;padding:13px 16px;white-space:nowrap}.table td{font-size:12px;padding:16px;border-top:1px solid #eaf0f7;color:#4d5e77;vertical-align:middle}.table td strong{color:var(--navy);font-weight:500}.table td .sub{font-size:10px;color:var(--muted);display:block;margin-top:4px}.table .actions{display:flex;gap:8px}.empty{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border:1px dashed #d6e1f0;background:#fcfdff;border-radius:14px;padding:40px 20px;gap:9px;grid-column:1/-1}.empty>.icon{width:35px;height:35px;color:#a4b8db;margin-bottom:4px}.empty h3{font-size:14px}.empty p{font-size:12px;color:var(--muted);max-width:460px;line-height:1.8}.empty .btn{margin-top:9px}.info-box{padding:13px 15px;background:#f1f6ff;border:1px solid #dfe8fb;border-radius:10px;color:#617496;font-size:11px;line-height:1.9;margin-bottom:18px}.info-box strong{color:#355992}.steps{display:flex;align-items:flex-start;padding:14px 0 5px}.step{flex:1;text-align:center;position:relative;color:#9ca8b8;font-size:10px}.step:before{content:"";position:absolute;height:1px;background:#e1e8f2;left:0;right:0;top:10px}.step:first-child:before{left:50%}.step:last-child:before{right:50%}.step i{position:relative;z-index:1;width:21px;height:21px;border-radius:100%;background:#f2f5fa;border:1px solid #e0e7f0;display:grid;place-items:center;margin:0 auto 8px;font-style:normal;font-size:9px}.step.done{color:#365fae}.step.done i{background:#e8f0ff;border-color:#abc2f1}.step.current i{background:var(--brand);color:#fff;border-color:var(--brand)}.history{display:grid;gap:0}.history-item{position:relative;padding:0 0 19px 23px;border-left:1px solid #dce5f2;margin-left:5px}.history-item:last-child{padding-bottom:0}.history-item:before{content:"";position:absolute;left:-4px;top:5px;width:7px;height:7px;border-radius:50%;background:#7da0eb;box-shadow:0 0 0 4px #fff}.history-item h4{font-size:11px;font-weight:500}.history-item p{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.8;overflow-wrap:anywhere}.history-item time{font-size:9px;color:#9aa5b6}.workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.workflow>div{padding:13px 10px;background:#f9fbff;border-radius:9px;position:relative}.workflow b{font-size:10px;letter-spacing:.08em;color:#8ea5d0;display:block;margin-bottom:7px}.workflow strong{font-size:11px;display:block;color:var(--navy)}.workflow p{font-size:9px;color:var(--muted);margin-top:4px}.chart-bars{display:grid;gap:18px;margin:20px 0}.bar-row{display:grid;grid-template-columns:80px 1fr 32px;gap:12px;align-items:center;font-size:11px;color:var(--muted)}.bar-track{height:9px;background:#f0f4fa;border-radius:8px;overflow:hidden}.bar-fill{height:100%;border-radius:8px;background:linear-gradient(90deg,#365fcd,#86a7f2);min-width:0}.bar-row strong{text-align:right;color:var(--navy);font-size:12px}.analytics-note{margin-top:20px;color:#8592a8;font-size:11px}.asset-icon{display:grid;place-items:center;height:90px;background:linear-gradient(120deg,#f1f6ff,#f9fbff);border:1px solid #eaf0f8;border-radius:9px;margin-bottom:16px;color:#6081c6}.asset-icon .icon{width:34px;height:34px;stroke-width:1.3}.check-list{border:1px solid var(--line);border-radius:9px;max-height:250px;overflow:auto;padding:6px}.check-row{display:flex;gap:9px;padding:10px;align-items:center;border-bottom:1px solid #eef2f7;font-size:12px;cursor:pointer}.check-row:last-child{border:0}.check-row input{accent-color:var(--brand);width:16px;height:16px}.check-row span{flex:1;min-width:0}.check-row small{color:var(--muted);font-size:10px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-tile{background:#f9fbff;padding:12px;border-radius:9px;border:1px solid #eaf0f8}.detail-tile small{color:var(--muted);font-size:10px;display:block;margin-bottom:4px}.detail-tile strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.detail-description{font-size:12px;color:#61728c;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}.detail-section{margin-top:20px}.detail-section h3{font-size:13px;margin-bottom:11px}.detail-hero{display:grid;grid-template-columns:160px 1fr;gap:19px;align-items:center;margin-bottom:20px}.detail-hero .product-art{border-radius:12px;height:145px}.detail-hero h3{font-size:20px;line-height:1.5}.detail-hero p{color:var(--muted);font-size:11px;margin-top:6px}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}dialog{border:1px solid var(--line);border-radius:18px;background:#fff;padding:0;width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;color:var(--ink);box-shadow:0 25px 100px #091a4b40}dialog::backdrop{background:#0a19375c;backdrop-filter:blur(3px)}.dialog-head{position:sticky;z-index:3;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 23px;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:18px}.dialog-head p{font-size:11px;color:var(--muted);margin-top:4px}.dialog-body{padding:22px 23px}.dialog-body form{margin:0}.dialog-body .info-box:last-child{margin-bottom:0}.toasts{position:fixed;bottom:25px;right:24px;z-index:100;display:grid;gap:9px;max-width:min(400px,calc(100vw - 32px));pointer-events:none}.toast{background:#10254f;color:#fff;border-radius:10px;padding:13px 17px;box-shadow:0 10px 35px #10254f2b;font-size:12px;animation:toast-in .2s ease}.toast.error{background:#8e2d3e}.spinner{display:inline-block;width:22px;height:22px;border:2px solid #d9e4fa;border-top-color:var(--brand);border-radius:100%;animation:spin .75s linear infinite}.loading-panel{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--muted);font-size:12px}.mobile-menu-button{display:none}.mobile-nav-label{display:none}.footer{font-size:10px;color:#94a0b0;text-align:center;padding:28px 0 0;letter-spacing:.03em}.loading-line{position:fixed;height:2px;background:var(--bright);left:0;right:0;top:0;z-index:200;animation:pulse 1s ease-in-out infinite}.login-page{min-height:100vh;display:grid;grid-template-columns:1.12fr 1fr;background:#fff}.login-story{position:relative;padding:50px 10% 42px;background:linear-gradient(140deg,#0d2148,#193b8b 70%,#2b58c4);overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.login-story:after{content:"";position:absolute;right:-250px;top:20%;width:600px;height:600px;border:1px solid #ffffff0b;border-radius:50%;box-shadow:0 0 0 75px #ffffff03,0 0 0 150px #ffffff03;pointer-events:none}.login-story .brand h1{color:#fff}.login-story .brand p{color:#94aedf}.login-story .brand-mark{background:#ffffff13;border:1px solid #ffffff22}.login-message{position:relative;z-index:1;margin:70px 0 60px}.login-message .eyebrow{color:#8faff5;font-size:10px}.login-message h2{font-size:clamp(30px,3.5vw,46px);color:#fff;line-height:1.55;font-weight:600;margin:18px 0}.login-message p{font-size:13px;color:#b6c8ee;line-height:2;max-width:370px}.login-flow{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.login-flow div{border:1px solid #ffffff1c;border-radius:11px;padding:13px 16px;background:#ffffff06}.login-flow b{font-size:17px;color:#fff;font-weight:500;display:block}.login-flow span{color:#a8bfe7;font-size:9px}.login-bottom{font-size:10px;color:#7899cc;position:relative;z-index:1}.login-form-side{display:flex;align-items:center;justify-content:center;padding:50px 40px}.login-form-wrap{width:100%;max-width:340px}.login-form-wrap .eyebrow{color:#8294b7;margin-bottom:13px}.login-form-wrap h2{font-size:28px;font-weight:600}.login-form-wrap>p{font-size:12px;color:var(--muted);margin:10px 0 32px}.login-form-wrap form{display:grid;gap:18px}.login-form-wrap .field label{font-size:12px}.login-form-wrap .field input{padding:13px 14px;font-size:13px}.login-form-wrap .btn{padding:13px 15px;font-size:13px;margin-top:4px}.login-form-wrap .form-error{margin:0}.login-help{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;color:#8c99ad;font-size:11px;line-height:1.9}.login-help strong{color:#667991;font-weight:500}.login-security{margin-top:30px;color:#9aa7b9;font-size:10px;display:flex;gap:6px;align-items:center}.login-security .icon{width:13px;height:13px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.2}}@keyframes toast-in{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(min-width:1500px){.hero h2{font-size:30px}.workspace{gap:32px}.product-art{height:175px}}
@media(max-width:1200px){.workspace{grid-template-columns:190px minmax(0,1fr);gap:20px;padding:22px 22px}.hero{grid-template-columns:1fr 160px;padding:25px}.hero h2{font-size:24px}.hero-art{transform:scale(.85)}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar .field:first-child{grid-column:span 2}.grid2{gap:15px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics{gap:10px}.metric{padding:15px 13px}.metric-icon{right:12px}.metric-label{font-size:10px}.metric-value{font-size:26px}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.workspace{grid-template-columns:1fr;padding:20px}.sidebar{display:none;position:fixed;top:73px;bottom:0;left:0;width:270px;background:#f7faff;z-index:40;padding:23px 20px;overflow:auto;box-shadow:12px 0 50px #10254f1a}.sidebar.open{display:block}.nav-backdrop{position:fixed;inset:73px 0 0;background:#10254f40;z-index:39}.mobile-menu-button{display:inline-grid}.topbar-inner{padding:14px 20px}.brand{gap:10px}.top-actions{gap:12px}.top-actions .environment{display:none}.breadcrumb{margin-bottom:14px}.hero{min-height:198px}.sidebar .workspace-label{display:block}.mobile-nav-label{display:block}.login-story{padding:40px 9%}.login-flow{gap:7px}.login-flow div{padding:11px}.login-message h2{font-size:32px}}
@media(max-width:680px){.topbar-inner{padding:11px 14px;gap:8px}.brand .brand-mark{width:33px;height:33px;border-radius:9px}.brand-mark:before,.brand-mark:after{left:8px;right:8px;height:3px}.brand-mark:before{top:11px}.brand-mark:after{bottom:11px}.brand h1{font-size:14px}.brand p{font-size:8px;letter-spacing:.06em}.top-actions{gap:7px}.profile .profile-meta{display:none}.avatar{width:30px;height:30px;font-size:12px}.role-select{max-width:82px;font-size:10px;padding:6px 2px}.workspace{padding:16px 13px 25px}.hero{grid-template-columns:1fr;padding:23px 21px;border-radius:15px;margin-bottom:20px}.hero h2{font-size:24px;max-width:290px}.hero p{font-size:11px}.hero-art{display:none}.hero .eyebrow{font-size:8px}.hero-actions{margin-top:18px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:15px}.metric-value{font-size:27px;margin-top:10px}.metric-label{font-size:11px}.metric-sub{font-size:9px}.grid2,.cards,.grid3{grid-template-columns:1fr}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-art{height:118px}.package{transform:scale(.8) rotate(-8deg)}.oil .package{transform:scale(.8) rotate(-5deg)}.fruit .package{transform:scale(.8) rotate(7deg)}.product-body{padding:12px}.product-body h3{font-size:12px}.product-sub{font-size:9px}.product-body .badges .badge{font-size:9px}.price-grid{gap:4px}.price-grid strong{font-size:14px}.price-grid small{font-size:8px}.price-grid strong em{font-size:8px}.why{font-size:9px;padding:7px}.product-actions{flex-direction:column;gap:6px;padding-top:10px}.product-actions .btn{padding:8px;font-size:10px}.toolbar{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px;gap:12px}.toolbar .field:first-child{grid-column:1/-1}.section-head{flex-wrap:wrap;gap:12px;margin-bottom:17px}.section-head h2{font-size:20px}.section-head p{font-size:11px}.section-head .head-actions{width:100%;justify-content:flex-end}.panel{padding:17px}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-banner{font-size:10px;align-items:flex-start;padding:10px;margin-bottom:17px}.demo-banner .icon{margin-top:2px}.demo-banner span{flex:1}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.detail-grid{gap:9px}.detail-hero{grid-template-columns:100px 1fr;gap:13px}.detail-hero .product-art{height:110px}.detail-hero .package{transform:scale(.65) rotate(-8deg)}.detail-hero h3{font-size:17px}.dialog-body{padding:19px 17px}.dialog-head{padding:17px}.dialog-head h2{font-size:17px}.dialog-actions .btn{flex:1}dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:14px}.toasts{bottom:17px;right:16px}.sidebar{top:64px}.nav-backdrop{top:64px}.login-page{grid-template-columns:1fr}.login-story{min-height:auto;padding:24px 27px}.login-story .brand h1{font-size:15px}.login-message{margin:27px 0 9px}.login-message .eyebrow{font-size:8px}.login-message h2{font-size:27px;margin:9px 0}.login-message p{font-size:11px;max-width:300px}.login-flow,.login-bottom{display:none}.login-form-side{padding:30px 28px 40px}.login-form-wrap{max-width:400px}.login-form-wrap h2{font-size:23px}.login-form-wrap .eyebrow{display:none}.login-form-wrap>p{margin:8px 0 25px;font-size:11px}.login-help{margin-top:24px;padding-top:18px}.login-security{margin-top:20px}.footer{font-size:9px}.card-actions .btn{min-width:70px}.workflow{gap:5px}.workflow>div{padding:12px 8px}.workflow strong{font-size:10px}.workflow p{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.product-card:hover{transform:none}}
/* Keep long supplier-entered names and identifiers inside narrow mobile cards. */
.card h3,.product-body h3,.task-row h4,.card-meta,.detail-description,.price-grid strong{overflow-wrap:anywhere}
.selection-item{max-width:100%;overflow-wrap:anywhere;text-align:left}
.task-row .grow h4{overflow-wrap:anywhere}.dialog-body .task-row{flex-wrap:wrap}.dialog-body .task-row .grow{min-width:130px}

.demo-accounts{margin-top:20px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:12px;color:var(--muted)}.demo-accounts summary{cursor:pointer;font-size:13px;color:var(--navy);font-weight:600}.demo-accounts p{margin:12px 0;font-size:12px}.demo-accounts dl{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.demo-accounts dt,.demo-accounts dd{margin:0}.demo-accounts dd{font-family:monospace;color:var(--ink)}
