.app{--navy:#0f2742;--blue:#1f3a5f;--accent:#e07a2f;--accent-dark:#b85d1a;--bg:#eef1f6;--card:#fff;--line:#dde3ec;--soft:#f5f7fb;--text:#18222f;--muted:#667085;--danger:#b3261e;--ok:#14733f;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,sans-serif;color:var(--text);background:var(--bg);min-height:100vh;font-size:14px;line-height:1.45}.app *{box-sizing:border-box}.app h1{margin:0;font-size:26px;line-height:1.2;color:var(--navy)}.app h2{font-size:15px;margin:22px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--blue);color:var(--blue)}.app h2.plain{border:0;padding:0;margin:0 0 14px;font-size:17px;color:var(--navy)}.muted{color:var(--muted);margin:2px 0 0}.appbar{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20;box-shadow:0 2px 10px #0f274247}.appbar-in{max-width:none;margin:0 auto;padding:8px 14px;height:64px;display:flex;align-items:center;gap:10px 12px;flex-wrap:nowrap}.brand{display:flex;align-items:center;gap:10px;min-width:0;flex:none}.mark{width:48px;height:48px;border-radius:10px;background:#fff;display:grid;place-items:center;flex:none;padding:3px;box-sizing:border-box}.mark img{width:100%;height:100%;object-fit:contain;display:block}.brand b{display:block;font-size:16px;line-height:1.2}.brand small{display:block;color:#a9bad0;font-size:12px}.nav{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0}.tab{background:transparent;border:0;color:#d3deec;font:inherit;font-weight:600;padding:9px 11px;min-height:40px;font-size:13.5px;white-space:nowrap;flex:none;border-radius:10px;cursor:pointer;display:flex;gap:6px;align-items:center;transition:background .15s,color .15s}.nav .tab{width:100%;justify-content:space-between;text-align:left;white-space:normal;padding:10px 12px}.tab:hover{background:#ffffff1a;color:#fff}.tab.on{background:#fff;color:var(--navy)}.tab:focus-visible{outline:2px solid #fff;outline-offset:2px}.count{background:var(--accent);color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:1px 8px;min-width:22px;text-align:center}.menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:10px;width:42px;height:42px;font-size:18px;cursor:pointer;flex:none}.menu-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px}.appbar-in .brand{margin-right:auto}.shell{display:flex;align-items:flex-start;min-height:calc(100vh - 64px)}.sidebar{width:236px;flex:none;background:var(--blue);color:#fff;padding:12px 10px;position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.35) transparent}.app-main{flex:1;min-width:0}.side-scrim{display:none}@media screen and (max-width:900px){.menu-toggle{display:grid;place-items:center}.sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;z-index:30;width:260px;max-width:82vw;padding-top:76px;transform:translate(-100%);transition:transform .22s ease;box-shadow:none}.sidebar.open{transform:none;box-shadow:6px 0 24px #0f274259}.side-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f274273;z-index:25}.appbar{z-index:40}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.wrap{max-width:1180px;margin:0 auto;padding:22px 16px 40px}.pagehead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.card,.form{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 1px 2px #1018280d}.btn{padding:9px 16px;min-height:40px;border:1px solid #c5ccd6;background:#fff;border-radius:9px;cursor:pointer;font:inherit;font-weight:600;color:var(--text);transition:background .15s,border-color .15s}.btn:hover{background:#f3f5f9}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.primary:hover{background:var(--navy);border-color:var(--navy)}.btn.small{min-height:34px;padding:6px 12px;font-size:13px}.btn.danger{color:var(--danger);border-color:#efc4c1}.btn.danger:hover{background:#fdecea}.btn:focus-visible,.link:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #2f7de1;outline-offset:1px}.btn:disabled,.link:disabled{opacity:.6;cursor:not-allowed}.link{background:none;border:0;color:#1f5fbf;cursor:pointer;font:inherit;font-weight:600;padding:6px 8px}.link.danger{color:var(--danger)}label,.field label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#4a5363}.field{display:flex;flex-direction:column;gap:4px}.field>label{flex-direction:row;gap:3px;font-weight:600}.req{color:var(--danger)}input,select,textarea{padding:9px 10px;border:1px solid #c5ccd6;border-radius:8px;font:inherit;color:var(--text);width:100%;background:#fff}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger);background:snow}.err{color:var(--danger);font-size:12px}.hint{color:var(--muted);font-size:12px;margin:10px 0 0}.search{padding:9px 12px;border:1px solid #c5ccd6;border-radius:9px;min-width:240px;font:inherit;width:auto}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{grid-column:1/-1}.check{flex-direction:row;align-items:center;gap:6px;margin:8px 0}.check input{width:auto}.form-actions{margin-top:16px}.empty{background:#fff;border:1px dashed #b8c0cc;padding:36px 20px;text-align:center;border-radius:12px;color:var(--muted)}.alert{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#fdecea;color:var(--danger);border:1px solid #f5c2c0;border-radius:9px;padding:8px 12px;margin:0 0 12px}.notice{background:#e8f6ee;color:var(--ok);border:1px solid #bfe3cf;border-radius:9px;padding:9px 12px;margin:0 0 12px}.list{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;border:1px solid var(--line)}.list th,.list td{padding:12px 14px;border-bottom:1px solid #e8ecf2;text-align:left}.list th{background:#e8edf4;color:var(--blue);font-size:13px}.list tbody tr:hover{background:#f8fafd}.list tbody tr:last-child td{border-bottom:0}.r{text-align:right!important}.cust{display:grid;grid-template-columns:minmax(300px,390px) 1fr;gap:20px;align-items:start}.cust>.form{position:sticky;top:86px}.listhead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.listhead h2.plain{margin:0}.listhead .search{flex:1;min-width:200px;max-width:340px}.ccards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.ccard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;border-top:4px solid var(--blue)}.ccard.editing{border-top-color:var(--accent);box-shadow:0 0 0 2px #e07a2f40}.ctop{display:flex;flex-direction:column;gap:6px}.ctop h3{margin:0;font-size:16px;color:var(--navy);overflow-wrap:anywhere}.gst{align-self:flex-start;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--blue)}.cinfo{margin:0;display:grid;gap:8px}.cinfo div{display:grid;grid-template-columns:64px 1fr;gap:8px}.cinfo dt{color:var(--muted);font-size:12px;padding-top:1px}.cinfo dd{margin:0;overflow-wrap:anywhere}.pdesc{margin:0;color:#3a4556;overflow-wrap:anywhere;white-space:pre-line}.cact{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:4px}.comp{display:grid;grid-template-columns:minmax(320px,560px) 1fr;gap:20px;align-items:start}.comp .prev{position:sticky;top:86px}.fs{border:0;margin:0 0 20px;padding:0;min-width:0}.fs legend{font-size:15px;font-weight:700;color:var(--blue);padding:0 0 8px;margin-bottom:10px;border-bottom:2px solid var(--blue);width:100%}.notice.info{background:#eaf1fb;color:#1f3a5f;border-color:#c5d6ee}.prevpaper{border:1px solid var(--line);border-radius:10px;padding:16px;font-size:12px;line-height:1.5;background:#fff}.prevpaper .co h3{margin:0 0 4px;font-size:20px;color:#1f3a5f}.pv-bank{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);overflow-wrap:anywhere}.pv-tax{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-weight:600}.editor{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:16px;padding:16px;align-items:start;max-width:1600px;margin:0 auto}.item{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;background:var(--soft);border:1px solid var(--line);border-radius:10px;margin-bottom:8px}.paper{background:#fff;padding:24px;border-radius:4px;box-shadow:0 1px 4px #00000026;font-size:12px;line-height:1.45;min-width:0}.co{display:flex;align-items:center;justify-content:center;gap:16px;text-align:center}.co-text{flex:1;min-width:0}.co-logo{width:92px;height:92px;object-fit:contain;flex:none}.app .co h1{color:#1f3a5f;font-size:24px}.co p{margin:2px 0}.title{text-align:center;font-weight:700;letter-spacing:2px;margin:10px 0;padding:4px;border-top:2px solid #1f3a5f;border-bottom:2px solid #1f3a5f}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:10px}.big{font-size:15px;font-weight:700}.ship{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid #8fb0d6;margin-bottom:10px}.ship-col{min-width:0}.ship-col+.ship-col{border-left:1px solid #8fb0d6}.ship-col>div{padding:3px 8px;border-bottom:1px solid #e3e7ed}.invmeta{margin-bottom:6px;padding:4px 8px;border:1px solid #8fb0d6;background:#f6f8fb}.ship span{display:inline-block;min-width:150px;color:#6b7482}.ok{color:#166534;background:#e8f7ee;border:1px solid #b7e4c7;padding:8px 12px;border-radius:8px;margin:8px 0}.warnbox{color:#92400e;background:#fff7e6;border:1px solid #f3d9a4;padding:8px 12px;border-radius:8px;margin:8px 0}.itemtotal{text-align:right;padding-top:4px}.actions-bottom{margin-top:16px;justify-content:flex-end}.item input:disabled{background:#eef1f6;color:#222}.scroll{overflow-x:auto}.items{width:100%;border-collapse:collapse}.items th,.items td{border:1px solid #8fb0d6;padding:4px 6px;text-align:right}.items th{background:#e8edf4}.items .l{text-align:left}.items .sub{font-size:11px;color:#6b7482}.totals{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;margin-top:10px}.totals table{border-collapse:collapse;min-width:260px}.totals td{padding:3px 8px;border-bottom:1px solid #e3e7ed}.totals td:last-child{text-align:right}.grand td{font-weight:700;font-size:14px;border-top:2px solid #1f3a5f}.foot{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:16px;margin-top:18px}.foot ol{margin:4px 0;padding-left:18px}.sign{text-align:center;display:flex;flex-direction:column;justify-content:space-between;min-height:110px}.line{border-top:1px solid #1c2330;padding-top:4px}@media screen and (max-width:1100px){.editor{grid-template-columns:1fr}}@media screen and (max-width:960px){.cust,.comp{grid-template-columns:1fr}.cust>.form,.comp .prev{position:static}}@media screen and (max-width:700px){.wrap{padding:16px 12px 32px}.editor{padding:10px}.app h1{font-size:22px}.pagehead>.row{width:100%}.pagehead .search{flex:1 1 100%;min-width:0;width:100%}.pagehead .btn{flex:1}.list,.list tbody,.list tr,.list td{display:block;width:100%}.list{background:transparent;border:0;border-radius:0}.list thead{display:none}.list tr{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:8px 14px}.list td{border:0;padding:5px 0;text-align:left!important;display:flex;justify-content:space-between;gap:12px}.list td:before{content:attr(data-label);color:var(--muted);font-size:12px;flex:none}.list td.actions{justify-content:flex-start;gap:4px;border-top:1px solid #e8ecf2;margin-top:4px;padding-top:6px}.list td.actions:before{content:none}.paper{padding:14px}.two,.foot,.totals,.ship{grid-template-columns:1fr}.ship span{min-width:130px}.ship-col+.ship-col{border-left:0;border-top:1px solid #8fb0d6}.totals table{min-width:0;width:100%}.sign{min-height:80px}}@media screen and (max-width:560px){.appbar-in{padding:10px 12px}.tab{font-size:13px;padding:8px 10px}.grid,.item{grid-template-columns:1fr}.form,.card{padding:14px}.ccards{grid-template-columns:1fr}.listhead .search{max-width:none}.form-actions .btn{flex:1}}@media (prefers-reduced-motion:reduce){.btn,.tab{transition:none}}@media print{body *{visibility:hidden}#invoice,#invoice *{visibility:visible}#invoice{position:absolute;left:0;top:0;width:100%;box-shadow:none;padding:0}.no-print{display:none!important}@page{size:A4;margin:12mm}}.subtabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--line)}.subtab{background:transparent;border:0;border-bottom:3px solid transparent;font:inherit;font-weight:600;color:var(--muted);padding:10px 14px;cursor:pointer;min-height:42px}.subtab.on{color:var(--navy);border-bottom-color:var(--accent)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.stat{display:flex;flex-direction:column;gap:6px;text-align:left;font:inherit;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 1px 2px #1018280d}.stat.clickable{cursor:pointer}.stat.clickable:hover{border-color:var(--accent)}.stat-label{color:var(--muted);font-size:13px;font-weight:600}.stat-value{color:var(--navy);font-size:28px;font-weight:800;line-height:1.1}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.filters .search{flex:1 1 260px;min-width:0}.filters .inline{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.list tfoot td{padding:12px 14px;background:#e8edf4;font-weight:700;border-top:1px solid var(--line)}.break{word-break:break-all}.modal .cinfo div{grid-template-columns:130px 1fr}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:#fff;border-radius:14px;padding:20px;width:100%;max-width:520px;max-height:90vh;overflow:auto;box-shadow:0 10px 30px #00000040}@media (max-width:720px){.list tfoot,.list tfoot tr,.list tfoot td{display:block;width:100%}.list tfoot tr{background:#e8edf4;border-radius:12px;padding:8px 14px}.list tfoot td{padding:4px 0;border:0;display:flex;justify-content:space-between;background:transparent}.list tfoot td:before{content:attr(data-label);color:var(--muted);font-size:12px}.list tfoot td:empty{display:none}}.itemform{width:100%;min-width:1060px;border-collapse:collapse;background:#fff;margin-bottom:10px}.itemform th,.itemform td{border:1px solid var(--line);padding:6px;text-align:right;vertical-align:top}.itemform th{background:#e8edf4;color:var(--blue);font-size:12px;vertical-align:middle}.itemform th.l,.itemform td.l{text-align:left;min-width:230px}.itemform td.l select,.itemform td.l input{margin-bottom:4px}.itemform td input:not([type=checkbox]){min-width:72px;padding:7px 8px}.itemform td input[type=checkbox]{width:auto;margin-top:10px}.itemform .num{padding-top:14px;white-space:nowrap}.itemform .sub{font-size:11px;color:var(--muted)}input[readonly]:not([disabled]){background:#eef1f6}.list td{vertical-align:top}.list tr.editing{background:#fff6ee;box-shadow:inset 3px 0 0 var(--accent)}.list td.actions .btn+.btn{margin-left:4px}.list td.actions .btn{margin-bottom:4px}.list td .gst{display:inline-block;white-space:nowrap}.pdf-capture{box-shadow:none!important;border-radius:0!important;width:100%!important;max-width:none!important;margin:0!important}.paper{--p-navy:#0f2f57;--p-blue:#1d6fb8;--p-teal:#0fa3a3;--p-orange:#f08a24;--p-tint:#eef6fd;--p-line:#8fb0d6;position:relative;border-top:8px solid var(--p-blue);border-image:linear-gradient(90deg,var(--p-navy),var(--p-blue),var(--p-teal),var(--p-orange)) 1;-webkit-print-color-adjust:exact;print-color-adjust:exact}.paper .co{background:linear-gradient(180deg,#f3f9ff,#fff);border-bottom:1px solid #d6e6f6;padding:12px 8px 10px;margin:-4px -8px 0}.app .paper .co h1{color:var(--p-navy);font-size:26px;letter-spacing:.4px}.paper .co p{color:#33475f}.paper .title{border:0;margin:14px auto;padding:7px 18px;width:max-content;max-width:100%;color:#fff;font-size:15px;letter-spacing:4px;border-radius:999px;background:linear-gradient(90deg,var(--p-navy),var(--p-blue) 55%,var(--p-teal));box-shadow:0 2px 0 var(--p-orange)}.paper .two b{color:var(--p-blue)}.paper .two .big{color:var(--p-navy);font-weight:700;font-size:14px}.paper .invmeta{border:1px solid #bcd6ef;border-left:5px solid var(--p-orange);border-radius:6px;background:linear-gradient(90deg,#fff4e6,#eef6fd);padding:6px 10px}.paper .invmeta b{color:var(--p-navy)}.paper .ship{border-color:var(--p-line);border-radius:6px;overflow:hidden;background:var(--p-tint)}.paper .ship-col>div{border-bottom-color:#d3e4f5}.paper .ship span{color:var(--p-blue);font-weight:600}.paper .items th{background:linear-gradient(180deg,var(--p-blue),var(--p-navy));color:#fff;border-color:#2a5d94;font-weight:600;letter-spacing:.2px}.paper .items td{border-color:#c5d9ee}.paper .items tbody tr:nth-child(2n) td{background:#f3f8fd}.paper .items .sub{color:#5b7391}.paper .items td .sub{color:var(--p-teal);font-weight:600}.paper .totals .words{background:var(--p-tint);border-left:4px solid var(--p-teal);border-radius:4px;padding:8px 10px;align-self:start}.paper .totals td{border-bottom-color:#d3e4f5}.paper .totals tr:first-child td:first-child{color:var(--p-blue);font-weight:600}.paper .grand td{background:linear-gradient(90deg,var(--p-navy),var(--p-blue));color:#fff;border-top:0;font-size:15px;padding:7px 10px}.paper .foot b{color:var(--p-blue)}.paper .foot>div:first-child{background:#f8fbff;border:1px solid #d6e6f6;border-radius:6px;padding:8px 12px}.paper .sign b{color:var(--p-navy)}.paper .sign .line{border-top:2px solid var(--p-orange);color:#33475f}.paper{overflow-wrap:anywhere}.paper .two>div,.paper .ship-col>div,.paper .totals .words,.paper .foot>div{min-width:0;overflow-wrap:anywhere}.paper .ship span{min-width:0;width:150px;vertical-align:top;margin-right:6px}.pdf-capture{box-sizing:border-box!important;padding:18px!important;overflow:visible!important}.pdf-capture *{box-sizing:border-box}.pdf-capture .scroll{overflow:visible!important}.pdf-capture .ship span{width:120px}.pdf-capture .items{width:100%;table-layout:auto;font-size:11px}.pdf-capture .items th,.pdf-capture .items td{padding:4px}.pdf-capture .items td:not(.l),.pdf-capture .items th{white-space:nowrap}.pdf-capture .items td.l{overflow-wrap:anywhere;word-break:break-word}.pdf-capture .totals table{min-width:0;width:230px}.pdf-capture .totals td{white-space:nowrap}.paper{font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif;color:#1c2330}.paper .co h1{margin:0 0 4px;font-size:26px;line-height:1.2;letter-spacing:.4px;color:var(--p-navy)}.paper .co p{margin:2px 0;line-height:1.4}.paper .co-text{display:flex;flex-direction:column;justify-content:center}.paper .co{padding:10px 8px 8px}.paper .ship-col+.ship-col span{width:185px}.pdf-capture .ship-col+.ship-col span{width:160px}.custcard{background:#eef6fd;border:1px solid #bcd6ef;border-left:4px solid #1d6fb8;border-radius:8px;padding:8px 12px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.custcard b{color:#0f2f57;font-size:14px}.userbox{display:flex;align-items:center;gap:10px;color:#d3deec}.userbox .who{font-weight:600;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userbox .btn{background:transparent;color:#fff;border-color:#ffffff73}.userbox .btn:hover{background:#ffffff1f}.login-page{display:grid;place-items:center;padding:20px}.login-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:14px;padding:24px}.login-brand{display:flex;align-items:center;gap:12px}.login-brand .mark{border:1px solid var(--line)}.login-brand h1{font-size:22px}.role-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:4px}.role-tab{border:0;background:transparent;font:inherit;font-weight:600;color:var(--muted);padding:9px 8px;border-radius:7px;cursor:pointer;min-height:40px}.role-tab.on{background:var(--blue);color:#fff}.role-tab:focus-visible{outline:2px solid #2f7de1;outline-offset:1px}.login-btn{width:100%;margin-top:4px}.pwd{display:flex;gap:6px}.pwd input{flex:1;min-width:0}.pwd .btn{flex:none}.login-card .alert{margin:0}.details{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:0}.details dt{font-size:12px;color:var(--muted)}.details dd{margin:2px 0 0;font-weight:600;word-break:break-word}.partner-card{max-width:640px}@media (max-width:560px){.details{grid-template-columns:1fr}.userbox .who{display:none}}.cust-type{border:0;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:10px;min-width:0}.cust-type legend{font-size:12px;font-weight:600;color:#4a5363;padding:0;margin-bottom:6px}.seg{display:flex;gap:8px;flex-wrap:wrap}.seg label{flex-direction:row;align-items:center;gap:8px;padding:9px 14px;border:1px solid #c5ccd6;border-radius:8px;background:#fff;font-size:13px;font-weight:600;color:var(--text);cursor:pointer}.seg label.on{border-color:#2f7de1;background:#eef5ff;color:var(--blue)}.seg input{width:auto;margin:0;padding:0}.tag{display:inline-block;white-space:nowrap;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;color:#4a5363}.tag.partner{background:#eef5ff;color:var(--blue)}.two.tight{margin-bottom:4px}.two.tight .invmeta:last-child{margin-bottom:0}.intro{margin:0 0 8px;font-size:inherit;line-height:1.4}.intro p{margin:0 0 3px}.intro p:last-child{margin-bottom:0}.est-terms{margin:4px 0;font-size:12px;line-height:1.45}.est-terms p{margin:0}.est-terms .gap{height:8px}.extra-col{display:flex;flex-direction:column;gap:8px;min-width:0}.extra-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px;align-items:center}.extra-col>.btn{align-self:flex-start}.seg.filter{margin:0 0 10px}.tag.mode-sea{background:#e6f4ff;color:#0b5cad;border-color:#b9dcf7}.tag.mode-air{background:#fff1e0;color:#a65a00;border-color:#f3d2a6}.stat-sub{color:var(--muted);font-size:12px;font-weight:600}.dash-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin-top:18px}.dash-card{min-width:0}.dash-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.dash-head h2.plain{margin:0;font-size:15px}.dash-rows{list-style:none;margin:0;padding:0}.dash-rows li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.dash-rows li:last-child{border-bottom:0}.dash-rows li>span:first-child{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.dash-rows small{color:var(--muted);font-size:12px}.dash-rows .amt{font-weight:700;color:var(--navy);white-space:nowrap}.profile-card{max-width:720px}.profile-card h2.plain.sub{margin-top:20px;font-size:15px}.dash-actions{gap:8px;flex-wrap:wrap}.dash-wide{margin-top:18px}.bars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:end;height:190px;padding-top:8px}.bar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;min-width:0}.bar-fill{width:60%;max-width:56px;background:linear-gradient(180deg,var(--accent,#2f7de1),var(--navy,#0f2f57));border-radius:6px 6px 0 0;min-height:2px}.bar-amt{font-size:11px;color:var(--muted);font-weight:600;text-align:center;overflow-wrap:anywhere}.bar-label{font-size:12px;font-weight:600;color:var(--navy)}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 10px}.chips>b{min-width:70px;font-size:13px}.total-row td{border-top:2px solid var(--line);background:var(--soft)}@media (max-width:640px){.bars{gap:6px}.bar-amt{font-size:10px}}.profile-menu{position:relative;flex:none}.profile-btn{border:1px solid rgba(255,255,255,.4)}.profile-btn.on{border-color:#fff}.profile-btn .caret{font-size:11px}.profile-menu .menu{position:absolute;right:0;top:calc(100% + 6px);min-width:170px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #0f274240;padding:6px;z-index:40}.profile-menu .menu button{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:8px;padding:9px 12px;font:inherit;font-weight:600;color:var(--navy);cursor:pointer}.profile-menu .menu button:hover,.profile-menu .menu button:focus-visible{background:var(--soft);outline:none}.profile-menu .menu button.danger{color:var(--danger)}.profile-menu .menu button.on{background:var(--soft)}.itemsrow>td{background:var(--soft);padding:10px 14px}.subitems{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.subitems th,.subitems td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.subitems th.r,.subitems td.r{text-align:right}@media screen and (max-width:700px){.list .itemsrow,.list .itemsrow>td{display:block;width:100%;border:0;padding:0;background:transparent}.subitems{display:block;overflow-x:auto}}.shell{background:radial-gradient(520px 420px at 6% 8%,rgba(224,122,47,.3),transparent 70%),radial-gradient(620px 520px at 28% 92%,rgba(56,120,220,.28),transparent 70%),radial-gradient(520px 460px at 92% 18%,rgba(120,90,220,.16),transparent 70%),var(--bg);background-attachment:fixed}.sidebar{margin:12px 0 12px 12px;height:calc(100vh - 88px);top:76px;border-radius:18px;background:linear-gradient(160deg,#ffffff94,#ffffff42);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.65);box-shadow:0 10px 32px #0f274229,inset 0 1px #ffffffb3;color:var(--navy);padding:12px 10px}.sidebar .tab{color:#24405f;border:1px solid transparent;border-radius:12px}.sidebar .tab:hover{background:#ffffff8c;color:var(--navy);border-color:#ffffffb3}.sidebar .tab.on{background:linear-gradient(135deg,#ffffffeb,#fff9);color:var(--navy);border-color:#fffffff2;box-shadow:0 4px 14px #0f274224,inset 3px 0 0 var(--accent)}.sidebar .tab:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:#1f3a5f40;border-radius:6px}.sidebar{scrollbar-color:rgba(31,58,95,.3) transparent}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.sidebar{background:#f5f8fdf5}}@media screen and (max-width:900px){.sidebar{margin:0;border-radius:0 18px 18px 0;top:0;height:100vh;background:linear-gradient(160deg,#ffffffb8,#fff6);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%)}}.stat-sub.warn{color:var(--danger)}small.block{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:2px;overflow-wrap:anywhere}.tag.out-interested{background:#eaf1fb;color:#1f3a5f;border-color:#c5d6ee}.tag.out-followup{background:#fff6e5;color:#8a5a00;border-color:#f3dba6}.tag.out-won{background:#e8f6ee;color:var(--ok);border-color:#bfe3cf}.tag.out-lost{background:#fdecea;color:var(--danger);border-color:#f5c2c0}.list tr.editing{background:#fff8ee}.modal.wide-modal{max-width:980px}.modal .stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(-36px,26px) scale(1.12)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-9deg) scale(1.08)}60%{transform:rotate(7deg) scale(1.08)}}@keyframes grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes meter{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadein{to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes donut{0%{stroke-dasharray:0 var(--c)}}@keyframes shimmer{0%{background-position:-300px 0}to{background-position:300px 0}}.rise{animation:rise .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0)*60ms)}.pdash{display:block}.hero{position:relative;overflow:hidden;border-radius:20px;padding:26px 28px;color:#fff;margin-bottom:20px;background:linear-gradient(120deg,#0f2742,#1f3a5f 55%,#2a5a96);box-shadow:0 14px 34px #0f274247;animation:rise .6s cubic-bezier(.2,.7,.2,1) both}.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.hero:before{width:300px;height:300px;right:-70px;top:-120px;background:radial-gradient(circle at 35% 35%,#e07a2fe6,#e07a2f00 70%);animation:drift 9s ease-in-out infinite alternate}.hero:after{width:240px;height:240px;right:24%;bottom:-140px;background:radial-gradient(circle,#78aaff8c,#78aaff00 70%);animation:drift 12s ease-in-out infinite alternate-reverse}.hero-in{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.app .hero h1{color:#fff;font-size:28px}.hero p{margin:6px 0 0;color:#cfdcf0;max-width:560px}.hero-actions{gap:8px}.hero .btn{background:#ffffff24;color:#fff;border-color:#fff6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero .btn:hover{background:#ffffff42}.hero .btn.primary{background:var(--accent);border-color:var(--accent)}.hero .btn.primary:hover{background:var(--accent-dark)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.kpi{--tone:#1f5fbf;--tone-bg:#eaf1fb;position:relative;overflow:hidden;text-align:left;font:inherit;display:flex;flex-direction:column;gap:3px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;cursor:pointer;box-shadow:0 1px 2px #1018280d;transition:transform .22s,box-shadow .22s,border-color .22s;animation:rise .55s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0)*55ms)}.kpi.static{cursor:default}.kpi:after{content:"";position:absolute;right:-34px;bottom:-46px;width:120px;height:120px;border-radius:50%;background:var(--tone-bg);opacity:.75;transition:transform .4s}.kpi:hover{transform:translateY(-4px);box-shadow:0 14px 28px #0f274224;border-color:var(--tone)}.kpi:hover:after{transform:scale(1.4)}.kpi:hover .kpi-ico{animation:wiggle .5s}.kpi:focus-visible{outline:2px solid var(--tone);outline-offset:2px}.kpi>*{position:relative;z-index:1}.kpi-ico{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--tone-bg);color:var(--tone);margin-bottom:8px}.kpi-label{color:var(--muted);font-size:13px;font-weight:600}.kpi-value{color:var(--navy);font-size:28px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.kpi-sub{color:var(--muted);font-size:12px;font-weight:600}.kpi-sub.warn{color:var(--danger)}.kpi[data-tone=orange]{--tone:#e07a2f;--tone-bg:#fdeede}.kpi[data-tone=green]{--tone:#14733f;--tone-bg:#e3f5ea}.kpi[data-tone=purple]{--tone:#6d4fd1;--tone-bg:#efeafc}.kpi[data-tone=teal]{--tone:#0f8b8d;--tone-bg:#dcf4f4}.kpi[data-tone=red]{--tone:#c62828;--tone-bg:#fde8e8}.kpi.skel{min-height:132px;cursor:default;background:linear-gradient(90deg,#eef1f6 25%,#f8fafd,#eef1f6 75%);background-size:600px 100%;animation:shimmer 1.2s linear infinite}.kpi.skel:after{display:none}.dash-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;margin-top:18px}.dash-split>.card{margin:0}@media screen and (max-width:900px){.dash-split{grid-template-columns:1fr}}.areachart{width:100%;height:auto;display:block;overflow:visible}.areachart .grid-line{stroke:#e3e8f0;stroke-dasharray:3 5}.areachart .area-fill{opacity:0;animation:fadein 1s ease .8s forwards}.areachart .area-line{fill:none;stroke:var(--accent);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.4s cubic-bezier(.4,.1,.2,1) .15s forwards}.areachart .area-dot{fill:#fff;stroke:var(--accent);stroke-width:2.6;opacity:0;transform-box:fill-box;transform-origin:center;animation:pop .45s ease forwards;animation-delay:calc(.7s + var(--i,0)*.12s);transition:r .15s;cursor:default}.areachart .area-dot:hover{r:7}.areachart .area-val{fill:var(--navy);font-size:12px;font-weight:700;opacity:0;animation:fadein .5s ease forwards;animation-delay:calc(.9s + var(--i,0)*.12s)}.areachart .area-lbl{fill:var(--muted);font-size:12px;font-weight:600}.donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.donut{position:relative;flex:none}.donut svg{display:block}.donut .track{fill:none;stroke:#e8edf4}.donut .seg{fill:none;transform:rotate(-90deg);transform-box:fill-box;transform-origin:center;animation:donut 1.1s cubic-bezier(.2,.8,.2,1) both}.donut-c{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-c b{font-size:24px;font-weight:800;color:var(--navy);line-height:1.1}.donut-c small{color:var(--muted);font-size:12px;font-weight:600}.legend{list-style:none;margin:0;padding:0;display:grid;gap:8px;min-width:150px;flex:1}.legend li{display:flex;align-items:center;gap:8px;font-size:13px;color:#4a5363}.legend li i{width:11px;height:11px;border-radius:4px;flex:none}.legend li b{margin-left:auto;color:var(--navy)}.meter{height:7px;background:#e8edf4;border-radius:7px;overflow:hidden;min-width:90px}.meter>i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,var(--accent),#f4a866);border-radius:7px;transform-origin:left;animation:meter 1.1s cubic-bezier(.2,.8,.2,1) .2s both}.meters{list-style:none;margin:0;padding:0;display:grid;gap:12px}.meters li{display:grid;gap:5px}.meters li>span{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:600;color:var(--text);overflow-wrap:anywhere}.meters li>span b{color:var(--navy)}.meters small{color:var(--muted);font-size:12px}.pdash .bar-fill,.dash .bar-fill{transform-origin:bottom;animation:grow .9s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(.15s + var(--i,0)*.09s)}.pdash .bar:hover .bar-fill{filter:brightness(1.12)}.dash-rows li{transition:background .15s,transform .15s;border-radius:8px;padding-left:6px;padding-right:6px}.dash-rows li:hover{background:var(--soft);transform:translate(3px)}.dash .card,.pdash .card{transition:box-shadow .2s,transform .2s}.dash .card:hover,.pdash .card:hover{box-shadow:0 10px 24px #0f27421a}@media (prefers-reduced-motion:reduce){.hero,.hero:before,.hero:after,.rise,.kpi,.kpi.skel,.pdash .bar-fill,.dash .bar-fill,.meter>i,.donut .seg,.areachart .area-dot,.areachart .area-val{animation:none!important}.areachart .area-line{animation:none!important;stroke-dashoffset:0}.areachart .area-fill,.areachart .area-dot,.areachart .area-val{opacity:1!important}.kpi,.kpi:after,.dash-rows li{transition:none}.kpi:hover,.dash-rows li:hover{transform:none}}
