/* AI Crab — Developed by IT Village */
:root{
  --red:#E3101D; --red-d:#B70C17; --red-soft:#FDEBEC; --ink:#121214; --ink-2:#3a3a40; --muted:#6c6c75;
  --line:#ECECF0; --bg:#F6F6F9; --card:#fff; --green:#15924A; --amber:#C77A00; --blue:#1F6FEB;
  --r:14px; --shadow:0 1px 2px rgba(16,16,20,.04),0 6px 24px rgba(16,16,20,.06);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Hind Siliguri',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-size:15.5px;line-height:1.6}
a{color:var(--red);text-decoration:none}a:hover{text-decoration:underline}
img,video{max-width:100%}
h1,h2,h3,h4{line-height:1.25;margin:0 0 .5em}
h3{font-size:1.12rem}
code{background:#f1f1f4;padding:2px 7px;border-radius:6px;font-size:.88em;word-break:break-all}
.muted{color:var(--muted)}.small{font-size:.88rem}.center{text-align:center}.right{text-align:right}
.red{color:var(--red)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border-radius:10px;border:1px solid transparent;font:600 15px/1.2 inherit;font-family:inherit;cursor:pointer;transition:.15s;white-space:nowrap;text-decoration:none!important}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-d)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000}
.btn-light{background:#fff;color:var(--red)}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:#cfcfd6;background:#fafafa}
.btn-ghost.danger,.danger{color:var(--red)}
.btn-sm{padding:7px 12px;font-size:14px;border-radius:8px}.btn-xs{padding:4px 9px;font-size:12.5px;border-radius:7px}
.btn-lg{padding:13px 24px;font-size:16.5px}.btn-block{width:100%}
.btn[disabled],.btn.loading{opacity:.6;pointer-events:none}
.btn.loading::after{content:'';width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.btn-row.center{justify-content:center}
.btn-row form,.pc-actions form,.mi-foot form{display:inline}

/* Forms */
label{display:block;font-weight:600;font-size:.92rem;margin:12px 0 5px;color:var(--ink-2)}
input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),select,textarea{width:100%;padding:10px 12px;border:1px solid #DCDCE3;border-radius:10px;font:inherit;background:#fff;color:var(--ink);transition:.15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(227,16,29,.12)}
input[type=color]{width:100%;height:42px;border:1px solid #DCDCE3;border-radius:10px;padding:3px;background:#fff}
input[type=file]{font:inherit;font-size:.9rem}
textarea{resize:vertical}
fieldset{border:0;padding:0;margin:0;min-width:0}
label.check{display:flex;align-items:center;gap:8px;font-weight:500}
.row-2,.row-3,.row-4{display:grid;gap:0 14px}.row-2{grid-template-columns:1fr 1fr}.row-3{grid-template-columns:repeat(3,1fr)}.row-4{grid-template-columns:repeat(4,1fr)}
.row-2.wrap{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.align-end{align-items:end}
.form-grid{display:grid;gap:18px}
.form-actions{display:flex;gap:10px;justify-content:flex-end;position:sticky;bottom:0;padding:12px 0;background:linear-gradient(transparent,var(--bg) 40%)}
.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:600}
.switch input{display:none}.switch span{width:46px;height:26px;border-radius:20px;background:#d5d5dc;position:relative;transition:.2s}
.switch span::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.switch input:checked+span{background:var(--red)}.switch input:checked+span::after{left:23px}

/* Alerts & badges */
.alert{padding:12px 16px;border-radius:12px;margin-bottom:16px;border:1px solid}
.alert-success{background:#E8F7EE;border-color:#BCE5CB;color:#0E6B35}
.alert-error{background:#FDEBEC;border-color:#F7C3C6;color:#A10A13}
.alert-warning{background:#FFF6E5;border-color:#F5DDA9;color:#8A5600}
.alert-info{background:#EEF4FF;border-color:#CADBFB;color:#1A4FB0}
.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:12.5px;font-weight:600;white-space:nowrap}
.badge-gray{background:#EEEEF2;color:#55555e}.badge-green{background:#E3F5EA;color:var(--green)}.badge-red{background:#FDE6E7;color:var(--red-d)}
.badge-amber{background:#FFF1D6;color:var(--amber)}.badge-blue{background:#E5EEFF;color:var(--blue)}.badge-red-soft{background:var(--red-soft);color:var(--red)}

/* Brand */
.brand{display:flex;align-items:center;gap:8px;text-decoration:none!important;color:var(--ink)}
.brand img{width:40px;height:40px;object-fit:contain}
.brand span{font:800 22px/1 Montserrat,sans-serif;letter-spacing:-.5px}.brand b{color:var(--ink)}.brand em{font-style:normal;color:var(--red)}

/* ============ APP LAYOUT ============ */
.app{display:flex;min-height:100vh}
.sidebar{width:250px;background:#fff;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:16px 12px;z-index:50;overflow-y:auto}
.sidebar .brand{padding:4px 8px 16px}
.sidebar nav{display:flex;flex-direction:column;gap:2px;flex:1}
.sidebar nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;color:var(--ink-2);font-weight:500;text-decoration:none}
.sidebar nav a i{font-style:normal;width:22px;text-align:center;color:#9a9aa3}
.sidebar nav a:hover{background:#f5f5f8}
.sidebar nav a.active{background:var(--red-soft);color:var(--red);font-weight:600}.sidebar nav a.active i{color:var(--red)}
.nav-sep{font-size:12px;text-transform:uppercase;color:#a0a0a8;padding:14px 12px 4px;letter-spacing:.5px}
.sidebar-foot{padding-top:12px}
.credits{background:linear-gradient(135deg,var(--ink),#2b2b31);color:#fff;border-radius:12px;padding:12px 14px;display:grid}
.credits span{font-size:12.5px;opacity:.75}.credits b{font:800 26px Montserrat}.credits small{opacity:.7}
.dev{display:block;text-align:center;color:#9a9aa3;margin-top:10px;font-size:12px}
.main{margin-left:250px;flex:1;min-width:0;display:flex;flex-direction:column}
.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:0 24px;position:sticky;top:0;z-index:40}
.topbar h1{font-size:1.2rem;margin:0;flex:1}
.topbar-right{display:flex;gap:10px;align-items:center}
.user-chip{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:600;text-decoration:none!important}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:700}
.menu-btn{display:none;background:none;border:0;font-size:22px;cursor:pointer}
.content{padding:24px;max-width:1280px;width:100%;margin:0 auto;flex:1}
.app-foot{text-align:center;color:var(--muted);font-size:13px;padding:16px}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--shadow);margin-bottom:18px}
.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.card-head h3{margin:0}
.card.gradient{background:linear-gradient(120deg,var(--red),#8E0710);color:#fff;border:0}
.welcome{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.welcome h2{margin:0 0 4px}.welcome p{margin:0;opacity:.9}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid-2>.card{margin-bottom:0}
.grid-side{display:grid;grid-template-columns:400px 1fr;gap:18px;align-items:start;margin-bottom:18px}.grid-side .card{margin-bottom:18px}
.sticky{position:sticky;top:84px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:18px}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow)}
.stat span{display:block;color:var(--muted);font-size:.88rem}.stat b{font:800 28px Montserrat;color:var(--ink)}
.stats.small .stat b{font-size:20px}
.progress{height:8px;background:#f0f0f3;border-radius:8px;overflow:hidden;margin-bottom:12px}.progress i{display:block;height:100%;background:var(--red);border-radius:8px}
.checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.checklist a{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px dashed #d8d8df;border-radius:12px;color:var(--ink);text-decoration:none}
.checklist a span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f0f0f3;font-weight:700}
.checklist a.done{border-style:solid;border-color:#BCE5CB;background:#F4FBF7;color:var(--green)}.checklist a.done span{background:var(--green);color:#fff}
.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.quick a{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px;text-align:center;color:var(--ink);font-weight:600;text-decoration:none;transition:.15s;box-shadow:var(--shadow)}
.quick a:hover{border-color:var(--red);transform:translateY(-2px)}
.quick a i{display:block;font-style:normal;font-size:26px;color:var(--red);margin-bottom:4px}
.list-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f2f2f5}.list-row:last-child{border:0}
.list-row small{display:block;color:var(--muted)}
.empty{color:var(--muted);text-align:center;padding:16px 0}
.empty-state{text-align:center;padding:40px 20px;color:var(--muted)}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.toolbar p{margin:0;flex:1;min-width:240px}
form.toolbar{justify-content:flex-start}form.toolbar input{max-width:360px}
.tabs{display:flex;gap:4px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:16px}
.toolbar .tabs{margin:0}
.tabs a{padding:7px 14px;border-radius:9px;color:var(--ink-2);font-weight:500;text-decoration:none}
.tabs a.active{background:var(--ink);color:#fff}
.tabs a em{font-style:normal;background:var(--red);color:#fff;border-radius:10px;padding:0 7px;font-size:12px;margin-left:3px}
.back{display:inline-block;margin-bottom:12px;color:var(--muted)}
.table-wrap{overflow-x:auto}
.table{width:100%;border-collapse:collapse}
.table th{text-align:left;font-size:.85rem;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line)}
.table td{padding:12px 10px;border-bottom:1px solid #f2f2f5;vertical-align:middle}
.pl-ic{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;color:#fff;font-weight:800;font-size:14px}
.pl-ic.sm{width:24px;height:24px;border-radius:7px;font-size:11px}

/* Connect */
.connect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}
.connect-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px}
.connect-card>i{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff;font:800 16px Montserrat;font-style:normal;flex:none}
.connect-card>div{flex:1}.connect-card small{display:block;color:var(--muted);line-height:1.35}
.acc-pick{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}
.acc-chip{display:inline-flex!important;align-items:center;gap:7px;margin:0!important;padding:6px 12px 6px 8px;border:1px solid var(--line);border-radius:30px;cursor:pointer;font-weight:500!important;font-size:.9rem!important;background:#fff}
.acc-chip i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:10px;font-style:normal;font-weight:800}
.acc-chip:has(input:checked){border-color:var(--red);background:var(--red-soft)}
.acc-chip input{accent-color:var(--red)}
.logo-up{display:flex;align-items:center;gap:12px}.logo-up img{width:56px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:10px}

/* Chat */
.chat-wrap{display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:520px;padding:0;overflow:hidden}
.chat-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}
.bot-id{display:flex;gap:10px;align-items:center}.bot-id img{width:42px;height:42px;border-radius:50%;background:var(--red-soft);padding:4px}.bot-id small{display:block;color:var(--muted)}
.chat-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;background:#FBFBFD}
.msg{display:flex;flex-direction:column;max-width:82%}.msg.me{align-self:flex-end;align-items:flex-end}
.bubble{padding:11px 15px;border-radius:16px;background:#fff;border:1px solid var(--line);white-space:pre-wrap;word-wrap:break-word}
.bubble.md{white-space:normal}.bubble p{margin:0 0 .5em}.bubble p:last-child{margin:0}.bubble ul,.bubble ol{margin:.3em 0;padding-left:1.3em}
.msg.me .bubble{background:var(--ink);color:#fff;border-color:var(--ink);border-bottom-right-radius:4px;white-space:pre-wrap}
.msg.bot .bubble{border-bottom-left-radius:4px}
.typing .bubble::after{content:'● ● ●';letter-spacing:2px;color:#bbb;animation:blink 1s infinite}
@keyframes blink{50%{opacity:.3}}
.actions{display:grid;gap:8px;margin-top:8px;width:100%}
.action-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:12px;padding:12px 14px}
.action-card .ac-type{font-size:12px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.4px}
.action-card .ac-body{margin:6px 0;white-space:pre-wrap;font-size:.94rem;max-height:220px;overflow:auto}
.action-card .ac-meta{font-size:.84rem;color:var(--muted)}
.action-card.done{border-left-color:var(--green);opacity:.85}
.suggest{display:flex;gap:8px;overflow-x:auto;padding:10px 18px 0}
.suggest button{flex:none;border:1px solid var(--line);background:#fff;border-radius:20px;padding:6px 14px;font:inherit;font-size:.88rem;cursor:pointer;color:var(--ink-2)}
.suggest button:hover{border-color:var(--red);color:var(--red)}
.chat-input{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--line);margin-top:10px}
.chat-input textarea{min-height:46px;max-height:180px}

/* Content variants */
.variants{display:grid;gap:14px}
.variant .v-text{white-space:pre-wrap;background:#FAFAFC;border:1px solid var(--line);border-radius:10px;padding:12px;margin:8px 0;outline:none}
.variant .v-text:focus{border-color:var(--red)}
.tags{color:var(--blue);font-size:.9rem;margin:4px 0}
.cal-list{display:grid;gap:10px;margin:14px 0}
.cal-item{border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:start}
.cal-item .ci-date{font-weight:700;color:var(--red)}.cal-item .ci-date small{display:block;color:var(--muted);font-weight:500}
.cal-item textarea{font-size:.92rem}

/* Posts */
.post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}
.post-card{display:flex;flex-direction:column;padding:0;overflow:hidden;margin:0}
.pc-media{aspect-ratio:16/10;background:#111;overflow:hidden}.pc-media img,.pc-media video{width:100%;height:100%;object-fit:cover}
.pc-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.pc-top{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.pc-text{margin:4px 0;font-size:.94rem;flex:1}
.pc-accs{display:flex;gap:4px}
.pc-res{font-size:.85rem}.pc-res .ok{color:var(--green)}.pc-res .no{color:var(--red-d)}
.pc-actions{display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid #f2f2f5;padding-top:10px;margin-top:4px}

/* Modal */
.modal{position:fixed;inset:0;background:rgba(10,10,14,.55);display:none;align-items:flex-start;justify-content:center;z-index:100;padding:30px 14px;overflow-y:auto}
.modal.open{display:flex}
.modal-box{background:#fff;border-radius:18px;padding:24px;width:100%;max-width:560px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.modal-box.wide{max-width:980px}
.modal-x{position:absolute;top:14px;right:14px;border:0;background:#f2f2f5;width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:15px}
.composer-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}
.ai-tools{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.media-drop{border:2px dashed #dcdce3;border-radius:12px;min-height:150px;display:grid;place-items:center;overflow:hidden;background:#fafafc;color:var(--muted)}
.media-drop img,.media-drop video{max-height:260px;width:100%;object-fit:contain}
.lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;max-height:220px;overflow:auto;margin-top:8px}
.lib-grid img,.lib-grid video{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;cursor:pointer;border:2px solid transparent}
.lib-grid img:hover{border-color:var(--red)}
.lib-grid.big{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));max-height:none}
.when{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:8px}.when label{display:flex;gap:5px;align-items:center;margin:0;font-weight:500}

/* Design & video */
.canvas-box{background:repeating-conic-gradient(#f3f3f6 0 25%,#fff 0 50%) 0 0/20px 20px;border-radius:12px;padding:10px;display:grid;place-items:center}
.canvas-box canvas{max-width:100%;max-height:68vh;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.12)}
#vidOut{width:100%;max-height:60vh;border-radius:10px;margin-top:10px;background:#000}
.link{display:inline;color:var(--red);cursor:pointer;font-weight:600;margin:0}
.scene{display:grid;grid-template-columns:84px 1fr auto;gap:10px;align-items:start;border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:10px}
.scene .s-img{width:84px;height:120px;border-radius:8px;background:#f0f0f3 center/cover;display:grid;place-items:center;color:var(--muted);font-size:12px;text-align:center;cursor:pointer}
.scene input{margin-bottom:6px}.scene small{color:var(--muted);display:block}
.scene .s-tools{display:flex;flex-direction:column;gap:4px}
.voice{background:#FAFAFC;border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:12px;font-size:.92rem;white-space:pre-wrap}
.voice:empty{display:none}

/* Ads */
.ad-platforms{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px}
.ad-pl{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;color:var(--ink);text-decoration:none!important;box-shadow:var(--shadow)}
.ad-pl:hover{border-color:var(--red)}.ad-pl small{display:block;color:var(--red)}
.ad-status{display:grid;gap:12px}
.ai-plan{border:1px solid #F7C3C6;background:linear-gradient(180deg,#FFF8F8,#fff)}
.ad-preview{border:1px solid var(--line);border-radius:12px;margin-top:14px;overflow:hidden;background:#fff;font-size:.92rem}
.ap-head{display:flex;gap:8px;align-items:center;padding:10px 12px}.ap-head img{width:36px;height:36px;border-radius:50%;object-fit:contain;border:1px solid var(--line)}.ap-head small{display:block;color:var(--muted)}
#apText{padding:0 12px;white-space:pre-wrap;margin:0 0 8px}
#apImg img{width:100%;display:block}
.ap-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#F2F3F5;padding:10px 12px}.ap-foot small{display:block;color:var(--muted);text-transform:uppercase;font-size:11px}
.ap-foot span{background:#E4E6EB;padding:6px 12px;border-radius:6px;font-weight:600;white-space:nowrap}

/* Media */
.upload-box{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.media-item{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.media-item img,.media-item video{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:#111}
.mi-foot{display:flex;gap:5px;align-items:center;padding:8px}.mi-foot .badge{margin-right:auto}

/* Billing */
.pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;align-items:stretch}
.pricing.in-app{margin-bottom:18px}
.price-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 24px;position:relative;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.price-card.featured{border:2px solid var(--red);transform:scale(1.03)}.price-card.current{border:2px solid var(--ink)}
.ribbon{position:absolute;top:-12px;right:20px;background:var(--red);color:#fff;padding:2px 12px;border-radius:20px;font-size:13px;font-weight:700}
.price-card.current .ribbon{background:var(--ink)}
.price{font:800 38px Montserrat;margin:6px 0 14px}.price small{font:500 15px 'Hind Siliguri';color:var(--muted)}
.price-card ul{list-style:none;padding:0;margin:0 0 20px;flex:1}.price-card li{padding:5px 0;border-bottom:1px dashed #eee}
.pay-info{background:#FFF8F8;border:1px solid #F7C3C6;border-radius:12px;padding:12px 14px}.pay-info p{margin:0 0 6px}
.pay-row{padding:3px 0}
.danger-zone{border-color:#F7C3C6}
.info-card code.copy{font-size:1em;padding:6px 10px;display:inline-block}
.admin-tabs{margin-bottom:20px}
.inline-form{display:inline-flex;gap:6px;align-items:center}
.inline-form input{padding:6px 8px!important}

/* ============ PUBLIC ============ */
.public{background:#fff}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.wrap.narrow{max-width:820px}
.pub-nav{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:50}
.pub-nav .wrap{display:flex;justify-content:space-between;align-items:center;height:70px}
.pub-nav nav{display:flex;gap:22px;align-items:center}.pub-nav nav a:not(.btn){color:var(--ink-2);font-weight:500}
.hero{padding:70px 0 80px;background:radial-gradient(1000px 500px at 85% 20%,#FFE9EA,transparent),#fff;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center}
.pill{display:inline-block;background:var(--red-soft);color:var(--red);padding:6px 14px;border-radius:30px;font-weight:600;font-size:.92rem}
.hero h1{font-size:clamp(2rem,4.2vw,3.3rem);margin:18px 0;line-height:1.2}
.lead{font-size:1.12rem;color:var(--ink-2);max-width:580px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.hero-platforms{display:flex;gap:8px;flex-wrap:wrap}.hero-platforms span{border:1px solid var(--line);border-radius:20px;padding:4px 12px;font-size:.88rem;color:var(--muted);background:#fff}
/* ===== Hero animation ===== */
.hero-visual{position:relative;display:grid;place-items:center;min-height:480px}
.hv-stage{position:relative;width:min(460px,100%);aspect-ratio:1;display:grid;place-items:center;container-type:inline-size}
.hv-stage>*{grid-area:1/1}
.hero-crab{position:relative;z-index:3;width:62%;filter:drop-shadow(0 20px 40px rgba(227,16,29,.3));animation:hvFloat 5s ease-in-out infinite,hvTilt 7s ease-in-out infinite;transform-origin:50% 60%}
@keyframes hvFloat{50%{translate:0 -14px}}
@keyframes hvTilt{0%,100%{rotate:-2deg}50%{rotate:2deg}}
.hv-glow{width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(227,16,29,.28),rgba(227,16,29,0) 70%);animation:hvBreath 4s ease-in-out infinite}
@keyframes hvBreath{50%{transform:scale(1.15);opacity:.7}}
.hv-pulse{width:46%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(227,16,29,.45);animation:hvPulse 4.5s ease-out infinite;opacity:0}
.hv-pulse.p2{animation-delay:1.5s}.hv-pulse.p3{animation-delay:3s}
@keyframes hvPulse{0%{transform:scale(.8);opacity:.9}100%{transform:scale(2.1);opacity:0}}
.hv-ring{position:relative;border-radius:50%;border:1.5px dashed rgba(227,16,29,.28);animation:hvSpin 36s linear infinite}
.hv-ring.r1{width:92%;aspect-ratio:1}
.hv-ring.r2{width:70%;aspect-ratio:1;border-color:rgba(18,18,20,.14);animation-duration:26s;animation-direction:reverse}
@keyframes hvSpin{to{rotate:360deg}}
.hv-pl{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;transform:rotate(var(--a)) translateY(calc(var(--rr,46%) * -1)) rotate(calc(var(--a) * -1))}
.hv-ring.r1 .hv-pl{--rr:211px;--rr:46cqw}
.hv-ring.r2 .hv-pl{--rr:161px;--rr:35cqw}
.hv-pl i{display:grid;place-items:center;width:100%;height:100%;border-radius:14px;background:var(--c);color:#fff;font:800 16px/1 Montserrat,sans-serif;font-style:normal;box-shadow:0 8px 20px rgba(0,0,0,.18),0 0 0 4px #fff;animation:hvSpin 36s linear infinite reverse}
.hv-ring.r2 .hv-pl i{animation-duration:26s;animation-direction:normal}
.hv-pl.sm{width:36px;height:36px;margin:-18px 0 0 -18px}.hv-pl.sm i{font-size:13px;border-radius:11px}
.hv-spark{position:absolute;left:var(--x);top:var(--y);width:8px;height:8px;z-index:2;animation:hvTwinkle 3.2s ease-in-out infinite;animation-delay:var(--d);opacity:0}
.hv-spark::before{content:'';position:absolute;inset:0;background:var(--red);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.hv-spark:nth-child(even)::before{background:#FFB020}
@keyframes hvTwinkle{0%,100%{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:1;transform:scale(1.6) rotate(90deg)}}
.hv-scan{z-index:4;width:62%;height:62%;pointer-events:none;background:linear-gradient(180deg,transparent 45%,rgba(255,255,255,.55) 50%,transparent 55%);background-size:100% 260%;mix-blend-mode:soft-light;animation:hvScan 4s ease-in-out infinite;border-radius:50%}
@keyframes hvScan{0%{background-position:0 100%}100%{background-position:0 0}}
.float-card{position:absolute;z-index:5;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:14px;padding:10px 14px;box-shadow:0 12px 32px rgba(0,0,0,.12);font-size:.9rem;min-width:190px;animation:hvCardIn .7s cubic-bezier(.2,.9,.3,1.3) both,hvBob 6s ease-in-out infinite}
.float-card small{display:block;color:var(--muted)}.float-card b{color:var(--red)}
.c1{top:6%;left:-6%;display:flex;gap:10px;align-items:center;animation-delay:.2s,0s}
.c2{bottom:16%;right:-6%;animation-delay:.5s,1.5s}
.c3{bottom:2%;left:2%;animation-delay:.8s,3s}
@keyframes hvCardIn{from{opacity:0;transform:translateY(16px) scale(.92)}}
@keyframes hvBob{50%{translate:0 -6px}}
.hv-dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(21,146,74,.5);animation:hvPing 1.6s infinite;flex:none}
@keyframes hvPing{70%{box-shadow:0 0 0 9px rgba(21,146,74,0)}100%{box-shadow:0 0 0 0 rgba(21,146,74,0)}}
.c1 [data-hv]{transition:opacity .35s,transform .35s}
.c1.swap [data-hv]{opacity:0;transform:translateY(-6px)}
.hv-bars{display:flex;gap:3px;align-items:flex-end;height:22px;margin-top:6px}
.hv-bars i{flex:1;background:var(--red);border-radius:3px 3px 0 0;opacity:.85;animation:hvBar 1.8s ease-in-out infinite}
.hv-bars i:nth-child(2){animation-delay:.2s}.hv-bars i:nth-child(3){animation-delay:.4s}.hv-bars i:nth-child(4){animation-delay:.6s}.hv-bars i:nth-child(5){animation-delay:.8s}
@keyframes hvBar{0%,100%{height:30%}50%{height:100%}}
.hv-prog{display:block;height:6px;background:#f0f0f3;border-radius:6px;overflow:hidden;margin-top:7px}
.hv-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),#ff6a72);border-radius:6px}
@media (prefers-reduced-motion:reduce){.hero-visual *{animation:none!important;transition:none!important}}
.section{padding:80px 0}.section.alt{background:var(--bg)}
.sec-title{text-align:center;font-size:clamp(1.6rem,3vw,2.3rem)}
.sec-sub{text-align:center;color:var(--muted);max-width:640px;margin:0 auto 40px}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature{border:1px solid var(--line);border-radius:18px;padding:26px;transition:.2s;background:#fff}
.feature:hover{border-color:var(--red);box-shadow:0 14px 40px rgba(227,16,29,.1);transform:translateY(-3px)}
.f-ic{width:52px;height:52px;border-radius:14px;background:var(--red);color:#fff;display:grid;place-items:center;font-size:24px;margin-bottom:14px}
.feature p{color:var(--ink-2);margin:0}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}
.step{background:#fff;border-radius:18px;padding:26px;text-align:center;box-shadow:var(--shadow)}
.step span{width:48px;height:48px;border-radius:50%;background:var(--ink);color:#fff;display:inline-grid;place-items:center;font-weight:700;font-size:20px;margin-bottom:10px}
.step p{color:var(--muted);margin:0}
.cta-band{background:linear-gradient(120deg,var(--red),#7d0610);color:#fff;padding:60px 0;text-align:center}.cta-band h2{margin-bottom:20px}
.pub-foot{background:var(--ink);color:#bbb;padding:40px 0 20px}
.pub-foot .wrap{display:grid;grid-template-columns:1fr auto;gap:20px}
.pub-foot .brand b{color:#fff}
.foot-links{display:flex;gap:20px;align-items:start}.foot-links a{color:#ddd}
.copy{grid-column:1/-1;border-top:1px solid #2c2c33;padding-top:16px;margin:0;font-size:.9rem;text-align:center}.copy b{color:#fff}
.prose h3{margin-top:1.6em}
.auth{min-height:calc(100vh - 70px);display:grid;place-items:center;padding:40px 16px;background:radial-gradient(800px 400px at 50% 0,#FFE9EA,transparent)}
.auth-card{width:100%;max-width:430px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:0 20px 60px rgba(0,0,0,.08)}
.auth-card h2{text-align:center;margin:6px 0 2px}.auth-card>.muted{text-align:center;margin:0 0 14px}
.auth-logo{width:70px;display:block;margin:0 auto}
.auth-card .btn-block{margin-top:16px}

/* ============ RESPONSIVE ============ */
@media (max-width:1100px){.grid-side{grid-template-columns:1fr}.sticky{position:static}.composer-grid{grid-template-columns:1fr}}
@media (max-width:900px){
  .sidebar{transform:translateX(-100%);transition:.25s;box-shadow:0 0 40px rgba(0,0,0,.2)}.sidebar.open{transform:none}
  .main{margin-left:0}.menu-btn{display:block}.topbar{padding:0 14px}.content{padding:16px}
  .user-chip{display:none}
  .grid-2,.row-3,.row-4,.features,.steps,.hero-grid{grid-template-columns:1fr}
  .quick{grid-template-columns:repeat(2,1fr)}
  .hero-visual{min-height:0;margin-top:10px}.float-card{min-width:0;font-size:.78rem;padding:7px 10px}.c1{left:0}.c2{right:0}.hv-pl{width:38px;height:38px;margin:-19px 0 0 -19px}.hv-pl i{font-size:13px}.pub-nav nav>a:not(.btn){display:none}
  .price-card.featured{transform:none}.pub-foot .wrap{grid-template-columns:1fr}
  .cal-item{grid-template-columns:1fr}.hide-sm{display:none}
  .msg{max-width:94%}
}
@media (max-width:560px){.row-2{grid-template-columns:1fr}.post-list{grid-template-columns:1fr}.topbar h1{font-size:1.02rem}}
a.itv{font-weight:700;color:inherit;text-decoration:none;border-bottom:1px dashed currentColor}
a.itv:hover{color:var(--red);text-decoration:none}
.pub-foot a.itv{color:#fff}.pub-foot a.itv:hover{color:#ff4d57}
/* Language switch */
.lang-sw{display:inline-flex;border:1px solid var(--line);border-radius:30px;padding:3px;background:#fff;gap:2px;flex:none}
.lang-sw a{padding:4px 11px;border-radius:20px;font-size:13px;font-weight:600;color:var(--ink-2)!important;text-decoration:none!important;line-height:1.3}
.lang-sw a.on{background:var(--red);color:#fff!important}
html[lang=en] body{font-family:'Inter','Hind Siliguri',system-ui,-apple-system,'Segoe UI',sans-serif}
