@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Outfit:wght@300;400;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400&family=Outfit:wght@300;400;600;700&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #080808;--surface: #0e0e0e;--border: rgba(255,255,255,.07);--border-active: rgba(255,255,255,.18);--accent: #00e676;--accent-dim: rgba(0,230,118,.08);--accent-mid: rgba(0,230,118,.13);--accent-glow: rgba(0,230,118,.1);--accent-border: rgba(0,230,118,.2);--accent-border-active: rgba(0,230,118,.35);--text: #f0f0f0;--text-secondary: rgba(255,255,255,.35);--text-tertiary: rgba(255,255,255,.15);--error: rgba(255,90,90,.85);--danger: rgba(255,80,80,.08);--danger-border: rgba(255,80,80,.2);--danger-text: rgba(255,80,80,.7);--danger-text-hover: rgba(255,80,80,1);--warn: rgba(255,200,0,.8);--warn-bg: rgba(255,200,0,.1);--font-ui: "Outfit", sans-serif;--font-mono: "DM Mono", monospace;--r-sm: 6px;--r-md: 8px;--r-lg: 9px;--r-xl: 12px;--r-2xl: 14px}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.auth-root{min-height:100vh;background:var(--bg);display:flex;align-items:center;justify-content:center;font-family:var(--font-ui);position:relative;overflow:hidden}.bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);background-size:52px 52px;pointer-events:none}.bg-radial{position:absolute;inset:0;background:radial-gradient(ellipse 55% 45% at 50% 50%,rgba(0,230,118,.035) 0%,transparent 70%);pointer-events:none}.card-wrap{position:relative;z-index:10;width:100%;max-width:400px;padding:24px;animation:fadeUp .65s cubic-bezier(.16,1,.3,1) both}.logo{display:flex;align-items:center;gap:13px;margin-bottom:32px}.logo-mark{width:38px;height:38px;border-radius:10px;border:1px solid rgba(0,230,118,.25);background:#00e6760d;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-text{font-weight:700;font-size:17px;color:var(--text);letter-spacing:.3px}.logo-sub{font-size:10px;color:var(--text-secondary);font-weight:300;letter-spacing:1.8px;margin-top:2px;font-family:var(--font-mono)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);padding:32px 28px}.card-title{font-size:20px;font-weight:600;color:var(--text);letter-spacing:-.3px}.card-desc{font-size:13px;color:var(--text-secondary);margin-top:5px;font-weight:300;margin-bottom:26px}.divider{height:1px;background:var(--border);margin-bottom:24px}.field{margin-bottom:16px}.field-label{font-size:11px;font-weight:400;letter-spacing:.8px;color:var(--text-secondary);margin-bottom:7px;text-transform:uppercase;font-family:var(--font-mono);transition:color .18s}.field-label.active{color:var(--accent)}.field-input{width:100%;background:#ffffff06;border:1px solid var(--border);border-radius:var(--r-lg);padding:11px 13px;color:var(--text);font-family:var(--font-mono);font-size:14px;font-weight:300;outline:none;transition:border-color .18s,background .18s,box-shadow .18s;caret-color:var(--accent)}.field-input::placeholder{color:var(--text-tertiary)}.field-input:focus{border-color:var(--accent-border-active);background:#00e67608;box-shadow:0 0 0 3px #00e6760f}.status-line{height:16px;margin:14px 0 16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3px;transition:opacity .25s}.btn{width:100%;background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:var(--r-lg);padding:12px;color:var(--accent);font-family:var(--font-ui);font-size:14px;font-weight:600;letter-spacing:.2px;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s,transform .1s;display:flex;align-items:center;justify-content:center;gap:8px}.btn:hover:not(:disabled){background:var(--accent-mid);border-color:var(--accent-border-active);box-shadow:0 4px 18px var(--accent-glow)}.btn:active:not(:disabled){transform:scale(.99)}.btn:disabled{opacity:.55;cursor:not-allowed}.edit-btn{background:none;border:1px solid rgba(0,230,118,.2);border-radius:var(--r-sm);padding:4px 10px;color:#00e67680;font-family:var(--font-mono);font-size:11px;cursor:pointer;transition:all .15s}.edit-btn:hover{border-color:#00e67680;color:var(--accent)}.spinner{width:13px;height:13px;border:1.5px solid rgba(0,230,118,.25);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.footer{text-align:center;margin-top:18px;font-size:10px;color:var(--text-tertiary);font-family:var(--font-mono);letter-spacing:.8px}.form-wrap{padding:32px;max-width:560px}.form-title{font-family:var(--font-ui);font-size:18px;font-weight:600;color:var(--text);margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1 / -1}.form-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--text-secondary)}.form-input,.form-select{background:#ffffff06;border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;color:var(--text);font-family:var(--font-mono);font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.form-input:focus,.form-select:focus{border-color:var(--accent-border-active);box-shadow:0 0 0 3px #00e6760f}.form-select option{background:var(--surface)}.form-checkbox-row{display:flex;align-items:center;gap:10px;padding:10px 0}.form-checkbox-row input{accent-color:var(--accent);width:15px;height:15px}.form-checkbox-label{font-family:var(--font-mono);font-size:12px;color:#ffffff80}.form-status{font-family:var(--font-mono);font-size:11px;height:16px;margin:14px 0;transition:opacity .2s}.form-btn{background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:var(--r-md);padding:11px 24px;color:var(--accent);font-family:var(--font-ui);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.form-btn:hover{background:var(--accent-mid);box-shadow:0 4px 16px var(--accent-glow)}.form-btn:disabled{opacity:.5;cursor:not-allowed}.panels-wrap{padding:32px}.panels-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.panels-title{font-family:var(--font-ui);font-size:18px;font-weight:600;color:var(--text)}.panels-total{font-family:var(--font-mono);font-size:11px;color:#ffffff4d}.panels-table{width:100%;border-collapse:collapse}.panels-table th{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#ffffff4d;text-align:left;padding:10px 14px;border-bottom:1px solid var(--border)}.panels-table td{font-family:var(--font-mono);font-size:12px;color:#ffffffbf;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.04)}.panels-table tr:hover td{background:#ffffff05}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;letter-spacing:.5px;font-weight:500}.badge-master{background:#00e6761f;color:var(--accent)}.badge-backup{background:var(--warn-bg);color:var(--warn)}.badge-node{background:#ffffff12;color:#fff6}.badge-active{background:#00e6761a;color:var(--accent)}.badge-inactive{background:#ff50501a;color:var(--danger-text)}.loading{font-family:var(--font-mono);font-size:12px;color:#ffffff4d;padding:32px;text-align:center}.delete-btn{background:none;border:1px solid var(--danger-border);border-radius:var(--r-sm);padding:4px 10px;color:var(--danger-text);font-family:var(--font-mono);font-size:11px;cursor:pointer;transition:all .15s}.delete-btn:hover{border-color:#ff505080;color:var(--danger-text-hover)}.confirm-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center}.confirm-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:28px;width:360px}.confirm-title{font-family:var(--font-ui);font-size:16px;font-weight:600;color:var(--text);margin-bottom:8px}.confirm-desc{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);margin-bottom:24px}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-cancel{padding:7px 16px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:none;color:#fff6;font-family:var(--font-ui);font-size:13px;cursor:pointer;transition:all .15s}.confirm-cancel:hover{color:var(--text);border-color:#fff3}.confirm-delete{padding:7px 16px;border-radius:7px;border:1px solid rgba(255,80,80,.3);background:var(--danger);color:#ff5050cc;font-family:var(--font-ui);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.confirm-delete:hover{background:#ff505026;color:var(--danger-text-hover)}.dash-root{min-height:100vh;background:var(--bg);font-family:var(--font-ui);color:var(--text)}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:56px;border-bottom:1px solid var(--border);background:var(--surface)}.nav-logo-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px #00e67699}.nav-link{padding:6px 14px;border-radius:7px;font-size:13px;color:#ffffff73;cursor:pointer;transition:color .15s,background .15s;border:none;background:none;font-family:var(--font-ui)}.nav-link:hover{color:var(--text);background:#ffffff0f}.nav-link.active{color:var(--text);background:#ffffff14}.nav-email{font-family:var(--font-mono);font-size:11px;color:#ffffff4d}.logout-btn{padding:5px 12px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:none;color:#fff6;font-size:12px;font-family:var(--font-ui);cursor:pointer;transition:all .15s}.greeting-sub{font-size:13px;color:#ffffff59;font-weight:300;margin-bottom:2px}.greeting-email{color:var(--accent)}.section-title{font-size:15px;font-weight:600;color:var(--text)}.add-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--r-md);border:1px solid rgba(0,230,118,.25);background:#00e67612;color:var(--accent);font-family:var(--font-ui);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.add-btn:hover{background:var(--accent-mid);box-shadow:0 4px 14px var(--accent-glow)}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);width:100%;max-width:580px;max-height:90vh;overflow-y:auto;position:relative}.modal-close:hover{color:var(--text)}.finance-wrap{padding:32px}.finance-section-label{font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:12px}.finance-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:0}.finance-tab{font-family:var(--font-ui);font-size:13px;color:var(--text-secondary);padding:7px 14px;border-radius:var(--r-md) var(--r-md) 0 0;border:none;background:none;cursor:pointer;transition:color .15s,background .15s;position:relative;bottom:-1px}.finance-tab:hover{color:var(--text);background:#ffffff0a}.finance-tab.active{color:var(--text);background:var(--surface);border:1px solid var(--border);border-bottom-color:var(--surface)}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:32px}.metric-card{background:#ffffff0a;border-radius:var(--r-md);padding:14px 16px}.metric-label{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);margin-bottom:6px}.metric-value{font-family:var(--font-mono);font-size:20px;font-weight:600}.finance-table{width:100%;border-collapse:collapse}.finance-table th{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--text-secondary);text-align:left;padding:10px 14px;border-bottom:1px solid var(--border);font-weight:400}.finance-table td{font-family:var(--font-mono);font-size:12px;color:#ffffffa6;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.04)}.finance-table tr:hover td{background:#ffffff05}.cell-income{color:var(--accent)}.cell-owe{color:var(--warn)}.cell-status-done{font-size:11px;color:var(--accent)}.cell-status-owe{font-size:11px;color:var(--warn)}@media(max-width:768px){.nav{padding:8px 16px;height:auto;min-height:52px;flex-wrap:wrap;gap:8px}.nav-email{display:none}.nav-links{order:3;width:100%;gap:2px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.nav-links::-webkit-scrollbar{display:none}.nav-link{padding:5px 10px;font-size:12px;white-space:nowrap}.content{padding:16px}.greeting{font-size:18px}.greeting-sub{margin-bottom:16px}.modal{margin:0 12px;max-height:95vh}.confirm-box{width:calc(100% - 32px);padding:20px}.form-wrap{padding:20px 16px;max-width:100%}.form-grid{grid-template-columns:1fr}.panels-wrap{padding:16px}.panels-header{flex-direction:column;align-items:flex-start;gap:12px}.panels-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.finance-wrap{padding:16px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.finance-tabs{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.finance-tabs::-webkit-scrollbar{display:none}.finance-tab{white-space:nowrap;font-size:12px;padding:6px 10px}.finance-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.section-header{flex-direction:column;align-items:flex-start;gap:12px}}@media(max-width:480px){.metrics-grid{grid-template-columns:1fr}.metric-value{font-size:16px}.nav-logo-dot,.logout-btn span{display:none}}.dash-root{min-height:100vh;background:#080808;font-family:Outfit,sans-serif;color:#f0f0f0}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:56px;border-bottom:1px solid rgba(255,255,255,.07);background:#0e0e0e}.nav-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;letter-spacing:.3px}.nav-logo-dot{width:8px;height:8px;border-radius:50%;background:#00e676;box-shadow:0 0 8px #00e67699}.nav-links{display:flex;align-items:center;gap:4px}.nav-link{padding:6px 14px;border-radius:7px;font-size:13px;color:#ffffff73;cursor:pointer;transition:color .15s,background .15s;border:none;background:none;font-family:Outfit,sans-serif}.nav-link:hover{color:#f0f0f0;background:#ffffff0f}.nav-link.active{color:#f0f0f0;background:#ffffff14}.nav-right{display:flex;align-items:center;gap:12px}.nav-email{font-family:DM Mono,monospace;font-size:11px;color:#ffffff4d}.logout-btn{padding:5px 12px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:none;color:#fff6;font-size:12px;font-family:Outfit,sans-serif;cursor:pointer;transition:all .15s}.logout-btn:hover{border-color:#ff505066;color:#ff5050b3}.content{padding:32px}.greeting{font-size:22px;font-weight:600;letter-spacing:-.3px;margin-bottom:4px}.greeting-sub{font-size:13px;color:#ffffff59;font-weight:300;margin-bottom:32px}.greeting-email{color:#00e676}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-title{font-size:15px;font-weight:600;color:#f0f0f0}.add-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;border:1px solid rgba(0,230,118,.25);background:#00e67612;color:#00e676;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.add-btn:hover{background:#00e67621;box-shadow:0 4px 14px #00e6761a}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center}.modal{background:#0e0e0e;border:1px solid rgba(255,255,255,.08);border-radius:14px;width:100%;max-width:580px;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:14px;right:16px;background:none;border:none;color:#ffffff4d;font-size:20px;cursor:pointer;line-height:1;transition:color .15s}.modal-close:hover{color:#f0f0f0}@media(max-width:768px){.nav{padding:0 16px;height:52px;flex-wrap:wrap;position:relative}.nav-email{display:none}.nav-links{gap:2px;overflow-x:auto;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-link{padding:5px 10px;font-size:12px;white-space:nowrap}.content{padding:16px}.greeting{font-size:18px}.greeting-sub{margin-bottom:20px}.modal{max-width:100%;margin:0 12px;max-height:95vh}.metrics-grid{grid-template-columns:repeat(2,1fr)}.panels-wrap,.finance-wrap{padding:16px}.panels-table,.finance-table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.finance-tabs{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.finance-tabs::-webkit-scrollbar{display:none}.finance-tab{white-space:nowrap;font-size:12px;padding:6px 10px}.form-wrap{padding:20px 16px}.form-grid{grid-template-columns:1fr}.panels-header{flex-direction:column;align-items:flex-start;gap:12px}}@media(max-width:480px){.metrics-grid{grid-template-columns:1fr}.nav-logo-dot{display:none}}
