:root{--green-900: #0F2E22;--green-800: #1B4332;--green-700: #2D6A4F;--green-500: #52B788;--green-50: #F0F6F2;--ochre: #C77D2C;--cream: #FAF7F0;--paper: #FFFFFF;--ink: #1A1A1A;--ink-2: #4A4A4A;--ink-3: #7A7A7A;--line: #E5E1D6;--danger: #B23A3A;--shadow-sm: 0 1px 2px rgba(15, 46, 34, .06);--shadow: 0 4px 14px rgba(15, 46, 34, .08);--radius: 10px;--radius-lg: 16px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica,Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:56px;line-height:1.05;letter-spacing:-.03em}h2{font-size:32px;line-height:1.15;letter-spacing:-.02em}h3{font-size:20px;line-height:1.3}h4{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:600}p{margin:0;color:var(--ink-2)}a{color:var(--green-700);text-decoration:none}button{font-family:inherit;cursor:pointer;border:none}.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;color:var(--green-900);letter-spacing:-.01em;text-decoration:none}.logo-mark{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--green-700),var(--green-900));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:8px;font-size:15px;font-weight:600;transition:all .15s ease;gap:8px;text-decoration:none}.btn-primary{background:var(--green-800);color:#fff}.btn-primary:hover{background:var(--green-900)}.btn-secondary{background:transparent;color:var(--green-800);border:1px solid var(--green-800)}.btn-secondary:hover{background:var(--green-50)}.btn-ghost{background:transparent;color:var(--ink-2)}.btn-ghost:hover{background:#0000000a}.btn-sm{padding:8px 14px;font-size:13px}.btn-danger-link{background:transparent;color:var(--danger);padding:8px 0;font-size:14px;font-weight:500}.btn-danger-link:hover{text-decoration:underline}.input{display:block;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink);transition:border .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:var(--green-700);box-shadow:0 0 0 3px #2d6a4f1f}.input[readonly]{background:#f8f6ee;color:var(--ink-2)}.label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:6px}.field-group{margin-bottom:16px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;background:var(--green-50);color:var(--green-700)}.pill.dot:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green-500)}.pill.muted{background:#f0efea;color:var(--ink-3)}.pill.muted.dot:before{background:var(--ink-3)}.error{color:var(--danger);font-size:13px;margin-top:8px}.marketing-header{display:flex;align-items:center;justify-content:space-between;padding:22px 32px;max-width:1180px;margin:0 auto}.hero{padding:80px 0 100px;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(82,183,136,.12) 0%,transparent 60%),var(--cream)}.hero-inner{max-width:760px;margin:0 auto;text-align:center;padding:0 32px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:500;color:var(--green-800);margin-bottom:24px}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green-500);display:inline-block}.hero h1{color:var(--green-900);margin-bottom:20px}.hero .lead{font-size:19px;color:var(--ink-2);max-width:560px;margin:0 auto 36px}.signup-form{display:flex;gap:8px;max-width:460px;margin:0 auto;background:var(--paper);padding:8px;border-radius:14px;box-shadow:var(--shadow);border:1px solid var(--line)}.signup-form .input{border:none;box-shadow:none;padding:12px 14px;flex:1}.source-strip{margin-top:60px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.source-strip-label{font-size:13px;color:var(--ink-3);margin-bottom:16px;letter-spacing:.04em}.source-logos{display:flex;gap:32px;justify-content:center;flex-wrap:wrap}.source-logo{font-weight:600;color:var(--ink-2);font-size:15px;opacity:.75}.features{padding:100px 0;background:var(--paper)}.container{max-width:1180px;margin:0 auto;padding:0 32px}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}.feature-tile{padding:32px;background:var(--cream);border-radius:var(--radius-lg);border:1px solid var(--line)}.feature-icon{width:48px;height:48px;border-radius:12px;background:var(--green-50);color:var(--green-800);display:flex;align-items:center;justify-content:center;margin-bottom:18px}.footer{padding:40px 0;background:var(--green-900);color:#ffffffb3}.footer .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:14px}.auth-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(82,183,136,.1) 0%,transparent 60%),var(--cream)}.auth-header{display:flex;justify-content:center;padding:32px 0}.auth-card-wrap{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:20px 24px 80px}.auth-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow)}.auth-card h2{color:var(--green-900);margin-bottom:6px;font-size:24px}.auth-card .auth-sub{font-size:14px;color:var(--ink-2);margin-bottom:28px}.auth-card .btn{width:100%;margin-top:6px}.auth-foot{text-align:center;margin-top:20px;font-size:14px}.app-header{background:var(--paper);border-bottom:1px solid var(--line);padding:0 32px}.app-header-inner{max-width:1180px;margin:0 auto;height:64px;display:flex;align-items:center;justify-content:space-between}.dashboard{padding:48px 32px 80px;max-width:880px;margin:0 auto}.dashboard-greeting{margin-bottom:32px}.dashboard-greeting h2{color:var(--green-900);margin-bottom:8px}.digest-date{font-weight:600;color:var(--green-800)}.dash-card{padding:28px;margin-bottom:24px}.dash-card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.dash-card-head h3{color:var(--green-900)}.source-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.source-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--cream)}.account-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.account-row+.account-row{border-top:1px solid var(--line)}.field-label{font-size:13px;color:var(--ink-3)}.field-value{font-size:15px;color:var(--ink);font-weight:500}.danger-zone{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}.avatar{width:36px;height:36px;border-radius:50%;background:var(--green-700);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--green-900);color:#ffffffd9;padding:24px 16px}.sidebar .logo{color:#fff;padding:0 8px 24px}.sidebar .logo-mark{background:linear-gradient(135deg,var(--green-500),var(--green-700))}.nav-section{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#fff6;padding:8px 12px;margin-top:16px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:#ffffffb3;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;margin-bottom:2px;text-decoration:none}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:#52b7882e;color:var(--green-500)}.admin-main{background:var(--cream)}.admin-topbar{background:var(--paper);border-bottom:1px solid var(--line);padding:14px 32px;display:flex;justify-content:space-between;align-items:center}.admin-content{padding:36px 32px;max-width:1100px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;gap:16px}.page-head h2{color:var(--green-900)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.stat-card .label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:600;margin-bottom:8px}.stat-card .value{font-size:28px;font-weight:700;color:var(--green-900);letter-spacing:-.02em}.stat-card .meta{font-size:12px;color:var(--ink-3);margin-top:4px}.table-card{padding:0;overflow:hidden}.table-toolbar{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 20px;font-size:14px}th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:600;border-bottom:1px solid var(--line);background:var(--cream)}td{border-bottom:1px solid var(--line);color:var(--ink)}tr:last-child td{border-bottom:none}tr:hover td{background:var(--cream)}.url-cell{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--ink-2);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f2e2280;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:var(--paper);border-radius:var(--radius-lg);padding:32px;width:100%;max-width:480px;box-shadow:0 16px 40px #0f2e221f}.modal h3{margin-bottom:6px;color:var(--green-900)}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}@media (max-width: 880px){.features-grid,.stats-row{grid-template-columns:1fr 1fr}.source-list,.admin-shell{grid-template-columns:1fr}.sidebar{display:none}h1{font-size:40px}}
