@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_532bb9{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_532bb9{--font-jakarta:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}:root{--font-sans:var(--font-jakarta),"Plus Jakarta Sans",system-ui,sans-serif;--fs-xs:11.5px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:28px;--fs-3xl:36px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--tracking-tight:-0.03em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--r-sm:12px;--r-md:20px;--r-lg:22px;--r-xl:28px;--r-2xl:32px;--r-3xl:40px;--r-pill:999px;--ease:cubic-bezier(0.2,0.7,0.2,1);--dur:180ms;--bg:#efeeeb;--mesh-a:#efeeeb;--mesh-b:#efeeeb;--mesh-c:#efeeeb;--glass:#ffffff;--glass-strong:#ffffff;--surface:#f6f5f2;--sunk:#f1f0ed;--float:#ffffff;--well:#1f1b160a;--line:#e4e1dc;--line-strong:#d3cfc8;--rim:#ffffffb3;--shadow:0 1px 2px #1f1b160a,0 12px 32px -8px #1f1b1614;--shadow-pop:0 1px 2px #1f1b160a,0 30px 60px -20px #1f1b161a;--shadow-art:0 30px 60px -20px #7a3a1a40;--shadow-chip:0 1px 2px #1f1b160a;--text:#1f1b16;--muted:#5e574f;--faint:#8a847c;--faint-2:#b3ada5;--inverse:#1f1b16;--on-inverse:#faf9f7;--ink-grad:linear-gradient(180deg,#5a544d,#1f1b16);--accent:#d9572b;--amber:#f2a93b;--on-accent:#ffffff;--accent-soft:#fbe3d3;--warn:#b9792e;--on-warn:#1f1b16;--warn-soft:#f8ebd3;--good:#2f7d5b;--good-soft:#dcede4;--bad:#b5483f;--bad-soft:#f4dedb;--neutral:#cfcbc2;--tint-grey:#eceae6;--series-1:var(--accent);--series-2:var(--warn);--series-3:var(--inverse);--series-4:var(--good);--series-5:var(--neutral)}[data-theme=dark]{--bg:#121211;--mesh-a:#121211;--mesh-b:#121211;--mesh-c:#121211;--glass:#1a1a18;--glass-strong:#1e1e1c;--surface:#161615;--sunk:#141413;--ink-grad:linear-gradient(180deg,#e0c48a,#c9a96e);--shadow-art:0 30px 60px -20px #00000099;--shadow-chip:0 1px 0 #ffffff12 inset;--faint-2:#5e5c55;--tint-grey:#ffffff0f;--float:#1e1e1c;--well:#ffffff0a;--line:#ffffff14;--line-strong:#ffffff24;--rim:#ffffff10;--shadow:0 1px 0 #ffffff12 inset,0 22px 44px -30px #000000a0;--shadow-pop:0 24px 60px -18px #000000b0,0 2px 6px #00000060;--text:#f2f0eb;--muted:#a3a199;--faint:#858379;--inverse:#c9a96e;--on-inverse:#121211;--accent:#f2a93b;--on-accent:#121211;--accent-soft:#f2a93b1f;--warn:#d49a52;--on-warn:#121211;--warn-soft:#d49a521f;--good:#5db38a;--good-soft:#5db38a1f;--bad:#d9746b;--bad-soft:#d9746b1f;--neutral:#4a4945;--series-3:#a3a199}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--fs-md);font-weight:var(--fw-regular);color:var(--text);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(60% 50% at 8% 0,var(--mesh-a) 0,transparent 70%),radial-gradient(50% 45% at 92% 8%,var(--mesh-b) 0,transparent 70%),radial-gradient(55% 50% at 50% 100%,var(--mesh-c) 0,transparent 70%),var(--bg)}a{text-decoration:none}a,button{color:inherit}button{font:inherit;cursor:pointer}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);line-height:1.1}h2{font-size:var(--fs-lg);letter-spacing:-.01em}h2,h3{font-weight:var(--fw-semibold)}h3{font-size:var(--fs-md)}.muted{color:var(--muted)}.faint{color:var(--faint)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app{display:flex;flex-direction:column;gap:22px;padding:22px 24px 24px;max-width:1600px;margin:0 auto}.app-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:20px;gap:20px;align-items:start}.app.no-chat .app-body{grid-template-columns:minmax(0,1fr)}.main{display:flex;flex-direction:column;gap:18px;min-width:0}.grid,.grid-12{display:grid;grid-gap:var(--sp-4);gap:var(--sp-4)}.grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.row{display:flex;align-items:center;gap:var(--sp-3)}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:var(--sp-3)}@media (max-width:1200px){.app-body{grid-template-columns:minmax(0,1fr)}.chat-panel{display:none}}@media (max-width:900px){.span-3,.span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 12}.app{padding:var(--sp-3)}h1{font-size:var(--fs-2xl)}}.card{background:var(--glass);border:1px solid var(--rim);padding:20px;min-width:0}.card.strong{background:var(--glass-strong)}.card.flush{padding:0;overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.card-head h2{font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.3}.card-head .sub{font-size:var(--fs-sm);color:var(--muted);margin-top:2px}.well{background:var(--well);border-radius:var(--r-md);padding:var(--sp-3)}.topbar{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:16px;gap:16px;min-height:48px}.brand,.topbar{align-items:center}.brand{display:flex;gap:10px;white-space:nowrap}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--inverse);display:grid;place-items:center;color:var(--on-inverse);flex-shrink:0}.brand-text{display:flex;flex-direction:column;line-height:1.3}.brand-text b{font-size:14px;font-weight:600}.brand-text span{font-size:11.5px;color:var(--muted)}.nav{display:flex;gap:2px;padding:4px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--rim);box-shadow:0 1px 2px #1a18140d}.nav a{padding:9px 16px;border-radius:999px;color:var(--muted);font-weight:600;font-size:14px;line-height:1.45;white-space:nowrap;transition:background var(--dur) var(--ease),color var(--dur) var(--ease);display:inline-flex;align-items:center;gap:6px}.nav a:hover{color:var(--text);background:var(--well)}.nav a.active{background:var(--inverse);color:var(--on-inverse)}.nav .count{padding:1px 7px;border-radius:999px;background:var(--warn-soft);color:var(--warn);font-size:11px;font-weight:600}.top-actions{display:flex;gap:8px;justify-self:end}.btn,.top-actions{align-items:center}.btn{display:inline-flex;gap:6px;border:1px solid transparent;border-radius:var(--r-pill);padding:8px 14px;font-size:13px;font-weight:600;line-height:1.4;transition:transform var(--dur) var(--ease),background var(--dur) var(--ease);white-space:nowrap}.btn:active{transform:scale(.97)}.btn-primary{background:var(--inverse)}.btn-accent{background:var(--accent);color:var(--on-accent)}.btn-ghost{background:var(--glass-strong);border-color:var(--line)}.btn-ghost:hover{border-color:var(--line-strong)}.icon-btn{width:36px;height:36px;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--glass-strong);border:1px solid var(--line)}.seg{display:inline-flex;background:var(--well);border-radius:var(--r-pill);padding:3px;gap:2px}.seg button{border:0;background:transparent;padding:5px 12px;border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--muted)}.seg button.on{background:var(--float);color:var(--text);box-shadow:0 1px 3px #0000001a}.select{background:var(--glass-strong);padding:7px 12px 7px 14px;font:inherit;font-size:13px;font-weight:600;height:34px}.input,.select{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text)}.input{width:100%;background:var(--float);padding:10px 14px;font:inherit;outline:none}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-pill);font-size:11px;font-weight:600;line-height:1.4;white-space:nowrap;background:var(--well);color:var(--muted)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.good{background:var(--good-soft);color:var(--good)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.solid{background:var(--inverse);color:var(--on-inverse)}.dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.stat-label{font-size:13px;color:var(--muted);font-weight:500;line-height:1.4}.stat-value{font-size:28px;font-weight:700;letter-spacing:-.03em;line-height:1.2;margin-top:4px}.stat-delta{font-size:11px;font-weight:600;margin-top:4px}.up{color:var(--good)}.down{color:var(--bad)}.bar{height:6px;border-radius:var(--r-pill);background:var(--well);overflow:hidden}.bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .6s var(--ease)}.stack-bar{display:flex;gap:3px;height:10px}.stack-bar>span{border-radius:var(--r-pill)}.table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.table th{text-align:left;font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:6px 4px}.table td,.table th{border-bottom:1px solid var(--line)}.table td{padding:11px 4px;vertical-align:middle;font-size:13px;font-weight:500;color:var(--muted)}.table td:first-child{font-size:14px;font-weight:600;color:var(--text)}.table tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--well)}.table .r{text-align:right}.table-wrap{overflow-x:auto}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--on-accent);background:var(--accent);flex-shrink:0}.locked{display:inline-flex;align-items:center;gap:6px;color:var(--faint);background:repeating-linear-gradient(-45deg,var(--well) 0 6px,transparent 6px 12px);border-radius:var(--r-sm);padding:4px 10px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.chat-panel{position:-webkit-sticky;position:sticky;top:22px;height:calc(100vh - 116px);min-height:520px;display:flex;flex-direction:column;padding:18px;gap:14px}.chat-head{display:flex;align-items:center;gap:10px}.chat-head h3{font-size:14px;font-weight:600}.chat-head .sub{font-size:11.5px;color:var(--muted)}.spark{width:34px;height:34px;border-radius:12px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;flex-shrink:0}.chat-body{flex:1 1;overflow-y:auto;gap:10px;min-height:0}.chat-body,.chat-foot{display:flex;flex-direction:column}.chat-foot{gap:14px}.msg{max-width:270px;padding:10px 14px;font-size:13px;font-weight:500;line-height:1.4;display:flex;flex-direction:column;gap:6px}.msg.me{align-self:flex-end;background:var(--inverse);color:var(--on-inverse);border-radius:18px 18px 6px 18px}.msg.bot{align-self:flex-start;background:var(--float);border:1px solid var(--line);border-radius:18px 18px 18px 6px}.msg .src{font-size:11.5px;font-weight:400;color:var(--faint)}.composer{display:flex;align-items:center;gap:8px}.composer-input{flex:1 1;padding:10px 14px;font-size:14px}.icon-btn.inverse{background:var(--inverse);border:0;width:38px;height:38px}.select-wrap{position:relative;display:inline-flex;align-items:center}.select-wrap .select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:32px}.select-wrap svg{position:absolute;right:12px;pointer-events:none;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:var(--glass-strong);border-radius:var(--r-pill);padding:5px 10px;font-size:11px;font-weight:600}.photo{border-radius:var(--r-lg);overflow:hidden;position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,var(--mesh-a),var(--mesh-b))}.photo-cap{position:absolute;left:10px;bottom:10px;right:10px;display:flex;justify-content:space-between;align-items:flex-end;color:#fff;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-shadow:0 1px 4px #0008}.swatch{height:64px;border-radius:var(--r-md);border:1px solid var(--line)}.divider{height:1px;background:var(--line);margin:var(--sp-3) 0}.fade-in{animation:fade .4s var(--ease) both}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.boot{min-height:50vh;display:grid;place-items:center;color:var(--muted)}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-gap:var(--sp-5);gap:var(--sp-5);padding:var(--sp-5);align-items:stretch}.login-hero{background:var(--inverse);color:var(--on-inverse);border-radius:var(--r-xl);padding:var(--sp-8);display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-8)}.login-hero h1{font-size:clamp(36px,5vw,56px);margin-bottom:var(--sp-3)}.login-hero p{max-width:420px;opacity:.7}.brand-mark.lg{width:36px;height:36px;border-radius:12px;background:var(--accent);color:var(--on-accent)}.login-pills{display:flex;gap:var(--sp-2);flex-wrap:wrap}.login-pills span{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--r-md);background:#ffffff14;font-size:var(--fs-sm)}.login-card{align-self:center;background:var(--glass);border:1px solid var(--rim);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);padding:var(--sp-8);width:100%;max-width:440px;justify-self:center}.field-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.input-icon{position:relative;display:flex;align-items:center}.input-icon svg{position:absolute;left:14px;color:var(--faint)}.input-icon .input{padding-left:38px}.otp{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px}.otp input{width:100%;aspect-ratio:1/1.1;text-align:center;font:inherit;font-size:20px;font-weight:var(--fw-semibold);border:1px solid var(--line);border-radius:var(--r-md);background:var(--float);color:var(--text);outline:none}.otp input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.btn.wide{width:100%;justify-content:center;padding:12px;font-size:var(--fs-md)}.btn:disabled{opacity:.5;cursor:not-allowed}.link{background:none;border:0;padding:0;font-weight:var(--fw-semibold)}.link,.notice{color:var(--accent)}.notice{display:flex;gap:10px;align-items:center;background:var(--accent-soft);border-radius:var(--r-md);padding:12px 14px}.form-error{margin-top:12px;color:var(--bad);background:var(--bad-soft);border-radius:var(--r-sm);padding:8px 12px;font-size:var(--fs-sm)}.hint{margin-top:16px;font-size:var(--fs-xs);color:var(--faint)}@media (max-width:900px){.login{grid-template-columns:1fr}.login-hero{gap:var(--sp-5)}.login-card,.login-hero{padding:var(--sp-5)}}.skeleton{height:220px;border-radius:var(--r-xl);background:linear-gradient(90deg,var(--well),transparent,var(--well));background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.photo-shade{background:linear-gradient(transparent,#0009);margin:0;left:0;right:0;bottom:0;padding:24px 10px 10px}.tabs{display:inline-flex;background:var(--well);border-radius:var(--r-pill);padding:4px;gap:2px;flex-wrap:wrap}.tabs a,.tabs button{border:0;background:transparent;padding:8px 16px;border-radius:var(--r-pill);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--muted)}.tabs .on{background:var(--float);color:var(--text);box-shadow:0 1px 3px #0000001a}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:8px;gap:8px}.kv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:var(--fs-sm)}.kv:last-child{border-bottom:0}.kv span:first-child{color:var(--muted)}.list-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-md);cursor:pointer;border:1px solid transparent}.list-row:hover{background:var(--well)}.list-row.sel{background:var(--accent-soft);border-color:var(--accent)}.textarea{width:100%;border:1px solid var(--line);background:var(--float);border-radius:var(--r-md);padding:10px 14px;font:inherit;color:var(--text);resize:vertical}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:var(--sp-4);gap:var(--sp-4);align-items:start}@media (max-width:900px){.split{grid-template-columns:1fr}}.plan-tick{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.5;border-radius:2px}.chip-on{background:var(--inverse);color:var(--on-inverse);border-color:var(--inverse)}.chip:disabled{opacity:.6;cursor:default}.receipt{display:flex;align-items:center;gap:12px;margin-bottom:8px}.json{margin:4px 0 0;background:var(--well);border-radius:var(--r-sm);padding:8px 10px;font-size:var(--fs-xs);overflow:auto;max-height:160px}.facts{margin:0;padding-left:18px;font-size:var(--fs-sm);display:grid;grid-gap:2px;gap:2px}.owner-app{display:flex;flex-direction:column;height:100dvh;max-width:720px;margin:0 auto;background:var(--bg)}.owner-main{flex:1 1;min-height:0;display:flex;flex-direction:column;padding:calc(12px + env(safe-area-inset-top)) 16px calc(12px + env(safe-area-inset-bottom));gap:14px}.owner-head{display:flex;align-items:center;gap:10px}.owner-head .t{flex:1 1;min-width:0;display:flex;flex-direction:column}.owner-head h1{font-size:16px;font-weight:600;line-height:1.3}.owner-head .sub{font-size:11.5px;color:var(--muted)}.owner-head .spark{width:38px;height:38px;border-radius:13px}.owner-avatar{width:32px;height:32px;border-radius:50%;background:#4f6178;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:600;flex-shrink:0}.owner-stats{display:flex;gap:8px}.owner-stat{flex:1 1;min-width:0;padding:12px;border-radius:18px;background:var(--glass);border:1px solid var(--rim);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px}.owner-stat span{font-size:11.5px;color:var(--muted)}.owner-stat b{font-size:16px;font-weight:600}.owner-chat{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:14px}.owner-chat .chat-body{gap:10px}.owner-chat .msg{max-width:82%}.owner-alerts{gap:14px;overflow-y:auto}.alert-card,.owner-alerts{display:flex;flex-direction:column}.alert-card{padding:14px;border-radius:20px;background:var(--glass);border:1px solid var(--rim);box-shadow:var(--shadow);gap:8px}.alert-card .h{display:flex;align-items:center;gap:10px}.alert-card .ic{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex-shrink:0}.alert-card .ic.bad{background:var(--bad-soft);color:var(--bad)}.alert-card .ic.warn{background:var(--warn-soft);color:var(--warn)}.alert-card .ic.accent{background:var(--accent-soft);color:var(--accent)}.alert-card h3{font-size:14px;font-weight:600}.alert-card .when{font-size:11.5px;color:var(--faint)}.alert-card p{font-size:13px;font-weight:500;color:var(--muted);line-height:1.4}.alert-card .acts{display:flex;gap:6px}.offline-bar{display:flex;align-items:center;gap:8px;padding:6px 16px;font-size:var(--fs-xs);background:var(--warn-soft);color:var(--warn);font-weight:var(--fw-semibold)}.owner-map{flex:1 1;min-height:0;display:flex;flex-direction:column;margin:0 -16px -12px}.map-box{flex:1 1;min-height:240px}.map-sheet{padding:12px 16px;border-top:1px solid var(--line);background:var(--float)}.kpi{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px}.kpi,.row3{display:grid;gap:14px}.row3{grid-template-columns:minmax(0,1fr) 384px;grid-gap:14px;align-items:start}.dot.big{width:10px;height:10px;flex-shrink:0}.semi{font-weight:600;color:var(--text)}.nota-mini{display:flex;align-items:center;gap:10px;padding:8px 0}.nota-mini b{font-weight:600;font-size:14px;display:block}.nota-mini .faint{font-size:11.5px;color:var(--muted)}.nota-mini .ic{width:34px;height:34px;border-radius:10px;background:var(--warn-soft);color:var(--warn);display:grid;place-items:center;flex-shrink:0}.nota-mini .r{text-align:right}.nota-mini .r b{font-size:13px}.legend,.nota-mini .r div{font-size:11px;font-weight:600}.legend{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.topbar{padding:8px 12px;margin:-8px -12px;border-radius:var(--r-2xl);background:color-mix(in srgb,var(--bg) 70%,transparent);-webkit-backdrop-filter:blur(24px) saturate(1.2);backdrop-filter:blur(24px) saturate(1.2);position:-webkit-sticky;position:sticky;top:8px;z-index:20}.nav{background:#ffffffb3;border:1px solid #ffffff99;box-shadow:var(--shadow-chip);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.nav a.active{background:var(--ink-grad);box-shadow:inset 0 1px 0 #ffffff33,0 6px 14px -6px #1f1b1666}.btn{padding:10px 18px;min-height:40px;border-color:var(--line)}.btn-primary{background:var(--ink-grad);color:var(--on-inverse);border-color:transparent;box-shadow:inset 0 1px 0 #ffffff33,0 8px 18px -8px #1f1b1680}.btn-accent{box-shadow:inset 0 1px 0 #ffffff40;border-color:transparent}.btn-ghost{box-shadow:var(--shadow-chip)}.icon-btn{box-shadow:var(--shadow);border-color:transparent}.icon-btn.inverse{background:var(--ink-grad);border-color:transparent;color:var(--on-inverse)}.input,.select{border-color:var(--line);background:#fff}.card{border-color:var(--rim);outline:1px solid var(--line);outline-offset:-1px;box-shadow:var(--shadow)}.card,.card.flush,.card.strong{border-radius:var(--r-xl)}.table th{color:var(--faint)}.table tr:hover td{background:var(--surface)}.chip{background:#fff;border-color:var(--line);box-shadow:var(--shadow-chip);padding:7px 14px}.chip-on{background:var(--ink-grad);border-color:transparent}.badge{padding:4px 10px}.badge,.seg{background:var(--tint-grey)}.avatar{box-shadow:var(--shadow-chip)}.chat-panel{border-radius:var(--r-2xl)}.msg.me{background:var(--ink-grad)}.msg.bot{background:#fff;border-color:transparent;box-shadow:var(--shadow-chip)}.spark{background:linear-gradient(135deg,var(--amber),var(--accent))}.bar-fill,.bar>*{border-radius:999px}.hero{border-radius:var(--r-3xl);padding:6px;background:#ffffff99;border:1.5px solid #ffffff99;box-shadow:var(--shadow-pop),var(--shadow-art)}.hero,.hero-art{position:relative}.hero-art{border-radius:calc(var(--r-3xl) - 6px);overflow:hidden;padding:28px 28px 6px;background-size:cover;background-position:center 30%;display:flex;flex-direction:column;gap:16px;color:#fff;isolation:isolate}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#1f1b1600 40%,#efeeeb99);z-index:-1;pointer-events:none}.hero-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:600;text-shadow:0 1px 8px #1f1b1659}.hero-hi{text-align:center;padding-top:8px;text-shadow:0 2px 18px #1f1b1666}.hero-hi small{display:block;font-size:16px;font-weight:500;opacity:.95}.hero-hi h1{color:#fff;font-size:40px;font-weight:700;letter-spacing:-.03em;line-height:1.15}.hero-pill{align-self:center;display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;border-radius:999px;background:#ffffff66;border:1px solid #ffffff80;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:var(--text);font-size:14px;font-weight:600;text-shadow:none;box-shadow:var(--shadow-chip)}.hero-pill img{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#ffffffaa}.hero-glass{border-radius:var(--r-2xl);padding:6px;background:#ffffff8c;border:1px solid #ffffffa6;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);margin:0 -22px;color:var(--text);text-shadow:none}.hero-glass .kpi{gap:6px}.hero-glass .kpi .card{box-shadow:var(--shadow-chip);outline:0;border-color:transparent;border-radius:26px}.hero-3d{width:56px;height:56px;object-fit:contain}.owner-hero .hero-art{padding:20px 18px 6px}.owner-hero .hero-hi h1{font-size:30px}.owner-hero .owner-stats{gap:6px}.owner-hero .owner-stat{box-shadow:var(--shadow-chip);border-color:transparent;border-radius:22px}.hero-glass.owner{margin:0 -12px}.photo-thumb{width:56px;height:56px;border-radius:var(--r-md);object-fit:cover;flex-shrink:0}.owner-stat b{font-size:15px;white-space:nowrap}@media (max-width:700px){.topbar{grid-template-columns:1fr;padding:8px 4px;margin:-8px -4px}.nav{overflow-x:auto;max-width:100%;scrollbar-width:none}.top-actions{justify-self:start;flex-wrap:wrap}.kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value{font-size:20px;white-space:nowrap}.hero-art{padding:20px 16px 6px}.hero-hi h1{font-size:28px}.hero-top{flex-direction:column;align-items:flex-start;gap:2px;font-size:12px}.hero-glass{margin:0 -12px}.row3{grid-template-columns:minmax(0,1fr)}.card{overflow-x:auto}.app{padding:16px 12px 24px}}.main:not(:has(.hero)){padding:6px;border-radius:var(--r-3xl);background:#ffffff66;border:1.5px solid #ffffff99;box-shadow:var(--shadow-chip)}.main:not(:has(.hero))>.card{box-shadow:var(--shadow-chip)}.main:not(:has(.hero))>:is(h1,.row,div:first-child){padding-inline:12px}.photo-thumb.sm{width:40px;height:40px;border-radius:14px}.lap-subnav,.pj-subnav{background:#ffffff99;border:1px solid #ffffffb3;box-shadow:var(--shadow-chip)}.lap-subnav a.on,.pj-subnav a.on{background:var(--ink-grad);color:var(--on-inverse);box-shadow:inset 0 1px 0 #ffffff33}.login-hero{background-image:linear-gradient(180deg,#1f1b1633,#1f1b16b3),url(/art/hero-arch.webp)!important;background-size:cover!important;background-position:50%!important}.hero-art{background-image:var(--art)}@media (min-width:900px){.hero-art{background-image:var(--art-wide);background-position:50%}}@media (max-width:1180px){.topbar{grid-template-columns:auto minmax(0,1fr);row-gap:10px}.topbar>:last-child{justify-self:end}.nav{grid-row:2;grid-column:1/-1;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;justify-self:start}.nav a{flex-shrink:0}}.chat-fab{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:999px;border:0;background:var(--inverse);color:var(--on-inverse);font-size:13.5px;font-weight:600;box-shadow:var(--shadow-pop);cursor:pointer}.chat-fab:hover{transform:translateY(-1px)}.chat-panel.chat-pop{display:flex;position:fixed;top:auto;right:20px;bottom:20px;z-index:60;width:400px;max-width:calc(100vw - 24px);height:min(640px,calc(100vh - 40px));min-height:0;box-shadow:var(--shadow-pop);animation:assist-in .18s ease-out}.chat-panel.chat-pop[hidden]{display:none}@media (max-width:600px){.chat-fab span{display:none}.chat-fab{width:46px;padding:0;justify-content:center}.chat-panel.chat-pop{right:12px;bottom:12px}}.agent-root{position:relative;display:flex;flex-direction:column;flex:1 1;min-height:0;gap:12px}.agent-bar{display:flex;align-items:center;gap:8px}.agent-turn{display:flex;flex-direction:column;gap:8px}.agent-turn[data-me=true]{align-items:flex-end}.agent-turn .msg{max-width:92%;white-space:pre-wrap}.agent-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--float);padding:12px;display:flex;flex-direction:column;gap:10px}.agent-card[data-status=disimpan]{border-color:var(--good)}.agent-card[data-status=gagal]{border-color:var(--bad)}.agent-card[data-status=ditolak]{opacity:.6}.agent-card-title{font-size:13px;font-weight:600}.agent-kv{margin:0;display:grid;grid-gap:4px;gap:4px;font-size:12px}.agent-kv>div{display:flex;justify-content:space-between;gap:12px}.agent-kv dt{color:var(--muted);flex-shrink:0}.agent-kv dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}.agent-err{font-size:12px;color:var(--bad)}.agent-link{font-size:12.5px;font-weight:600;color:var(--good)}.agent-file,.agent-link{display:inline-flex;align-items:center;gap:6px}.agent-file{max-width:100%;border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 8px;font-size:11px;background:var(--glass-strong)}.agent-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.agent-x{border:0;background:none;padding:0;cursor:pointer;color:var(--muted);display:grid;place-items:center}.agent-input{resize:none;max-height:120px;font-family:inherit;line-height:1.35}.agent-note{font-size:11px;text-align:center}.agent-drop{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px;border:2px dashed var(--accent);border-radius:var(--r-lg);background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:600;pointer-events:none}@media (max-width:600px){.chat-panel.chat-pop{inset:0;width:100vw;max-width:100vw;height:100dvh;border-radius:0}}.agent-quick{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.agent-chip{border:1px solid var(--line);background:var(--float);color:var(--text);border-radius:999px;padding:5px 11px;font-size:12px;cursor:pointer}.agent-chip:hover{border-color:var(--text)}.agent-src{margin:8px 0 0;padding:0 0 0 18px;font-size:12px;display:flex;flex-direction:column;gap:3px}.agent-src a{color:inherit;text-decoration:underline;text-underline-offset:2px}.agent-imgs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.agent-imgs figure{margin:0;width:96px}.agent-cover img,.agent-imgs img{display:block;width:100%;height:64px;object-fit:cover;border-radius:10px;background:var(--well)}.agent-cover figcaption,.agent-imgs figcaption{font-size:10.5px;color:var(--muted);line-height:1.35;margin-top:3px}.agent-cover{margin:0;display:flex;gap:10px;align-items:flex-start}.agent-cover img{width:96px;flex-shrink:0}.agent-onetime{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:12px;background:var(--well);font-size:12px}.agent-onetime code{word-break:break-all;font-size:11.5px}.chat-panel.chat-pop.wide{width:540px;height:min(760px,calc(100vh - 40px))}.chat-input-tab{flex:1 1;min-height:0;flex-direction:column;margin:0 -18px -18px}.chat-input-tab .assist-body{padding-top:4px}