@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{font-family:Plus Jakarta Sans,system-ui,sans-serif;color:#0f172a;background:var(--qb-background);line-height:1.5;--qb-primary: #7c3aed;--qb-primary-strong: #6d28d9;--qb-primary-rgb: 124, 58, 237;--qb-accent: #f472b6;--qb-ink: #0f172a;--qb-surface: #ffffff;--qb-border: #e7defc;--qb-background: #f6f3ff;--qb-background-strong: #f2effc;--qb-primary-soft: #f7f3ff;--qb-primary-soft-2: #f9f6ff;--qb-primary-soft-3: #f1e9ff;--qb-muted: #6b7280}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--qb-background-strong)}a{color:inherit;text-decoration:none}button{font-family:inherit;border:none;border-radius:999px;padding:.65rem 1.2rem;background:var(--qb-primary);color:#fff;font-weight:600;cursor:pointer;box-shadow:0 10px 24px rgba(var(--qb-primary-rgb),.25)}button.ghost{background:transparent;border:1px solid var(--qb-border);color:#1e293b;box-shadow:none}input{width:100%;padding:.7rem .9rem;border-radius:12px;border:1px solid #cbd5f5;font:inherit}select{width:100%;padding:.7rem .9rem;border-radius:12px;border:1px solid #cbd5f5;font:inherit;background:#fff}textarea{width:100%;padding:.7rem .9rem;border-radius:12px;border:1px solid #cbd5f5;font:inherit;min-height:110px;resize:vertical}.code{font-family:SFMono-Regular,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.88em}.info-hint{display:inline-flex;align-items:center;gap:.35rem;margin-left:.5rem;font-size:.75rem;color:var(--qb-muted);cursor:help}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.app-shell.collapsed{grid-template-columns:88px 1fr}.sidebar{--sidebar-pad-x: 1.5rem;padding:1.6rem var(--sidebar-pad-x);background:#fffffff2;border-right:1px solid var(--qb-border);display:flex;flex-direction:column;gap:1.4rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:100vh}.sidebar.collapsed{--sidebar-pad-x: 1rem;padding:1.2rem var(--sidebar-pad-x)}.sidebar-top{display:flex;flex-direction:column;gap:.8rem}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:.2rem}.sidebar-brand-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem;position:relative}.brand-home{display:flex;align-items:center;width:100%;background:transparent;border:none;padding:0;cursor:pointer}.sidebar-toggle{padding:.25rem .35rem;border-radius:999px;position:absolute;right:calc(-1 * var(--sidebar-pad-x));top:50%;transform:translate(50%,-50%);border:1px solid var(--qb-border);background:#fff;box-shadow:0 8px 20px rgba(var(--qb-primary-rgb),.12);display:grid;place-items:center;cursor:pointer}.sidebar-toggle svg{width:16px;height:16px;color:var(--qb-primary)}.brand{display:flex;align-items:center;gap:.75rem}.brand-logo{width:44px;height:44px;padding:8px;border-radius:14px;background:var(--qb-primary-soft);border:1px solid var(--qb-border)}.brand-logo-wide{width:100%;height:34px;object-fit:contain;object-position:left center}.text-logo{display:inline-flex;align-items:center;font-weight:700;font-size:1.1rem;color:var(--qb-primary);text-transform:lowercase;letter-spacing:-.02em}.brand-logo-square{width:40px;height:40px;object-fit:contain;display:none}.sidebar.collapsed .brand-logo-wide{display:none}.sidebar.collapsed .brand-logo-square{display:block;border-radius:12px}.brand-title{margin:0;font-weight:600}.brand-subtitle{margin:0;color:var(--qb-muted);font-size:.9rem}.nav{display:flex;flex-direction:column;gap:.4rem}.nav-group{display:grid;gap:.35rem;margin-bottom:.6rem}.nav-title{margin:.3rem 0 .15rem;font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--qb-muted)}.nav-icon{width:24px;height:24px;border-radius:8px;background:var(--qb-primary-soft);color:var(--qb-primary-strong);display:grid;place-items:center;flex-shrink:0}.nav-icon svg{width:15px;height:15px}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link{padding:.55rem .8rem;border-radius:12px;color:#1f2937;font-size:.92rem;transition:background .2s ease,color .2s ease;display:flex;align-items:center;gap:.6rem;min-width:0}.nav-link:hover{background:#f3eefe}.nav-link.active{background:var(--qb-primary);color:#fff}.nav-link.active .nav-icon{background:#fff3;color:#fff}.nav-link.disabled{color:#b3a7d9;cursor:default;background:transparent}.sidebar.collapsed .nav-title,.sidebar.collapsed .nav-label{display:none}.sidebar.collapsed .nav-link{justify-content:center;padding:.6rem}.sidebar.collapsed .nav-group{margin-bottom:.4rem}.sidebar.collapsed .account-trigger{justify-content:center}.sidebar.collapsed .account-trigger .list-title{display:none}.sidebar.collapsed .account-icon{display:grid}.sidebar.collapsed .chevron{display:none}.sidebar.collapsed .account-dropdown{left:calc(100% + .75rem);top:0;width:220px}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:.5rem}.account-menu{position:relative}.account-trigger{width:100%;border-radius:16px;border:1px solid var(--qb-border);background:var(--qb-primary-soft-2);color:var(--qb-ink);padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;box-shadow:0 10px 20px rgba(var(--qb-primary-rgb),.08)}.account-icon{width:28px;height:28px;border-radius:10px;background:var(--qb-primary-soft);color:var(--qb-primary-strong);display:grid;place-items:center;flex-shrink:0}.account-icon svg{width:16px;height:16px}.account-trigger .list-title{margin:0}.account-trigger:hover{background:var(--qb-primary-soft-3)}.account-trigger .muted{margin:0 0 .2rem}.chevron{font-size:.9rem;transition:transform .2s ease}.chevron.open{transform:rotate(180deg)}.account-dropdown{position:absolute;left:0;top:calc(100% + .6rem);width:100%;background:#fff;border:1px solid var(--qb-border);border-radius:16px;padding:.6rem;display:grid;gap:.5rem;box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.15);z-index:20}.main{display:flex;flex-direction:column}.topbar{padding:1.75rem 2.5rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.topbar-actions{display:flex;gap:.75rem}.content{padding:1rem 2.5rem 3rem}.page{background:var(--qb-surface);padding:2rem;border-radius:24px;border:1px solid var(--qb-border);box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}.page h1{margin-top:0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--qb-muted);margin:0 0 .4rem}.muted{color:var(--qb-muted);font-size:.9rem}.auth{min-height:100vh;display:grid;place-items:center;padding:2rem}.auth-card{background:var(--qb-surface);padding:2.5rem;border-radius:24px;border:1px solid var(--qb-border);max-width:420px;box-shadow:0 20px 50px rgba(var(--qb-primary-rgb),.18)}.auth-logo{width:120px;height:32px;object-fit:contain;margin-bottom:1rem}.auth-card.wide{max-width:640px}.section-divider{height:1px;background:var(--qb-border);margin:2rem 0}.section-loader{border:1px solid var(--qb-border);border-radius:18px;padding:1.5rem;margin-bottom:1.5rem;background:var(--qb-primary-soft-2)}.loader-center{display:grid;place-items:center;min-height:120px}.spinner{width:26px;height:26px;border-radius:999px;border:3px solid var(--qb-border);border-top-color:var(--qb-primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.accounts-shell{max-width:920px;margin:0 auto;display:grid;gap:2rem;width:100%}.accounts-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 2rem;border-radius:24px;background:#fff;border:1px solid var(--qb-border);box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}.header-actions{display:flex;align-items:center;gap:.75rem}.admin-access{padding:.45rem .9rem;font-size:.85rem;border-style:dashed;color:var(--qb-primary-strong)}.accounts-identity{display:flex;align-items:center;gap:1.2rem}.accounts-brand-bar{display:flex;align-items:center;justify-content:flex-start}.accounts-brand-logo,.accounts-brand-logo img{height:28px;width:auto}.accounts-identity h1{margin:0}.accounts-identity p{margin:.35rem 0 0}.accounts-avatar{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,rgba(var(--qb-primary-rgb),.2),rgba(var(--qb-primary-rgb),.08));display:grid;place-items:center;font-weight:700;color:var(--qb-primary-strong);text-transform:uppercase}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.accounts-panel{background:#fff;border:1px solid var(--qb-border);border-radius:24px;padding:1.8rem;box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}.accounts-panel h2{margin-top:.4rem}.accounts-panel .auth-form{margin-top:1.2rem}.actions-row{display:flex;align-items:center;gap:.75rem;margin:1rem 0}.actions-stack{display:grid;gap:.75rem;margin-top:1.2rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;padding:1.5rem;z-index:50}.modal-card{width:min(520px,100%);background:#fff;border-radius:22px;border:1px solid var(--qb-border);padding:1.6rem;box-shadow:0 30px 60px #0f172a33}.modal-card-wide{width:min(860px,100%)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.modal-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.modal-section{border:1px solid var(--qb-border);border-radius:18px;padding:1.2rem;background:var(--qb-primary-soft-2)}.user-page .modal-grid{margin-top:1.5rem}.user-page,.admin-page{display:block;min-height:100vh;padding:2rem}.admin-shell{max-width:1080px;margin:0 auto;display:grid;gap:2rem;width:100%}.admin-header{padding:1.6rem 2rem;border-radius:24px;background:#fff;border:1px solid var(--qb-border);box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}.admin-stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.admin-stat-card{background:#fff;border-radius:18px;border:1px solid var(--qb-border);padding:1rem 1.2rem;box-shadow:0 14px 30px rgba(var(--qb-primary-rgb),.08)}.admin-stat-card h2{margin:.5rem 0 0}.admin-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.admin-panel{border:1px solid var(--qb-border);border-radius:18px;padding:1.2rem;background:var(--qb-primary-soft-2)}.admin-explorer{display:grid;gap:1.2rem}.admin-tabs{display:flex;flex-wrap:wrap;gap:.6rem}.admin-tabs button{border-radius:999px;background:#fff;border:1px solid var(--qb-border);color:#1f2937;box-shadow:none;padding:.55rem 1rem}.admin-tabs button.is-active{border-color:rgba(var(--qb-primary-rgb),.45);color:var(--qb-primary-strong);box-shadow:0 12px 28px rgba(var(--qb-primary-rgb),.12)}.admin-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.admin-filters input{min-width:220px}.admin-table{border:1px solid var(--qb-border);border-radius:18px;background:#fff;overflow:hidden}.admin-table-header,.admin-table-row{display:grid;grid-template-columns:1.2fr 1.2fr 1.8fr .8fr;gap:1rem;padding:.9rem 1.2rem;align-items:center}.admin-table.services .admin-table-header,.admin-table.services .admin-table-row{grid-template-columns:1.2fr 1.4fr 1.2fr 1.2fr 1.4fr}.admin-table.invoices .admin-table-header,.admin-table.invoices .admin-table-row{grid-template-columns:1.2fr 1.3fr 1.1fr 1.1fr 1.4fr}.admin-table-header{background:#f8f5ff;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--qb-muted)}.admin-table-row{border-top:1px solid var(--qb-border);font-size:.95rem}.admin-table-row .code{font-size:.8rem}.admin-table-empty{padding:1.5rem}.admin-table-actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.admin-link a{color:var(--qb-primary-strong);font-weight:600}.services-table{border:1px solid var(--qb-border);border-radius:18px;background:#fff;overflow:hidden;margin-top:1.5rem}.services-table-header,.services-table-row{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr 1fr .8fr;gap:1rem;padding:.9rem 1.2rem;align-items:center}.services-table-header{background:#f8f5ff;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--qb-muted)}.services-table-row{border-top:1px solid var(--qb-border);font-size:.95rem}.services-table-empty{padding:1.5rem}.invoices-table{border:1px solid var(--qb-border);border-radius:18px;background:#fff;overflow:auto;margin-top:1.5rem}.invoices-table-header,.invoices-table-row{display:grid;grid-template-columns:1.3fr .9fr 1.2fr 1.2fr 1fr .9fr .9fr;gap:1rem;padding:.9rem 1.2rem;align-items:center}.invoices-table-header{background:#f8f5ff;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--qb-muted)}.invoices-table-row{border-top:1px solid var(--qb-border);font-size:.95rem}.invoices-table-empty{padding:1.5rem}.table-link{color:var(--qb-primary-strong);text-decoration:none;font-weight:600}.table-link:hover{text-decoration:underline}.invoice-detail{margin-top:1.5rem;border:1px solid var(--qb-border);border-radius:18px;background:#fff;padding:1.5rem;display:grid;gap:1rem;max-width:680px}.invoice-detail-row{display:grid;grid-template-columns:160px 1fr;gap:1rem;align-items:start;font-size:.95rem}.invoice-detail-row span{color:var(--qb-muted)}.invoice-detail-party{display:grid;gap:.35rem}.user-sections{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:1.5rem;margin-top:1.5rem}.dashboard-grid{margin-top:1.5rem;display:grid;gap:1.5rem}.dashboard-card{border:1px solid var(--qb-border);border-radius:22px;background:#fff;padding:1.5rem;display:grid;gap:1.25rem;box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}.chart-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.mini-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem;align-items:end;height:200px}.mini-chart-col{display:grid;gap:.4rem;align-items:end}.mini-chart-bars{display:grid;align-items:end;gap:.35rem;height:140px;padding:0 .4rem}.mini-bar{display:block;width:100%;border-radius:10px 10px 6px 6px}.mini-bar.issued{background:linear-gradient(180deg,rgba(var(--qb-primary-rgb),.75),rgba(var(--qb-primary-rgb),.25))}.mini-bar.received{background:linear-gradient(180deg,#14b8a6cc,#14b8a633)}.mini-chart-label{font-size:.75rem;color:var(--qb-muted);text-align:center}.relationships-table{border:1px solid var(--qb-border);border-radius:18px;background:#fff;overflow:auto;margin-top:1.5rem}.relationships-table-header,.relationships-table-row{display:grid;grid-template-columns:1.4fr 1.2fr 1fr .7fr .9fr .6fr;gap:1rem;padding:.9rem 1.2rem;align-items:center}.relationships-table-header{background:#f8f5ff;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--qb-muted)}.relationships-table-row{border-top:1px solid var(--qb-border);font-size:.95rem}.relationships-table-empty{padding:1.5rem}.relationship-detail{margin-top:1.5rem;display:grid;gap:1.5rem}.relationship-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;border:1px solid var(--qb-border);border-radius:18px;background:#fff;padding:1.5rem}.relationship-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.relationship-column{border:1px solid var(--qb-border);border-radius:18px;background:#fff;padding:1.5rem;display:grid;gap:1rem}.user-sections-nav{display:grid;gap:.6rem;align-content:start;position:sticky;top:1.5rem}.user-sections-nav button{border:1px solid var(--qb-border);background:#fff;padding:.7rem .9rem;border-radius:14px;text-align:left;font-weight:600;color:#1f2937;transition:border-color .2s ease,box-shadow .2s ease,color .2s ease}.user-sections-nav button:hover{border-color:rgba(var(--qb-primary-rgb),.25);color:var(--qb-primary-strong)}.user-sections-nav button.is-active{border-color:rgba(var(--qb-primary-rgb),.45);box-shadow:0 16px 32px rgba(var(--qb-primary-rgb),.12);color:var(--qb-primary-strong)}.user-sections-panel .modal-section{box-shadow:0 18px 40px rgba(var(--qb-primary-rgb),.08)}@media (max-width: 900px){.user-sections{grid-template-columns:1fr}}.list.compact .list-card{padding:.7rem .9rem}.status-pill{padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--qb-primary-soft-2);color:var(--qb-primary-strong)}.status-pill.ok,.status-pill.approved{background:#e2f7ed;color:#0f766e}.status-pill.pending,.status-pill.idle{background:var(--qb-background-strong);color:#6b5cb4}.status-pill.rejected{background:#fee2e2;color:#b91c1c}@media (max-width: 720px){.accounts-header{flex-direction:column;align-items:flex-start}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#f6f3ffcc;display:grid;place-items:center;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-form{display:grid;gap:1rem;margin:1.5rem 0 1rem}.auth-form label{display:grid;gap:.4rem;font-size:.9rem;color:#334155}.form-error{color:#b91c1c;margin:0}.list{margin-top:1.5rem;display:grid;gap:1rem}.list-card{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border:1px solid var(--qb-border);border-radius:16px;background:var(--qb-primary-soft-2)}.list-title{margin:0;font-weight:600}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;border-right:none;border-bottom:1px solid var(--qb-border);position:sticky;top:0;z-index:40}.sidebar-scroll{overflow-x:auto;overflow-y:hidden;width:100%;padding-bottom:.25rem}.nav{flex-direction:row;flex-wrap:nowrap;gap:.5rem}.nav-group{display:flex;gap:.5rem;margin:0}.nav-title{display:none}.topbar{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem .5rem}.topbar-actions{flex-wrap:wrap;width:100%}.content{padding:1rem 1.5rem 2rem}.page{padding:1.5rem;border-radius:20px}.dashboard-card{padding:1.25rem}.accounts-shell,.admin-shell{gap:1.5rem}.accounts-header,.admin-header{padding:1.25rem 1.5rem}.accounts-grid,.admin-grid{grid-template-columns:1fr}.services-table,.invoices-table,.relationships-table,.admin-table{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 720px){.sidebar-brand-row{gap:.5rem}.sidebar-toggle{position:static;transform:none}.account-trigger{padding:.75rem .9rem}.nav-link{padding:.5rem .7rem;font-size:.85rem}.nav-icon{width:20px;height:20px;border-radius:6px}.nav-icon svg{width:13px;height:13px}.content{padding:.75rem 1rem 2rem}.page{padding:1.2rem}.auth{padding:1.5rem 1rem}.auth-card{width:100%;padding:1.75rem}}@media (max-width: 560px){.nav-label{display:none}.nav-link{padding:.55rem}.topbar-actions button{width:100%}.accounts-header,.admin-header{padding:1rem 1.25rem}.accounts-identity{flex-direction:column;align-items:flex-start;gap:.75rem}.accounts-avatar{width:48px;height:48px;border-radius:14px}}
