:root{--teal: #14b8a6;--teal-dark: #0f9488;--teal-darker: #0b766e;--teal-50: #f0fdfa;--teal-100: #ccfbf1;--ink: #0f172a;--slate: #475569;--muted: #64748b;--line: #e2e8f0;--bg: #f8fafc;--white: #ffffff;--danger: #dc2626;--danger-bg: #fef2f2;--warn: #b45309;--warn-bg: #fffbeb;--ok: #047857;--ok-bg: #ecfdf5;--radius: 14px;--shadow: 0 10px 30px rgba(15, 23, 42, .08);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .08)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}.page{min-height:100vh;display:flex;flex-direction:column}.btn{font:inherit;font-weight:600;border:1px solid transparent;border-radius:10px;padding:10px 18px;cursor:pointer;transition:transform .06s ease,background .15s ease,box-shadow .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--teal);color:var(--white);box-shadow:0 6px 16px #14b8a659}.btn-primary:hover{background:var(--teal-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-ghost{background:transparent;color:var(--teal-darker);border-color:var(--teal-100)}.btn-ghost:hover{background:var(--teal-50)}.btn-lg{padding:14px 26px;font-size:1.05rem}.btn-block{width:100%}.link{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--teal-dark);cursor:pointer}.link:hover{text-decoration:underline}.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;max-width:1100px;width:100%;margin:0 auto}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--teal);color:var(--white);font-weight:800;display:grid;place-items:center}.brand-name{font-weight:700;font-size:1.1rem}.nav-actions{display:flex;align-items:center;gap:10px}.nav-user{color:var(--slate);font-weight:600;font-size:.95rem}.hero{max-width:1100px;width:100%;margin:0 auto;padding:56px 24px 24px}.hero-content{max-width:720px}.eyebrow{display:inline-block;background:var(--teal-50);color:var(--teal-darker);font-weight:600;font-size:.85rem;padding:6px 14px;border-radius:999px;margin-bottom:18px}.hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;margin:0 0 16px;letter-spacing:-.02em}.accent{color:var(--teal)}.lead{font-size:1.15rem;color:var(--slate);line-height:1.6;margin:0 0 28px}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.hero-note{color:var(--muted);font-size:.9rem;margin:0}.features{max-width:1100px;width:100%;margin:0 auto;padding:32px 24px 16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.feature-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);transition:transform .12s ease,box-shadow .12s ease}.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.feature-icon{font-size:1.8rem;margin-bottom:12px}.feature-card h3{margin:0 0 8px;font-size:1.1rem}.feature-card p{margin:0;color:var(--slate);line-height:1.55;font-size:.95rem}.cta-band{max-width:1100px;width:calc(100% - 48px);margin:48px auto;padding:48px 24px;text-align:center;background:linear-gradient(135deg,var(--teal) 0%,var(--teal-darker) 100%);color:var(--white);border-radius:20px;box-shadow:var(--shadow)}.cta-band h2{margin:0 0 8px;font-size:clamp(1.4rem,3vw,2rem)}.cta-band p{margin:0 0 22px;opacity:.9}.cta-band .btn-primary{background:var(--white);color:var(--teal-darker);box-shadow:0 6px 16px #0003}.cta-band .btn-primary:hover{background:var(--teal-50)}.footer{margin-top:auto;border-top:1px solid var(--line);padding:24px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;max-width:1100px;width:100%;margin-left:auto;margin-right:auto;color:var(--muted);font-size:.9rem}.auth-page{align-items:center;justify-content:center;padding:24px;background:linear-gradient(160deg,var(--teal-50) 0%,var(--bg) 60%)}.auth-card{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:32px;width:100%;max-width:420px}.auth-back{background:none;border:none;color:var(--muted);font:inherit;cursor:pointer;padding:0;margin-bottom:16px}.auth-back:hover{color:var(--teal-dark)}.auth-card h1{margin:0 0 6px;font-size:1.6rem}.auth-sub{margin:0 0 22px;color:var(--slate)}.form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field span{font-weight:600;font-size:.9rem;color:var(--slate)}.field input{font:inherit;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--white);transition:border-color .15s ease,box-shadow .15s ease}.field input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #14b8a62e}.auth-switch{margin:20px 0 0;text-align:center;color:var(--slate);font-size:.95rem}.alert{background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca;border-radius:10px;padding:11px 13px;font-size:.9rem}.dashboard .nav{background:var(--white);border-bottom:1px solid var(--line);max-width:none}.dashboard-main{max-width:1000px;width:100%;margin:0 auto;padding:32px 24px}.dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px}.dashboard-head h1{margin:0 0 4px;font-size:1.7rem}.muted{color:var(--muted);margin:0}.stat-pill{background:var(--teal-50);color:var(--teal-darker);font-weight:700;padding:8px 16px;border-radius:999px;white-space:nowrap}.state{padding:32px;text-align:center;color:var(--muted)}.empty{text-align:center;padding:56px 24px;background:var(--white);border:1px dashed var(--line);border-radius:var(--radius)}.empty-icon{font-size:2.4rem;margin-bottom:10px}.empty h3{margin:0 0 6px}.empty p{margin:0;color:var(--muted)}.table-wrap{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line)}.table th{background:var(--teal-50);color:var(--teal-darker);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--teal-50)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.8rem;font-weight:600}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}@media(max-width:600px){.dashboard-head{flex-direction:column;align-items:flex-start}.table th:nth-child(4),.table td:nth-child(4){display:none}}
