@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--bg-main:#070e17;--bg-card:#0b1523;--bg-card-elevated:#0f1c2d;--bg-row:#0c1626;--bg-row-hover:#122035;--bg-input:#080f1a;--border-subtle:#18283d;--border-strong:#223752;--border-focus:#03d47c;--text-main:#f8fafc;--text-muted:#94a3b8;--text-subtle:#64748b;--primary:#03d47c;--primary-hover:#02b86b;--primary-glow:#03d47c38;--primary-bg:#03d47c1f;--danger:#f43f5e;--danger-hover:#e11d48;--danger-bg:#f43f5e1f;--warning:#f59e0b;--warning-bg:#f59e0b1f;--success:#03d47c;--success-bg:#03d47c1f;--info:#38bdf8;--info-bg:#38bdf81f;--radius-xs:4px;--radius-sm:6px;--radius:10px;--radius-lg:14px;--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--shadow-subtle:0 4px 20px #00000059;--shadow-elevated:0 10px 35px #0000008c}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 10% 0,#03d47c0d 0%,#0000 35%),radial-gradient(circle at 90% 100%,#f43f5e0a 0%,#0000 40%),radial-gradient(circle,#38bdf808 0%,#0000 50%);background-attachment:fixed;min-height:100vh;overflow-x:hidden}.glass-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius);box-shadow:var(--shadow-subtle)}.glass-panel:hover{border-color:var(--border-strong)}.app-container{max-width:1440px;margin:0 auto;padding:1.25rem 2rem 4rem}.auth-shell{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:min(100%,420px);box-shadow:var(--shadow-elevated);gap:1rem;padding:2.25rem;display:grid}.auth-panel h1{letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.auth-panel p{color:var(--text-muted);font-size:.85rem}.auth-panel label{color:var(--text-muted);gap:.4rem;font-size:.8rem;font-weight:600;display:grid}.auth-panel input{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text-main);font:inherit;padding:.75rem}.auth-panel input:focus{border-color:var(--primary);outline:none}.auth-message{border-radius:var(--radius-sm);background:var(--warning-bg);color:#fde68a;padding:.75rem;font-size:.8rem}.auth-switch{color:var(--primary);cursor:pointer;font:inherit;background:0 0;border:0;font-size:.825rem;font-weight:600}.navbar{border-radius:var(--radius);border:1px solid var(--border-subtle);background:var(--bg-card);box-shadow:var(--shadow-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.85rem 1.4rem;display:flex}.brand-section{align-items:center;gap:.85rem;display:flex}.brand-logo-icon{border-radius:var(--radius-sm);background:linear-gradient(135deg,#03d47c,#0ea5e9);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 2px 10px #03d47c4d}.brand-text{flex-direction:column;display:flex}.brand-title{letter-spacing:-.02em;color:#fff;font-size:1.2rem;font-weight:800;line-height:1.15}.brand-tagline{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:600}.brand-badge{margin-left:.25rem}.badge-text-compact{display:none}.badge-text-full{display:inline}.tab-label-short{display:none}.tab-label-full{display:inline}.nav-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.nav-workspace-badge{border:1px solid var(--border-subtle);max-width:220px;color:var(--text-muted);background:#ffffff0a}.workspace-name-truncate{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;color:#f1f5f9;max-width:160px;font-weight:600;display:inline-block;overflow:hidden}.nav-action-btn{align-items:center;gap:.45rem;display:inline-flex}.nav-logout-btn{color:#fda4af;border-color:#f43f5e40}.nav-logout-btn:hover{background:var(--danger-bg);color:#fff;border-color:#f43f5e66}.expensify-report-header{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);flex-direction:column;gap:1.25rem;margin-bottom:1.25rem;padding:1.5rem 1.75rem;display:flex}.report-top-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.report-subject-group{flex-direction:column;gap:.35rem;display:flex}.report-kicker-line{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.report-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);font-size:.72rem;font-weight:700}.report-title{letter-spacing:-.02em;color:#fff;font-size:1.45rem;font-weight:800}.report-subtitle{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.report-actions-group{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.report-kpi-ribbon{border-top:1px solid var(--border-subtle);grid-template-columns:repeat(4,1fr);gap:1rem;padding-top:1.25rem;display:grid}.kpi-cell{flex-direction:column;gap:.2rem;padding-right:.5rem;display:flex}.kpi-cell:not(:last-child){border-right:1px solid var(--border-subtle)}.kpi-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-size:.72rem;font-weight:700}.kpi-value{letter-spacing:-.03em;color:#fff;font-size:1.55rem;font-weight:800}.kpi-value.danger{color:#fda4af}.kpi-value.warning{color:#fde68a}.kpi-value.success{color:#6ee7b7}.kpi-value.info{color:#7dd3fc}.kpi-subtext{color:var(--text-muted);align-items:center;gap:.35rem;font-size:.76rem;display:flex}.audit-ledger-container{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);flex-direction:column;display:flex;overflow:hidden}.ledger-tabs-bar{border-bottom:1px solid var(--border-subtle);scrollbar-width:none;background:#09121e;justify-content:space-between;align-items:center;padding:0 1rem;display:flex;overflow-x:auto}.ledger-tabs-bar::-webkit-scrollbar{display:none}.ledger-tabs-nav{align-items:center;gap:.25rem;display:flex}.ledger-tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.55rem;padding:1rem 1.15rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex;position:relative}.ledger-tab-btn:hover{color:var(--text-main)}.ledger-tab-btn.active{color:#fff}.ledger-tab-btn.active:after{content:"";background:var(--primary);border-radius:2px 2px 0 0;height:2.5px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -1px 8px #03d47c66}.tab-count-badge{border-radius:9999px;justify-content:center;align-items:center;padding:.15rem .45rem;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.tab-count-badge.badge-danger{background:var(--danger-bg);color:#fda4af;border:1px solid #f43f5e4d}.tab-count-badge.badge-neutral{color:var(--text-muted);background:#ffffff14}.ledger-tab-btn.active .tab-count-badge.badge-danger{background:var(--danger);color:#fff}.ledger-content-shell{min-height:400px;padding:1.5rem 1.75rem}.exceptions-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.filter-pills-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.filter-pill{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:#ffffff08;border-radius:9999px;padding:.35rem .75rem;font-size:.78rem;font-weight:600;transition:all .15s}.filter-pill:hover{color:var(--text-main);background:#ffffff12}.filter-pill.active{color:#6ee7b7;background:#03d47c26;border-color:#03d47c66}.expense-feed{border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--bg-row);flex-direction:column;display:flex;overflow:hidden}.expense-row-item{border-bottom:1px solid var(--border-subtle);transition:background-color .15s}.expense-row-item:last-child{border-bottom:none}.expense-row-item:hover{background-color:var(--bg-row-hover)}.expense-main-line{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.expense-left-col{flex:450px;align-items:flex-start;gap:.85rem;display:flex}.expense-indicator{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:.4rem}.expense-indicator.critical{background-color:var(--danger);box-shadow:0 0 8px #f43f5e80}.expense-indicator.warning{background-color:var(--warning);box-shadow:0 0 8px #f59e0b66}.expense-indicator.info{background-color:var(--info)}.expense-info-block{flex-direction:column;gap:.25rem;display:flex}.expense-title-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.expense-type-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-xs);color:var(--text-muted);background:#ffffff0f;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.expense-headline{color:#fff;font-size:.95rem;font-weight:700}.expense-abstract-desc{color:var(--text-muted);font-size:.835rem;line-height:1.4}.expense-right-col{flex-shrink:0;align-items:center;gap:1.25rem;display:flex}.expense-amount-block{text-align:right;flex-direction:column;gap:.15rem;display:flex}.expense-overcharge-val{color:#fda4af;font-size:1.15rem;font-weight:800;font-family:var(--font-mono)}.expense-overcharge-label{color:var(--text-subtle);text-transform:uppercase;font-size:.7rem}.expense-actions-bar{align-items:center;gap:.45rem;display:flex}.expense-evidence-drawer{border-top:1px solid var(--border-subtle);background:#080f1a;flex-direction:column;gap:1rem;padding:1.25rem 1.5rem 1.25rem 2.85rem;animation:.2s drawerSlide;display:flex}@keyframes drawerSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.evidence-comparison-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;display:grid}.comparison-box{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.75rem 1rem}.comparison-header{color:var(--text-subtle);text-transform:uppercase;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.comparison-val{color:#f8fafc;font-size:1.05rem;font-weight:800}.comparison-sub{color:var(--text-muted);margin-top:.15rem;font-size:.76rem}.evidence-source-snippet{color:var(--text-muted);border-left:2px solid var(--primary);margin-top:.25rem;padding-left:.75rem;font-size:.8rem;font-style:italic}.btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:.45rem;padding:.55rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:#04140b;font-weight:700;box-shadow:0 2px 10px #03d47c40}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 14px #03d47c66}.btn-secondary{color:var(--text-main);border-color:var(--border-subtle);background:#ffffff0d}.btn-secondary:hover{border-color:var(--border-strong);background:#ffffff17}.btn-accent{background:var(--danger);color:#fff}.btn-accent:hover{background:var(--danger-hover)}.btn-sm{border-radius:var(--radius-xs);padding:.35rem .65rem;font-size:.76rem}.badge{letter-spacing:.03em;text-transform:uppercase;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.72rem;font-weight:700;display:inline-flex}.badge-pulse:before{content:"";background-color:var(--primary);width:6px;height:6px;box-shadow:0 0 6px var(--primary);border-radius:50%}.badge-tinker{background:var(--primary-bg);color:#6ee7b7;border:1px solid #03d47c4d}.badge-danger{background:var(--danger-bg);color:#fda4af;border:1px solid #f43f5e4d}.badge-warning{background:var(--warning-bg);color:#fde68a;border:1px solid #f59e0b4d}.badge-success{background:var(--success-bg);color:#6ee7b7;border:1px solid #03d47c4d}.badge-info{background:var(--info-bg);color:#7dd3fc;border:1px solid #38bdf84d}.table-container{-webkit-overflow-scrolling:touch;scrollbar-width:thin;width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);border-bottom:1px solid var(--border-subtle);white-space:nowrap;background:#09121e;padding:.8rem 1rem;font-size:.72rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:.85rem 1rem;font-size:.85rem}.data-table tbody tr{transition:background-color .15s}.data-table tbody tr:hover{background-color:var(--bg-row-hover)}.col-line{min-width:50px}.col-invoice,.col-po{min-width:220px}.col-method{min-width:140px}.col-variance{min-width:110px}.col-review{min-width:85px}.col-desc{min-width:200px}.col-supp{min-width:130px}.col-purch{min-width:90px}.col-median{min-width:100px}.col-range{min-width:110px}.col-latest{min-width:95px}.col-trend{min-width:110px}.ai-audit-console{flex-direction:column;gap:1.5rem;display:flex}.ai-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.ai-kpi-card{border:1px solid var(--border-subtle);border-radius:var(--radius);background:#08111c;flex-direction:column;gap:.25rem;padding:1.25rem 1.5rem;display:flex}.ai-kpi-card.highlight{border-left:3px solid var(--primary)}.sandbox-container{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:100%;max-width:620px;max-height:90vh;box-shadow:var(--shadow-elevated);background:#0a1320;padding:2rem;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.modal-text-input,.modal-textarea{box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text-main);font:inherit;padding:.75rem}.modal-text-input:focus,.modal-textarea:focus{border-color:var(--primary);outline:none}.modal-textarea{resize:vertical;line-height:1.5}.modal-footer-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:1.25rem;display:flex}.close-btn{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;padding:.25rem}.close-btn:hover{color:var(--text-main)}.toast{border-radius:var(--radius);color:#fff;border:1px solid var(--border-strong);max-width:440px;box-shadow:var(--shadow-elevated);z-index:2000;background:#0d1a29;padding:.85rem 1.25rem;font-size:.875rem;line-height:1.4;animation:.3s slideUp;position:fixed;bottom:2rem;right:2rem}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mobile-scroll-hint{color:#93c5fd;border-radius:var(--radius-sm);text-align:center;background:#38bdf814;border:1px dashed #38bdf840;margin-bottom:.85rem;padding:.45rem .85rem;font-size:.75rem;display:none}@media (width<=1024px){.report-kpi-ribbon{grid-template-columns:repeat(2,1fr);row-gap:1.25rem}.kpi-cell:nth-child(2){border-right:none}}@media (width<=768px){.app-container{padding:1rem .85rem 3rem}.expensify-report-header{padding:1.25rem}.report-kpi-ribbon{grid-template-columns:1fr 1fr;gap:.75rem}.kpi-cell{border-right:none!important}.expense-main-line{flex-direction:column;align-items:stretch;gap:.85rem}.expense-right-col{border-top:1px solid #ffffff0d;justify-content:space-between;width:100%;padding-top:.65rem}.expense-amount-block{text-align:left}.mobile-scroll-hint{display:block}}@media (width<=580px){.badge-text-full{display:none}.badge-text-compact{display:inline}.tab-label-full{display:none}.tab-label-short{display:inline}.brand-tagline{display:none}.report-kpi-ribbon{grid-template-columns:1fr}.nav-actions{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.nav-workspace-badge{grid-column:1/-1;justify-content:center;width:100%;max-width:100%}.nav-action-btn{justify-content:center;width:100%;padding:.5rem .4rem;font-size:.78rem}}
