*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f6f8;color:#111827}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh;padding-bottom:78px}.topbar{position:sticky;top:0;z-index:20;height:64px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.brand{font-size:22px;font-weight:800;letter-spacing:.08em}.iconbtn{border:0;background:transparent;font-size:25px;width:42px;height:42px;border-radius:10px}.iconbtn:hover{background:#f3f4f6}.main{max-width:980px;margin:auto;padding:20px 16px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px;box-shadow:0 2px 8px #00000008}.stat{font-size:25px;font-weight:800;margin-top:5px}.muted{color:#6b7280;font-size:13px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:22px 0 10px}.section-title h2{font-size:18px;margin:0}.list{display:grid;gap:10px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-card{padding:16px}.project-card h3{margin:0 0 5px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.btn{border:1px solid #d1d5db;background:#fff;color:#111827;border-radius:10px;padding:10px 13px;font-weight:650}.btn.primary{background:#111827;color:#fff;border-color:#111827}.btn.danger{color:#b91c1c}.btn.small{padding:7px 10px;font-size:13px}.bottom{position:fixed;bottom:0;left:0;right:0;height:72px;background:#fff;border-top:1px solid #e5e7eb;display:grid;grid-template-columns:repeat(4,1fr);z-index:30}.navbtn{border:0;background:#fff;color:#6b7280;font-size:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.navbtn.active{color:#111827;font-weight:750}.navicon{font-size:19px}.drawer{position:fixed;inset:0;z-index:50;background:#0005}.drawer-panel{width:min(340px,88vw);height:100%;background:#fff;padding:20px;box-shadow:5px 0 25px #0003}.drawer-head{display:flex;justify-content:space-between;align-items:center}.drawer-item{display:block;width:100%;text-align:left;border:0;background:#fff;padding:14px 8px;border-radius:10px;font-weight:650}.drawer-item:hover{background:#f3f4f6}.modal-backdrop{position:fixed;inset:0;z-index:60;background:#0007;display:flex;align-items:flex-end;justify-content:center}.modal{background:#fff;width:min(680px,100%);max-height:94vh;overflow:auto;border-radius:20px 20px 0 0;padding:20px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-head h2{margin:0;font-size:20px}.form{display:grid;gap:13px}.field{display:grid;gap:6px}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:11px;background:#fff}.field textarea{min-height:90px;resize:vertical}.form-actions{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.empty{padding:28px;text-align:center;background:#fff;border:1px dashed #d1d5db;border-radius:14px;color:#6b7280}.menu-new{border:1px solid #e5e7eb;border-radius:12px;padding:8px;margin:8px 0}.table-wrap{overflow:auto}.invoice{background:#fff;border:1px solid #ddd;padding:28px;max-width:820px;margin:auto}.invoice-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #111827;padding-bottom:18px}.invoice h1{margin:0;font-size:30px}.invoice table{width:100%;border-collapse:collapse;margin-top:24px}.invoice th,.invoice td{padding:10px;border-bottom:1px solid #e5e7eb;text-align:left}.invoice-total{text-align:right;font-size:22px;font-weight:800;margin-top:20px}.notice{background:#f3f4f6;border-radius:12px;padding:12px;font-size:13px}.dark{background:#111827;color:#f9fafb}.dark .topbar,.dark .bottom,.dark .navbtn,.dark .drawer-panel,.dark .drawer-item,.dark .modal,.dark .card,.dark .empty,.dark .invoice{background:#1f2937;color:#f9fafb;border-color:#374151}.dark .navbtn{color:#9ca3af}.dark .navbtn.active{color:#fff}.dark input,.dark select,.dark textarea{background:#111827;color:#fff;border-color:#4b5563}.dark .btn{background:#1f2937;color:#fff;border-color:#4b5563}.dark .btn.primary{background:#fff;color:#111827}.dark .muted{color:#9ca3af}@media(max-width:700px){.grid{grid-template-columns:1fr}.main{padding:16px 12px}.invoice{padding:18px}.invoice-head{display:block}.invoice-head>div+div{margin-top:14px}.modal{padding:16px}.actions .btn{flex:1}.project-card .row{align-items:flex-start;flex-direction:column}}
