:root{--qity-color-brand: #ee87b1;--qity-color-brand-hover: #e65f9a;--qity-color-brand-pressed: #cc3f7d;--qity-color-brand-strong: #8f2457;--qity-color-brand-subtle: #fce6f0;--qity-color-brand-canvas: #fff5f9;--qity-color-text: #2b2026;--qity-color-text-muted: #6f5c65;--qity-color-text-subtle: #9b828e;--qity-color-surface: #ffffff;--qity-color-surface-raised: #ffffff;--qity-color-surface-muted: #f4eef1;--qity-color-canvas: #faf7f9;--qity-color-canvas-warm: #fff9fc;--qity-color-border: #e6d5dd;--qity-color-border-strong: #cfbac5;--qity-color-focus: #ee87b1;--qity-color-success: #1c8f68;--qity-color-success-subtle: #e6fcf3;--qity-color-warning: #d97706;--qity-color-warning-subtle: #fff7ed;--qity-color-danger: #b4235a;--qity-color-danger-subtle: #fff1f4;--qity-color-info: #3b6fb6;--qity-color-info-subtle: #eff6ff;--qity-space-0: 0;--qity-space-1: 4px;--qity-space-2: 8px;--qity-space-3: 12px;--qity-space-4: 16px;--qity-space-5: 20px;--qity-space-6: 24px;--qity-space-7: 32px;--qity-space-8: 40px;--qity-space-9: 48px;--qity-space-10: 64px;--qity-radius-none: 0;--qity-radius-xs: 3px;--qity-radius-sm: 4px;--qity-radius-md: 6px;--qity-radius-lg: 8px;--qity-radius-xl: 12px;--qity-radius-round: 999px;--qity-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--qity-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--qity-font-size-xs: 12px;--qity-font-size-sm: 13px;--qity-font-size-md: 14px;--qity-font-size-lg: 16px;--qity-font-size-xl: 20px;--qity-font-size-2xl: 24px;--qity-font-size-3xl: 32px;--qity-line-height-tight: 1.2;--qity-line-height-normal: 1.45;--qity-line-height-relaxed: 1.65;--qity-font-weight-regular: 400;--qity-font-weight-medium: 500;--qity-font-weight-semibold: 700;--qity-font-weight-bold: 800;--qity-font-weight-black: 900;--qity-shadow-none: none;--qity-shadow-sm: 0 1px 2px rgba(43, 32, 38, .08);--qity-shadow-md: 0 8px 24px rgba(43, 32, 38, .1);--qity-shadow-lg: 0 18px 48px rgba(43, 32, 38, .14);--qity-z-base: 0;--qity-z-sticky: 10;--qity-z-overlay: 100;--qity-z-modal: 1000;--qity-z-toast: 1100}.qity-theme{color:var(--qity-color-text);background:var(--qity-color-canvas);font-family:var(--qity-font-sans)}:root{color:var(--qity-color-text);background:var(--qity-color-canvas);font-family:var(--qity-font-sans);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:312px minmax(0,1fr);min-height:100vh;background:var(--qity-color-canvas)}.sidebar{padding:var(--qity-space-5);background:var(--qity-color-canvas-warm);border-right:1px solid var(--qity-color-border)}.brand{align-items:center;gap:var(--qity-space-3);margin-bottom:var(--qity-space-7)}.brand-mark{display:grid;place-items:center;width:42px;height:42px;color:var(--qity-color-text);background:var(--qity-color-brand);border-radius:var(--qity-radius-md);font-weight:var(--qity-font-weight-black)}.muted,label,.contractor-row span,.stat-card span,.county-strip small,.data-grid span,.activity-card span{color:var(--qity-color-text-muted)}.import-box,.filters{gap:10px;margin-bottom:var(--qity-space-6)}.header-actions{position:fixed;top:16px;right:16px;z-index:20;display:inline-grid;grid-auto-flow:column;gap:8px;align-items:start}.language-switcher,.user-menu{position:relative}.language-trigger,.user-trigger{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:7px;min-height:38px;padding:8px 11px;color:var(--qity-color-text);background:color-mix(in srgb,var(--qity-color-surface) 92%,transparent);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg);box-shadow:var(--qity-shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.user-trigger{width:38px;grid-template-columns:auto;justify-content:center;padding:8px}.language-trigger:hover,.language-trigger[aria-expanded=true],.user-trigger:hover,.user-trigger[aria-expanded=true]{background:var(--qity-color-brand-subtle);border-color:var(--qity-color-brand)}.language-trigger span{font-size:var(--qity-font-size-xs);font-weight:var(--qity-font-weight-bold)}.language-menu,.user-menu-panel{position:absolute;top:calc(100% + 8px);right:0;display:grid;gap:4px;min-width:158px;padding:6px;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg);box-shadow:var(--qity-shadow-md)}.user-menu-panel{min-width:260px;gap:8px}.language-menu button,.menu-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-height:34px;padding:7px 9px;color:var(--qity-color-text);background:transparent;border:1px solid transparent;border-radius:var(--qity-radius-md);text-align:left}.language-menu button:hover,.language-menu button.active,.menu-action:hover{background:var(--qity-color-brand-subtle);border-color:var(--qity-color-brand)}.user-menu-summary{display:grid;gap:4px;padding:8px}.user-menu-summary span,.user-menu-summary small{color:var(--qity-color-text-muted)}.user-menu-summary strong{overflow-wrap:anywhere}.menu-action{grid-template-columns:auto minmax(0,1fr)}.import-box p{min-height:20px;margin:0;color:var(--qity-color-text-muted);line-height:var(--qity-line-height-normal)}.platform-nav{display:grid;gap:var(--qity-space-5);margin-bottom:var(--qity-space-6)}.nav-group{gap:7px}.nav-title{color:var(--qity-color-text-muted);font-size:var(--qity-font-size-xs);font-weight:var(--qity-font-weight-bold);text-transform:uppercase}.nav-group button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;width:100%;min-height:36px;padding:8px 10px;color:var(--qity-color-text);background:transparent;border:1px solid transparent;border-radius:var(--qity-radius-md);text-align:left}.nav-group button:hover,.nav-group button.active{background:var(--qity-color-brand-subtle);border-color:var(--qity-color-brand)}.nav-group button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}label{display:grid;gap:6px;font-size:var(--qity-font-size-xs);font-weight:var(--qity-font-weight-bold);text-transform:uppercase}input,select,textarea{width:100%;min-height:38px;border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-md);padding:8px 10px;color:var(--qity-color-text);background:var(--qity-color-surface)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--qity-color-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--qity-color-focus) 28%,transparent);outline:none}.search-input{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;min-height:38px;padding:0 10px;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-md)}.search-input input{min-height:36px;padding:0;border:0;box-shadow:none}.main{min-width:0;padding:var(--qity-space-5)}.login-screen{display:grid;place-items:center;align-content:center;gap:var(--qity-space-4);min-height:100vh;padding:var(--qity-space-5);background:var(--qity-color-canvas)}.login-panel{width:min(420px,100%);gap:var(--qity-space-4);padding:var(--qity-space-5);background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.form-error{grid-column:1 / -1;margin:0;color:var(--qity-color-danger);font-size:var(--qity-font-size-sm)}.dashboard{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--qity-space-3);margin-bottom:var(--qity-space-4)}.stat-card{gap:var(--qity-space-2);padding:14px;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.stat-card strong{font-size:var(--qity-font-size-2xl)}.county-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--qity-space-3);margin-bottom:var(--qity-space-4)}.county-strip button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:12px 14px;color:var(--qity-color-text);background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg);text-align:left}.county-strip button:hover,.county-strip button.active{background:var(--qity-color-brand-subtle);border-color:var(--qity-color-brand)}.county-strip strong{font-size:var(--qity-font-size-lg)}.county-strip small{grid-column:1 / -1}.workspace{display:grid;grid-template-columns:minmax(360px,44%) minmax(0,1fr);gap:var(--qity-space-4);min-height:calc(100vh - 208px)}.section-panel{gap:var(--qity-space-4);min-width:0}.summary-grid,.admin-user-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--qity-space-3)}.summary-card,.admin-user-card,.role-list{display:grid;gap:5px;min-width:0;padding:12px;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.summary-card span,.admin-user-card span,.role-list span{color:var(--qity-color-text-muted);overflow-wrap:anywhere}.admin-stack{gap:var(--qity-space-4)}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--qity-space-4)}.data-table-wrap{overflow:auto;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:10px 12px;border-bottom:1px solid var(--qity-color-border);text-align:left;white-space:nowrap}.data-table th{color:var(--qity-color-text-muted);font-size:var(--qity-font-size-xs);text-transform:uppercase}.list-pane,.detail-pane{min-width:0;overflow:hidden;background:var(--qity-color-surface);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.pane-header{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--qity-color-border)}h1{margin:0;font-size:var(--qity-font-size-xl)}h2{margin:0;font-size:var(--qity-font-size-lg)}.contractor-list{height:calc(100vh - 268px);overflow:auto}.contractor-row{display:grid;gap:4px;width:100%;padding:12px 16px;color:var(--qity-color-text);background:var(--qity-color-surface);border:0;border-bottom:1px solid var(--qity-color-border);text-align:left}.contractor-row:hover,.contractor-row.active{background:var(--qity-color-brand-subtle)}.contractor-row strong,.contractor-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-content{height:calc(100vh - 208px);overflow:auto}.detail-header{gap:6px;padding:16px;border-bottom:1px solid var(--qity-color-border)}.tabs{gap:2px;padding:8px 12px 0;border-bottom:1px solid var(--qity-color-border)}.tab{padding:9px 12px;color:var(--qity-color-text-muted);background:transparent;border:0;border-radius:var(--qity-radius-md) var(--qity-radius-md) 0 0;font-weight:var(--qity-font-weight-bold)}.tab.active{color:var(--qity-color-text);background:var(--qity-color-surface-muted)}.tab-panel{gap:var(--qity-space-4);padding:var(--qity-space-4)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--qity-space-3)}.wide{grid-column:1 / -1}.data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.data-grid div,.activity-card{padding:10px;background:var(--qity-color-surface-muted);border:1px solid var(--qity-color-border);border-radius:var(--qity-radius-lg)}.data-grid span,.activity-card span{display:block;font-size:12px}.data-grid strong{display:block;margin-top:3px;overflow-wrap:anywhere}.activity-stack{gap:10px}.activity-card p{margin:8px 0 0}.inline-actions{flex-wrap:wrap;gap:8px}.primary-button,.primary-action{min-height:38px;padding:8px 12px;color:var(--qity-color-text);background:var(--qity-color-brand);border:0;border-radius:var(--qity-radius-md);font-weight:var(--qity-font-weight-bold)}.primary-button:hover,.primary-action:hover{color:var(--qity-color-surface);background:var(--qity-color-brand-strong)}.empty-state{display:grid;align-content:center;gap:8px;min-height:360px;padding:28px;text-align:center}.empty-state p{max-width:520px;margin:0 auto;color:var(--qity-color-text-muted);line-height:var(--qity-line-height-normal)}.profit{color:var(--qity-color-success)}.negative{color:var(--qity-color-danger)}@media(max-width:980px){.app-shell,.workspace{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--qity-color-border)}.dashboard,.county-strip,.data-grid,.form-grid{grid-template-columns:1fr}.contractor-list,.detail-content{height:auto;max-height:none}}
