:root{--bg:#f5f6f8;--panel:#fff;--ink:#111827;--muted:#7c8798;--line:#e7e9ee;--soft:#f0f2f5;--blue:#0a84ff;--blue2:#eaf4ff;--green:#19a974;--orange:#f59e0b;--red:#ef4444;--purple:#7c3aed;--shadow:0 10px 32px rgba(16,24,40,.055);--radius:18px;--sidebar:220px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Microsoft YaHei","Noto Sans Thai",Inter,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:rgba(249,250,252,.94);backdrop-filter:blur(20px);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:60}.brand-row{height:66px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px;background:linear-gradient(160deg,#2b9cff,#0068e6);box-shadow:0 7px 20px rgba(10,132,255,.25)}.brand>span:last-child{display:grid;line-height:1.02}.brand b{font-size:15px;letter-spacing:.2px}.brand small{font-size:9px;color:#9aa4b1;letter-spacing:1.4px;margin-top:4px}.sidebar-close{display:none;border:0;background:transparent;font-size:24px;color:#818a98}.side-nav{padding:4px 10px 90px;overflow:auto;scrollbar-width:none}.side-nav::-webkit-scrollbar{display:none}.side-nav section+section{margin-top:14px}.nav-label{padding:0 10px 6px;font-size:10px;font-weight:700;color:#a5aebb;letter-spacing:.08em;text-transform:uppercase}.nav-item{height:36px;border-radius:11px;display:flex;align-items:center;gap:10px;padding:0 10px;color:#4b5563;font-weight:600;font-size:13px;margin:1px 0}.nav-item:hover{background:#eef1f5;color:#202938}.nav-item.active{background:#e8f2ff;color:#0673e8}.nav-icon{width:18px;height:18px;display:grid;place-items:center}.nav-icon svg,.menu-button svg,.mobile-tabbar svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.side-foot{position:absolute;left:12px;right:12px;bottom:12px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:10px 12px;display:flex;align-items:center;gap:9px;box-shadow:0 8px 18px rgba(0,0,0,.03)}.live-dot{width:8px;height:8px;border-radius:50%;background:#26b67a;box-shadow:0 0 0 4px rgba(38,182,122,.12)}.side-foot div:last-child{display:grid}.side-foot b{font-size:11px}.side-foot small{color:#9ca3af;font-size:9px}.main{grid-column:2;min-width:0}.topbar{height:66px;background:rgba(255,255,255,.88);backdrop-filter:blur(22px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:45;display:flex;align-items:center;justify-content:space-between;padding:0 22px}.top-left,.top-right{display:flex;align-items:center;gap:10px}.top-left{min-width:0}.top-left .crumb{color:#798393;font-size:12px}.top-left>span{color:#c3c8d0}.top-left strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-button{display:none;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;align-items:center;justify-content:center}.group-chip{height:34px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:0 12px;display:flex;align-items:center;font-size:12px;font-weight:700;color:#485366}.group-chip.active{background:#111827;color:#fff;border-color:#111827}.company-switch select{height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 34px 0 12px;max-width:250px;font-weight:650;font-size:12px;outline:none}.lang-switch{height:34px;background:#eef0f3;border-radius:10px;display:flex;padding:3px}.lang-switch a{min-width:30px;border-radius:8px;display:grid;place-items:center;font-size:10px;font-weight:750;color:#7c8694}.lang-switch a.active{background:#fff;color:#111827;box-shadow:0 2px 8px rgba(0,0,0,.06)}.user-pill{display:flex;align-items:center;gap:8px;border-left:1px solid var(--line);padding-left:10px}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#ecf2fa;color:#2d6cae;font-weight:800}.user-pill div{display:grid;line-height:1.15}.user-pill b{font-size:11px}.user-pill small{font-size:9px;color:#98a1ad}.signout{font-size:11px;color:#818a98}.content{padding:22px;max-width:1720px;margin:0 auto}.app-footer{padding:18px 22px 28px;color:#a2aab6;font-size:10px;display:flex;justify-content:space-between}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:0 0 18px}.page-head>div:first-child{min-width:0}.page-kicker,.section-kicker,.eyebrow{display:block;font-size:9px;letter-spacing:.16em;font-weight:800;color:#a3acb8;text-transform:uppercase}.page-head h1{margin:5px 0 3px;font-size:24px;line-height:1.16;letter-spacing:-.02em}.page-head p{margin:0;max-width:820px;color:#7d8795;font-size:12px;line-height:1.6}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.btn{appearance:none;border:0;height:34px;border-radius:10px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#eef1f5;color:#445064;font-size:12px;font-weight:720;cursor:pointer;transition:.15s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:#0a84ff;color:#fff;box-shadow:0 5px 14px rgba(10,132,255,.18)}.btn.soft{background:#eaf4ff;color:#0871da}.btn.ghost{background:#fff;border:1px solid var(--line)}.btn.danger{background:#fff1f1;color:#d83737}.btn.tiny{height:28px;border-radius:8px;padding:0 9px;font-size:10px}.date-pill,.tax-period,.executive-filter{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:5px 7px}.date-pill span,.tax-period span{font-size:10px;color:#818b99;font-weight:700;padding-left:4px}.date-pill input,.tax-period input,.executive-filter input,.executive-filter select{border:0;background:transparent;outline:none;height:28px;font-size:11px}.group-hero{background:linear-gradient(135deg,#101828 0%,#1f2937 70%,#2c3441 100%);color:#fff;border-radius:22px;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:0 18px 48px rgba(17,24,39,.12);margin-bottom:14px}.group-hero .eyebrow{color:#8fd0ff}.group-hero h2{margin:7px 0 6px;font-size:23px;letter-spacing:-.02em}.group-hero p{margin:0;color:#b7c0cd;max-width:780px;font-size:11px;line-height:1.6}.hero-cta{display:flex;gap:8px;flex-shrink:0}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 10px}.metrics-grid.small{margin:12px 0}.metric-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 15px;min-height:98px;box-shadow:0 5px 16px rgba(17,24,39,.025)}.metric-card:after{content:"";position:absolute;width:62px;height:62px;border-radius:50%;right:-18px;bottom:-24px;background:rgba(10,132,255,.07)}.metric-card.green:after{background:rgba(25,169,116,.08)}.metric-card.orange:after{background:rgba(245,158,11,.09)}.metric-card.purple:after{background:rgba(124,58,237,.08)}.metric-label{font-size:10px;color:#7d8795;font-weight:700}.metric-card strong{display:block;margin-top:12px;font-size:20px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-card small{display:block;margin-top:4px;color:#9aa3af;font-size:9px}.company-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}.company-snapshot{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 14px;display:grid;grid-template-columns:1fr auto;gap:5px 10px;min-width:0}.company-snapshot:hover{border-color:#cbd8e7;box-shadow:0 8px 18px rgba(19,33,52,.04)}.company-snapshot>div:first-child{min-width:0}.company-snapshot>div:first-child>span{font-size:12px;font-weight:760}.company-snapshot small{display:block;color:#a1a9b5;font-size:8px;margin-top:3px}.company-snapshot>strong{font-size:14px}.snapshot-pair{grid-column:1/-1;display:flex;gap:14px;border-top:1px solid #f0f2f5;padding-top:7px;margin-top:3px}.snapshot-pair span{font-size:9px;color:#8993a1}.snapshot-pair b{color:#344052}.mini-tag{font-size:8px;padding:2px 5px;border-radius:6px;margin-left:5px}.mini-tag.boi{background:#e8fff5;color:#087a51}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 5px 16px rgba(17,24,39,.02)}.card-head{min-height:48px;padding:11px 14px;border-bottom:1px solid #f0f2f5;display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h2{font-size:13px;margin:2px 0 0}.card-head>a,.card-actions>a{font-size:10px;color:#5d86ae;font-weight:700}.card-body{padding:14px}.card-body.flush{padding:0}.compact-list{display:grid}.compact-row{min-height:54px;padding:9px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #f2f3f5}.compact-row:last-child{border-bottom:0}.compact-row>div:first-child{min-width:0}.compact-row b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}.compact-row small{display:block;color:#98a2af;font-size:9px;margin-top:3px}.compact-row>div:last-child{text-align:right}.compact-row strong{display:block;font-size:11px}.danger-text{color:#d74747!important}.control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.control-grid a{background:#f7f8fa;border-radius:12px;padding:14px;display:grid;gap:5px}.control-grid b{font-size:20px}.control-grid span{font-size:9px;color:#8c96a4}.notice{border:1px solid #dce8f7;background:#f5f9ff;color:#3c5878;padding:10px 12px;border-radius:12px;margin:0 0 14px;font-size:11px;display:flex;gap:10px;align-items:flex-start}.notice.viewer{background:#fff9ec;border-color:#f7e4b1;color:#7d6130}.notice.error{background:#fff1f1;border-color:#ffd4d4;color:#a63838}.notice.success{background:#effaf5;border-color:#c9eddd;color:#1c7958}.notice.info{background:#f3f8ff}.notice b{display:block}.notice small{display:block;margin-top:2px;line-height:1.5}.seg-tabs{display:flex;gap:4px;background:#eceff3;border-radius:12px;padding:4px;width:max-content;max-width:100%;overflow:auto;margin-bottom:12px}.seg-tabs a{height:30px;padding:0 13px;border-radius:9px;display:flex;align-items:center;font-size:10px;font-weight:720;color:#6f7987;white-space:nowrap}.seg-tabs a.active{background:#fff;color:#111827;box-shadow:0 2px 8px rgba(0,0,0,.06)}.table-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.table-scroll{overflow:auto}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:820px}.data-table th{position:sticky;top:0;background:#f8f9fb;color:#7a8493;text-align:left;font-size:9px;font-weight:760;letter-spacing:.02em;padding:9px 11px;border-bottom:1px solid var(--line);white-space:nowrap;z-index:1}.data-table td{font-size:10.5px;padding:9px 11px;border-bottom:1px solid #f0f1f3;color:#344052;vertical-align:middle;white-space:nowrap}.data-table tbody tr:hover td{background:#fbfcfd}.data-table tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.empty-state{padding:30px!important;text-align:center;color:#a3acb8!important}.row-actions{display:flex;align-items:center;gap:5px;justify-content:flex-end}.row-actions form{margin:0}.badge{display:inline-flex;height:21px;align-items:center;border-radius:7px;padding:0 7px;font-size:8px;font-weight:760;background:#f0f2f5;color:#6f7886}.badge.good{background:#e9f8f2;color:#137d5a}.badge.warn{background:#fff5df;color:#a96a00}.badge.bad{background:#fff0f0;color:#c63e3e}.badge.neutral{background:#eff2f6;color:#667180}.filter-bar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin-bottom:10px}.filter-bar .field{min-width:140px;margin:0}.field{display:grid;gap:5px;align-content:start}.field label{font-size:9px;font-weight:730;color:#7f8996}.field label i{color:#ea4a4a;font-style:normal}.field input,.field select,.field textarea{width:100%;border:1px solid #dfe3e9;background:#fff;border-radius:10px;padding:0 10px;outline:none;font-size:11px;transition:.15s}.field input,.field select{height:36px}.field textarea{min-height:80px;padding:9px 10px;resize:vertical;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8bc5ff;box-shadow:0 0 0 3px rgba(10,132,255,.07)}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.span-3{grid-column:1/-1}.editor-panel,.form-card,.editor-sheet{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow)}.editor-title,.form-title,.editor-head{min-height:56px;padding:12px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.editor-title h2,.form-title h2,.editor-head h2{margin:2px 0 0;font-size:14px}.editor-title>span,.editor-title div>span,.editor-head div>span{font-size:8px;color:#a0a9b5;letter-spacing:.12em}.editor-title>a,.form-title>a,.editor-head>a,.sheet-close{width:30px;height:30px;border-radius:9px;background:#f1f3f6;display:grid;place-items:center;font-size:18px;color:#707a88}.editor-panel form>.form-grid,.form-card form>.form-grid,.editor-sheet form>.form-grid{padding:14px 16px}.form-actions,.modal-foot{border-top:1px solid var(--line);padding:10px 16px;display:flex;justify-content:flex-end;gap:7px;background:#fbfcfd}.upload-box{border:1px dashed #cad3de;border-radius:12px;padding:10px 12px;display:flex!important;align-items:center;gap:10px;cursor:pointer;background:#fafbfc}.upload-box input{display:none}.upload-plus{width:30px;height:30px;border-radius:9px;background:#eaf4ff;color:#0876e1;display:grid;place-items:center;font-size:16px}.upload-box span:last-child{display:grid}.upload-box b{font-size:10px}.upload-box small{font-size:8px;color:#98a2ae}.attachment-panel{margin:0 16px 14px;border:1px solid var(--line);border-radius:13px;overflow:hidden}.attachment-title{height:38px;padding:0 11px;background:#fafbfc;display:flex;align-items:center;justify-content:space-between}.attachment-title b{font-size:10px}.attachment-title span{font-size:8px;background:#edf0f3;padding:2px 6px;border-radius:6px}.attachment-empty{padding:18px;text-align:center;color:#a0a9b6;font-size:9px}.attachment-list{display:grid}.attachment-list a{padding:9px 11px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;border-top:1px solid #f0f2f5}.file-dot{min-width:30px;height:24px;border-radius:7px;background:#eef5ff;color:#2373c9;font-size:7px;display:grid;place-items:center;font-weight:800}.attachment-list b{font-size:9px}.attachment-list small{font-size:8px;color:#9ba4b0;display:block;margin-top:2px}.inline-files{display:flex;gap:4px;max-width:240px;overflow:auto}.inline-files a{font-size:8px;padding:3px 6px;border-radius:6px;background:#eff5fb;color:#3975a8}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.detail-item{background:#f8f9fb;border-radius:11px;padding:10px}.detail-item label{display:block;font-size:8px;color:#99a2ae;margin-bottom:4px}.detail-item b{font-size:11px}.tax-period{width:max-content;margin:0 0 10px}.executive-filter{width:max-content;margin-bottom:10px}.report-launch-grid,.quick-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.report-launch-grid a,.quick-report{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;display:flex;align-items:center;gap:10px}.report-launch-grid span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eef4fb;color:#4e7fab;font-size:9px;font-weight:800}.report-launch-grid b,.quick-report b{font-size:10px}.quick-report small{display:block;color:#98a2ae;font-size:8px;margin-top:2px}.quick-report.active-report{border-color:#9dcfff;background:#f7fbff}.muted{color:#a3abb7}.mobile-tabbar,.sidebar-scrim{display:none}
@media(max-width:1180px){:root{--sidebar:76px}.brand>span:last-child,.nav-item>span:last-child,.nav-label,.side-foot div:last-child{display:none}.brand-row{justify-content:center}.nav-item{justify-content:center;padding:0}.side-foot{justify-content:center}.company-switch select{max-width:190px}.user-pill div{display:none}.content{padding:18px}.metric-card strong{font-size:17px}.dashboard-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){body{padding-bottom:70px}.app-shell{display:block}.sidebar{transform:translateX(-105%);width:286px;box-shadow:20px 0 55px rgba(0,0,0,.15);transition:.2s ease}.sidebar.open{transform:none}.brand>span:last-child,.nav-item>span:last-child,.nav-label,.side-foot div:last-child{display:grid}.nav-item{justify-content:flex-start;padding:0 10px}.sidebar-close{display:block}.side-foot{justify-content:flex-start}.sidebar-scrim{display:block;position:fixed;inset:0;background:rgba(19,26,36,.36);backdrop-filter:blur(3px);opacity:0;pointer-events:none;z-index:55;transition:.2s}.sidebar-scrim.show{opacity:1;pointer-events:auto}.main{width:100%}.topbar{height:54px;padding:0 12px}.menu-button{display:flex}.top-left .crumb,.top-left>span,.top-left strong{display:none}.group-chip,.signout,.user-pill{display:none}.company-switch select{max-width:185px;height:32px}.lang-switch{height:32px}.content{padding:12px}.page-head{margin-bottom:12px;align-items:center}.page-head h1{font-size:20px}.page-head p{display:none}.page-kicker{font-size:8px}.group-hero{padding:16px;border-radius:18px;align-items:flex-start}.group-hero h2{font-size:19px}.group-hero p{font-size:10px}.hero-cta{flex-direction:column}.metrics-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:88px;padding:12px}.metric-card strong{font-size:15px;margin-top:10px}.company-strip{grid-template-columns:1fr;gap:7px}.company-snapshot{padding:11px 12px}.dashboard-grid{gap:8px}.form-grid{grid-template-columns:1fr 1fr;gap:9px}.span-3{grid-column:1/-1}.detail-grid{grid-template-columns:1fr 1fr}.report-launch-grid,.quick-report-grid{grid-template-columns:1fr 1fr}.mobile-tabbar{position:fixed;z-index:50;left:8px;right:8px;bottom:8px;height:58px;border:1px solid rgba(224,227,232,.9);border-radius:18px;background:rgba(255,255,255,.9);backdrop-filter:blur(22px);display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 12px 35px rgba(16,24,40,.14);padding:5px 4px env(safe-area-inset-bottom)}.mobile-tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#87909d;border-radius:13px}.mobile-tabbar a.active{color:#0878e7;background:#edf6ff}.mobile-tabbar span{height:19px}.mobile-tabbar small{font-size:7.5px;font-weight:700}.app-footer{display:none}.data-table{min-width:760px}.table-card{border-radius:13px}.editor-panel,.form-card,.editor-sheet{border-radius:15px}.filter-bar{overflow:auto;flex-wrap:nowrap}.filter-bar .field{min-width:140px}.compact-row b{max-width:220px}}
@media(max-width:520px){.top-right{gap:5px}.company-switch select{max-width:145px;font-size:10px}.lang-switch a{min-width:25px}.content{padding:10px}.page-head{gap:8px}.page-head h1{font-size:18px}.page-actions .btn{height:32px;padding:0 10px}.date-pill span{display:none}.group-hero{display:grid}.hero-cta{display:grid;grid-template-columns:1fr 1fr}.metrics-grid{gap:6px}.metric-card{border-radius:14px;min-height:82px}.metric-card strong{font-size:14px}.metric-card small{font-size:8px}.company-snapshot{grid-template-columns:1fr auto}.dashboard-grid{display:grid}.card{border-radius:14px}.card-head{min-height:44px;padding:9px 11px}.compact-row{padding:8px 11px}.compact-row b{max-width:180px}.form-grid{grid-template-columns:1fr}.span-3{grid-column:auto}.editor-panel form>.form-grid,.form-card form>.form-grid,.editor-sheet form>.form-grid{padding:11px}.detail-grid{grid-template-columns:1fr 1fr;gap:6px}.report-launch-grid,.quick-report-grid{grid-template-columns:1fr}.executive-filter{width:100%;display:grid;grid-template-columns:1fr 1fr auto}.tax-period{width:100%;justify-content:space-between}.control-grid{grid-template-columns:1fr 1fr 1fr}.page-actions{max-width:50%}}
/* Login V5 */
.login-page{min-height:100vh;background:#f4f5f7}.login-shell-v5{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr)}.login-intro{padding:46px clamp(34px,6vw,90px);background:radial-gradient(circle at 25% 10%,rgba(10,132,255,.22),transparent 34%),linear-gradient(145deg,#0c111b,#151d29 72%,#1b2636);color:#fff;display:flex;flex-direction:column;justify-content:space-between}.login-logo{display:flex;align-items:center;gap:12px}.login-logo>span{width:42px;height:42px;border-radius:14px;background:#0a84ff;display:grid;place-items:center;font-size:21px;font-weight:850;box-shadow:0 12px 30px rgba(10,132,255,.28)}.login-logo>div{display:grid}.login-logo b{font-size:18px;letter-spacing:.02em}.login-logo small{font-size:9px;color:#9fb0c6;letter-spacing:.16em;margin-top:3px}.login-copy{max-width:760px}.login-copy>span{font-size:9px;color:#79c5ff;letter-spacing:.18em;font-weight:800}.login-copy h1{font-size:clamp(34px,4.1vw,60px);line-height:1.06;letter-spacing:-.045em;margin:15px 0 18px}.login-copy p{max-width:700px;color:#b4c0cf;font-size:13px;line-height:1.8;margin:0}.login-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.login-badges span{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:999px;padding:7px 10px;font-size:8px;color:#c9d2df;letter-spacing:.08em}.login-intro footer{color:#728096;font-size:9px}.login-card-wrap{display:grid;place-items:center;padding:28px}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 22px 60px rgba(17,24,39,.08)}.login-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:24px}.login-card-head span{font-size:8px;color:#a0a8b3;letter-spacing:.15em}.login-card-head h2{font-size:20px;margin:5px 0 0}.login-langs{display:flex;background:#eef0f3;border-radius:10px;padding:3px}.login-langs a{width:29px;height:27px;display:grid;place-items:center;border-radius:8px;font-size:8px;color:#7c8795;font-weight:750}.login-langs a.active{background:#fff;color:#111827;box-shadow:0 2px 8px rgba(0,0,0,.06)}.login-card form{display:grid;gap:14px}.login-card .field label{font-size:10px}.login-card .field input{height:44px;font-size:13px;border-radius:12px}.login-submit{height:45px;margin-top:2px;border-radius:12px;font-size:13px}.login-note{border-top:1px solid var(--line);margin-top:22px;padding-top:15px;display:flex;gap:9px;color:#7f8997}.login-note>span{color:#19a974;font-weight:850}.login-note p{margin:0;font-size:9px;line-height:1.6}
@media(max-width:900px){.login-shell-v5{grid-template-columns:1fr}.login-intro{min-height:38vh;padding:28px 24px}.login-copy h1{font-size:32px}.login-copy p{font-size:11px}.login-intro footer{display:none}.login-card-wrap{padding:18px 16px 35px;margin-top:-8px}.login-card{border-radius:22px}}
@media(max-width:520px){.login-intro{min-height:34vh;padding:22px 18px 30px}.login-logo>span{width:36px;height:36px;border-radius:12px}.login-copy>span,.login-copy p,.login-badges{display:none}.login-copy h1{font-size:27px;margin:28px 0 0}.login-card-wrap{padding:0 12px 24px;margin-top:-16px;position:relative;z-index:2}.login-card{padding:19px 17px;border-radius:20px}.login-card-head h2{font-size:18px}}
/* V5 compatibility layer for company dashboard, reports and dense legacy modules */
.inline-form{display:inline-flex;margin:0}.row-actions{display:flex;gap:5px;align-items:center;justify-content:flex-end;white-space:nowrap}.table-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.page-date{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;padding:4px 7px}.page-date input{height:27px;border:0;background:transparent;outline:0;font-size:11px}
.executive-hero{background:linear-gradient(135deg,#111827,#243244);color:#fff;border-radius:20px;padding:18px 20px;margin-bottom:10px;box-shadow:0 14px 40px rgba(17,24,39,.1)}.hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.hero-copy span{font-size:8px;letter-spacing:.16em;color:#84c7ff;font-weight:800}.hero-copy h2{font-size:21px;margin:6px 0 4px}.hero-copy p{font-size:10px;color:#b8c2cf;margin:0}.hero-actions{display:flex;gap:7px}.executive-hero .hero-actions .btn{background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(255,255,255,.12)}.executive-hero .hero-actions .btn.primary{background:#0a84ff;border-color:#0a84ff}.hero-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:15px}.hero-mini{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);border-radius:12px;padding:9px 10px}.hero-mini small{display:block;color:#9eacbd;font-size:8px}.hero-mini b{display:block;margin-top:5px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:10px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 12px;min-width:0}.kpi small{display:block;color:#87919f;font-size:8px;font-weight:700}.kpi strong{display:block;font-size:14px;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi em{display:block;font-style:normal;font-size:7px;color:#a8b0bb;margin-top:3px}.kpi.good strong{color:#13835b}.kpi.bad strong{color:#d54747}
.action-center{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.action-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);background:#fafbfc;border-radius:12px;padding:10px 11px}.action-chip span{display:block;color:#7e8997;font-size:8px}.action-chip b{display:block;font-size:18px;margin-top:3px}.action-chip i{font-style:normal;width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:#edf5ff;color:#1975cd;font-weight:850;font-size:9px}
.chart-bars{min-height:190px;display:flex;gap:9px;align-items:flex-end;padding:18px 16px 12px}.chart-col{flex:1;min-width:0;height:150px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.chart-value{font-size:8px;color:#7d8795;white-space:nowrap}.chart-track{height:110px;width:min(34px,70%);border-radius:9px;background:#f0f2f5;display:flex;align-items:flex-end;overflow:hidden}.chart-fill{width:100%;min-height:2px;border-radius:8px;background:linear-gradient(180deg,#4aa4ff,#0a84ff)}.chart-fill.negative{background:linear-gradient(180deg,#ff9b9b,#eb4b4b);align-self:flex-start}.chart-label{font-size:7px;color:#9aa4b0;white-space:nowrap}
.summary-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.report-sheet{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px}.report-sheet h3{font-size:13px;margin:0 0 8px}.report-line{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #f0f2f5;font-size:10px}.report-line:last-child{border-bottom:0}.report-line b{font-size:10px}.report-line.total{margin-top:5px;padding-top:5px;border-top:1px solid #dfe4ea;border-bottom:0;font-weight:800}.report-line.total span,.report-line.total b{font-size:11px}.report-sheet+.report-sheet{}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.hero-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.executive-hero{border-radius:17px;padding:14px}.hero-row{display:grid}.hero-actions{justify-content:flex-start}.kpi-grid{grid-template-columns:repeat(2,1fr)}.summary-two{grid-template-columns:1fr}.chart-bars{min-width:560px}.action-center{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:520px){.hero-mini-grid{grid-template-columns:1fr 1fr}.hero-copy h2{font-size:17px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:1fr 1fr}.action-center{grid-template-columns:1fr}.report-sheet{padding:11px}.page-date input{max-width:135px}}
.finance-v5{background:var(--bg)}.qicon{width:30px;height:30px;border-radius:9px;background:#eef5ff;color:#2676c7;display:grid;place-items:center;flex:0 0 auto}.qicon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}
