*{box-sizing:border-box}html,body,#root{height:100%}body{color:#e8eef5;background:#0a1420;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}button{cursor:pointer;font-family:inherit}input,select{color:#e8eef5;background:#0f1c2e;border:1px solid #26364a;border-radius:6px;padding:8px 10px;font-family:inherit}input:focus,select:focus{outline:1px solid #d4a34c}.loading-screen,.auth-screen{justify-content:center;align-items:center;height:100vh;display:flex}.auth-card{background:#0f1c2e;border:1px solid #26364a;border-radius:14px;width:340px;padding:36px 40px}.auth-card h1{color:#d4a34c;margin:0 0 4px}.auth-card .subtitle{color:#9fb3c8;margin-bottom:20px;font-size:14px}.auth-card form{flex-direction:column;gap:6px;display:flex}.auth-card label{color:#9fb3c8;margin-top:8px;font-size:12px}.auth-card button[type=submit]{color:#0a1420;background:#d4a34c;border:none;border-radius:8px;margin-top:16px;padding:10px;font-weight:600}.error{color:#e05c5c;font-size:13px}.link-btn{color:#7fb3d9;background:0 0;border:none;margin-top:12px;padding:0;font-size:13px}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-header{background:#0f1c2e;border-bottom:1px solid #1c2b3d;align-items:center;gap:24px;padding:14px 24px;display:flex}.app-header .brand{color:#d4a34c;font-size:18px;font-weight:700}.app-header nav{flex:1;gap:4px;display:flex}.nav-btn{color:#9fb3c8;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:14px}.nav-btn.active{color:#e8eef5;background:#1c2b3d}.header-right{align-items:center;gap:12px;display:flex}.user-email{color:#9fb3c8;font-size:13px}main{width:100%;max-width:1100px;margin:0 auto;padding:24px}.stat-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px;display:grid}.stat-card{background:#0f1c2e;border:1px solid #26364a;border-radius:12px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.stat-label{color:#9fb3c8;font-size:13px}.stat-value{font-size:22px;font-weight:700}.positive{color:#5fc98a}.negative{color:#e05c5c}.panel{background:#0f1c2e;border:1px solid #26364a;border-radius:12px;margin-bottom:18px;padding:18px 20px}.panel h3{margin-top:0}.page{flex-direction:column;gap:4px;display:flex}.inline-form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inline-form button{color:#0a1420;background:#d4a34c;border:none;border-radius:8px;padding:9px 16px;font-weight:600}.tx-table{border-collapse:collapse;width:100%;font-size:14px}.tx-table th{text-align:left;color:#9fb3c8;border-bottom:1px solid #26364a;padding:6px 8px;font-weight:500}.tx-table td{border-bottom:1px solid #16233350;padding:8px}.tx-date{color:#9fb3c8;white-space:nowrap}.tx-desc{color:#9fb3c8}.empty{color:#6b7f94;text-align:center;padding:20px!important}.goal-list{flex-direction:column;gap:16px;display:flex}.goal-item{flex-direction:column;gap:6px;display:flex}.goal-header{justify-content:space-between;font-size:14px;display:flex}.progress-track{background:#16233d;border-radius:6px;height:8px;overflow:hidden}.progress-fill{background:#d4a34c;border-radius:6px;height:100%;transition:width .3s}.chat-fab{z-index:50;background:#d4a34c;border:none;border-radius:50%;width:56px;height:56px;font-size:22px;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px #0006}.chat-panel{z-index:50;background:#0f1c2e;border:1px solid #26364a;border-radius:14px;flex-direction:column;width:340px;height:440px;display:flex;position:fixed;bottom:92px;right:24px;overflow:hidden;box-shadow:0 8px 30px #00000080}.chat-header{background:#1c2b3d;padding:12px 16px;font-weight:600}.chat-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.chat-bubble{border-radius:10px;max-width:85%;padding:8px 12px;font-size:14px}.chat-bubble.user{color:#0a1420;background:#d4a34c;align-self:flex-end}.chat-bubble.assistant{background:#1c2b3d;align-self:flex-start}.chat-input-row{border-top:1px solid #26364a;display:flex}.chat-input-row input{border:none;border-radius:0;flex:1}.chat-input-row button{color:#0a1420;background:#d4a34c;border:none;padding:0 16px;font-weight:600}@media (width<=640px){.app-header{flex-wrap:wrap}.chat-panel{width:calc(100vw - 32px);right:16px}}
