:root{color-scheme:light;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:500;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--app-bg: #f4f6ff;--app-gradient: radial-gradient(circle at top left, rgba(99, 102, 241, .18), transparent 45%), radial-gradient(circle at bottom right, rgba(56, 189, 248, .22), transparent 40%), linear-gradient(145deg, #f8faff 0%, #eef2ff 50%, #f9fafb 100%);--surface-color: rgba(255, 255, 255, .92);--surface-border: rgba(148, 163, 184, .22);--surface-shadow: 0 18px 48px rgba(15, 23, 42, .12);--text-primary: #0f172a;--text-secondary: #475569;--text-accent: #2563eb;--accent: #2563eb;--accent-dark: #1d4ed8;--accent-soft: rgba(37, 99, 235, .1);--danger: #dc2626;--danger-dark: #b91c1c;--success: #16a34a;--warning: #f97316;--muted-surface: rgba(15, 23, 42, .04);--card-radius: 20px;--section-radius: 22px;--transition: .16s ease-in-out}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--app-gradient);color:var(--text-primary)}#root{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea{font-family:inherit}code{background:#0f172a0f;border-radius:8px;padding:2px 6px;font-size:.85rem}.app-shell{min-height:100vh;padding:clamp(24px,5vw,60px) clamp(16px,4vw,48px)}.app-shell__inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(20px,3vw,36px)}.app-header{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--section-radius);box-shadow:var(--surface-shadow);padding:clamp(20px,4vw,32px);display:flex;align-items:center;justify-content:space-between;gap:24px}.app-header__info{display:flex;flex-direction:column;gap:6px}.app-header__title{font-size:clamp(1.3rem,1.5vw + 1rem,1.9rem);font-weight:700;margin:0}.app-header__subtitle{margin:0;color:var(--text-secondary);font-size:.95rem}.app-header__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.app-button{position:relative;border:none;border-radius:999px;padding:10px 20px;font-size:.95rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),background var(--transition);display:inline-flex;align-items:center;gap:10px}.app-button:disabled{cursor:default;opacity:.7;pointer-events:none}.app-button--primary{color:#fff;background:linear-gradient(135deg,var(--accent) 0%,#3b82f6 100%);box-shadow:0 12px 25px #2563eb59}.app-button--primary:hover{transform:translateY(-1px);background:linear-gradient(135deg,var(--accent-dark) 0%,#2563eb 100%)}.app-button--ghost{background:#0f172a0d;color:var(--text-primary)}.app-button--ghost:hover{transform:translateY(-1px);background:#0f172a14}.app-button--danger{background:linear-gradient(135deg,var(--danger) 0%,#ef4444 100%);color:#fff;box-shadow:0 12px 25px #dc26264d}.app-button--danger:hover{transform:translateY(-1px);background:linear-gradient(135deg,var(--danger-dark) 0%,#dc2626 100%)}.app-button--outline{border:1px solid rgba(15,23,42,.1);background:transparent;color:var(--text-primary)}.app-button--outline:hover{transform:translateY(-1px);border-color:#2563eb80;background:#2563eb14}.app-sections{display:flex;flex-direction:column;gap:clamp(18px,3vw,28px)}.app-section{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--section-radius);box-shadow:var(--surface-shadow);padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:20px}.app-section__heading{display:flex;flex-direction:column;gap:6px}.app-section__title{margin:0;font-size:1.25rem;font-weight:700}.app-section__subtitle{margin:0;color:var(--text-secondary);font-size:.95rem}.form-grid{display:grid;gap:20px}@media (min-width: 768px){.form-grid--three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}}.app-field{display:flex;flex-direction:column;gap:8px}.app-label{font-size:.85rem;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.app-input,.app-textarea{width:100%;border-radius:14px;border:1px solid rgba(148,163,184,.4);background:#f8fafce6;padding:12px 16px;font-size:.95rem;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);resize:vertical}.app-input:focus,.app-textarea:focus{outline:none;border-color:#2563eb99;box-shadow:0 0 0 4px var(--accent-soft);background:#fff}.app-hint{font-size:.8rem;color:var(--text-secondary)}.app-message{padding:12px 16px;border-radius:14px;font-size:.9rem;font-weight:600}.app-message--success{background:#16a34a1f;color:var(--success)}.app-message--error{background:#dc26261f;color:var(--danger)}.clients-grid{display:grid;gap:18px}.client-card{border:1px solid rgba(148,163,184,.25);border-radius:var(--card-radius);padding:clamp(18px,3vw,26px);background:#fbfdfff5;display:grid;gap:20px;transition:transform var(--transition),box-shadow var(--transition)}.client-card:hover{transform:translateY(-2px);box-shadow:0 20px 45px #0f172a1f}.client-card__top{display:flex;flex-direction:column;gap:12px}@media (min-width: 768px){.client-card__top{flex-direction:row;justify-content:space-between;align-items:flex-start}}.client-card__title{margin:0;font-size:1.15rem;font-weight:700}.client-meta{display:grid;gap:6px;font-size:.9rem;color:var(--text-secondary)}.client-meta__muted{color:#0f172a8c;font-size:.8rem}.client-actions{display:grid;gap:10px}@media (min-width: 768px){.client-actions{width:min(280px,100%)}}.client-actions__buttons{display:grid;gap:10px}.client-inline-form{display:grid;gap:16px}@media (min-width: 768px){.client-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}}.client-inline-form__field{display:flex;flex-direction:column;gap:10px}.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 12px;font-size:.75rem;font-weight:600;background:#2563eb1a;color:var(--text-accent);text-transform:uppercase;letter-spacing:.05em}.status-pill--danger{background:#ef44441f;color:#ef4444}.status-pill--success{background:#10b9811f;color:#059669}.table-shell{border-radius:var(--card-radius);overflow:hidden;border:1px solid rgba(148,163,184,.25);background:#fffffff5;box-shadow:0 22px 45px #0f172a1f}.table-shell table{width:100%;border-collapse:collapse;font-size:.92rem}.table-shell thead{background:linear-gradient(135deg,#0f172ae6,#0f172acc);color:#fff}.table-shell th,.table-shell td{padding:14px 18px;text-align:left}.table-shell tbody tr{border-top:1px solid rgba(148,163,184,.2);transition:background var(--transition)}.table-shell tbody tr:hover{background:#0f172a0a}.table-actions{display:flex;flex-wrap:wrap;gap:10px}.checkbox{width:16px;height:16px;accent-color:var(--accent)}.helper-text{font-size:.85rem;color:var(--text-secondary)}.broadcast-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.broadcast-counter{font-size:.9rem;color:var(--text-secondary)}.table-filters{display:flex;flex-direction:column;gap:18px;padding:20px;border-radius:18px;background:#0f172a0a;border:1px solid rgba(148,163,184,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.table-filters__row{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.table-filters__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.table-filters__buttons{display:flex;flex-wrap:wrap;gap:12px}.table-filters__meta-group{display:flex;flex-wrap:wrap;gap:12px;color:var(--text-secondary);font-size:.85rem}.table-filters__meta{background:#0f172a0f;padding:6px 12px;border-radius:999px}.login-card{max-width:420px;width:100%;padding:clamp(28px,4vw,40px);border-radius:24px;background:#fffffff5;box-shadow:0 25px 55px #0f172a2e;display:grid;gap:22px}.login-card__title{margin:0;text-align:center;font-size:1.8rem;font-weight:700}.login-card__form{display:grid;gap:18px}.loader-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 16px;background:var(--app-gradient);color:var(--text-secondary)}.loader-box{display:grid;gap:18px;align-items:center;justify-items:center;padding:36px;border-radius:22px;max-width:320px;width:100%;background:#fffffff5;border:1px solid var(--surface-border);box-shadow:var(--surface-shadow)}.loader-spinner{width:60px;height:60px;border-radius:50%;border:6px solid rgba(148,163,184,.25);border-top-color:var(--accent);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{border-radius:18px;background:#0f172a0a;padding:18px;color:var(--text-secondary);font-size:.95rem}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start}.app-button{width:100%;justify-content:center}.client-card{padding:20px}.client-inline-form{grid-template-columns:1fr}.app-shell{padding-top:20px}}.animate-fade-in{animation:fadeIn .24s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.form-grid__full{grid-column:1 / -1;display:flex;justify-content:flex-end}.app-button--small{padding:8px 16px;font-size:.82rem;font-weight:600}.client-card__badges{display:flex;flex-wrap:wrap;gap:8px}.client-card__footer{display:grid;gap:18px}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(32px,5vw,60px);background:var(--app-gradient)}.login-shell__note{font-size:.85rem;text-align:center;color:var(--text-secondary)}.auth-switch{margin:0;text-align:center;font-size:.88rem;color:var(--text-secondary)}.auth-switch a{color:var(--accent);font-weight:700}.auth-links{display:grid;gap:8px}.transactions-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.transactions-modal__backdrop{position:absolute;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.transactions-modal__card{position:relative;width:min(720px,96vw);max-height:min(85vh,680px);border-radius:var(--section-radius);background:#fffffffa;border:1px solid rgba(148,163,184,.28);box-shadow:0 28px 70px #0f172a47;display:flex;flex-direction:column;gap:18px;padding:clamp(20px,4vw,30px)}.transactions-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.transactions-modal__info{display:flex;flex-direction:column;gap:6px}.transactions-modal__title{margin:0;font-size:1.3rem;font-weight:700}.transactions-modal__subtitle{margin:0;color:var(--text-secondary);font-size:.95rem}.transactions-modal__meta{margin:0;color:var(--text-secondary);font-size:.88rem}.transactions-modal__body{display:flex;flex-direction:column;gap:16px;flex:1;overflow:hidden}.transactions-modal__hint{margin:0;font-size:.85rem;color:var(--text-secondary)}.transactions-modal__error{display:grid;gap:12px;justify-items:flex-start}.transactions-table{border-radius:var(--card-radius);border:1px solid rgba(148,163,184,.24);background:#fffffffa;box-shadow:0 24px 50px #0f172a26;overflow:hidden;max-height:360px;overflow-y:auto}.transactions-table table{width:100%;border-collapse:collapse;font-size:.9rem}.transactions-table thead{position:sticky;top:0;background:#0f172a0f;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.transactions-table th,.transactions-table td{padding:12px 16px;text-align:left}.transactions-table tbody tr:nth-child(2n){background:#0f172a08}.transactions-table__amount{text-align:right;font-weight:600}.transactions-table__amount--positive{color:var(--success)}.transactions-table__amount--negative{color:var(--danger)}@media (max-width: 640px){.transactions-modal{padding:12px}.transactions-modal__card{width:96vw;max-height:85vh;padding:20px}.transactions-modal__header{flex-direction:column;align-items:stretch}.transactions-modal__header button{align-self:flex-end}.transactions-table{max-height:280px}}.app-layout-spacer{height:clamp(8px,1vw,12px)}
