:root{--bg:#f4ecda;--bg2:#ebe0c8;--surface:#fffbf2;--surface-2:#faf3e3;--glass:#fffbf2cc;--ink:#2c2016;--ink-2:#5b4a39;--muted:#8b7a66;--line:#e2d4b6;--accent:#3c8a2e;--accent-ink:#fff;--accent-fg:#2d6b22;--accent-soft:#dcecc3;--soil:#6b4423;--soil-soft:#ecdcc6;--clay:#b9693a;--gold:#d89a1b;--gold-soft:#fbebc4;--green:#2f8f4e;--green-soft:#d6efdc;--blue:#2f7fa6;--blue-soft:#d8ebf3;--violet:#7b5aa6;--violet-soft:#e8def3;--red:#c0392b;--red-soft:#f7ddd7;--shadow:0 1px 0 #6b442314, 0 8px 22px #50321414;--shadow-lg:0 26px 60px #3c230f40;--r:22px;--r-sm:14px;--sidebar:258px;--ease:cubic-bezier(.2,.8,.2,1);--blob:22px 28px 24px 30px / 28px 22px 30px 24px;--blob-sm:12px 16px 12px 17px / 16px 12px 17px 12px;--blob1:#e4eebb;--blob2:#f1d9b3;--wave-c:#c9b88f;--side-a:#4b2f1a;--side-b:#34200f;--side-ink:#f3e6cf;--side-muted:#b99f7e;--side-line:#ffebc824;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#16100b;--bg2:#20170f;--surface:#261b13;--surface-2:#2e2218;--glass:#261b13cc;--ink:#f4ead7;--ink-2:#d3c3a8;--muted:#a39078;--line:#403022;--accent:#8fd14f;--accent-ink:#14200a;--accent-fg:#a5e064;--accent-soft:#2b3c17;--soil:#d0a074;--soil-soft:#3a2a1d;--clay:#e08a55;--gold:#efb445;--gold-soft:#3d2f12;--green:#52c47c;--green-soft:#17372a;--blue:#6cb7dc;--blue-soft:#16313f;--violet:#b99be6;--violet-soft:#2c2347;--red:#ee7566;--red-soft:#402019;--shadow:0 1px 0 #0006, 0 10px 28px #0006;--shadow-lg:0 26px 60px #000000a6;--blob1:#2a3a12;--blob2:#3c2a14;--wave-c:#5b4630;--side-a:#1d130c;--side-b:#120c07;--side-ink:#f1e4cb;--side-muted:#a58e6f;--side-line:#ffebc81a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background-color:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 18% 28%,#6b442312 1px,#0000 1.6px),radial-gradient(circle at 68% 74%,#6b44230f 1px,#0000 1.6px);background-size:26px 26px,34px 34px;font-family:Nunito Sans,system-ui,sans-serif;font-size:14px;line-height:1.45;overflow-x:hidden}h1,h2,h3,h4,.serif{font-optical-sizing:auto;font-family:Fraunces,Georgia,serif}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}svg{max-width:100%}.mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace}.muted{color:var(--muted)}.small{font-size:12px}.bold{font-weight:800}.right{text-align:right}.center{text-align:center}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.col{flex-direction:column;gap:10px;display:flex}.grow{flex:1;min-width:0}.row>*,.col>*,.card,.content>*{min-width:0}.show-sm{display:none}.nowrap{white-space:nowrap}.trunc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app{grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100%;transition:grid-template-columns .4s var(--ease);display:grid;position:relative}.app:before,.login:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(560px 440px at 95% -8%, var(--blob1), transparent 70%), radial-gradient(480px 380px at -6% 108%, var(--blob2), transparent 70%);opacity:.6;position:fixed;inset:0}.sidebar{z-index:5;height:100vh;color:var(--side-ink);background:linear-gradient(175deg, var(--side-a), var(--side-b));border-radius:0 34px 34px 0/0 60px 60px 0;flex-direction:column;gap:6px;padding:16px 12px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar:after{content:"";pointer-events:none;opacity:.22;background:repeating-radial-gradient(at 50% 160%,#0000 0 9px,#8fd14f 9px 10px);height:90px;position:absolute;bottom:0;left:0;right:0}.brand{align-items:center;gap:10px;padding:6px 8px 12px;display:flex}.brand-mark{color:#123009;background:radial-gradient(circle at 30% 25%,#a8dd6b,#3c8a2e 70%);border-radius:58% 42% 55% 45%/48% 56% 44% 52%;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 18px #14280a59,inset 0 -4px #0000001f}.brand b{letter-spacing:-.01em;font-family:Fraunces,serif;font-size:20px}.brand small{color:var(--side-muted);margin-top:-2px;font-size:11px;display:block}.nav{scrollbar-width:none;z-index:1;flex-direction:column;flex:1;gap:2px;display:flex;position:relative;overflow:hidden auto}.nav::-webkit-scrollbar{display:none}.nav-pill{background:var(--accent);z-index:0;pointer-events:none;border-radius:14px 20px/18px 14px;position:absolute;left:0;right:0;box-shadow:0 6px 16px #14320a66}.nav a{z-index:1;color:var(--side-ink);white-space:nowrap;opacity:.88;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;font-weight:700;transition:color .25s,background .25s;display:flex;position:relative}.nav a:hover{opacity:1;background:#ffebc817}.nav a.active{color:var(--accent-ink);opacity:1;background:0 0}.nav a svg{flex:none}.nav .cnt{color:var(--side-ink);background:#ffebc829;border-radius:99px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:800}.nav a.active .cnt{color:#fff;background:#ffffff47}.nav-sec{letter-spacing:.14em;text-transform:uppercase;color:var(--side-muted);white-space:nowrap;padding:14px 12px 4px;font-size:10.5px;font-weight:800}.side-foot{border-top:1px solid var(--side-line);z-index:1;flex-direction:column;gap:6px;padding-top:10px;display:flex;position:relative}.sidebar .btn.ghost{color:var(--side-ink)}.sidebar .btn.ghost:hover{box-shadow:none;background:#ffebc817}.app.collapsed{grid-template-columns:78px minmax(0,1fr)}.collapsed .lbl,.collapsed .cnt,.collapsed .brand-txt,.collapsed .nav-sec,.collapsed .hide-collapsed{display:none}.collapsed .nav a{justify-content:center}.main{z-index:1;flex-direction:column;min-width:0;display:flex;position:relative}.topbar{z-index:4;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:color-mix(in srgb, var(--bg) 82%, transparent);border-bottom:2px dashed var(--line);align-items:center;gap:12px;padding:12px 28px;display:flex;position:sticky;top:0}.search{background:var(--surface);border:1.5px solid var(--line);border-radius:99px;flex:0 380px;align-items:center;gap:8px;min-width:240px;padding:8px 14px;display:flex}.search input{background:0 0;border:0;outline:0;width:100%;min-width:0}.kbd{border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:1px 6px;font-size:10px}.icon-btn{background:var(--surface);border:1.5px solid var(--line);width:40px;height:40px;transition:transform .25s var(--ease), background .2s;border-radius:50% 46% 52% 48%;flex:none;place-items:center;display:grid;position:relative}.icon-btn:hover{transform:translateY(-2px)rotate(-6deg)}.icon-btn .dot{background:var(--clay);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:7px;right:8px}.avatar{color:#fff;background:linear-gradient(135deg, var(--clay), var(--soil));border-radius:52% 48% 50% 50%;flex:none;place-items:center;width:40px;height:40px;font-family:Fraunces,serif;font-weight:800;display:grid}.avatar.sm{width:32px;height:32px;font-size:12px}.content{flex-direction:column;gap:20px;width:100%;max-width:1500px;margin:0 auto;padding:24px 28px 60px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 16px;display:flex}.page-head h1{letter-spacing:-.02em;font-size:30px;font-weight:700;line-height:1.1}.page-head p{color:var(--muted);max-width:640px;margin-top:4px}.page-head>div{min-width:0}.demo-banner{background:linear-gradient(90deg, var(--gold-soft), var(--accent-soft));border-bottom:2px dashed var(--line);z-index:3;align-items:center;gap:10px;padding:7px 28px;font-size:12px;display:flex;position:relative}.demo-banner b{color:var(--accent-fg)}.wave{background:var(--wave-c);opacity:.8;width:100%;height:10px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='10' viewBox='0 0 36 10'%3E%3Cpath d='M0 5 Q9 -1 18 5 T36 5' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") 50% repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='10' viewBox='0 0 36 10'%3E%3Cpath d='M0 5 Q9 -1 18 5 T36 5' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") 50% repeat-x}.card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--blob);box-shadow:var(--shadow);padding:18px;position:relative}.card.glass{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.card.flat{box-shadow:none;background:var(--surface-2)}.packet{padding-top:26px;overflow:hidden}.packet:before{content:"";background:linear-gradient(135deg, var(--bg) 25%, transparent 25%) -6px 0 / 12px 12px, linear-gradient(225deg, var(--bg) 25%, transparent 25%) -6px 0 / 12px 12px;background-color:var(--soil-soft);border-bottom:1.5px solid var(--line);height:10px;position:absolute;top:0;left:0;right:0}.packet:after{content:"";border:1.5px dashed color-mix(in srgb, var(--line) 80%, transparent);pointer-events:none;border-radius:16px 20px 16px 22px;position:absolute;inset:14px 8px 8px}.packet>*{z-index:1;position:relative}.card h3{letter-spacing:-.01em;font-size:17px;font-weight:600}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin-bottom:14px;display:flex}.card-head>div{min-width:0}.g2{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.g3{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.g4{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.g-main{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:18px;display:grid}.g-main>*,.g2>*,.g3>*,.g4>*{min-width:0}.btn{border-radius:var(--blob-sm);border:1.5px solid var(--line);background:var(--surface);transition:transform .2s var(--ease), box-shadow .2s, background .2s;white-space:nowrap;justify-content:center;align-items:center;gap:8px;max-width:100%;padding:10px 16px;font-weight:800;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-2px)rotate(-.5deg)}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000;box-shadow:0 6px 16px #2864194d,inset 0 -3px #00000024}.btn.soil{background:var(--soil);color:#fff7e8;border-color:#0000}:root[data-theme=dark] .btn.soil{color:#1d130b}.btn.dark{background:var(--ink);color:var(--bg);border-color:#0000}.btn.ghost{background:0 0}.btn.sm{padding:6px 11px;font-size:12px}.btn.lg{padding:14px 20px;font-size:15px}.btn.block{width:100%}.btn[disabled]{opacity:.5;pointer-events:none}.badge{background:var(--bg2);color:var(--ink-2);white-space:nowrap;border-radius:99px 80px 99px 90px;align-items:center;gap:5px;padding:2px 10px;font-size:11px;font-weight:800;display:inline-flex}.badge.green{background:var(--green-soft);color:var(--green)}.badge.red{background:var(--red-soft);color:var(--red)}.badge.gold{background:var(--gold-soft);color:#9a6a05}.badge.blue{background:var(--blue-soft);color:var(--blue)}.badge.violet{background:var(--violet-soft);color:var(--violet)}.badge.accent{background:var(--accent-soft);color:var(--accent-fg)}.badge.clay{background:var(--soil-soft);color:var(--soil)}:root[data-theme=dark] .badge.gold{color:var(--gold)}.sim{letter-spacing:.04em;background:var(--violet-soft);color:var(--violet);white-space:nowrap;border:1px dashed;border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:800;display:inline-flex}.input,.select,textarea.input{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--blob-sm);outline:none;width:100%;min-width:0;padding:10px 13px;transition:border .2s,box-shadow .2s}.input:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label{color:var(--ink-2);font-size:12px;font-weight:800}.seg{background:var(--bg2);scrollbar-width:none;border-radius:99px;gap:2px;min-width:0;max-width:100%;padding:4px;display:inline-flex;position:relative;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{z-index:1;color:var(--muted);white-space:nowrap;border-radius:99px;flex:none;padding:7px 14px;font-size:13px;font-weight:800;transition:color .25s;position:relative}.seg button.on{color:var(--ink)}.seg .thumb{background:var(--surface);box-shadow:var(--shadow);z-index:0;border-radius:99px;position:absolute;top:4px;bottom:4px}.chips{scrollbar-width:none;gap:8px;max-width:100%;padding-bottom:4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--surface);border:1.5px solid var(--line);transition:all .2s var(--ease);border-radius:99px;flex:none;padding:7px 14px;font-size:13px;font-weight:700}.chip.on{background:var(--soil);color:#fff8ea;border-color:#0000}:root[data-theme=dark] .chip.on{color:#1c120a}.chip:hover{transform:translateY(-1px)}.toggle{background:var(--line);border-radius:99px;flex:none;width:46px;height:27px;transition:background .25s;position:relative}.toggle:after{content:"";width:21px;height:21px;transition:transform .3s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #00000040}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(19px)}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:800}.tbl td{border-top:1px dashed var(--line);vertical-align:middle;padding:11px 10px}.tbl tr:hover td{background:var(--surface-2)}.tbl-wrap{max-width:100%;overflow-x:auto}.tbl th.right,.tbl td.right{text-align:right}.bar{background:var(--bg2);border-radius:99px;height:9px;overflow:hidden}.bar>i{background:var(--accent);border-radius:99px;width:0;height:100%;display:block}.bar.green>i{background:var(--green)}.bar.gold>i{background:var(--gold)}.bar.blue>i{background:var(--blue)}.bar.red>i{background:var(--red)}.bar.clay>i{background:var(--clay)}.empty{text-align:center;color:var(--muted);padding:30px}.kpi{flex-direction:column;gap:8px;display:flex;overflow:hidden}.kpi .lab{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.kpi .ico{border-radius:50% 44% 52% 48%;flex:none;place-items:center;width:32px;height:32px;display:grid}.kpi .val{letter-spacing:-.02em;white-space:nowrap;font-family:Fraunces,serif;font-size:32px;font-weight:700;line-height:1}.kpi .delta{align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.kpi .delta.up{color:var(--green)}.kpi .delta.down{color:var(--red)}.kpi .spark{opacity:.85;position:absolute;bottom:6px;right:8px}.hero-card{color:#f6f0dc;background:linear-gradient(140deg,#3f7d2c 0%,#2b5f1f 55%,#5a3a1f 130%);border:0;flex-direction:column;justify-content:space-between;gap:14px;min-height:190px;display:flex;overflow:hidden}.hero-card h2{letter-spacing:-.02em;z-index:1;max-width:420px;font-size:28px;font-weight:600;line-height:1.1;position:relative}.hero-card p{opacity:.92;z-index:1;max-width:440px;margin-top:6px;position:relative}.hero-card .art{opacity:.9;pointer-events:none;width:260px;position:absolute;bottom:-8px;right:-14px}.hero-card .btn{color:#fff8dc;z-index:1;background:#fff8dc29;border-color:#fff8dc66;position:relative}.legend{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.legend i{border-radius:40% 60% 50% 50%;width:10px;height:10px;margin-right:6px;display:inline-block}.insight{background:linear-gradient(135deg, var(--accent-soft), var(--gold-soft));border:0}.insight .tag{letter-spacing:.08em;color:var(--accent-fg);text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e12088c;place-items:center;padding:16px;animation:.25s both fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--blob);width:min(520px,100%);max-height:92vh;box-shadow:var(--shadow-lg);animation:pop .4s var(--ease) both;border:1.5px solid var(--line);padding:24px;overflow-y:auto}.modal h3{margin-bottom:4px;font-size:21px}.toasts{z-index:80;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--soil);color:#fff7e6;border-radius:var(--blob-sm);box-shadow:var(--shadow-lg);animation:slidein .45s var(--ease) both;align-items:center;gap:10px;max-width:340px;padding:12px 16px;font-weight:700;display:flex}:root[data-theme=dark] .toast{background:var(--accent);color:var(--accent-ink)}.check{width:84px;height:84px}.check circle{fill:none;stroke:var(--green);stroke-width:4px;stroke-dasharray:260;stroke-dashoffset:260px;animation:draw .7s 50ms forwards var(--ease)}.check path{fill:none;stroke:var(--green);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60px;animation:draw .45s .6s forwards var(--ease)}.wipe{z-index:100;pointer-events:none;position:fixed;inset:0}.tour-mask{z-index:90;pointer-events:none;transition:all .45s var(--ease);border-radius:18px;position:fixed;box-shadow:0 0 0 9999px #190e05a3}.tour-tip{z-index:91;background:var(--surface);border-radius:var(--blob);width:min(320px,100vw - 24px);box-shadow:var(--shadow-lg);border:1.5px solid var(--line);animation:pop .4s var(--ease) both;padding:16px;position:fixed}.tour-tip h4{margin-bottom:4px;font-size:16px}.tour-dots{gap:5px;display:flex}.tour-dots i{background:var(--line);border-radius:99px;width:6px;height:6px}.tour-dots i.on{background:var(--accent);width:18px}.sheet{z-index:60;background:var(--surface);box-shadow:var(--shadow-lg);animation:up .4s var(--ease) both;border-radius:30px 30px 0 0/40px 40px 0 0;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:80vh;padding:20px 16px 100px;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.sheet a{background:var(--bg2);text-align:center;border-radius:18px 22px;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;font-size:11px;font-weight:800;line-height:1.2;display:flex}.sheet a.active{background:var(--accent);color:var(--accent-ink)}.bottomnav{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:61;background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1.5px solid var(--line);box-shadow:var(--shadow-lg);border-radius:28px 30px;justify-content:space-around;padding:6px;display:none;position:fixed}.bottomnav a,.bottomnav button{color:var(--muted);transition:all .25s var(--ease);border-radius:20px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:7px 10px;font-size:10.5px;font-weight:800;display:flex}.bottomnav a.active{color:var(--accent-ink);background:var(--accent)}.panel{z-index:55;background:var(--surface);border-left:2px dashed var(--line);width:min(460px,100%);box-shadow:var(--shadow-lg);animation:slidein .4s var(--ease) both;padding:22px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.login{grid-template-columns:1.05fr 1fr;min-height:100%;display:grid;position:relative}.login-hero{z-index:1;color:#f6efd9;background:linear-gradient(160deg,#4b7f2b 0%,#2f5f1f 48%,#4d2f19 100%);border-radius:40px 90px 40px 70px/60px 50px 70px 40px;flex-direction:column;justify-content:space-between;min-height:calc(100vh - 28px);margin:14px 0 14px 14px;padding:44px 52px;display:flex;position:relative;overflow:hidden}.login-hero h1{letter-spacing:-.03em;max-width:540px;font-size:clamp(32px,3.6vw,50px);font-weight:600;line-height:1.05}.login-hero p{opacity:.9;max-width:460px;margin-top:12px;font-size:15px}.login-hero .field-art{opacity:.95;pointer-events:none;width:100%;height:46%;position:absolute;bottom:0;left:0;right:0}.float{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2;background:#fff8dc29;border:1px solid #fff8dc61;border-radius:22px 26px;align-items:center;gap:10px;max-width:80%;padding:10px 14px;font-weight:800;display:flex;position:absolute}.login-form{z-index:1;place-items:center;min-width:0;padding:32px;display:grid;position:relative}.login-card{flex-direction:column;gap:14px;width:min(450px,100%);display:flex}.login-card h2{letter-spacing:-.02em;font-size:32px}.social{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.roles{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.role{border:1.5px solid var(--line);background:var(--surface);transition:all .25s var(--ease);text-align:center;border-radius:18px 22px;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:10px 4px;font-size:11px;font-weight:800;line-height:1.15;display:flex}.role.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-fg);transform:translateY(-3px)}.or{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.or:before,.or:after{content:"";background:var(--line);flex:1;height:1px}.otp{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.otp input{text-align:center;padding:12px 0;font-size:18px;font-weight:800}@keyframes pop{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes up{0%{transform:translateY(100%)}to{transform:none}}@keyframes slidein{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:none}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes pulse{50%{filter:brightness(1.2)}}@keyframes floaty{50%{transform:translateY(-9px)rotate(1deg)}}@keyframes sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes wave{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}@keyframes scanline{0%{top:0}50%{top:calc(100% - 3px)}to{top:0}}@keyframes flashup{0%{background:var(--green-soft)}to{background:0 0}}@keyframes flashdn{0%{background:var(--red-soft)}to{background:0 0}}@keyframes blink{50%{opacity:.25}}@keyframes drawerin{0%{transform:translate(-100%)}to{transform:none}}.floaty{animation:5s ease-in-out infinite floaty}.sway{transform-box:fill-box;transform-origin:50% 100%;animation:4s ease-in-out infinite sway}.livedot{background:var(--green);border-radius:50%;width:8px;height:8px;animation:1.4s infinite blink;display:inline-block}.menu-btn{display:none}.sidebar.as-drawer{z-index:70;width:min(300px,86vw);height:100vh;box-shadow:var(--shadow-lg);animation:drawerin .35s var(--ease) both;padding-bottom:16px;display:flex;position:fixed;top:0;bottom:0;left:0}.app .sidebar.as-drawer .lbl{display:inline!important}.app .sidebar.as-drawer .cnt{display:inline-block!important}.app .sidebar.as-drawer .brand-txt,.app .sidebar.as-drawer .nav-sec{display:block!important}.app .sidebar.as-drawer .hide-collapsed{display:inline-flex!important}.app .sidebar.as-drawer .nav a{justify-content:flex-start!important}.scrim{z-index:69;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f08028c;animation:.25s both fade;position:fixed;inset:0}.as-drawer .side-foot button:last-child{display:none}.nav-sec-btn{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;width:100%;transition:background .2s,color .2s;display:flex}.nav-sec-btn:hover{color:var(--side-ink);background:#ffebc814}.nav-sec-btn .chev{transition:transform .3s var(--ease);flex:none}.nav-sec-btn[aria-expanded=false] .chev{transform:rotate(-90deg)}.nav a[data-shut]{display:none!important}.app.collapsed .sidebar:not(.as-drawer) .nav a[data-shut]{display:flex!important}.nav-tools{gap:6px;padding:2px 4px 8px;display:flex}.nav-tools button{border:1px solid var(--side-line);color:var(--side-muted);background:#ffebc80f;border-radius:99px;flex:1;padding:5px 8px;font-size:11px;font-weight:800;transition:color .2s,transform .2s}.nav-tools button:hover{color:var(--side-ink);transform:translateY(-1px)}.app.collapsed .sidebar:not(.as-drawer) .nav-tools{display:none}.app .sidebar.as-drawer .nav-sec-btn{display:flex!important}@media (width<=1280px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr)}}@media (width<=1100px){.app,.app.collapsed{grid-template-columns:minmax(0,1fr)}.sidebar:not(.as-drawer){display:none}.menu-btn{display:grid}.bottomnav{display:flex}.content{padding-bottom:120px}.search{min-width:160px}.topbar,.content,.demo-banner{padding-left:20px;padding-right:20px}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}.login{grid-template-columns:minmax(0,1fr)}.login-hero{display:none}}@media (width>=721px) and (width<=1100px){.bottomnav{width:min(620px,100% - 24px);left:50%;right:auto;transform:translate(-50%)}.toasts{bottom:96px}}@media (width<=720px){.hide-sm{display:none!important}.show-sm{display:initial}.content{gap:16px;padding:16px 14px 120px}.topbar{gap:8px;padding:10px 14px}.demo-banner{padding:6px 14px;font-size:11px}.g2,.g3,.g4{gap:12px}.page-head h1{font-size:25px}.search{flex:1;min-width:0}.kpi .val{font-size:26px}.login-form{padding:20px 16px 40px}.toasts{bottom:96px;left:14px;right:14px}.roles{gap:6px}.modal{padding:18px}}@media (width<=480px){.g2,.g3{grid-template-columns:minmax(0,1fr)}.card{padding:14px}.packet{padding-top:24px}.kpi .val,.page-head h1{font-size:23px}.btn.lg{padding:12px 16px}.social{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--map-a:#d9c39a;--map-b:#c8ae80;--map-river:#6fb3d2;--map-bund:#e9d9b3}:root[data-theme=dark]{--map-a:#3a2c1c;--map-b:#2c2014;--map-river:#2d6a86;--map-bund:#1e150d}.head-wave{margin-top:10px}.av{color:#2c2016;border-radius:50% 46% 52% 48%;flex:none;place-items:center;font-family:Fraunces,serif;font-weight:800;display:inline-grid}.sdot{vertical-align:middle;border-radius:40% 60% 50% 50%;width:10px;height:10px;margin-right:4px;display:inline-block}.up{color:var(--green)}.down{color:var(--red)}.kv{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.kv>div{flex-direction:column;min-width:0;display:flex}.kv span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.kv b{overflow-wrap:anywhere;font-size:13px}.trow{background:var(--surface-2);border:1px dashed var(--line);text-align:left;border-radius:16px;align-items:center;gap:10px;width:100%;padding:9px 10px;display:flex}.tico{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-fg);border-radius:50% 44% 52% 48%;flex:none;place-items:center;display:grid}.trow input[type=checkbox]{accent-color:var(--accent);flex:none;width:17px;height:17px}.farmmap{border:1.5px solid var(--line);border-radius:30px;width:100%;height:auto;display:block}.parcel{transition:filter .2s}.parcel:hover{filter:brightness(1.12)}.pl-id{fill:#fff;stroke:#1e140a8c;stroke-width:3px;paint-order:stroke;pointer-events:none;font:800 15px JetBrains Mono,monospace}.pl-sub{fill:#fff;stroke:#1e140a80;stroke-width:2.5px;paint-order:stroke;pointer-events:none;font:700 11px Nunito Sans,sans-serif}.lg-it{opacity:.85;align-items:center;display:inline-flex}.lg-it.on{opacity:1;font-weight:800;text-decoration:underline}.scrub{background:var(--surface-2);border:1.5px dashed var(--line);border-radius:20px;align-items:center;gap:12px;margin-top:14px;padding:12px;display:flex}.range{width:100%;accent-color:var(--accent);height:28px}.stagebar{min-width:0}.sb-track{border-radius:99px;gap:2px;height:34px;display:flex;position:relative;overflow:hidden}.sb-seg{color:#fff;text-shadow:0 1px 2px #00000059;place-items:center;min-width:0;padding:0 4px;font-size:10.5px;font-weight:800;transition:filter .2s;display:grid;overflow:hidden}.sb-seg.now{box-shadow:inset 0 0 0 3px #fffc}.sb-seg:hover{filter:brightness(1.12)}.sb-seg span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sb-mark{background:var(--ink);width:4px;box-shadow:0 0 0 2px var(--surface);pointer-events:none;border-radius:4px;margin-left:-2px;transition:left .15s;position:absolute;top:-3px;bottom:-3px}.sb-dates{color:var(--muted);margin-top:3px;font-size:10px;display:flex}.sb-dates span{min-width:0;overflow:hidden}.tickers{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tk{background:var(--surface-2);border:1.5px solid var(--line);text-align:left;transition:transform .2s var(--ease);border-radius:18px 22px 18px 24px;flex-direction:column;gap:4px;min-width:0;padding:12px;display:flex}.tk:hover{transform:translateY(-3px)rotate(-.6deg)}.tk-p{border-radius:8px;width:fit-content;margin-left:-4px;padding:0 4px;font-size:20px;font-weight:800}.fl-up{animation:1.4s both flashup}.fl-dn{animation:1.4s both flashdn}.wxstrip{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.wxstrip.big{grid-template-columns:repeat(7,minmax(88px,1fr));padding-bottom:4px;overflow-x:auto}.wx{background:var(--surface-2);border:1.5px solid var(--line);border-radius:20px 24px;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:10px 6px;display:flex}.wx.wet{background:var(--blue-soft);border-color:var(--blue)}.gantt-scroll{border:1.5px dashed var(--line);border-radius:16px;max-width:100%;overflow-x:auto}.gantt{min-width:860px}.g-head,.g-row{grid-template-columns:74px minmax(0,1fr);display:grid}.g-lab{z-index:3;background:var(--surface);text-align:left;border-right:1.5px solid var(--line);flex-direction:column;padding:6px 8px;display:flex;position:sticky;left:0}.g-track{height:40px;position:relative}.g-months{border-bottom:1.5px solid var(--line);height:28px}.g-months span{color:var(--muted);border-left:1px dashed var(--line);height:100%;padding-left:6px;font-size:11px;font-weight:800;position:absolute;top:5px}.g-row{border-top:1px dashed var(--line)}.g-row.sel{background:var(--accent-soft)}.g-row .g-lab{justify-content:center;min-height:40px}.g-row.sel .g-lab{background:var(--accent-soft)}.g-today{border-left:2px dashed var(--clay);z-index:1;position:absolute;top:0;bottom:0}.g-bar{cursor:grab;touch-action:none;height:26px;box-shadow:var(--shadow);z-index:2;border-radius:99px;display:flex;position:absolute;top:7px;overflow:hidden}.g-bar:active{cursor:grabbing}.g-bar i{display:block}.g-bar em{color:#fff;text-shadow:0 1px 2px #00000080;font:800 10px JetBrains Mono,monospace;position:absolute;top:5px;left:8px}.pos{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:18px;display:grid}.pos>*{min-width:0}.sku-grid{grid-template-columns:repeat(auto-fill,minmax(min(185px,100%),1fr));gap:12px;display:grid}.sku{text-align:left;min-height:142px;transition:transform .25s var(--ease), box-shadow .25s;flex-direction:column;gap:4px;padding:12px;display:flex}.sku:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)rotate(-.5deg)}.sku:active{transform:scale(.97)}.sku.off{opacity:.45}.sku-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.sku-nm{font-weight:800;line-height:1.2}.sku-ico{border-radius:50% 44% 52% 48%;place-items:center;width:34px;height:34px;display:grid}.sku-ico.Seed{background:var(--gold-soft);color:var(--gold)}.sku-ico.Fertiliser{background:var(--accent-soft);color:var(--accent-fg)}.sku-ico.Pesticide{background:var(--red-soft);color:var(--red)}.cart{flex-direction:column;gap:12px;max-height:calc(100vh - 100px);display:flex;position:sticky;top:82px;overflow-y:auto}.cart-lines{flex-direction:column;gap:8px;min-height:70px;display:flex}.line{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:10px;display:grid}.qty{background:var(--surface);border:1.5px solid var(--line);border-radius:99px;align-items:center;display:inline-flex}.qty button{place-items:center;width:28px;height:28px;display:grid}.qty span{text-align:center;min-width:22px;font-weight:800}.sum{border-top:2px dashed var(--line);flex-direction:column;gap:6px;padding-top:12px;display:flex}.sum .t,.t{font-size:20px;font-weight:800}.cartbar{z-index:55;background:var(--soil);color:#fff7e6;box-shadow:var(--shadow-lg);border-radius:22px;justify-content:space-between;align-items:center;gap:8px;padding:12px 18px;display:none;position:fixed;bottom:90px;left:14px;right:14px}.slip{background:var(--surface-2);border:1.5px dashed var(--line);border-radius:16px 20px 16px 22px;flex-direction:column;gap:8px;padding:16px;font-family:JetBrains Mono,Nunito Sans,monospace;display:flex}.slip .serif,.slip b.serif{font-family:Fraunces,serif}.dash{border-top:2px dashed var(--line);margin:4px 0}.kanban{scroll-snap-type:x proximity;grid-template-columns:repeat(4,minmax(250px,1fr));gap:14px;max-width:100%;padding-bottom:8px;display:grid;overflow-x:auto}.kcol{background:var(--bg2);border-radius:var(--blob);scroll-snap-align:start;border:2px dashed #0000;flex-direction:column;align-content:flex-start;gap:10px;min-width:0;min-height:320px;padding:12px;transition:border-color .2s,background .2s;display:flex}.kcol.over{border-color:var(--accent);background:var(--accent-soft)}.kcol h4{justify-content:space-between;align-items:center;font-size:14px;display:flex}.kcard{background:var(--surface);border:1.5px solid var(--line);box-shadow:var(--shadow);cursor:grab;transition:transform .2s var(--ease);border-radius:18px 22px;flex-direction:column;gap:6px;padding:12px;display:flex}.kcard:hover{transform:translateY(-3px)rotate(-.5deg)}.stage-sel{border-radius:99px;padding:5px 8px;font-size:12px}.scheme{background:var(--surface-2);border:1.5px dashed var(--line);border-radius:18px 22px;align-items:flex-start;gap:12px;padding:12px;display:flex}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.step{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;font-weight:800;display:flex}.step i{background:var(--line);border-radius:99px;height:6px}.step.on{color:var(--accent-fg)}.step.on i{background:var(--accent)}.think{background:var(--violet-soft);color:var(--violet);border-radius:16px;flex-direction:column;gap:6px;padding:12px;font-size:12.5px;font-weight:700;display:flex}.think>div{opacity:.45;align-items:center;gap:8px;display:flex}.think .done{opacity:1}.think .cur{opacity:1;animation:.8s infinite blink}.leafs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.leaf{background:var(--surface-2);border:1.5px solid var(--line);transition:transform .2s var(--ease);border-radius:20px 24px;flex-direction:column;align-items:center;gap:4px;padding:8px;font-size:12px;font-weight:800;display:flex}.leaf:hover{transform:translateY(-3px)rotate(-1deg)}.leaf.on{border-color:var(--accent);background:var(--accent-soft)}.leaf svg{width:54px;height:54px}.upload{border:2px dashed var(--accent);color:var(--accent-fg);cursor:pointer;border-radius:20px;justify-content:center;align-items:center;gap:8px;margin-bottom:8px;padding:14px;font-weight:800;display:flex}.upload input{display:none}.micwrap{flex-direction:column;align-items:center;gap:10px;padding:18px 0 6px;display:flex}.mic{background:var(--accent);width:78px;height:78px;color:var(--accent-ink);border-radius:50% 46% 52% 48%;place-items:center;transition:transform .2s;display:grid;box-shadow:0 8px 20px #28641959}.mic:hover{transform:scale(1.06)}.mic.on{background:var(--clay);animation:1s infinite pulse}.waves{align-items:center;gap:4px;height:36px;display:flex}.waves i{background:var(--accent);border-radius:4px;width:4px;height:100%;animation:1s ease-in-out infinite wave;transform:scaleY(.25)}.chat{flex-direction:column;gap:10px;min-height:220px;max-height:420px;display:flex;overflow-y:auto}.bubble{overflow-wrap:anywhere;border-radius:20px 22px;max-width:88%;padding:10px 14px;animation:.35s both pop}.bubble.me{background:var(--accent);color:var(--accent-ink);align-self:flex-end}.bubble.bot{background:var(--soil-soft);align-self:flex-start}@media (width<=1100px){.pos{grid-template-columns:minmax(0,1fr)}.cart{max-height:none;position:static}.cartbar{display:flex}}@media (width>=721px) and (width<=1100px){.cartbar{width:340px;bottom:20px;left:auto;right:24px}}@media (width<=720px){.tickers{grid-template-columns:repeat(2,minmax(0,1fr))}.wxstrip:not(.big){grid-template-columns:repeat(7,minmax(64px,1fr));padding-bottom:4px;overflow-x:auto}.kanban{grid-template-columns:repeat(4,82vw)}.scrub{flex-wrap:wrap}.scrub .grow{flex-basis:100%;order:3}.hero-card .art{opacity:.4}}@media (width<=480px){.tickers{grid-template-columns:minmax(0,1fr)}.kv{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.leafs{grid-template-columns:repeat(3,minmax(0,1fr))}.pl-sub{display:none}.g-head,.g-row{grid-template-columns:58px minmax(0,1fr)}}.kbd{white-space:nowrap}.sb-seg{font-size:9.5px}
