*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Poppins",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#17233b;background:#f7faf9}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:288px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:288px;padding:18px 12px;background:linear-gradient(180deg,#f5fffb 0%,#effcff 55%,#f6fff0 100%);border-right:1px solid #dcebe5;display:flex;flex-direction:column;z-index:10;overflow:auto}.brand{height:76px;background:rgba(255,255,255,.82);border:1px solid #dfeee8;border-radius:22px;display:flex;align-items:center;gap:13px;padding:12px 16px;box-shadow:0 6px 20px rgba(31,90,63,.06)}.brand-orb{width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,#caff6c,#54c91d);display:grid;place-items:center;color:#194d0c;font-weight:900;border:4px solid #fff;box-shadow:0 4px 14px rgba(68,172,30,.25)}.brand strong{font-size:21px}.brand small{display:block;color:#80a190;margin-top:2px}.sidebar nav{display:flex;flex-direction:column;gap:9px;margin-top:20px}.sidebar nav a{height:66px;border-radius:18px;padding:0 16px;display:flex;align-items:center;gap:12px;text-decoration:none;color:#31425a;border:1px solid transparent}.sidebar nav a span{font-size:22px}.sidebar nav a b{font-size:16px}.sidebar nav a em{font-style:normal;margin-left:auto;background:#e0f2df;color:#2b7c24;border-radius:999px;padding:3px 8px;font-size:12px}.sidebar nav a:hover{background:#fff}.sidebar nav a.active{background:linear-gradient(90deg,#f7fff3,#e9ffde);border-color:#bce8a9;box-shadow:0 5px 0 #c8efbc}.side-art{margin-top:auto;border-radius:26px;background:linear-gradient(150deg,#d9ffc8,#f6fff0);padding:20px;text-align:center;border:1px solid #c9efba}.mini-robot{font-size:40px}.side-art strong{display:block;color:#2b6e22;margin-top:7px}.side-art p{font-size:12px;line-height:1.5;color:#5f7a67}.logout{text-decoration:none;color:#3e5d77;border:1px solid #d4e6e9;background:#fff;border-radius:16px;padding:11px 14px;text-align:center;margin-top:10px;font-weight:700}.main{grid-column:2;min-width:0;padding:0 24px 40px}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);border:1px solid #dce8e3;border-top:0;border-radius:0 0 26px 26px;padding:0 28px;box-shadow:0 7px 0 #b9ed9d;margin-bottom:26px;position:sticky;top:0;z-index:9}.top-actions{display:flex;align-items:center;gap:10px}.top-actions.right{justify-content:flex-end}.inline{display:inline}.version{font-size:12px;font-weight:800;color:#6e8b7e;background:#eff7f3;border-radius:999px;padding:7px 10px}.btn{border:0;border-radius:15px;padding:11px 16px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.16s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(180deg,#2e9b2a,#20801f);color:#fff;border:1px solid #176f16;box-shadow:0 3px 0 #176f16}.btn.yellow{background:linear-gradient(180deg,#ffe85b,#ffd33a);color:#785707;border:1px solid #daa907;box-shadow:0 3px 0 #e4be23}.btn.ghost{background:#fff;color:#285672;border:2px solid #d8e6eb}.btn.outline{background:#fff;color:#22672a;border:2px solid #c9e7cb}.btn.small{padding:8px 11px;border-radius:12px;font-size:12px}.btn.full{width:100%}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:12px 4px 20px}.page-head h1{font-size:30px;margin:3px 0 5px;letter-spacing:-.6px}.page-head p{margin:0;color:#718092;max-width:760px}.eyebrow{font-size:12px;font-weight:900;color:#278031;letter-spacing:.08em}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.stat{background:#fff;border:1px solid #dfebe6;border-radius:20px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:0 8px 24px rgba(34,83,61,.05)}.stat-ico{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;font-weight:900;font-size:22px}.stat-ico.green{background:#e1f8d7;color:#2d8525}.stat-ico.blue{background:#e1f4ff;color:#1b70a0}.stat-ico.red{background:#ffe8e5;color:#b0392e}.stat-ico.mint{background:#e9faf4;color:#238a65}.stat b{display:block;font-size:26px}.stat small{color:#738294}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:20px}.panel{background:#fff;border:1px solid #dfe9e5;border-radius:24px;padding:22px;box-shadow:0 12px 28px rgba(26,67,49,.055)}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid #e9efec}.panel-title>div{display:flex;align-items:center;gap:12px}.panel-title h2{font-size:18px;margin:0}.panel-title p{font-size:12px;color:#80908a;margin:3px 0 0}.panel-title>a{color:#2f7d38;text-decoration:none;font-weight:800;font-size:13px}.iconbox,.site-icon{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#e5ffdf,#d9f8ef);display:grid;place-items:center;border:1px solid #ccead2}.site-icon.big{width:50px;height:50px;font-size:22px}.site-list{display:flex;flex-direction:column}.site-card{display:flex;align-items:center;gap:12px;padding:15px 4px;border-bottom:1px solid #eef3f1}.site-card:last-child{border-bottom:0}.site-main{min-width:180px}.site-main b,.site-main span{display:block}.site-main span{color:#83908b;font-size:12px;margin-top:3px}.pill{background:#eff9e9;border:1px solid #d5eecb;border-radius:999px;padding:7px 10px;font-size:11px;color:#497249}.pill strong{color:#27652e}.pill.subtle{background:#f6f8fa;border-color:#e5eaed;color:#657381}.status{font-size:12px;font-weight:800;white-space:nowrap;margin-left:auto}.status.ok{color:#23813c}.status.off{color:#9aa3ad}.meta-panel{min-height:370px}.meta-health{text-align:center;padding:25px 8px 4px}.big-check{width:74px;height:74px;border-radius:24px;background:linear-gradient(145deg,#d9ffc6,#ecfff0);display:grid;place-items:center;color:#279435;font-size:38px;font-weight:900;margin:0 auto 14px;border:1px solid #c6e9bc}.meta-health h3{margin:0}.meta-health p{color:#718092}.meta-health code{background:#f0f5f3;padding:4px 7px;border-radius:8px}.health-row{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid #edf2ef;font-size:13px}.health-row b{color:#23813c}.health-row b.neutral{color:#718092}.recent{margin-top:20px}.empty{text-align:center;padding:42px 16px}.empty.small{padding:28px 12px}.empty>span{font-size:40px}.empty h3{margin:8px 0 3px}.empty p{color:#80908a;margin:0 0 15px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.web-card{background:#fff;border:1px solid #dfe9e5;border-radius:24px;padding:20px;box-shadow:0 12px 28px rgba(26,67,49,.055)}.web-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.web-brand{display:flex;align-items:center;gap:12px}.web-brand h2{font-size:19px;margin:0}.web-brand p{font-size:12px;color:#7a8982;margin:4px 0 0}.web-body{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.field-view{background:#fbfdfc;border:1px solid #e8efeb;border-radius:15px;padding:12px}.field-view small,.field-view strong,.field-view span,.field-view code{display:block}.field-view small{color:#819089;font-size:11px;margin-bottom:5px}.field-view code{font-weight:800;color:#25642d;background:#edf8e8;border-radius:8px;padding:5px 7px}.field-view span{font-size:12px;overflow-wrap:anywhere}.flow{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(90deg,#f7fff4,#f2fbff);border:1px dashed #cce5d1;border-radius:14px;padding:10px;font-size:11px;font-weight:800;color:#52705c}.flow i{font-style:normal;color:#7e9a85}.web-actions{display:flex;align-items:center;gap:8px;margin-top:15px}.push-right{margin-left:auto;display:flex;gap:8px}.hint{font-size:11px;color:#82908b}.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.settings-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.connection-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border-bottom:1px solid #edf2ef;padding:14px 2px}.connection-card b,.connection-card span{display:block}.connection-card span{color:#7a8982;font-size:12px;margin-top:3px}.info-box{background:#f4fff0;border:1px solid #d6efce;border-radius:16px;padding:16px;margin:12px 0}.info-box.pale{background:#f4fbff;border-color:#d8eaf3}.info-box p{font-size:12px;color:#6d7e76;margin:5px 0 0}.log-table{width:100%;overflow:hidden}.log-head,.log-row{display:grid;grid-template-columns:1.15fr 1.1fr 1.25fr .8fr .8fr .9fr .6fr;gap:12px;align-items:center}.log-head{padding:11px 8px;color:#7d8b85;font-size:11px;font-weight:900;border-bottom:1px solid #e8efec}.log-row{padding:13px 8px;border-bottom:1px solid #eef3f1;font-size:12px}.log-row:last-child{border-bottom:0}.log-row small{display:block;color:#7b8984;margin-top:3px}.mini-status{font-weight:800}.mini-status.ok{color:#23813c}.mini-status.bad{color:#c13f34}.mini-status.neutral{color:#8b9691}.log-more summary{cursor:pointer;color:#2b7040;font-weight:800}.log-more div{position:absolute;right:32px;background:#fff;border:1px solid #dfe9e5;border-radius:14px;padding:12px;box-shadow:0 16px 40px rgba(22,55,42,.15);z-index:5;max-width:360px}.log-more code{font-size:10px;overflow-wrap:anywhere}.log-more p{font-size:11px;color:#66756f}.toast{border-radius:16px;padding:12px 16px;margin:0 0 18px;font-weight:800;border:1px solid}.toast.success{background:#ecfae7;color:#276d2c;border-color:#cdebc4}.toast.error{background:#fff0ed;color:#a94338;border-color:#f2cbc5}.modal{position:fixed;inset:0;background:rgba(18,33,27,.4);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;padding:18px;z-index:50}.modal.show{display:flex}.modal-card{width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:26px;padding:26px;border:1px solid #dce9e3;box-shadow:0 30px 80px rgba(16,48,34,.28);position:relative}.modal-card.wide-modal{width:min(760px,100%)}.modal-card h2{margin:4px 0 5px;font-size:25px}.modal-card>p{margin:0 0 18px;color:#75847d}.modal-x{position:absolute;right:18px;top:16px;width:38px;height:38px;border-radius:999px;border:1px solid #dbe7e2;background:#fff;font-size:24px;color:#607068;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label,.modal-card>label,.advanced label,.login-form label{font-size:12px;font-weight:800;color:#475a51}.span2{grid-column:1/-1}input,select,textarea{width:100%;margin-top:6px;border:1px solid #d8e4df;border-radius:13px;padding:11px 12px;background:#fff;color:#1d2d26;outline:none}input:focus,select:focus,textarea:focus{border-color:#6fcf62;box-shadow:0 0 0 3px rgba(111,207,98,.13)}label small{display:block;color:#8b9792;font-weight:500;margin-top:5px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.advanced{margin-top:16px;background:#f8fbfa;border:1px solid #e2ebe7;border-radius:15px;padding:12px}.advanced summary{cursor:pointer;font-weight:800;color:#456355}.check{display:flex!important;align-items:center;gap:8px;margin-top:10px}.check input{width:auto;margin:0}.warning-note{color:#a24c3b;font-size:12px}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#e7ffd7,transparent 35%),radial-gradient(circle at 80% 70%,#e7f9ff,transparent 35%),#f8fbfa}.login-shell{width:min(420px,calc(100% - 30px));background:#fff;border:1px solid #dce9e3;border-radius:28px;padding:30px;box-shadow:0 24px 70px rgba(20,64,43,.12);text-align:center}.login-shell .brand-orb{margin:auto}.login-shell h1{margin:12px 0 3px}.login-shell p{color:#7c8984}.login-form{text-align:left;display:grid;gap:12px}.login-form .btn{width:100%;margin-top:7px}@media(max-width:1100px){.app{grid-template-columns:220px 1fr}.sidebar{width:220px}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.pill.subtle{display:none}.log-head,.log-row{grid-template-columns:1fr 1fr 1fr .8fr}.log-head span:nth-child(5),.log-row>span:nth-child(5),.log-head span:nth-child(6),.log-row>span:nth-child(6){display:none}}@media(max-width:760px){.app{display:block}.sidebar{position:static;width:auto;height:auto;display:block;padding:10px}.brand{height:60px}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:10px 0}.sidebar nav a{height:58px;padding:4px;justify-content:center;flex-direction:column;gap:1px}.sidebar nav a span{font-size:18px}.sidebar nav a b{font-size:10px}.sidebar nav a em,.side-art,.logout{display:none}.main{padding:0 10px 30px}.topbar{height:auto;padding:10px;margin-bottom:16px;border-radius:0 0 18px 18px}.top-actions.right{display:none}.page-head{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr}.site-card{align-items:flex-start;flex-wrap:wrap}.site-main{min-width:calc(100% - 60px)}.status{margin-left:0}.web-body,.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.web-actions{align-items:flex-start;flex-direction:column}.push-right{margin-left:0}.log-head{display:none}.log-row{grid-template-columns:1fr 1fr;border:1px solid #e3ece8;border-radius:14px;margin-bottom:10px}.log-row>span:nth-child(3){grid-column:1/-1}.panel{padding:15px}.page-head h1{font-size:25px}}
.settings-form{display:grid;gap:12px;margin-top:14px}
.settings-actions{display:flex;gap:8px;flex-wrap:wrap}
.input-with-button{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
.input-with-button .btn{margin-top:6px}
.receiver-status{margin:14px 0;padding:12px 14px;border-radius:14px;background:#fff8e3;border:1px solid #f0d88d}
.receiver-status.ready{background:#edfbea;border-color:#cde9c6}
.receiver-status b,.receiver-status span{display:block}
.receiver-status span{font-size:11px;color:#738079;margin-top:3px}
.sheet-option{border:1px solid #dfebe5;border-radius:16px;padding:12px;background:#fbfefc}
.sheet-fields{display:none;grid-template-columns:2fr 1fr;gap:12px;margin-top:10px}
.sheet-fields.show{display:grid}
.steps{font-size:12px;color:#52655b;line-height:1.7;padding-left:20px}
.steps code{background:#f1f6f3;padding:2px 5px;border-radius:6px}
@media(max-width:1100px){.settings-grid-3{grid-template-columns:1fr}.log-head,.log-row{grid-template-columns:1fr 1fr 1fr .8fr .8fr}.log-head span:nth-child(6),.log-row>span:nth-child(6),.log-head span:nth-child(7),.log-row>span:nth-child(7){display:none}}
@media(max-width:760px){.sheet-fields{grid-template-columns:1fr}.input-with-button{grid-template-columns:1fr}}

.btn.mint{background:#e9f8ef;border:1px solid #bfe5ca;color:#176b36}
.btn.mint:hover{background:#ddf4e5}
.ai-guide{margin-bottom:18px}
.ai-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ai-steps>div{background:#fbfefc;border:1px solid #deebe3;border-radius:16px;padding:15px;display:flex;gap:10px;align-items:flex-start}
.ai-steps b{width:28px;height:28px;flex:0 0 28px;border-radius:50%;display:grid;place-items:center;background:#1f8f2d;color:#fff}
.ai-steps span{font-size:12px;line-height:1.55;color:#506158}
.ai-site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ai-site-card{background:#fff;border:1px solid #deebe3;border-radius:22px;padding:20px;box-shadow:0 10px 30px rgba(34,76,52,.06)}
.ai-site-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}
.ai-site-head h2{margin:0;font-size:18px}
.ai-site-head p{margin:3px 0 0;color:#78877f;font-size:12px}
.ai-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
.ai-meta-grid>div{background:#f7fbf8;border:1px solid #e4eee7;border-radius:14px;padding:11px;min-width:0}
.ai-meta-grid small,.ai-meta-grid span,.ai-meta-grid strong,.ai-meta-grid code{display:block;overflow-wrap:anywhere}
.ai-meta-grid small{color:#829087;font-size:10px;margin-bottom:4px}
.ai-secret-note{font-size:10px;color:#74837a;text-align:center;margin:9px 0 0}
@media(max-width:1100px){.ai-steps{grid-template-columns:1fr 1fr}.ai-site-grid{grid-template-columns:1fr}}
@media(max-width:680px){.ai-steps{grid-template-columns:1fr}.ai-meta-grid{grid-template-columns:1fr}}

.sheet-field-picker{grid-column:1/-1;border-top:1px dashed #d7e6dc;padding-top:12px}
.sheet-field-picker>b{display:block;font-size:12px;color:#30483a}
.sheet-field-picker>p{font-size:10px;color:#7a8b81;margin:4px 0 10px}
.sheet-field-options{display:flex;gap:8px;flex-wrap:wrap}
.field-chip{display:inline-flex!important;align-items:center;gap:7px!important;margin:0!important;padding:8px 10px;border:1px solid #dce9e0;border-radius:999px;background:#fff;font-size:11px!important;font-weight:600!important;cursor:pointer}
.field-chip input{width:auto!important;margin:0!important}
.field-chip:has(input:checked){background:#eaf8ee;border-color:#9ed4aa;color:#176b36}
.ai-meta-grid span{margin-top:4px;font-size:10px;color:#75837a;line-height:1.4}

.stats.stats-4{grid-template-columns:repeat(4,1fr)}
.stat-ico.zalo{background:#e5f1ff;color:#0b72d9}
.zalo-option{border:1px solid #d8e9ff;border-radius:16px;padding:12px;background:#f7fbff}
.zalo-option small{display:block;margin-top:6px;color:#748493;font-size:10px}
.zalo-option code{background:#eaf3ff;padding:2px 5px;border-radius:6px}
@media(max-width:1100px){.stats.stats-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.stats.stats-4{grid-template-columns:1fr}}
