:root{--o-brand:#714B67;--o-brand-hover:#5E3E56;--o-brand-soft:#F2ECF1;--o-action:#017E84;--o-action-hover:#01666B;--o-action-soft:#E3F1F2;--bg:#F4F5F7;--surface:#FFFFFF;--surface-2:#F1F2F4;--surface-3:#E7E9ED;--ink-strong:#111827;--ink:#374151;--ink-2:#4B5563;--ink-3:#8F959E;--line:#D8DADD;--line-soft:#E7E9ED;--success:#1E7E34;--success-soft:#D4EDDA;--warn:#8A5D00;--warn-soft:#FFF3CD;--danger:#B02A37;--danger-soft:#F8D7DA;--accent:var(--o-brand);--accent-ink:#FFFFFF;--accent-soft:var(--o-brand-soft);--radius:4px;--radius-lg:8px;--shadow-sheet:0 1px 2px rgba(17,24,39,.06);--shadow-pop:0 6px 20px rgba(17,24,39,.14);--navbar-h:46px;--font:Roboto,-apple-system,"Segoe UI",system-ui,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{color:var(--ink-strong)}:focus-visible{outline:2px solid var(--o-action);outline-offset:1px}.o-shell{min-height:100vh;display:flex;flex-direction:column}.o-navbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;align-items:center;min-height:var(--navbar-h);background:var(--o-brand);color:#fff;padding-right:10px}.o-apps-btn{width:var(--navbar-h);height:var(--navbar-h);flex-shrink:0;display:grid;place-items:center;color:#fff;opacity:.92}.o-apps-btn:hover{background:rgba(0,0,0,.1);opacity:1}.o-app-name{font-size:16px;font-weight:500;color:#fff;padding:0 14px 0 2px;white-space:nowrap}.o-menu{display:flex;align-self:stretch;flex:1 1;min-width:0;overflow-x:auto;scrollbar-width:none}.o-menu::-webkit-scrollbar{display:none}.o-menu a{display:flex;align-items:center;padding:0 12px;white-space:nowrap;color:rgba(255,255,255,.88);font-size:14px}.o-menu a:hover{background:rgba(0,0,0,.1);color:#fff}.o-menu a.active{background:rgba(0,0,0,.16);color:#fff}.o-navbar-right{margin-left:auto;display:flex;align-items:center;gap:10px;padding-left:10px}.o-user{position:relative}.o-user-btn{display:flex;align-items:center;gap:8px;cursor:pointer;background:none;border:0;color:#fff;font:inherit;padding:4px 6px;border-radius:var(--radius)}.o-user-btn:hover{background:rgba(0,0,0,.1)}.o-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:#fff;color:var(--o-brand);font-size:12px;font-weight:700}.o-user-name{font-size:14px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o-dropdown{position:absolute;right:0;top:calc(100% + 6px);z-index:60;min-width:230px;padding:6px 0;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.o-dropdown-head{display:flex;flex-direction:column;gap:2px;padding:8px 14px 10px;border-bottom:1px solid var(--line-soft);font-size:13px}.o-dropdown-head b{color:var(--ink-strong);font-size:14px}.o-dropdown button{display:block;width:100%;text-align:left;cursor:pointer;background:none;border:0;font:inherit;color:var(--ink);padding:8px 14px}.o-dropdown button:hover{background:var(--surface-2)}.o-home-main{flex:1 1}.o-home{min-height:calc(100vh - var(--navbar-h));background:linear-gradient(135deg,#F7F1F6,#EEF4F5);padding:44px 20px 60px}.o-home-hello{text-align:center;color:var(--ink-2);margin:0 0 30px;font-size:15px}.o-apps{max-width:760px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));grid-gap:30px 12px;gap:30px 12px}.o-app{display:flex;flex-direction:column;align-items:center;gap:10px;padding:8px 4px;border-radius:var(--radius-lg)}.o-app-icon{width:72px;height:72px;border-radius:16px;display:grid;place-items:center;color:#fff;box-shadow:0 2px 6px rgba(17,24,39,.14);transition:transform .15s ease,box-shadow .15s ease}.o-app:focus-visible .o-app-icon,.o-app:hover .o-app-icon{transform:translateY(-3px);box-shadow:0 8px 18px rgba(17,24,39,.18)}.o-app-label{font-size:14px;color:var(--ink-strong);text-align:center}@media (prefers-reduced-motion:reduce){.o-app-icon{transition:none}.o-app:focus-visible .o-app-icon,.o-app:hover .o-app-icon{transform:none}}.main{flex:1 1;padding:0 20px 32px;min-width:0}.page-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0 -20px 16px;padding:10px 20px;min-height:54px;background:var(--surface);border-bottom:1px solid var(--line)}.page-head h1{font-size:18px;font-weight:500;margin:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.card+.card{margin-top:16px}.card .card-body{padding:16px 20px}form.card{box-shadow:var(--shadow-sheet)}.tbl-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}td,th{padding:7px 12px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--line-soft)}tr:last-child td{border-bottom:none}th{background:var(--surface);color:var(--ink-strong);font-size:13px;font-weight:600;border-bottom:1px solid var(--line)}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}tbody tr:hover td{background:#F7F8FA}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:14px 24px;gap:14px 24px}label.f{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--ink-strong);font-weight:600}input,select,textarea{font:inherit;color:var(--ink);width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px 10px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--o-action);box-shadow:0 0 0 2px var(--o-action-soft)}label.f input,label.f select,label.f textarea{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:5px 0;background:transparent;font-weight:400}label.f input:focus,label.f select:focus,label.f textarea:focus{box-shadow:none;border-bottom-color:var(--o-action)}label.f input:disabled,label.f select:disabled{color:var(--ink-3);border-bottom-style:dotted}button.btn{font:inherit;font-size:14px;font-weight:500;line-height:1.4;cursor:pointer;background:var(--o-brand);color:#fff;border:1px solid var(--o-brand);border-radius:var(--radius);padding:6px 14px}button.btn:hover{background:var(--o-brand-hover);border-color:var(--o-brand-hover)}button.btn:disabled{opacity:.55;cursor:default}button.btn.ghost{background:var(--surface-3);border-color:var(--surface-3);color:var(--ink-strong)}button.btn.ghost:hover{background:var(--line);border-color:var(--line)}button.btn.danger{background:var(--surface);border-color:#E4A6AD;color:var(--danger)}button.btn.danger:hover{background:var(--danger-soft)}button.btn.sm{padding:3px 10px;font-size:13px}.badge{display:inline-block;padding:1px 9px;border-radius:50rem;font-size:12px;font-weight:500;line-height:1.6}.badge.green{background:var(--success-soft);color:var(--success)}.badge.grey{background:var(--surface-3);color:var(--ink-2)}.badge.red{background:var(--danger-soft);color:var(--danger)}.badge.amber{background:var(--warn-soft);color:var(--warn)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-bottom:18px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px}.stat .v{font-size:22px;font-weight:600;color:var(--ink-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat .l{font-size:12.5px;color:var(--ink-3);margin-top:2px}.alert{background:var(--danger-soft);color:var(--danger);border:1px solid #f1b0b7;border-radius:var(--radius);padding:9px 14px;margin-bottom:14px;font-size:13.5px}.alert.ok{background:var(--success-soft);color:var(--success);border-color:#B7DDC0}.muted{color:var(--ink-3)}.mb{margin-bottom:16px}.lang-sw{display:inline-flex;gap:2px;background:var(--surface-2);border-radius:var(--radius);padding:2px}.lang-sw button{font:inherit;font-size:11.5px;font-weight:600;letter-spacing:.03em;cursor:pointer;border:none;background:none;color:var(--ink-2);padding:3px 8px;border-radius:3px}.lang-sw button.on{background:var(--o-brand);color:#fff}.lang-sw.dark{background:rgba(0,0,0,.14)}.lang-sw.dark button{color:rgba(255,255,255,.8)}.lang-sw.dark button.on{background:#fff;color:var(--o-brand)}.login-wrap{min-height:100vh;display:grid;place-items:center;background:var(--bg);padding:16px}.login-card{width:380px;max-width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px 28px;box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;gap:14px}.login-card h1{margin:0;font-size:20px;font-weight:600}.login-card .sub{color:var(--ink-2);font-size:13px;margin-top:-8px}.login-card button.btn{padding:9px 14px}.scan-modal{position:fixed;inset:0;background:rgba(17,24,39,.8);display:grid;place-items:center;z-index:200;padding:16px}.scan-box{background:var(--surface);border-radius:var(--radius-lg);padding:16px;width:min(720px,100%)}.scan-view{position:relative;border-radius:var(--radius);overflow:hidden}.scan-view video{width:100%;aspect-ratio:4/3;max-height:72vh;object-fit:cover;background:#000;display:block}.scan-frame{position:absolute;inset:18% 10%;border:2.5px solid rgba(255,255,255,.9);border-radius:12px;box-shadow:0 0 0 999px rgba(0,0,0,.28);pointer-events:none}.scan-trigger{font:inherit;cursor:pointer;flex-shrink:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px 11px;font-size:16px;line-height:1}.scan-trigger:hover{border-color:var(--o-action)}.search-scan{position:relative;flex:1 1;min-width:0}.search-scan input{padding-left:42px!important;width:100%}.search-scan .scan-ic{position:absolute;left:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:5px;color:var(--ink-3);display:grid;place-items:center;border-radius:var(--radius)}.search-scan .scan-ic:hover{color:var(--o-action);background:var(--surface-2)}.scan-inline .scan-view video{aspect-ratio:16/10;max-height:300px}.avatar{display:inline-grid;place-items:center;flex-shrink:0;overflow:hidden;border-radius:50%;background:var(--line);color:var(--ink-3);font-weight:700;vertical-align:middle}.avatar img{width:100%;height:100%;object-fit:cover}.name-cell{display:inline-flex;align-items:center;gap:10px}.profile{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}.profile-fields{flex:1 1;min-width:240px;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px 20px;gap:12px 20px}.profile-fields dt{font-size:12.5px;color:var(--ink-3)}.profile-fields dd{margin:2px 0 0;color:var(--ink-strong);word-break:break-word}.imgpick{display:flex;flex-direction:column;gap:6px}.imgpick>span{font-size:13px;font-weight:600;color:var(--ink-strong)}.imgpick-row{display:flex;gap:10px;align-items:flex-start}.imgpick-thumb{width:68px;height:68px;flex:none;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.imgpick-thumb img{width:100%;height:100%;object-fit:contain}.imgpick-ph{font-size:22px;opacity:.45}.imgpick-acts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.imgpick-acts .sm{font-size:12px}.imgpick-err{color:var(--danger);font-size:12.5px;font-weight:400}.gal-box{width:min(860px,100%);max-height:86vh;display:flex;flex-direction:column;gap:12px}.gal-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gal-head b{font-size:15px}.gal-search{flex:1 1;min-width:140px}.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px;overflow-y:auto;padding:2px}.gal-item{font:inherit;cursor:pointer;text-align:center;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;gap:5px}.gal-item.on,.gal-item:hover{border-color:var(--o-action)}.gal-item.on{box-shadow:0 0 0 2px var(--o-action-soft)}.gal-item img{width:100%;height:96px;object-fit:contain;background:var(--surface-2);border-radius:3px}.gal-cell{position:relative;display:flex}.gal-cell>.gal-item{flex:1 1;min-width:0}.gal-del{position:absolute;top:4px;right:4px;width:22px;height:22px;display:grid;place-items:center;cursor:pointer;font:inherit;font-size:15px;line-height:1;background:rgba(255,255,255,.92);color:var(--danger);border:1px solid #e4a6ad;border-radius:50%;opacity:0;transition:opacity .12s}.gal-cell:hover .gal-del,.gal-del:focus-visible{opacity:1}@media (hover:none){.gal-del{opacity:1}}.gal-item span{font-size:11px;color:var(--ink-3);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-frame{flex:none;box-shadow:0 2px 10px rgba(17,24,39,.14)}.dl-frame,.dl-sheet{overflow:hidden;background:#fff}.dl-sheet{position:relative;isolation:isolate;width:var(--dl-paper-w);height:var(--dl-paper-h);transform-origin:top left;display:flex;flex-direction:column;gap:5mm;padding:14mm 13mm 12mm;color:#1F2937;font-family:var(--dl-font);font-size:10.5px;line-height:1.45;-webkit-print-color-adjust:exact;print-color-adjust:exact}.dl-sheet>*{position:relative;z-index:1}.dl-sheet .dl-deco{position:absolute;inset:0;z-index:0;pointer-events:none}.dl-sheet .dl-deco:after,.dl-sheet .dl-deco:before{content:"";position:absolute}.dl-sheet[data-bg=geometric] .dl-deco{background:repeating-linear-gradient(45deg,var(--dl-primary-soft) 0 1.2mm,transparent 1.2mm 4.5mm) 100% 0 /70mm 55mm no-repeat,repeating-linear-gradient(-45deg,var(--dl-secondary-soft) 0 1.2mm,transparent 1.2mm 4.5mm) 0 100% /70mm 45mm no-repeat}.dl-sheet[data-bg=dots] .dl-deco{background:radial-gradient(circle,var(--dl-primary-line) .45mm,transparent .55mm) 0 0 /5mm 5mm;-webkit-mask-image:linear-gradient(160deg,#000,transparent 38%,transparent 70%,#000);mask-image:linear-gradient(160deg,#000,transparent 38%,transparent 70%,#000)}.dl-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8mm;min-height:20mm}.dl-brand{display:flex;flex-direction:column;gap:1.5mm;max-width:50%}.dl-logo{max-height:16mm;max-width:55mm;object-fit:contain;object-position:left center}.dl-logo-text{font-size:20px;font-weight:700;color:var(--dl-primary);letter-spacing:.02em}.dl-tagline{font-size:9.5px;color:#6B7280}.dl-company{display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-size:9.5px;white-space:pre-line}.dl-company b{font-size:11px;color:#111827}.dl-title h1{margin:0;font-size:21px;font-weight:400;color:var(--dl-primary);line-height:1.2}.dl-title .dl-num{white-space:nowrap}.dl-parties{display:flex;justify-content:space-between;align-items:flex-end;gap:8mm}.dl-party{display:flex;flex-direction:column;font-size:10px}.dl-party b{font-size:11px;color:#111827}.dl-meta-cell span,.dl-party-l{font-size:8.5px;text-transform:uppercase;letter-spacing:.04em;color:#6B7280}.dl-meta{display:flex;gap:8mm;margin-left:auto}.dl-meta-cell{display:flex;flex-direction:column}.dl-meta-cell b{font-weight:600;color:#111827}.dl-sheet table{width:100%;border-collapse:collapse;font-size:10px}.dl-sheet td,.dl-sheet th{padding:1.8mm 2.2mm;text-align:left;white-space:normal;vertical-align:top;border:0;border-bottom:1px solid #e5e7eb;background:transparent}.dl-sheet tbody tr:hover td{background:transparent}.dl-sheet .dl-r{text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dl-items th{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#111827;border-bottom:2px solid var(--dl-primary)}.dl-it-name em{font-style:normal;color:#6B7280}.dl-it-note{display:block;color:#6B7280;font-size:9px}.dl-items tr.dl-sec td{font-weight:700;color:#111827;background:var(--dl-primary-soft)}.dl-items tr.dl-lnote td{font-style:italic;color:#4B5563}.dl-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:8mm}.dl-left{display:flex;flex-direction:column;gap:2mm;min-width:0}.dl-note{margin:0;font-size:9.5px;color:#374151;white-space:pre-line}.dl-totals{width:72mm!important;flex:none}.dl-totals td:first-child{color:#374151}.dl-totals tr.dl-strong td{font-weight:700;font-size:11px;color:#111827;border-bottom:0;border-top:2px solid var(--dl-primary)}.dl-qr svg{display:block;width:24mm;height:24mm}.dl-foot{margin-top:auto;padding-top:2.5mm;border-top:1px solid #d1d5db;text-align:center;font-size:9px;color:#4B5563;white-space:pre-line}.dl-sheet[data-layout=boxed] .dl-head{border:1px solid var(--dl-primary-line);background:var(--dl-primary-soft);padding:4mm 5mm}.dl-sheet[data-layout=boxed] .dl-items td,.dl-sheet[data-layout=boxed] .dl-items th{border:1px solid #cbd0d6}.dl-sheet[data-layout=boxed] .dl-items th{background:var(--dl-primary-soft);border-bottom:1px solid #cbd0d6}.dl-sheet[data-layout=boxed] .dl-totals td{border:1px solid #cbd0d6}.dl-sheet[data-layout=boxed] .dl-totals tr.dl-strong td{background:var(--dl-primary-soft);border-top:1px solid #cbd0d6}.dl-sheet[data-layout=boxed] .dl-meta{border:1px solid #cbd0d6;padding:2mm 4mm}.dl-sheet[data-layout=bold] .dl-deco:before{left:0;right:0;top:0;height:38mm;background:var(--dl-primary)}.dl-sheet[data-layout=bold] .dl-company b,.dl-sheet[data-layout=bold] .dl-head,.dl-sheet[data-layout=bold] .dl-logo-text,.dl-sheet[data-layout=bold] .dl-tagline{color:var(--dl-primary-ink)}.dl-sheet[data-layout=bold] .dl-head{min-height:16mm}.dl-sheet[data-layout=bold] .dl-title{margin-top:3mm}.dl-sheet[data-layout=bold] .dl-title h1{font-weight:700;color:#111827;text-transform:uppercase}.dl-sheet[data-layout=bold] .dl-items th{background:var(--dl-primary);color:var(--dl-primary-ink);border-bottom:0}.dl-sheet[data-layout=bold] .dl-totals tr.dl-strong td{background:var(--dl-primary);color:var(--dl-primary-ink);border-top:0}.dl-sheet[data-layout=striped] .dl-deco:before{left:0;right:0;top:0;height:3mm;background:var(--dl-primary)}.dl-sheet[data-layout=striped] .dl-deco:after{left:0;right:0;bottom:0;height:1.5mm;background:var(--dl-secondary)}.dl-sheet[data-layout=striped] .dl-items th{background:var(--dl-secondary-soft);border-bottom:0}.dl-sheet[data-layout=striped] .dl-items td{border-bottom:0}.dl-sheet[data-layout=striped] .dl-items tbody tr:nth-child(2n) td{background:var(--dl-primary-soft)}.dl-sheet[data-layout=bubble] .dl-deco:before{width:150mm;height:150mm;right:-48mm;top:-92mm;border-radius:50%;background:var(--dl-primary-soft)}.dl-sheet[data-layout=bubble] .dl-deco:after{width:130mm;height:130mm;left:-60mm;bottom:-86mm;border-radius:50%;background:var(--dl-secondary-soft)}.dl-sheet[data-layout=bubble] .dl-head{flex-direction:row-reverse}.dl-sheet[data-layout=bubble] .dl-brand{align-items:flex-end}.dl-sheet[data-layout=bubble] .dl-company{align-items:flex-start;text-align:left}.dl-sheet[data-layout=bubble] .dl-parties{flex-direction:column;align-items:stretch}.dl-sheet[data-layout=bubble] .dl-meta{margin-left:0;justify-content:space-between;padding:2mm 4mm;border-radius:2.5mm;border:1px solid var(--dl-secondary);background:var(--dl-secondary-soft)}.dl-sheet[data-layout=bubble] .dl-meta-cell span{color:var(--dl-secondary);font-weight:700}.dl-sheet[data-layout=bubble] .dl-items{border-radius:2.5mm;overflow:hidden;box-shadow:0 0 0 1px #D1D5DB}.dl-sheet[data-layout=bubble] .dl-items th{background:var(--dl-primary);color:var(--dl-primary-ink);border-bottom:0}.dl-sheet[data-layout=bubble] .dl-items td+td{border-left:1px solid #e5e7eb}.dl-sheet[data-layout=bubble] .dl-totals{border-radius:2.5mm;overflow:hidden;box-shadow:0 0 0 1px #D1D5DB}.dl-sheet[data-layout=bubble] .dl-totals tr.dl-strong td{background:var(--dl-primary);color:var(--dl-primary-ink);border-top:0}.dl-sheet[data-layout=bubble] .dl-title{text-align:right}.dl-sheet[data-layout=wave] .dl-deco:before{left:-30mm;right:-30mm;top:-60mm;height:105mm;border-radius:0 0 50% 50%;background:var(--dl-primary-soft)}.dl-sheet[data-layout=wave] .dl-deco:after{left:-20mm;right:-20mm;bottom:-34mm;height:50mm;border-radius:50% 50% 0 0;border-top:1.2mm solid var(--dl-secondary);background:var(--dl-secondary-soft)}.dl-sheet[data-layout=wave] .dl-title{text-align:center;margin:2mm 0 1mm}.dl-sheet[data-layout=wave] .dl-items th{color:var(--dl-primary)}.dl-sheet[data-layout=wave] .dl-foot{border-top:0}.dl-sheet[data-layout=folder]{padding-left:20mm}.dl-sheet[data-layout=folder] .dl-deco:before{left:0;top:0;bottom:0;width:7mm;background:var(--dl-primary)}.dl-sheet[data-layout=folder] .dl-deco:after{left:7mm;top:50mm;width:4mm;height:30mm;border-radius:0 2mm 2mm 0;background:var(--dl-secondary)}.dl-sheet[data-layout=folder] .dl-title h1{display:inline-block;padding:2mm 6mm 2mm 4mm;border-radius:0 3mm 0 0}.dl-sheet[data-layout=folder] .dl-items th,.dl-sheet[data-layout=folder] .dl-title h1{background:var(--dl-primary-soft);border-bottom:2px solid var(--dl-primary)}.dl-cfg{display:grid;grid-template-columns:minmax(340px,1fr) minmax(0,1.05fr);grid-gap:20px;gap:20px;align-items:start}.dl-form{padding:18px 22px}.dl-row{display:grid;grid-template-columns:170px minmax(0,1fr);grid-gap:6px 16px;gap:6px 16px;align-items:start;padding:9px 0}.dl-row>.dl-lbl{font-weight:600;color:var(--ink-strong);padding-top:5px}.dl-row>.dl-lbl small{display:block;font-weight:400;color:var(--ink-3);font-size:12px;line-height:1.35}.dl-row input:not([type]),.dl-row input[type=text],.dl-row select,.dl-row textarea{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:5px 0;background:transparent}.dl-row input:focus,.dl-row select:focus,.dl-row textarea:focus{box-shadow:none;border-bottom-color:var(--o-action)}.dl-row textarea{resize:vertical;min-height:64px}.dl-row input:disabled,.dl-row select:disabled,.dl-row textarea:disabled{color:var(--ink-3);border-bottom-style:dotted}.dl-chips{display:flex;flex-wrap:wrap;gap:6px}.dl-chip{font:inherit;font-size:14px;cursor:pointer;padding:5px 12px;background:var(--surface-3);color:var(--ink-strong);border:1px solid transparent;border-radius:var(--radius)}.dl-chip:hover{background:var(--line)}.dl-chip.on{background:var(--o-action-soft);border-color:var(--o-action);color:var(--o-action-hover)}.dl-chip:disabled{cursor:default}.dl-colors{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dl-swatch{position:relative;width:36px;height:36px;flex:none}.dl-swatch span{position:absolute;inset:0;border-radius:50%;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.dl-swatch input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;border:0}.dl-swatch input[type=color]:disabled{cursor:default}.dl-swatch:focus-within span{outline:2px solid var(--o-action);outline-offset:2px}.dl-hex{font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:58px}.dl-check{display:inline-flex;align-items:center;gap:8px;padding-top:5px;cursor:pointer}.dl-check input{width:18px;height:18px;margin:0;accent-color:var(--o-action)}.dl-preview{position:-webkit-sticky;position:sticky;top:calc(var(--navbar-h) + 12px);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;justify-content:center;min-width:0}.dl-actions{display:flex;gap:8px;padding:14px 22px;border-top:1px solid var(--line-soft);background:var(--surface)}.dl-print-wrap{display:flex;justify-content:center;padding:8px 0 24px;overflow-x:auto}@media (max-width:1000px){.dl-cfg{grid-template-columns:1fr}.dl-preview{position:static}}@media (max-width:560px){.dl-row{grid-template-columns:1fr}.dl-row>.dl-lbl{padding-top:0}}.so-cp{align-items:center;gap:12px;flex-wrap:wrap}.so-bc,.so-cp{display:flex;min-width:0}.so-bc{flex-direction:column;line-height:1.25}.so-bc a{color:var(--o-action);font-size:13px}.so-bc a:hover{text-decoration:underline}.so-bc b{font-size:16px;font-weight:500;color:var(--ink-strong)}.so-dirty{display:inline-flex;gap:2px}.so-icon{font:inherit;font-size:13px;background:none;border:0;cursor:pointer;padding:4px 8px;border-radius:var(--radius);color:var(--ink-2)}.so-icon:hover{background:var(--surface-2);color:var(--ink-strong)}.so-bar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.so-bar,.so-btns{display:flex;flex-wrap:wrap}.so-btns{gap:6px}.o-statusbar{display:flex;overflow-x:auto;max-width:100%}.o-statusbar span{padding:6px 20px 6px 24px;margin-left:-8px;font-size:13px;white-space:nowrap;color:var(--ink-2);background:var(--surface-3);-webkit-clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,12px 50%);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,12px 50%)}.o-statusbar span:first-child{margin-left:0;padding-left:14px;-webkit-clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%)}.o-statusbar span.on{background:var(--o-action-soft);color:var(--o-action-hover);font-weight:600}.so-smart{display:flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.so-smart a{display:flex;flex-direction:column;padding:4px 14px;font-size:12px;line-height:1.35;color:var(--ink-2);border-right:1px solid var(--line)}.so-smart a:last-child{border-right:0}.so-smart a b{color:var(--ink-strong);font-size:13px;font-weight:500}.so-smart a:hover{background:var(--surface-2)}.so-sheet{padding:22px 28px 18px}.so-title{font-size:30px;font-weight:500;margin:0 0 14px}.so-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:0 40px;gap:0 40px}.so-field{display:grid;grid-template-columns:150px minmax(0,1fr);grid-gap:4px 14px;gap:4px 14px;align-items:start;padding:5px 0}.so-field>span:first-child{font-weight:600;color:var(--ink-strong);padding-top:5px}.so-field.missing>span:first-child{color:var(--danger)}.so-field input,.so-field select,.so-field textarea{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:5px 0;background:transparent}.so-field textarea{resize:vertical}.so-field input:focus,.so-field select:focus,.so-field textarea:focus{box-shadow:none;border-bottom-color:var(--o-action)}.so-field input:disabled,.so-field select:disabled,.so-field textarea:disabled{color:var(--ink);border-bottom-color:transparent}.so-sub{color:var(--ink-2);font-size:13px;margin-top:3px}.combo{position:relative}.combo-list{position:absolute;left:0;top:calc(100% + 2px);z-index:60;min-width:100%;width:max-content;max-width:460px;max-height:320px;overflow-y:auto;padding:4px 0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.combo-list button{display:flex;justify-content:space-between;align-items:baseline;gap:14px;width:100%;font:inherit;text-align:left;background:none;border:0;padding:6px 14px;cursor:pointer;color:var(--ink);white-space:nowrap}.combo-list button.hl{background:var(--surface-2)}.combo-list button.more{color:var(--o-action)}.combo-empty{padding:6px 14px;color:var(--ink-3)}.so-tabs{display:flex;border-bottom:1px solid var(--line);margin:18px -28px 0;padding:0 28px}.so-tabs button{font:inherit;background:none;cursor:pointer;color:var(--ink-2);padding:8px 16px;margin-bottom:-1px;border:1px solid transparent;border-bottom:0;border-radius:var(--radius) var(--radius) 0 0}.so-tabs button.on{background:var(--surface);color:var(--o-brand);border-color:var(--line);box-shadow:inset 0 2px 0 var(--o-brand)}.so-lines{margin:0 -28px;overflow:visible}.so-lines td:first-child,.so-lines th:first-child{padding-left:28px}.so-lines td{vertical-align:middle}.so-lines td input{border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;padding:4px 0}.so-lines td input.n{text-align:right}.so-lines tr:hover td input:not(:disabled){border-bottom-color:var(--line)}.so-lines td input:focus{box-shadow:none;border-bottom-color:var(--o-action)}.so-lines td input:disabled{color:var(--ink)}.so-lines tr.sec td{background:var(--surface-2);font-weight:600}.so-lines tr.lnote td input{font-style:italic}.so-addrow{display:flex;gap:20px;flex-wrap:wrap;padding:10px 28px;margin:0 -28px;border-bottom:1px solid var(--line-soft)}.so-link{font:inherit;background:none;border:0;padding:0;cursor:pointer;color:var(--o-action)}.so-link:hover{text-decoration:underline}.so-del{font:inherit;background:none;border:0;cursor:pointer;padding:2px 4px;opacity:.55}.so-del:hover{opacity:1}.so-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;padding-top:16px}.so-terms{flex:1 1;min-width:240px;display:flex;flex-direction:column;gap:2px}.so-terms textarea{min-height:56px;resize:vertical;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:5px 0;background:transparent}.so-totals{min-width:280px;border-top:1px solid var(--line);padding-top:8px}.so-totals div{display:flex;justify-content:space-between;gap:24px;padding:3px 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.so-totals .grand{font-size:20px;font-weight:600;color:var(--ink-strong)}.so-chatter{margin-top:16px}.so-chat-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.so-compose textarea{min-height:80px;resize:vertical}.so-msg{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-soft)}.so-msg .o-avatar{background:var(--o-brand);color:#fff}.so-msg-meta{font-size:12.5px;color:var(--ink-3)}.so-msg-meta b{color:var(--ink-strong);font-weight:600}.so-msg-body{white-space:pre-wrap;word-break:break-word;margin-top:2px}.so-msg.note .so-msg-body{background:var(--warn-soft);padding:6px 10px;border-radius:var(--radius)}.so-msg.event .so-msg-body{color:var(--ink-3);font-style:italic}.so-linkbox{display:flex;gap:6px;margin:10px 0}.so-linkbox input{flex:1 1;min-width:0;font-size:13px}.dlg-foot{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px;overflow-y:auto;padding:2px}.cat-item{display:flex;flex-direction:column;gap:6px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.cat-item.on{border-color:var(--o-action);box-shadow:0 0 0 2px var(--o-action-soft)}.cat-item img,.cat-ph{width:100%;height:100px;object-fit:contain;background:var(--surface-2);border-radius:3px}.cat-ph{display:grid;place-items:center;font-size:22px;opacity:.5}.cat-name{font-size:13px;line-height:1.3;min-height:34px}.cat-qty{display:flex;align-items:center;justify-content:space-between;gap:6px}.portal{min-height:100vh;background:var(--bg);padding:20px 16px 48px}.portal-top{max-width:1100px;margin:0 auto 18px;display:flex;justify-content:space-between;align-items:center;font-size:16px;color:var(--ink-strong)}.portal-wrap{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:270px minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}.portal-side{position:-webkit-sticky;position:sticky;top:20px;display:flex;flex-direction:column;gap:12px}.portal-side .card+.card{margin-top:0}.portal-amount{font-size:30px;font-weight:600;color:var(--ink-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.portal-main{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 28px;min-width:0}.portal-main h1{margin:0 0 18px;font-size:26px;font-weight:500}.portal-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px 32px;gap:16px 32px;margin-bottom:20px}.portal-info h3{margin:0 0 8px;padding-bottom:6px;font-size:14px;border-bottom:1px solid var(--line)}@media (max-width:860px){.portal-wrap{grid-template-columns:1fr}.portal-side{position:static}}@media print{.portal{padding:0;background:#fff}}input.pos-qty{width:64px;padding:3px 6px;text-align:center;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}input.pos-qty.bad{border-color:var(--danger);background:var(--danger-soft)}.pos-disc{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:11.5px;color:var(--ink-3)}.pos-disc input{width:44px;padding:1px 4px;font-size:12px;text-align:right}.modal-backdrop{position:fixed;inset:0;z-index:150;overflow-y:auto;background:rgba(17,24,39,.45);padding:16px}.modal{width:100%;max-width:560px;margin:40px auto;box-shadow:var(--shadow-pop)}.grid-auto{grid-gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}.grid-auto,.pos-grid{display:grid;gap:16px}.pos-grid{grid-gap:16px;align-items:start;grid-template-columns:minmax(300px,1fr) minmax(340px,420px)}@media (max-width:900px){.pos-grid{grid-template-columns:1fr}}.chat-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(260px,340px) 1fr;height:calc(100vh - 170px);min-height:420px}.mobile-only,.show-sm{display:none}td.wrap{white-space:normal;min-width:120px}@media (max-width:720px){.mobile-only{display:inline-block}.show-sm{display:block}span.show-sm{display:inline}.hide-sm{display:none!important}.chat-grid{grid-template-columns:1fr;height:calc(100vh - 150px);min-height:360px}.chat-grid[data-open="0"]>:last-child,.chat-grid[data-open="1"]>:first-child{display:none!important}.o-navbar{flex-wrap:wrap}.o-menu{order:10;flex:1 0 100%;height:40px;background:rgba(0,0,0,.1)}.o-user-name{display:none}.o-app-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:15px;padding-right:6px}.o-navbar-right{gap:6px;padding-left:4px}.lang-sw.dark button{padding:3px 6px}.main{padding:0 12px 28px}.page-head{margin:0 -12px 12px;padding:10px 12px}.o-home{padding:28px 12px 40px}.o-apps{grid-template-columns:repeat(3,1fr);gap:22px 8px}.o-app-icon{width:62px;height:62px;border-radius:14px}input,select,textarea{font-size:16px}.gal-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.gal-item img{height:76px}.so-sheet{padding:16px}.so-addrow,.so-lines,.so-tabs{margin-left:-16px;margin-right:-16px}.so-addrow,.so-tabs{padding-left:16px;padding-right:16px}.so-lines td:first-child,.so-lines th:first-child{padding-left:16px}.so-field{grid-template-columns:1fr}.so-title{font-size:24px}.page-head{align-items:flex-start}.page-head>div,.page-head>form{flex-wrap:wrap!important;max-width:100%}.page-head .search-scan{width:100%!important;flex:1 1 100%!important}.page-head h1{font-size:17px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat{padding:10px 12px}.stat .v{font-size:17px;overflow-wrap:anywhere}.card .card-body{padding:12px 14px}.tbl-wrap{-webkit-overflow-scrolling:touch}td,th{padding:7px 10px}.tbl-wrap td>select{min-width:190px}.tbl-wrap td>input:not([type=checkbox]):not([type=radio]):not(.pos-qty){min-width:84px}label.f[style*=min-width]{flex:1 1 140px}.modal{margin:8px auto!important;max-width:100%!important}.modal-backdrop,.scan-modal{padding:8px}button.btn{min-height:36px}button.btn.sm{min-height:30px}}.dl-sheet[data-paper]{height:auto!important;padding:4mm 3mm 6mm;gap:2.5mm;font-size:11px;line-height:1.35}.dl-sheet[data-paper] .dl-deco{display:none}.dl-sheet[data-paper] .dl-head{flex-direction:column;align-items:center;text-align:center;min-height:0;gap:1.5mm;border:0;background:none;padding:0}.dl-sheet[data-paper] .dl-brand{align-items:center;max-width:100%}.dl-sheet[data-paper] .dl-logo{max-height:12mm;max-width:40mm;object-position:center}.dl-sheet[data-paper] .dl-logo-text{font-size:15px}.dl-sheet[data-paper] .dl-company{align-items:center;text-align:center;font-size:9.5px}.dl-sheet[data-paper] .dl-company b{display:none}.dl-sheet[data-paper] .dl-title{margin:0;text-align:center}.dl-sheet[data-paper] .dl-title h1{font-size:14px;font-weight:700;color:#111827}.dl-sheet[data-paper] .dl-parties{flex-direction:column;align-items:stretch;gap:1.5mm}.dl-sheet[data-paper] .dl-party{border:0;padding:0}.dl-sheet[data-paper] .dl-meta{display:grid;grid-template-columns:1fr;grid-gap:.8mm;gap:.8mm;margin:0;border:0;padding:0}.dl-sheet[data-paper] .dl-meta-cell{flex-direction:row;justify-content:space-between;gap:2mm}.dl-sheet[data-paper] .dl-meta-cell span{font-size:9px;letter-spacing:0;text-transform:none}.dl-sheet[data-paper] .dl-meta-cell b{font-weight:600;text-align:right}.dl-sheet[data-paper] .dl-items thead{display:none}.dl-sheet[data-paper] .dl-items,.dl-sheet[data-paper] .dl-items tbody,.dl-sheet[data-paper] .dl-items td,.dl-sheet[data-paper] .dl-items tr{display:block;width:100%}.dl-sheet[data-paper] .dl-items tr{display:flex;flex-wrap:wrap;align-items:baseline;padding:1.2mm 0;border-bottom:1px dashed #d1d5db}.dl-sheet[data-paper] .dl-items td{padding:0;border:0;width:auto}.dl-sheet[data-paper] .dl-items td:first-child{flex:1 0 100%}.dl-sheet[data-paper] .dl-items td:nth-child(2){text-align:left}.dl-sheet[data-paper] .dl-items td:nth-child(2):after{content:" ×"}.dl-sheet[data-paper] .dl-items td:nth-child(3){padding-left:1mm;text-align:left}.dl-sheet[data-paper] .dl-items td:nth-child(4){margin-left:auto;font-weight:700}.dl-sheet[data-paper] .dl-it-name{font-weight:600}.dl-sheet[data-paper] .dl-it-name em{display:none}.dl-sheet[data-paper] .dl-bottom{flex-direction:column-reverse;align-items:stretch;gap:2mm}.dl-sheet[data-paper] .dl-totals{width:100%!important}.dl-sheet[data-paper] .dl-totals td{padding:.6mm 0;border:0}.dl-sheet[data-paper] .dl-totals tr.dl-strong td{font-size:13px;padding:1mm 0;border-top:1px solid #111827;border-bottom:1px solid #111827;background:none!important;color:#111827!important}.dl-sheet[data-paper] .dl-left{align-items:center;text-align:center}.dl-sheet[data-paper] .dl-qr svg{width:22mm;height:22mm;margin:0 auto}.dl-sheet[data-paper] .dl-foot{border:0;text-align:center;font-size:9.5px;padding-top:1.5mm;margin-top:0}.dl-sheet[data-paper="58mm"]{padding:3mm 2mm 5mm;font-size:10px}.dl-sheet[data-paper="58mm"] .dl-title h1{font-size:12.5px}.dl-sheet[data-paper="58mm"] .dl-totals tr.dl-strong td{font-size:12px}@media print{@page{size:auto;margin:0}body,html{background:#fff!important}.alert,.dl-noprint,.o-navbar,.page-head{display:none!important}.main{padding:0!important}.dl-print-wrap{display:block;padding:0;overflow:visible}.dl-frame{width:auto!important;height:auto!important;overflow:visible;box-shadow:none}.dl-sheet{transform:none!important}.dl-sheet[data-paper]{height:auto!important}}.o-app{-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.o-apps.editing .o-app{cursor:-webkit-grab;cursor:grab;touch-action:none}.o-apps.editing .o-app-icon{animation:o-wiggle .28s ease-in-out infinite alternate}.o-apps.editing .o-app:nth-child(2n) .o-app-icon{animation-delay:-.14s}.o-app.dragging{cursor:-webkit-grabbing;cursor:grabbing}.o-app.dragging .o-app-icon{animation:none;transform:scale(1.1);box-shadow:0 14px 28px rgba(17,24,39,.28)}.o-app.dragging .o-app-label{opacity:.6}@keyframes o-wiggle{0%{transform:rotate(-2.2deg)}to{transform:rotate(2.2deg)}}@media (prefers-reduced-motion:reduce){.o-apps.editing .o-app-icon{animation:none;outline:2px dashed rgba(17,24,39,.25);outline-offset:3px}}.o-home-tools{max-width:760px;margin:34px auto 0;display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.o-home-edit{font:inherit;font-size:13px;cursor:pointer;color:var(--ink-3);background:none;border:0;padding:6px 10px;border-radius:var(--radius)}.o-home-edit:hover{color:var(--ink-strong);background:rgba(255,255,255,.6)}.o-home-hint{font-size:13px;color:var(--ink-2)}.o-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:50rem;background:var(--danger);color:#fff;font-size:11px;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.o-count.zero{background:var(--surface-3);color:var(--ink-3)}.o-bell{position:relative;display:grid;place-items:center;width:36px;height:36px;background:none;border:0;color:#fff;cursor:pointer;border-radius:var(--radius)}.o-bell:hover{background:rgba(0,0,0,.1)}.o-bell .o-count{position:absolute;top:1px;right:-2px;margin:0;box-shadow:0 0 0 2px var(--o-brand)}.o-bell.pulse svg{animation:o-ring .9s ease-in-out 3;transform-origin:50% 10%}@keyframes o-ring{0%,to{transform:rotate(0)}20%{transform:rotate(16deg)}40%{transform:rotate(-14deg)}60%{transform:rotate(9deg)}80%{transform:rotate(-5deg)}}.o-app-icon{position:relative}.o-app-count{position:absolute;top:-6px;right:-6px;margin:0;min-width:22px;height:22px;font-size:12px;box-shadow:0 0 0 2px #fff}.o-alerts{min-width:300px}.o-alert-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;color:var(--ink)}.o-alert-row:hover{background:var(--surface-2)}.o-alert-row.has{color:var(--ink-strong);font-weight:500}.o-alert-row small{display:block;max-width:220px;font-size:12px;font-weight:400;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-alert-tools{display:flex;flex-direction:column;gap:4px;padding:8px 14px 4px;border-top:1px solid var(--line-soft);margin-top:4px;font-size:13px}.o-alert-tools label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--ink)}.o-alert-tools input[type=checkbox]{width:auto;margin:0;flex:none}.o-dropdown .o-alert-tools button{padding:4px 0;color:var(--o-action)}.o-dropdown .o-alert-tools button:hover{background:none;text-decoration:underline}.o-toasts{position:fixed;top:calc(var(--navbar-h) + 10px);right:14px;z-index:30;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 28px))}.o-toast{display:flex;align-items:flex-start;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--danger);border-radius:var(--radius);box-shadow:var(--shadow-pop);animation:o-toast-in .25s ease-out}.o-toast.chat{border-left-color:var(--o-action)}.o-toast-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:10px 12px}.o-toast-body b{color:var(--ink-strong);font-size:14px}.o-toast-body span{font-size:13px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o-toast-close{background:none;border:0;cursor:pointer;font-size:18px;line-height:1;color:var(--ink-3);padding:8px 10px}.o-toast-close:hover{color:var(--ink-strong)}@keyframes o-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.o-bell.pulse svg,.o-toast{animation:none}}.stk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:14px;gap:14px}.stk-card{background:var(--surface);border:1px solid var(--line-soft);border-radius:16px;padding:16px;box-shadow:0 1px 3px rgba(17,24,39,.05);flex-direction:column}.stk-card,.stk-top{display:flex;gap:14px}.stk-top{align-items:flex-start}.stk-thumb{width:64px;height:64px;flex:none;border-radius:12px;background:#F8F5F2;display:grid;place-items:center;color:#8A8178;overflow:hidden}.stk-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}.stk-info{min-width:0;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.stk-name{font-size:17px;font-weight:600;color:var(--ink-strong);line-height:1.25;overflow-wrap:anywhere}.stk-sub{color:var(--ink-3);font-size:13px}.stk-badge{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:500}.stk-badge i{width:8px;height:8px;border-radius:50%;background:currentColor}.stk-badge.ok{background:var(--success-soft);color:var(--success)}.stk-badge.low{background:#FFF4E0;color:#C26A00}.stk-badge.out{background:var(--danger-soft);color:var(--danger)}.stk-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-top:1px solid var(--line-soft);padding-top:12px}.stk-stats span{display:block;font-size:10.5px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;color:var(--ink-3);margin-bottom:4px}.stk-stats b{font-size:18px;color:var(--ink-strong);font-weight:600}.stk-stats small{font-size:12px;font-weight:400;color:var(--ink-3)}.stk-cur.low{color:#D9480F}.stk-cur.out{color:var(--danger)}.stk-actions{display:flex;gap:8px;align-items:center;margin-top:auto}.stk-actions input{flex:1 1;min-width:0;text-align:right}.stk-receive{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink-strong);font-weight:500;text-decoration:none}.stk-receive:hover{background:var(--bg);text-decoration:none}.stk-icon-btn{width:40px;height:40px;flex:none;display:grid;place-items:center;border:0;background:none;border-radius:10px;color:var(--ink);cursor:pointer}.stk-icon-btn:hover{background:var(--bg)}.stk-icon-btn:disabled{opacity:.5;cursor:default}@media (max-width:480px){.stk-grid{grid-template-columns:1fr}}.chat-grid.wa{gap:0;border:1px solid var(--line-soft);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface)}.chat-grid.wa>.card{border:0;border-radius:0;box-shadow:none;margin:0}.wa-list{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line-soft)!important}.wa-search{padding:8px 10px;border-bottom:1px solid var(--line-soft)}.wa-search input{width:100%;border-radius:18px;background:var(--surface-2);border-color:transparent;padding-left:14px}.wa-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid var(--line-soft);background:transparent;cursor:pointer;font:inherit;color:inherit}.wa-item:hover{background:var(--surface-2)}.wa-item[data-on="1"]{background:#f0f2f5}.wa-chips{display:flex;gap:6px;margin-top:8px;overflow-x:auto;scrollbar-width:none}.wa-chips button{flex-shrink:0;border:0;border-radius:16px;padding:4px 12px;font:inherit;font-size:13px;background:var(--surface-2);color:var(--ink-2);cursor:pointer}.wa-chips button[data-on="1"]{background:#d9fdd3;color:#0a7d3e;font-weight:600}.wa-unread{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#25d366;color:#fff;font-size:11px;font-weight:600}.wa-src{display:block;font-size:11px;color:var(--ink-3);margin-top:1px}.wa-ava-ch{position:absolute;right:-2px;bottom:-2px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #fff;line-height:1}.wa-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-ava{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:600}.wa-pane{display:flex;flex-direction:column;min-height:0;position:relative}.wa-head{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line-soft);background:#f0f2f5}.wa-thread{flex:1 1;min-height:0;overflow-y:auto;padding:12px 16px 16px;background:#efeae2}.wa-empty{flex:1 1;flex-direction:column;gap:8px;align-items:center;color:var(--ink-3);padding:40px 16px;text-align:center;background:#f7f8fa;height:100%}.wa-day,.wa-empty{display:flex;justify-content:center}.wa-day{margin:12px 0}.wa-day span{background:rgba(255,255,255,.92);color:var(--ink-2);font-size:12px;padding:4px 12px;border-radius:8px;box-shadow:0 1px .5px rgba(0,0,0,.1)}.wa-row{display:flex;justify-content:flex-start}.wa-row[data-out="1"]{justify-content:flex-end}.wa-col{display:flex;flex-direction:column;align-items:flex-start;max-width:70%;min-width:0}.wa-col[data-out="1"]{align-items:flex-end}.wa-author{font-size:12px;color:var(--ink-3);font-weight:500;padding:0 4px 2px}.wa-bubble{padding:6px 9px 4px;border-radius:8px;box-shadow:0 1px .5px rgba(0,0,0,.13);max-width:100%;min-width:0;color:#111b21}.wa-bubble.in{background:#fff}.wa-bubble.op{background:#d9fdd3}.wa-bubble.ai{background:#e3ecf7}.wa-bubble[data-handoff="1"]{box-shadow:0 0 0 1.5px #f5b14c}.wa-sticker{max-width:100%}.wa-text{white-space:pre-wrap;word-break:break-word;font-size:14.5px;line-height:1.38}.wa-foot{display:flex;justify-content:flex-end;margin-top:2px}.wa-meta{display:inline-flex;gap:6px;font-size:11px;color:#667781;white-space:nowrap}.wa-fwd{font-size:12px;font-style:italic;color:#667781;margin-bottom:3px}.wa-quote{border-left:4px solid #06cf9c;background:rgba(11,20,26,.05);border-radius:6px;padding:4px 8px;margin-bottom:5px;font-size:13px;color:#54656f}.wa-quote b{display:block;font-size:12px;color:#06a17a}.wa-quote div{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wa-deleted{font-size:12px;color:var(--danger);font-weight:500;margin-bottom:3px}.wa-reacts{display:flex;gap:3px;margin-top:-6px;padding:0 8px;position:relative}.wa-reacts span{background:#fff;border:1px solid var(--line-soft);border-radius:12px;padding:0 5px;font-size:14px;line-height:22px;box-shadow:0 1px 2px rgba(0,0,0,.1)}.wa-transcript{margin-top:4px;padding-top:4px;border-top:1px solid rgba(0,0,0,.08);font-size:13px;font-style:italic;color:#54656f;max-width:320px;white-space:pre-wrap}.wa-link{color:#027eb5;text-decoration:none}.wa-link:hover{text-decoration:underline}.wa-card{display:flex;align-items:center;gap:10px;background:rgba(11,20,26,.05);border-radius:8px;padding:10px;max-width:320px;color:inherit;text-decoration:none}a.wa-card:hover{background:rgba(11,20,26,.09)}.wa-doc-ext{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:44px;border-radius:4px;color:#fff;font-size:10px;font-weight:700}.wa-photo{display:block;overflow:hidden;border-radius:6px;background:rgba(0,0,0,.05)}.wa-photo img{min-width:160px;object-fit:cover}.wa-photo img,.wa-video{display:block;width:100%;max-width:320px;max-height:340px}.wa-video{border-radius:6px}.wa-voice{display:flex;align-items:center;gap:8px;width:300px;max-width:100%}.wa-voice-ava{position:relative;width:52px;height:52px;flex-shrink:0}.wa-voice-face{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-size:17px}.wa-voice-face,.wa-voice-speed{width:100%;height:100%;font-weight:600}.wa-voice-speed{border:0;border-radius:50%;background:rgba(0,0,0,.1);font-size:14px;cursor:pointer;color:var(--ink-2)}.wa-voice-play{display:flex;align-items:center;justify-content:center;width:32px;height:36px;flex-shrink:0;border:0;background:none;color:#54656f;cursor:pointer;padding:0}.wa-voice-play:disabled{opacity:.4;cursor:default}.wa-wave{position:relative;display:flex;flex:1 1;min-width:0;height:36px;align-items:center;justify-content:space-between;cursor:pointer;touch-action:none}.wa-wave-dot{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 1px 2px rgba(0,0,0,.25)}.wa-voice-foot{display:flex;justify-content:space-between;padding-left:38px;font-size:11px;color:#667781}.wa-composer{border-top:1px solid var(--line-soft);background:#f0f2f5;padding:8px 10px}.wa-input{flex:1 1;min-height:40px;max-height:160px;resize:none;border-radius:20px;border:1px solid transparent;background:#fff;padding:9px 14px;font:inherit;font-size:14.5px;line-height:20px;outline:none}.wa-input:focus{border-color:var(--line)}.wa-icon-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:#54656f;cursor:pointer}.wa-icon-btn:hover{background:rgba(0,0,0,.06)}.wa-icon-btn:disabled{opacity:.5}.wa-icon-btn.mobile-only{display:none}.wa-send{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:0;border-radius:50%;background:#25d366;color:#fff;cursor:pointer}.wa-send:hover{background:#1fb457}.wa-send:disabled{opacity:.6}.wa-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:wa-spin .8s linear infinite}.wa-spin.dark{border-color:#54656f rgba(0,0,0,.15) rgba(0,0,0,.15)}@keyframes wa-spin{to{transform:rotate(1turn)}}.wa-rec-dot{width:10px;height:10px;border-radius:50%;background:var(--danger);animation:wa-pulse 1s ease-in-out infinite}@keyframes wa-pulse{50%{opacity:.3}}.wa-att{display:flex;align-items:center;gap:10px;background:#fff;border-radius:10px;padding:6px 8px;font-size:13px}.wa-att-ico{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:8px;background:var(--surface-2);font-size:18px}.wa-drop-wrap{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;gap:12px;padding:14px;background:rgba(240,242,245,.9);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.wa-drop{flex:1 1;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;text-align:center;border:2px dashed var(--line);border-radius:16px;background:#fff;color:var(--ink-3);padding:0 16px}.wa-drop[data-on="1"]{border-color:#25d366;background:#f0fdf4;color:var(--ink)}.wa-closed{border-top:1px solid var(--line-soft);background:#f0f2f5;padding:12px 16px;font-size:13px;color:var(--ink-3);text-align:center}@media (max-width:720px){.chat-grid.wa{border-radius:0;margin:0 -12px;border-left:0;border-right:0}.wa-col{max-width:86%}.wa-icon-btn.mobile-only{display:inline-flex}.wa-thread{padding:10px 10px 14px}}