*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--g:#1a7a4a;--gd:#135c37;--gl:#e8f5ee;--gold:#c8a94a;--bg:#f4f7f5;--tx:#1c2b22;--mu:#6b7a72;--bd:#d0ddd5;--er:#c0392b;--sh:0 4px 20px rgba(0,0,0,.1);--r:10px}
body{font-family:'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--tx);min-height:100vh;display:flex;flex-direction:column}
/* DEMO BANNER */
.demo-banner{background:#6a1b9a;color:#fff;text-align:center;padding:.32rem 1rem;font-size:.78rem;font-weight:600}
.demo-banner a{color:#e1bee7;text-decoration:none}
/* HEADER */
header{background:linear-gradient(135deg,var(--gd),var(--g));color:#fff;padding:0 1.2rem;position:sticky;top:0;z-index:100;box-shadow:0 2px 10px rgba(0,0,0,.25)}
.hi{max-width:1020px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px;gap:.8rem}
.logo{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:#fff}
.logo-ic{width:40px;height:40px;background:var(--gold);border-radius:50%;display:grid;place-items:center;font-size:1.25rem;flex-shrink:0}
.logo-tx h1{font-size:.88rem;font-weight:700;line-height:1.2}
.logo-tx p{font-size:.65rem;opacity:.82}
nav{display:flex;gap:.1rem;flex-wrap:wrap}
.nb{background:none;border:none;color:#fff;padding:.38rem .75rem;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-block;transition:background .2s;white-space:nowrap}
.nb:hover,.nb.on{background:rgba(255,255,255,.18)}
.nb.lo{color:#ffcdd2}.nb.lo:hover{background:rgba(255,50,50,.2)}
/* HERO */
.hero{background:linear-gradient(135deg,var(--g),var(--gd));color:#fff;text-align:center;padding:3.8rem 1.5rem 2.8rem}
.hero h2{font-size:1.9rem;font-weight:800;text-shadow:0 2px 6px rgba(0,0,0,.3)}
.hero p{margin-top:.45rem;font-size:.95rem;opacity:.9}
.hero-btns{margin-top:1.5rem;display:flex;gap:.65rem;justify-content:center;flex-wrap:wrap}
/* LAYOUT */
.c{max-width:640px;margin:1.8rem auto;padding:0 1rem 3rem}
.cw{max-width:980px;margin:1.8rem auto;padding:0 1rem 3rem}
.card{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:1.7rem 1.8rem}
.ct{font-size:1.2rem;font-weight:700;color:var(--g);border-bottom:2px solid var(--gl);padding-bottom:.5rem;margin-bottom:1.2rem}
/* FORM */
.f{margin-bottom:.9rem}
label{display:block;font-size:.83rem;font-weight:600;margin-bottom:.28rem}
.req{color:var(--er)}
input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],input[type=password],select,textarea{width:100%;padding:.55rem .78rem;border:1.5px solid var(--bd);border-radius:7px;font-size:.91rem;color:var(--tx);background:#fff;outline:none;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(26,122,74,.14)}
.r2{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
@media(max-width:540px){.r2{grid-template-columns:1fr}}
/* BUTTONS */
.btn{padding:.55rem 1.15rem;border-radius:7px;font-weight:600;font-size:.86rem;cursor:pointer;border:none;transition:all .18s;display:inline-flex;align-items:center;gap:.35rem;justify-content:center;text-decoration:none}
.bp{background:linear-gradient(135deg,var(--g),var(--gd));color:#fff;box-shadow:0 3px 10px rgba(26,122,74,.28)}
.bp:hover{opacity:.9;transform:translateY(-1px);color:#fff}
.bs{background:var(--gl);color:var(--g);border:1.5px solid var(--g)}
.bd{background:#fdecea;color:var(--er);border:1.5px solid var(--er)}
.bgold{background:var(--gold);color:#111;box-shadow:0 3px 10px rgba(0,0,0,.2)}
.bgold:hover{opacity:.9;transform:translateY(-1px);color:#111}
.bgh{background:rgba(255,255,255,.15);color:#fff;border:2px solid rgba(255,255,255,.45)}
.bgh:hover{background:rgba(255,255,255,.25);color:#fff}
.bw{width:100%;margin-top:.7rem;padding:.75rem}
/* RADIO */
.rg{display:flex;gap:.45rem;flex-wrap:wrap}
.rl{display:flex;align-items:center;gap:.32rem;font-weight:500;cursor:pointer;padding:.36rem .75rem;border:1.5px solid var(--bd);border-radius:6px;font-size:.83rem}
.rl:has(input:checked){border-color:var(--g);background:var(--gl);color:var(--g)}
.rl input{width:auto}
/* OTP */
.otp-row{display:flex;gap:.45rem;justify-content:center;margin:.9rem 0}
.otp-row input{width:44px;height:52px;text-align:center;font-size:1.45rem;font-weight:700;border:2px solid var(--bd);border-radius:8px;padding:0;outline:none}
.otp-row input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(26,122,74,.14)}
/* ALERTS */
.al{padding:.75rem .9rem;border-radius:8px;margin-bottom:.8rem;font-size:.86rem}
.al-ok{background:#d4edda;color:#155724;border:1px solid #c3e6cb}
.al-er{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}
.al-in{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}
/* STEPS */
.sdots{display:flex;justify-content:center;gap:.28rem;margin-bottom:1.4rem}
.dot{width:9px;height:9px;border-radius:50%;background:var(--bd)}
.dot.on{background:var(--g)}
/* TABS */
.tabs{display:flex;border-bottom:2px solid var(--bd);margin-bottom:1.3rem;gap:.05rem;flex-wrap:wrap}
.tb{padding:.5rem 1rem;border:none;background:none;cursor:pointer;font-size:.84rem;font-weight:600;color:var(--mu);border-bottom:3px solid transparent;margin-bottom:-2px;text-decoration:none;display:inline-block;white-space:nowrap}
.tb.on{color:var(--g);border-bottom-color:var(--g)}
/* NOTICE */
.nc{background:var(--gl);border-left:4px solid var(--g);border-radius:0 8px 8px 0;padding:.85rem 1rem;margin-bottom:.75rem}
.nc h4{font-size:.92rem;font-weight:700;color:var(--g)}
.nc p{margin-top:.22rem;font-size:.84rem;line-height:1.6;white-space:pre-wrap}
.nc .nm{font-size:.71rem;color:var(--mu);margin-top:.38rem}
.nc.pin{background:#fff8e1;border-left-color:var(--gold)}.nc.pin h4{color:#7a5800}
/* TABLE */
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:.83rem}
th{background:var(--gl);color:var(--g);font-weight:700;padding:.5rem .7rem;text-align:left;white-space:nowrap}
td{padding:.45rem .7rem;border-bottom:1px solid var(--bd);vertical-align:middle}
tr:hover td{background:#f8fdf9}
.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:.71rem;font-weight:700}
.bp2{background:#fff3cd;color:#856404}.bok{background:#d4edda;color:#155724}.brej{background:#f8d7da;color:#721c24}
/* GROUP CARDS */
.gc{border:2px solid var(--bd);border-radius:10px;padding:1rem 1.2rem;display:flex;align-items:center;gap:.9rem;margin-bottom:.65rem;transition:border-color .2s;text-decoration:none;color:inherit}
.gc:hover{border-color:var(--g);box-shadow:var(--sh)}
.gi{width:48px;height:48px;border-radius:11px;display:grid;place-items:center;font-size:1.5rem;flex-shrink:0}
.gi.wa{background:#dcf8c6}.gi.fb{background:#dce9ff}
.gc-info h4{font-weight:700;font-size:.9rem}
.gc-info p{font-size:.76rem;color:var(--mu);margin-top:.1rem}
/* PROFILE */
.ph{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;background:linear-gradient(135deg,var(--g),var(--gd));border-radius:10px;color:#fff;margin-bottom:1rem}
.pa{width:65px;height:65px;border-radius:50%;border:3px solid rgba(255,255,255,.4);background:rgba(255,255,255,.2);display:grid;place-items:center;font-size:1.6rem;overflow:hidden;flex-shrink:0}
.pa img{width:100%;height:100%;object-fit:cover}
/* STATS */
.sg{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.8rem;margin-bottom:1.3rem}
.sc{background:#fff;border-radius:10px;padding:1rem;text-align:center;box-shadow:var(--sh);border-top:4px solid var(--g)}
.sc .n{font-size:1.8rem;font-weight:800;color:var(--g)}
.sc .l{font-size:.73rem;color:var(--mu);margin-top:.12rem}
/* PHOTO */
.pu{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}
.pav{width:76px;height:76px;border-radius:50%;border:3px solid var(--bd);background:var(--gl);display:grid;place-items:center;font-size:1.6rem;overflow:hidden;flex-shrink:0}
.pav img{width:100%;height:100%;object-fit:cover}
.bup{background:var(--gl);color:var(--g);border:1.5px dashed var(--g);padding:.4rem .85rem;border-radius:6px;cursor:pointer;font-weight:600;font-size:.8rem}
/* SEP */
.sep{margin:1.2rem 0 .8rem;font-size:.71rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mu);display:flex;align-items:center;gap:.45rem}
.sep::after{content:'';flex:1;height:1px;background:var(--bd)}
.bopt{font-size:.67rem;background:var(--gl);color:var(--g);padding:2px 6px;border-radius:20px;font-weight:600;margin-left:.3rem}
.ir{display:flex;gap:.45rem;font-size:.86rem;margin-bottom:.32rem}
.il{font-weight:600;min-width:115px;color:var(--mu);flex-shrink:0}
.ec{text-align:center;padding:2.2rem;color:var(--mu)}
.ec div{font-size:2.3rem;margin-bottom:.4rem}
.cb{display:flex;align-items:center;gap:.45rem;cursor:pointer;font-size:.86rem;font-weight:500}
.cb input{width:15px;height:15px;accent-color:var(--g)}
textarea{resize:vertical;min-height:82px}
/* SETUP NOTE */
.sn{background:#fff8e1;border:1.5px solid var(--gold);border-radius:8px;padding:.85rem 1rem;margin-bottom:1.2rem;font-size:.78rem;color:#5a4000}
.sn strong{color:#3d2b00;display:block;margin-bottom:.25rem}
.sn ol{margin:.3rem 0 0 1rem;line-height:1.85}
.sn code{background:#ffe082;padding:1px 4px;border-radius:3px}
footer{background:var(--gd);color:rgba(255,255,255,.75);text-align:center;padding:1rem;font-size:.78rem;margin-top:auto}
footer a{color:var(--gold);text-decoration:none;font-weight:600}
/* PHONE COMBO */
.phone-combo{display:flex;gap:.45rem;align-items:stretch}
.phone-cc{width:auto;min-width:108px;max-width:152px;flex-shrink:0;padding:.52rem .5rem;font-size:.84rem;cursor:pointer;border-radius:7px;border:1.5px solid var(--bd);background:#fff;color:var(--tx)}
.phone-cc:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(26,122,74,.14)}
#phone-local-input{border-radius:7px;border:1.5px solid var(--bd);padding:.52rem .78rem;font-size:.91rem;color:var(--tx);outline:none;background:#fff;width:100%;transition:border-color .2s,box-shadow .2s}
#phone-local-input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(26,122,74,.14)}
@media(max-width:400px){.phone-combo{flex-direction:column}.phone-cc{max-width:100%}}
