:root{--ink: #0b1220;--ink-soft: #1b2740;--accent: #10b981;--accent-dark: #059669;--bg: #f5f7fa;--surface: #ffffff;--border: #e2e8f0;--text: #0f172a;--text-muted: #64748b;--danger: #dc2626;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:IBM Plex Sans Arabic,Tahoma,sans-serif;background:var(--bg);color:var(--text)}button{font-family:inherit;cursor:pointer}input{font-family:inherit}.page-loading,.page-error,.empty-state{padding:2rem;text-align:center;color:var(--text-muted)}.page-error{color:var(--danger)}.page-message{background:#ecfdf5;border:1px solid var(--accent);color:var(--accent-dark);padding:.75rem 1rem;border-radius:.75rem;margin-bottom:1rem}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--ink) 0%,var(--ink-soft) 100%);padding:1.5rem}.auth-card{width:100%;max-width:24rem;background:var(--surface);border-radius:1.25rem;padding:2.5rem 2rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 20px 60px #00000059}.auth-card h1{margin:0;font-size:1.5rem;font-weight:800}.auth-subtitle{margin:-.5rem 0 .5rem;color:var(--text-muted);font-size:.875rem}.auth-card label{display:flex;flex-direction:column;gap:.375rem;font-size:.875rem;font-weight:600;color:var(--text)}.password-field{position:relative;display:flex}.password-field input{flex:1;padding-left:2.5rem}.password-toggle{position:absolute;left:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:.25rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:var(--text)}.auth-card input{padding:.65rem .9rem;border:1px solid var(--border);border-radius:.65rem;font-size:.95rem}.auth-card input:focus{outline:2px solid var(--accent);outline-offset:1px}.auth-error{color:var(--danger);font-size:.875rem;margin:0}.auth-card button{margin-top:.5rem;padding:.75rem;border:none;border-radius:.65rem;background:var(--accent);color:#fff;font-weight:700;font-size:.95rem;transition:background .15s}.auth-card button:hover:not(:disabled){background:var(--accent-dark)}.auth-card button:disabled{opacity:.6;cursor:not-allowed}.dashboard{min-height:100vh;display:flex;flex-direction:column}.dashboard-header{background:var(--ink);color:#fff;padding:1.25rem 1.75rem;display:flex;align-items:center;justify-content:space-between}.dashboard-provider-name{margin:0;font-weight:800;font-size:1.05rem}.dashboard-provider-meta{margin:.15rem 0 0;font-size:.8rem;color:#94a3b8}.link-button{background:none;border:1px solid #334155;color:#e2e8f0;padding:.45rem 1rem;border-radius:.55rem;font-size:.85rem}.link-button:hover{background:#1e293b}.dashboard-nav{display:flex;gap:.5rem;padding:0 1.75rem;background:var(--ink-soft)}.dashboard-nav a{display:inline-block;padding:.9rem 1rem;color:#cbd5e1;text-decoration:none;font-weight:600;font-size:.9rem;border-bottom:3px solid transparent}.dashboard-nav a.active{color:#fff;border-bottom-color:var(--accent)}.dashboard-content{flex:1;max-width:72rem;width:100%;margin:0 auto;padding:2rem 1.75rem}.dashboard-content h2{margin:0 0 .5rem;font-size:1.35rem}.section-hint{color:var(--text-muted);font-size:.875rem;margin:0 0 1.5rem}.compliance-footer{text-align:center;font-size:.75rem;color:var(--text-muted);padding:1.25rem;border-top:1px solid var(--border);background:var(--surface)}.pool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.25rem}.pool-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.25rem}.pool-card header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.75rem}.pool-card h3{margin:0;font-size:1.05rem}.pool-period{font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.pool-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:0 0 1rem}.pool-card dt{font-size:.75rem;color:var(--text-muted);margin:0 0 .15rem}.pool-card dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.commit-form{display:flex;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border)}.commit-form input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.55rem}.commit-form button{padding:.5rem 1rem;border:none;border-radius:.55rem;background:var(--accent);color:#fff;font-weight:700;font-size:.85rem;white-space:nowrap}.commit-form button:disabled{opacity:.6;cursor:not-allowed}.commitments-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:.75rem;overflow:hidden}.commitments-table th,.commitments-table td{padding:.75rem 1rem;text-align:right;font-size:.9rem;font-variant-numeric:tabular-nums}.commitments-table thead{background:var(--bg);color:var(--text-muted);font-size:.8rem}.commitments-table tbody tr{border-top:1px solid var(--border)}
