*{box-sizing:border-box}:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:radial-gradient(circle at 0 0,#11182714,#0000 32rem),#f8fafc;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding-bottom:96px}.topbar{z-index:20;padding:max(16px,env(safe-area-inset-top)) 18px 14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8fafcf0;border-bottom:1px solid #94a3b840;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.04em;margin:0;font-size:24px}.topbar p{color:#64748b;margin:3px 0 0;font-size:13px}.toast{z-index:90;color:#fff;text-align:center;background:#111827;border-radius:18px;padding:14px;font-weight:800;position:fixed;top:92px;left:16px;right:16px}.module-strip{z-index:15;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8fafcf0;border-bottom:1px solid #94a3b838;gap:8px;padding:10px 14px;display:flex;position:sticky;top:74px;overflow-x:auto}.module-strip button{color:#334155;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;gap:6px;padding:9px 12px;font-size:13px;font-weight:800;display:inline-flex}.module-strip button.active{color:#fff;background:#111827;border-color:#111827}.page{max-width:1180px;margin:0 auto;padding:18px}.stats-grid{grid-template-columns:1fr;gap:12px;display:grid}.stat-card,.card,.record-card{background:#fffffff0;border:1px solid #94a3b838;border-radius:24px;box-shadow:0 14px 40px #0f172a0f}.stat-card{align-items:center;gap:13px;padding:16px;display:flex}.stat-icon,.module-icon{color:#fff;background:#111827;border-radius:16px;flex:none;place-items:center;width:44px;height:44px;display:grid}.stat-card p,.stat-card small,.muted{color:#64748b;margin:0;font-size:13px;display:block}.stat-card strong{letter-spacing:-.04em;font-size:26px}.quick-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px;display:grid}.quick-button{background:#fff;border:1px solid #cbd5e1;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:13px;font-weight:900;display:inline-flex}.dashboard-grid{grid-template-columns:1fr;gap:14px;margin-top:14px;display:grid}.card{padding:16px}.section-title,.toolbar,.record-head,.module-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.module-header{justify-content:flex-start;margin-bottom:14px}.module-header h2,.section-title h3,.card h3{letter-spacing:-.03em;margin:0;font-size:22px}.module-header p{color:#64748b;margin:3px 0 0}.toolbar{flex-wrap:wrap;margin-bottom:14px}.toolbar.compact{margin:10px 0}.text-button{color:#475569;background:0 0;border:0;font-weight:900}.primary-button,.danger-button,.upload-label{color:#fff;background:#111827;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 15px;font-weight:900;display:inline-flex}.danger-button{background:#991b1b;margin-top:12px}.danger-button.no-margin{margin-top:0}.upload-label{margin-left:8px}.upload-label input{display:none}.full{width:100%;margin-top:12px}.search-box{background:#fff;border:1px solid #94a3b84d;border-radius:18px;flex:1;align-items:center;gap:8px;min-width:220px;padding:0 12px;display:flex}.search-box input{background:0 0;border:0;outline:0;width:100%;min-height:48px}.toolbar select{background:#fff;border:1px solid #cbd5e1;border-radius:999px;min-height:44px;padding:0 12px}.record-grid-list{gap:12px;display:grid}.record-card{padding:16px}.record-card h3{letter-spacing:-.03em;margin:0}.record-card p{color:#64748b;margin:4px 0 0}.detail-list{gap:10px;margin-top:8px;display:grid}.detail-list div,.mini-row{border-top:1px solid #e2e8f0;justify-content:space-between;gap:12px;padding-top:10px;display:flex}.detail-list span,.mini-row span{color:#64748b}.detail-list strong{text-align:right;overflow-wrap:anywhere;max-width:58%}.mini-list{gap:10px;display:grid}.empty{text-align:center;color:#64748b;padding:30px}.empty.small{text-align:left;padding:10px 0 0}.button-row{flex-wrap:wrap;gap:8px;display:flex}.delete-button,.edit-button,.print-button,.share-button{border:0;border-radius:14px;flex:none;place-items:center;width:40px;height:40px;display:grid}.delete-button{color:#991b1b;background:#fee2e2}.edit-button{color:#075985;background:#e0f2fe}.print-button{color:#166534;background:#dcfce7}.share-button{color:#5b21b6;background:#ede9fe}.small-button{width:34px;height:34px}.bottom-nav{z-index:20;padding:8px 8px max(8px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff2;border-top:1px solid #94a3b84d;grid-template-columns:repeat(8,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#64748b;background:0 0;border:0;border-radius:16px;place-items:center;gap:2px;min-height:56px;font-size:10px;display:grid}.bottom-nav button.active{color:#fff;background:#111827}.modal-backdrop{z-index:50;background:#0f172a8c;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:28px 28px 0 0;width:100%;max-height:88vh;padding:18px;overflow-y:auto}.modal-header h2{margin:0}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.icon-button{background:#f1f5f9;border:0;border-radius:14px;width:42px;height:42px}.form-grid{gap:12px;display:grid}.field{gap:6px;margin-top:10px;display:grid}.field span{color:#475569;font-size:13px;font-weight:900}.field input,.field select,.field textarea{background:#f8fafc;border:1px solid #cbd5e1;border-radius:16px;outline:0;width:100%;padding:12px}.field textarea{resize:vertical;min-height:90px}.isolator{margin-bottom:14px}.mini-stats{grid-template-columns:repeat(2,1fr);gap:8px;margin:10px 0;display:grid}.mini-stats span{background:#f1f5f9;border-radius:14px;padding:10px;font-size:13px;font-weight:800}.mini-work{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:18px;gap:5px;padding:12px;display:grid}.mini-work span,.mini-work em,.mini-work p{color:#64748b;margin:0;font-size:13px}.invoice-modal{max-width:850px}.invoice-lines{margin-top:16px}.line-item{grid-template-columns:1fr 70px 90px 90px 38px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.line-item input{background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;padding:10px}.invoice-totals{border-top:1px solid #e2e8f0;gap:8px;margin-top:12px;padding-top:12px;display:grid}.invoice-totals div,.invoice-print-totals div{justify-content:space-between;display:flex}.share-grid{grid-template-columns:1fr;gap:10px;margin-bottom:10px;display:grid}.share-note{margin-top:12px}.print-backdrop{z-index:80;background:#f8fafc;position:fixed;inset:0;overflow:auto}.print-actions{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:center;gap:8px;padding:12px;display:flex;position:sticky;top:0}.invoice-print{background:#fff;border-radius:18px;max-width:850px;margin:20px auto;padding:40px;box-shadow:0 14px 40px #0f172a14}.invoice-print-head,.invoice-print-grid{border-bottom:1px solid #e2e8f0;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:18px;display:flex}.invoice-print h1{margin:0;font-size:42px}.invoice-table{border-collapse:collapse;width:100%;margin:20px 0}.invoice-table th,.invoice-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:12px}.invoice-print-totals{gap:8px;max-width:320px;margin-left:auto;display:grid}.grand-total{border-top:2px solid #111827;padding-top:10px;font-size:22px}.invoice-notes{margin-top:28px}@media (width>=760px){.stats-grid{grid-template-columns:repeat(4,1fr)}.quick-grid{grid-template-columns:repeat(6,1fr)}.dashboard-grid,.record-grid-list{grid-template-columns:repeat(2,1fr)}.modal-backdrop{justify-content:center;align-items:center}.modal-card{border-radius:28px;max-width:680px}.mini-stats{grid-template-columns:repeat(4,1fr)}.share-grid{grid-template-columns:1fr 1fr}}@media (width>=1050px){.record-grid-list{grid-template-columns:repeat(3,1fr)}}@media print{body *{visibility:hidden}.print-backdrop,.print-backdrop *{visibility:visible}.print-actions{display:none}.print-backdrop{background:#fff;position:absolute;inset:0}.invoice-print{box-shadow:none;border-radius:0;max-width:none;margin:0}.module-strip,.topbar,.bottom-nav{display:none}}
