:root{--ink:#1d211f;--muted:#6f7772;--green:#1fc66d;--green-dark:#0f8a49;--gold:#c8a968;--line:#e8ebe9;--panel:#fff;--bg:#f6f7f6;--charcoal:#242927;--radius:22px}
*{box-sizing:border-box}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none}.btn-success{background:var(--green-dark);border-color:var(--green-dark)}.btn-success:hover{background:#0b713b;border-color:#0b713b}.btn-dark{background:var(--charcoal)}
.public-home{min-height:100vh;background:radial-gradient(circle at 85% 10%,rgba(31,198,109,.13),transparent 28%),radial-gradient(circle at 10% 80%,rgba(200,169,104,.14),transparent 30%),#fbfcfb}.public-nav{display:flex;align-items:center;justify-content:space-between;padding:24px max(5vw,24px);max-width:1440px;margin:auto}.brand{display:flex;align-items:center;gap:11px;color:var(--ink)}.brand-mark{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--charcoal),#343a37);color:#fff;font-weight:800;box-shadow:0 9px 24px rgba(0,0,0,.12);position:relative}.brand-mark:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--green);right:7px;bottom:7px}.brand strong{display:block;letter-spacing:.08em}.brand small{display:block;font-size:11px;letter-spacing:.3em;color:var(--muted)}.public-hero{max-width:1440px;margin:auto;padding:70px max(5vw,24px) 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.kicker{font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--green-dark)}.public-hero h1{font-size:clamp(48px,6vw,88px);line-height:.98;letter-spacing:-.055em;margin:18px 0 26px}.public-hero h1 span{color:var(--green-dark)}.lead-copy{font-size:20px;line-height:1.7;color:#59605c;max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0}.hero-actions .btn{padding:13px 20px;border-radius:14px;font-weight:700}.portfolio-note{display:flex;gap:13px;align-items:flex-start;padding:17px 18px;border:1px solid var(--line);background:rgba(255,255,255,.65);backdrop-filter:blur(12px);border-radius:18px;max-width:620px}.portfolio-note i{font-size:23px;color:var(--gold)}.portfolio-note p{margin:0;color:#626a65;font-size:14px}.hero-board{background:rgba(255,255,255,.78);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.9);padding:20px;border-radius:32px;box-shadow:0 35px 80px rgba(37,46,41,.12)}.mock-top{display:flex;justify-content:space-between;align-items:center;padding:8px 4px 20px}.mock-dots{display:flex;gap:6px}.mock-dots span{width:8px;height:8px;border-radius:50%;background:#d8ddda}.mock-dots span:last-child{background:var(--green)}.mock-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:22px;margin-bottom:14px}.mock-contact{display:flex;justify-content:space-between;align-items:center}.avatar{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#dff8ea,#eef3ef);display:grid;place-items:center;font-weight:800;color:var(--green-dark)}.wa-btn{background:var(--green-dark);color:#fff;border-radius:13px;padding:10px 14px;font-size:13px;font-weight:800}.progress{height:7px;background:#edf0ee}.progress-bar{background:var(--green)}.feature-section{max-width:1440px;margin:auto;padding:30px max(5vw,24px) 90px}.section-title{max-width:720px;margin-bottom:34px}.section-title h2{font-size:38px;letter-spacing:-.035em}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{background:#fff;border:1px solid var(--line);padding:26px;border-radius:22px}.feature i{font-size:26px;color:var(--green-dark)}.feature h3{font-size:18px;margin:18px 0 10px}.feature p{color:var(--muted);margin:0;line-height:1.6}.public-footer{border-top:1px solid var(--line);padding:28px max(5vw,24px);display:flex;justify-content:space-between;color:var(--muted);font-size:13px;max-width:1440px;margin:auto}
.admin-body{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:#202522;color:#fff;padding:24px 18px;z-index:20;display:flex;flex-direction:column}.sidebar .brand{color:#fff;padding:0 9px 25px}.sidebar .brand small{color:#aeb7b1}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a,.sidebar-foot a{color:#bfc8c2;padding:11px 13px;border-radius:12px;display:flex;gap:11px;align-items:center;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:rgba(255,255,255,.08)}.sidebar nav a.active i{color:#64e19b}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding-top:12px}.admin-main{margin-left:250px;min-height:100vh}.topbar{height:92px;background:rgba(255,255,255,.86);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:10}.topbar h1{font-size:24px;margin:1px 0 0;letter-spacing:-.025em}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--green-dark)}.user-chip{padding:9px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px}.user-chip i{margin-right:8px}.menu-toggle{display:none;border:0;background:none;font-size:25px}.content{padding:30px 34px 50px;max-width:1600px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.metric .icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf8f2;color:var(--green-dark);font-size:20px}.metric .num{font-size:29px;font-weight:800;letter-spacing:-.04em;margin-top:14px}.metric .label{color:var(--muted);font-size:13px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panel-head h2{font-size:18px;margin:0}.table{vertical-align:middle}.table>:not(caption)>*>*{padding:.85rem .7rem;border-bottom-color:#edf0ee}.badge-soft{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-weight:700;font-size:11px;background:#eef1ef;color:#5d6660}.badge-soft.green{background:#e8f8ef;color:#117542}.badge-soft.gold{background:#fbf4e7;color:#8e6d28}.badge-soft.red{background:#fdecec;color:#a33}.form-control,.form-select{border-radius:12px;border-color:#dde2df;padding:.72rem .85rem}.form-control:focus,.form-select:focus{border-color:#84d4a9;box-shadow:0 0 0 .25rem rgba(31,198,109,.12)}.btn{border-radius:12px}.campaign-run{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px}.message-preview{white-space:pre-wrap;background:#f8faf9;border:1px solid var(--line);border-radius:18px;padding:22px;min-height:300px;line-height:1.65}.contact-card{background:#202522;color:#fff;border-radius:22px;padding:24px}.contact-card .muted{color:#aeb6b1}.status-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,rgba(31,198,109,.14),transparent 30%),#f7f9f8;padding:22px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:32px;box-shadow:0 25px 70px rgba(30,40,34,.1)}.login-card .brand{justify-content:center;margin-bottom:28px}.install-wrap{max-width:860px;margin:60px auto;padding:0 20px}.helper{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.public-hero{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr 1fr}.metric-grid{grid-template-columns:1fr 1fr}.campaign-run{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar-open .sidebar{transform:translateX(0)}.admin-main{margin-left:0}.menu-toggle{display:block}.topbar{padding:0 20px}.content{padding:24px 20px}}
@media(max-width:680px){.public-hero{padding-top:40px}.public-nav .btn span{display:none}.feature-grid,.metric-grid{grid-template-columns:1fr}.public-footer{flex-direction:column;gap:8px}.status-actions{grid-template-columns:1fr}.topbar .user-chip{display:none}.content{padding:20px 14px}.public-hero h1{font-size:48px}}
