:root{--bg: #f7f7f5;--surface: #ffffff;--border: #e4e2dd;--text: #1f1e1c;--text-muted: #6b6862;--accent: #2f6b4f;--accent-hover: #24543e;--danger: #a13a3a;--radius: 8px;--brand: #ffc000;--brand-active: rgba(255, 255, 255, .55);--brand-hover: rgba(255, 255, 255, .3);--brand-border: #e6ad00;font-family:Calibri,Carlito,Segoe UI,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font-family:inherit}a{color:var(--accent);text-decoration:none}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"side top" "side main";min-height:100vh}.app-shell>.sidebar{grid-area:side}.app-shell>.topbar{grid-area:top}.app-shell>.main{grid-area:main}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:flex-end;align-items:center;padding:8px 40px;background:var(--surface);border-bottom:1px solid var(--border)}.user-menu{position:relative}button.user-menu-btn{display:flex;align-items:center;gap:8px;background:none;color:var(--text);font-weight:400;padding:6px 10px;border:1px solid transparent;border-radius:var(--radius)}button.user-menu-btn:hover,button.user-menu-btn[aria-expanded=true]{background:var(--bg);border-color:var(--border)}.user-menu-name{font-weight:600}.user-menu-role{font-size:12px;color:var(--text-muted);text-transform:capitalize}.user-menu-caret{font-size:11px;color:var(--text-muted)}.user-menu-list{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;padding:6px;z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;display:flex;flex-direction:column}.user-menu-list .user-menu-item{display:block;width:100%;text-align:left;padding:9px 10px;border-radius:6px;background:none;color:var(--text);font-size:14px;font-weight:400}.user-menu-list .user-menu-item:hover{background:var(--bg)}.sidebar{width:220px;background:var(--brand);border-right:1px solid var(--brand-border);padding:24px 16px;display:flex;flex-direction:column;gap:4px}.sidebar h1{font-size:18px;margin:0 8px 20px}.sidebar a{display:block;padding:8px 10px;border-radius:var(--radius);color:var(--text);font-size:14px}.sidebar a:hover{background:var(--brand-hover);color:var(--text)}.sidebar a.active{background:var(--brand-active);color:var(--text);font-weight:600}.sidebar .subnav a{padding-left:26px;font-size:13px}.main{flex:1;padding:32px 40px;max-width:1100px}.page-title{font-size:22px;margin-bottom:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:24px;font-weight:600;margin-top:4px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--text-muted);font-weight:500;font-size:12px;text-transform:uppercase;padding:8px;border-bottom:1px solid var(--border)}td{padding:8px;border-bottom:1px solid var(--border)}button,.btn{background:var(--brand);color:var(--text);border:none;border-radius:var(--radius);padding:8px 14px;font-size:14px;font-weight:600;cursor:pointer}button:hover,.btn:hover{background:var(--brand-border)}button:focus-visible,.btn:focus-visible{outline:2px solid var(--text);outline-offset:2px}button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}button.secondary:hover{background:#f0f0ee}button.danger{background:var(--danger);color:#fff}button.danger:hover{background:#862f2f}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;width:100%;background:var(--surface);color:var(--text)}label{font-size:13px;color:var(--text-muted);display:block;margin-bottom:4px}.field{margin-bottom:14px}.form-row{display:flex;gap:12px}.form-row>div{flex:1}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px}.badge.active{background:#e4f1e8;color:var(--accent)}.badge.on_hold{background:#f6ecd9;color:#92661b}.badge.completed,.badge.draft{background:#eee;color:var(--text-muted)}.badge.sent{background:#dce9f7;color:#2a5c8a}.badge.paid{background:#e4f1e8;color:var(--accent)}.auth-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:16px}.auth-card{width:360px;max-width:100%}.error-text{color:var(--danger);font-size:13px;margin:8px 0}.muted{color:var(--text-muted);font-size:13px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;margin-bottom:16px}@media (max-width: 860px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;grid-template-areas:"top" "side" "main";min-height:auto}.topbar{padding:calc(6px + env(safe-area-inset-top,0px)) 12px 6px}.sidebar{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:12px 16px;border-right:none;border-bottom:1px solid var(--brand-border)}.sidebar h1{flex:0 0 auto;margin:0 8px 0 0}.sidebar a{padding:6px 8px}.sidebar .subnav{display:contents}.sidebar .subnav a{padding-left:8px}.main{padding:20px 16px;max-width:100%}.grid-4{grid-template-columns:repeat(2,1fr);gap:12px}.form-row{flex-direction:column;gap:0}table{display:block;overflow-x:auto;white-space:nowrap}}@media (max-width: 420px){.grid-4{grid-template-columns:1fr}.card{padding:16px}}.sidebar a.quick-link{font-weight:700;color:var(--text)}.quick{max-width:520px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px))}.quick-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.quick-brand{font-size:20px;font-weight:700}.quick-full{font-size:14px;font-weight:600}.quick-head .user-menu{align-self:flex-start}.quick-card h3{margin:0 0 14px;font-size:16px}.quick-actions{display:grid;gap:10px}button.quick-big{width:100%;min-height:50px;font-size:16px;font-weight:600}.quick-pair{display:grid;grid-template-columns:1fr 110px;gap:12px}.quick input,.quick select{font-size:16px;min-height:44px}.quick-check{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text);margin:4px 0 14px}.quick-check input{width:20px;height:20px;min-height:0}.quick-list{list-style:none;margin:12px 0 0;padding:0}.quick-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--border);font-size:14px}.quick-list li span:first-child{min-width:0;overflow-wrap:anywhere}.quick-list li span:last-child{flex:none;text-align:right}.quick-ok{color:var(--accent);font-size:14px;margin:0 0 10px}.quick-sub{margin-top:16px;font-size:13px;color:var(--text-muted);font-weight:600}
