:root{--lime:#8DC63F;--lime-soft:#EEF6E2;--green:#2F9E41;--deep:#146B32;--ink:#0E2A18;--sky:#1FA6DF;--sky-deep:#0B6FA4;--sky-soft:#E4F4FC;--bg:#F6F8F3;--card:#fff;--line:#E1E8DA;--muted:#56665B;--sand:#F4EBD9;--sand-ink:#7A5A1E;--coral:#FCE6E1;--coral-ink:#A63A22;--r:18px;--font:'Figtree',system-ui,sans-serif}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:var(--font);color:var(--ink);background:var(--bg);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--deep);text-decoration:underline;text-underline-offset:2px}a:hover{color:var(--green)}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4{margin:0;line-height:1.12;text-wrap:balance;letter-spacing:-.01em}
p{margin:0;text-wrap:pretty}
.ms{font-family:'Material Symbols Rounded';font-weight:normal;font-style:normal;line-height:1;display:inline-block;white-space:nowrap;direction:ltr;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-variation-settings:'FILL' 0,'wght' 500,'GRAD' 0,'opsz' 24;user-select:none}
.ms.fill{font-variation-settings:'FILL' 1,'wght' 500,'GRAD' 0,'opsz' 24}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}

/* brand stripe + header */
.stripe{height:6px;display:grid;grid-template-columns:2fr 1fr 1.2fr}.stripe i{display:block}.stripe i:nth-child(1){background:var(--lime)}.stripe i:nth-child(2){background:var(--green)}.stripe i:nth-child(3){background:var(--sky)}
.hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.hdr-in{display:flex;align-items:center;gap:24px;height:72px}
.brand{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;color:var(--ink);flex:none;text-align:left}
.brand-mark{position:relative;width:40px;height:30px;flex:none}
.brand-mark i{position:absolute;border-radius:50%;mix-blend-mode:multiply}
.brand-mark i:nth-child(1){width:28px;height:22px;left:0;top:6px;background:var(--lime);border-radius:60% 40% 55% 45%}
.brand-mark i:nth-child(2){width:22px;height:18px;right:0;top:0;background:var(--sky);border-radius:55% 45% 40% 60%}
.brand-mark i:nth-child(3){width:18px;height:14px;left:12px;top:10px;background:var(--green);border-radius:50%}
.brand-name{display:block;white-space:nowrap;font-weight:800;font-size:20px;letter-spacing:-.02em}.brand-name b{color:var(--green);font-weight:800}
.brand-sub{display:block;font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:-2px}
.nav{display:flex;gap:4px;margin-left:auto}
.nav button{border:0;background:none;padding:10px 14px;border-radius:999px;font-weight:600;font-size:15px;color:var(--ink);display:flex;align-items:center;gap:6px}
.nav button:hover{background:var(--lime-soft)}
.nav button.on{background:var(--deep);color:#fff}
.nav .ms{font-size:20px}
.hdr-actions{display:flex;gap:8px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 20px;font-weight:700;font-size:15px;line-height:1;background:var(--deep);color:#fff;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--green);color:#fff}
.btn .ms{font-size:20px}
.btn.lime{background:var(--lime);color:var(--ink)}.btn.lime:hover{background:#7DB832}
.btn.sky{background:var(--sky-deep)}.btn.sky:hover{background:var(--sky)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.btn.ghost:hover{background:var(--lime-soft)}
.btn.white{background:#fff;color:var(--deep)}.btn.white:hover{background:var(--lime-soft);color:var(--deep)}
.btn.sm{padding:9px 14px;font-size:14px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.user-chip{display:flex;align-items:center;gap:10px;border:0;background:var(--lime-soft);border-radius:999px;padding:4px 14px 4px 4px;font-weight:700;font-size:14px;color:var(--ink)}
.avatar{width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}
.avatar.admin{background:var(--sky-deep)}
.menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px rgba(14,42,24,.14);min-width:240px;padding:8px;z-index:60}
.menu-h{padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}
.menu-h small{display:block;color:var(--muted);font-size:13px}
.menu button{width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:10px;font-size:15px;display:flex;gap:10px;align-items:center;color:var(--ink)}
.menu button:hover{background:var(--bg)}
.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--lime-soft);color:var(--deep)}
.badge .ms{font-size:15px}
.badge.admin{background:var(--sky-soft);color:var(--sky-deep)}
.badge.biz{background:var(--sand);color:var(--sand-ink)}

/* hero */
.hero{background:var(--deep);color:#fff;position:relative;overflow:hidden}
.hero-blobs{position:absolute;inset:0;pointer-events:none}
.hero-blobs i{position:absolute;mix-blend-mode:screen;opacity:.9}
.hero-blobs i:nth-child(1){width:420px;height:280px;right:-140px;top:60px;background:var(--lime);border-radius:62% 38% 55% 45%/55% 50% 50% 45%;opacity:.35}
.hero-blobs i:nth-child(2){width:280px;height:190px;right:20px;top:-90px;background:var(--sky);border-radius:50% 50% 45% 55%/60% 55% 45% 40%;opacity:.45}
.hero-blobs i:nth-child(3){width:300px;height:200px;left:-120px;bottom:-110px;background:var(--lime);border-radius:50%;opacity:.25}
.hero-in{position:relative;padding:44px 0 64px;display:grid;gap:20px;max-width:760px}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;background:rgba(255,255,255,.14);padding:6px 14px 6px 8px;border-radius:999px;width:max-content}
.hero-kicker .ms{color:var(--lime);font-size:20px}
.hero h1{font-size:clamp(32px,4.2vw,50px);line-height:1.08;font-weight:800;letter-spacing:-.03em}
.hero h1 .hl{color:var(--lime)}
.hero-lead{font-size:17px;color:#E4F1E6;max-width:600px}
.search{position:relative}
.search-box{display:flex;align-items:center;gap:12px;background:#fff;border-radius:999px;padding:8px 8px 8px 22px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.search-box .ms{color:var(--green);font-size:28px}
.search-box input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:19px;color:var(--ink);padding:12px 0;background:transparent}
.search-drop{position:absolute;left:0;right:0;top:calc(100% + 10px);background:#fff;color:var(--ink);border-radius:20px;box-shadow:0 20px 50px rgba(0,0,0,.22);padding:10px;z-index:30;max-height:460px;overflow:auto}
.search-grp{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:10px 12px 6px}
.search-row{display:flex;align-items:center;gap:14px;width:100%;border:0;background:none;padding:10px 12px;border-radius:12px;text-align:left;color:var(--ink);font-size:15px}
.search-row:hover{background:var(--bg)}
.search-row b{display:block;font-size:16px}.search-row small{color:var(--muted)}
.search-row .count{margin-left:auto;font-size:13px;color:var(--muted);white-space:nowrap}
.search-empty{padding:18px;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:0;border-radius:999px;padding:8px 14px;font-weight:600;font-size:14px;background:rgba(255,255,255,.14);color:#fff;display:inline-flex;gap:6px;align-items:center}
.chip:hover{background:rgba(255,255,255,.26)}
.chip .ms{font-size:18px}

/* icon tiles */
.ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex:none}
.ico .ms{font-size:26px}
.ico.green{background:var(--lime-soft);color:var(--deep)}
.ico.sky{background:var(--sky-soft);color:var(--sky-deep)}
.ico.lime{background:#E3F2CC;color:#3E6B10}
.ico.sand{background:var(--sand);color:var(--sand-ink)}
.ico.coral{background:var(--coral);color:var(--coral-ink)}
.ico.lg{width:64px;height:64px;border-radius:18px}.ico.lg .ms{font-size:34px}

/* sections */
.sec{padding:64px 0}
.sec-h{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.sec-h h2{font-size:clamp(28px,3.2vw,40px);font-weight:800}
.sec-h p{color:var(--muted);font-size:17px;margin-top:8px;max-width:620px}
.eyebrow{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:10px;display:flex;gap:6px;align-items:center}
.eyebrow.sky{color:var(--sky-deep)}

/* doors */
.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:24px;margin-top:-40px;position:relative;z-index:2}
.door{background:#fff;border-radius:24px;padding:26px;box-shadow:0 6px 30px rgba(14,42,24,.08);display:flex;flex-direction:column;gap:22px;border-top:8px solid var(--lime)}
.door.best{border-top-color:var(--sky)}
.door-h{display:flex;gap:16px;align-items:start}
.door-h h2{font-size:24px;font-weight:800}
.door-h p{color:var(--muted);margin-top:6px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.tile{border:0;background:var(--bg);border-radius:16px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;font-weight:700;font-size:14px;color:var(--ink);line-height:1.2}
.tile .ms{font-size:32px;color:var(--deep)}
.door.best .tile .ms{color:var(--sky-deep)}
.tile:hover{background:var(--lime-soft);transform:translateY(-2px)}
.door.best .tile:hover{background:var(--sky-soft)}
.tile{transition:transform .15s,background .15s}
.door-f{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto}
.door-f small{color:var(--muted);font-size:14px}

/* trust band */
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.trust-i{display:flex;gap:14px;align-items:start;background:#fff;border-radius:var(--r);padding:20px;border:1px solid var(--line)}
.trust-i b{display:block;font-size:17px;margin-bottom:2px}.trust-i p{color:var(--muted);font-size:15px}

/* two col home feed */
.feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}
.panel{background:#fff;border-radius:24px;padding:28px;border:1px solid var(--line);display:flex;flex-direction:column;gap:16px}
.panel-h{display:flex;justify-content:space-between;align-items:center;gap:12px}
.panel-h h3{font-size:24px;font-weight:800;display:flex;gap:10px;align-items:center}

/* page header */
.phead{padding:44px 0 28px;background:#fff;border-bottom:1px solid var(--line)}
.phead.sky{background:var(--sky-soft);border-bottom:0}
.phead.lime{background:var(--lime-soft);border-bottom:0}
.phead h1{font-size:clamp(32px,4vw,48px);font-weight:800;letter-spacing:-.025em}
.phead p{color:var(--muted);font-size:18px;margin-top:10px;max-width:640px}
.phead-row{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}

/* filter bar */
.fbar{display:flex;gap:8px;overflow-x:auto;padding:20px 0 4px;scrollbar-width:none}
.fbar::-webkit-scrollbar{display:none}
.fchip{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--ink)}
.fchip .ms{font-size:19px;color:var(--green)}
.fchip:hover{border-color:var(--lime)}
.fchip.on{background:var(--deep);border-color:var(--deep);color:#fff}.fchip.on .ms{color:var(--lime)}
.fchip.sky .ms{color:var(--sky-deep)}.fchip.sky.on{background:var(--sky-deep);border-color:var(--sky-deep)}.fchip.sky.on .ms{color:#fff}
.inline-search{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:0 16px;min-width:min(100%,340px)}
.inline-search input{border:0;outline:0;font:inherit;font-size:16px;padding:12px 0;flex:1;min-width:0;background:transparent}
.inline-search .ms{color:var(--muted)}

/* pro cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:18px}
.pro{background:#fff;border-radius:var(--r);border:1px solid var(--line);padding:22px;display:flex;flex-direction:column;gap:14px}
.pro:hover{box-shadow:0 8px 28px rgba(14,42,24,.08)}
.pro-h{display:flex;gap:14px;align-items:center}
.pro-h h3{font-size:19px;font-weight:800}
.pro-h small{color:var(--muted);font-size:14px;font-weight:600}
.pro-q{font-size:15px;color:var(--ink);background:var(--bg);border-radius:12px;padding:12px 14px;position:relative}
.pro-q::before{content:"“";font-size:34px;line-height:0;color:var(--lime);position:relative;top:12px;margin-right:4px;font-weight:800}
.pro-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:14px;color:var(--muted)}
.pro-meta span{display:inline-flex;gap:4px;align-items:center}.pro-meta .ms{font-size:18px}
.recs{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;color:var(--deep)}
.recs .ms{color:var(--green)}
.pro-f{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}
.pro-f .btn{flex:1}
.rec-btn.on{background:var(--lime);color:var(--ink);box-shadow:none}
.empty{background:#fff;border:1.5px dashed var(--line);border-radius:var(--r);padding:40px;text-align:center;color:var(--muted);display:grid;gap:12px;justify-items:center}
.cta-row{margin-top:28px;background:var(--deep);color:#fff;border-radius:24px;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cta-row h3{font-size:22px;font-weight:800}.cta-row p{color:#CFE5D3;margin-top:4px}

/* best rankings */
.rank-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:20px}
.rank{background:#fff;border-radius:24px;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}
.rank-h{display:flex;gap:14px;align-items:center;padding:20px 22px 16px}
.rank-h h3{font-size:21px;font-weight:800}.rank-h small{color:var(--muted);font-size:14px}
.rank-top{margin:0 14px;background:var(--sky-soft);border-radius:18px;padding:18px;display:grid;gap:8px;position:relative}
.rank-top .pos{position:absolute;right:16px;top:14px;font-size:44px;font-weight:800;color:var(--sky);opacity:.35;line-height:1}
.rank-top b{font-size:20px;font-weight:800;padding-right:44px}
.rank-top p{font-size:15px;color:var(--ink)}
.rank-list{padding:10px 14px 16px;display:grid;gap:4px}
.rrow{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:8px}
.rrow .n{font-weight:800;color:var(--muted);font-size:15px}
.rrow b{font-size:15px;display:block}
.bar{height:6px;background:var(--bg);border-radius:999px;overflow:hidden;margin-top:6px}
.bar i{display:block;height:100%;background:var(--sky);border-radius:999px}
.rank-top .bar{background:#fff}.rank-top .bar i{background:var(--sky-deep)}
.vote{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-weight:800;font-size:14px;display:inline-flex;gap:5px;align-items:center;color:var(--ink)}
.vote .ms{font-size:18px;color:var(--sky-deep)}
.vote:hover{border-color:var(--sky)}
.vote.on{background:var(--sky-deep);border-color:var(--sky-deep);color:#fff}.vote.on .ms{color:#fff}
.vote-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rank-f{padding:0 22px 20px;font-size:13px;color:var(--muted);margin-top:auto}

/* board */
.board{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start;padding:32px 0 64px}
.side{position:sticky;top:96px;display:grid;gap:6px}
.side button{border:0;background:none;border-radius:14px;padding:10px 12px;display:flex;align-items:center;gap:12px;font-weight:700;font-size:15px;color:var(--ink);text-align:left}
.side button .ico{width:36px;height:36px;border-radius:10px}.side button .ico .ms{font-size:20px}
.side button:hover{background:#fff}
.side button.on{background:#fff;box-shadow:0 2px 12px rgba(14,42,24,.08)}
.side button em{margin-left:auto;font-style:normal;font-size:13px;color:var(--muted);font-weight:700}
.side-note{margin-top:14px;background:#fff;border-radius:16px;padding:16px;font-size:14px;color:var(--muted);border:1px solid var(--line)}
.side-note b{color:var(--ink);display:block;margin-bottom:4px}
.posts{display:grid;gap:14px}
.post{background:#fff;border-radius:var(--r);border:1px solid var(--line);padding:20px 22px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;text-align:left;width:100%;font:inherit;color:inherit}
button.post:hover{box-shadow:0 8px 28px rgba(14,42,24,.08);border-color:#D2DCC9}
.post-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.pill{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.pill.sky{background:var(--sky-soft);color:var(--sky-deep)}.pill.lime{background:#E3F2CC;color:#3E6B10}.pill.green{background:var(--lime-soft);color:var(--deep)}.pill.sand{background:var(--sand);color:var(--sand-ink)}.pill.coral{background:var(--coral);color:var(--coral-ink)}
.pill.done{background:var(--ink);color:#fff}
.post h3{font-size:19px;font-weight:800;margin-bottom:4px}
.post p{color:var(--muted);font-size:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:14px;color:var(--muted);align-items:center}
.post-meta span{display:inline-flex;gap:5px;align-items:center}.post-meta .ms{font-size:18px}
.post-meta .who{color:var(--ink);font-weight:700}
.post.mini{padding:14px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:auto minmax(0,1fr)}
.post.mini:last-child{border-bottom:0}
.post.mini:hover{box-shadow:none}
.post.mini h3{font-size:17px}
.post.mini .ico{width:40px;height:40px;border-radius:12px}

/* news */
.news-feat{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:#fff;border-radius:28px;overflow:hidden;border:1px solid var(--line);margin-bottom:24px}
.news-img{background:var(--lime-soft);display:grid;place-items:center;min-height:240px;position:relative;overflow:hidden}
.news-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.news-img .ms{font-size:72px;color:var(--deep);opacity:.8}
.news-img.c1{background:var(--sky-soft)}.news-img.c1 .ms{color:var(--sky-deep)}
.news-img.c2{background:#E3F2CC}.news-img.c2 .ms{color:#3E6B10}
.news-img.c3{background:var(--sand)}.news-img.c3 .ms{color:var(--sand-ink)}
.news-body{padding:32px;display:flex;flex-direction:column;gap:12px}
.news-feat h2{font-size:clamp(26px,3vw,36px);font-weight:800}
.news-body p{color:var(--muted);font-size:17px}
.news-date{font-size:14px;color:var(--muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.news-card{background:#fff;border-radius:var(--r);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}
.news-card .news-img{min-height:150px}.news-card .news-img .ms{font-size:52px}
.news-card .news-body{padding:20px;gap:8px;flex:1}
.news-card h3{font-size:19px;font-weight:800}
.news-card p{font-size:15px}
.admin-bar{display:flex;gap:6px;margin-top:auto;padding-top:8px}
.icon-btn{border:0;background:var(--bg);border-radius:10px;width:36px;height:36px;display:grid;place-items:center;color:var(--ink)}
.icon-btn:hover{background:var(--lime-soft)}
.icon-btn.danger:hover{background:var(--coral);color:var(--coral-ink)}
.icon-btn .ms{font-size:20px}
.admin-note{display:flex;gap:10px;align-items:center;background:var(--sky-soft);color:var(--sky-deep);border-radius:14px;padding:12px 16px;font-weight:600;font-size:14px;margin-top:20px}
.news-mini{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font:inherit;color:inherit;width:100%}
.news-mini:last-child{border-bottom:0}
.news-mini b{font-size:17px;display:block;margin-bottom:2px}
.news-mini small{color:var(--muted);font-size:14px}

/* modal */
.mb{position:fixed;inset:0;background:rgba(14,42,24,.5);z-index:100;display:grid;place-items:center;padding:20px;overflow:auto}
.md{background:#fff;border-radius:26px;width:min(100%,560px);max-height:calc(100vh - 40px);overflow:auto;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.md.wide{width:min(100%,720px)}
.md-h{padding:28px 28px 0;display:grid;gap:8px}
.md-h h3{font-size:26px;font-weight:800;padding-right:40px}
.md-h p{color:var(--muted)}
.md-x{position:absolute;right:16px;top:16px;width:40px;height:40px;border-radius:50%;border:0;background:var(--bg);display:grid;place-items:center;color:var(--ink)}
.md-x:hover{background:var(--lime-soft)}
.md-b{padding:22px 28px;display:grid;gap:16px}
.md-f{padding:0 28px 28px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--bg);border-radius:999px;padding:4px;gap:4px}
.tabs button{border:0;background:none;border-radius:999px;padding:10px;font-weight:700;font-size:15px;color:var(--muted)}
.tabs button.on{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.fld{display:grid;gap:6px}
.fld label{font-weight:700;font-size:14px}
.fld small{color:var(--muted);font-size:13px}
.inp{border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:16px;color:var(--ink);background:#fff;width:100%}
.inp:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px var(--lime-soft)}
textarea.inp{resize:vertical;min-height:110px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check{display:flex;gap:10px;align-items:start;font-size:14px;color:var(--muted)}
.check input{margin-top:3px;accent-color:var(--green);width:18px;height:18px;flex:none}
.types{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.type-opt{border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:12px;display:flex;gap:10px;align-items:center;font-weight:700;font-size:14px;text-align:left;color:var(--ink)}
.type-opt .ms{font-size:22px;color:var(--green)}
.type-opt.on{border-color:var(--deep);background:var(--lime-soft)}
.hint{background:var(--sky-soft);color:var(--sky-deep);border-radius:14px;padding:14px 16px;font-size:14px;display:flex;gap:10px}
.hint .ms{font-size:20px;flex:none}
.err{color:var(--coral-ink);font-weight:600;font-size:14px}
.why{display:grid;gap:10px;background:var(--bg);border-radius:16px;padding:16px}
.why div{display:flex;gap:10px;font-size:14px;align-items:center}.why .ms{color:var(--green);font-size:20px}
.thread{display:grid;gap:10px}
.reply{background:var(--bg);border-radius:14px;padding:12px 14px}
.reply-h{display:flex;gap:8px;align-items:center;font-size:14px;margin-bottom:4px}
.reply-h b{font-weight:800}.reply-h small{color:var(--muted)}
.reply p{font-size:15px}
.reply-form{display:flex;gap:8px;align-items:end}
.reply-form textarea{min-height:52px;flex:1}
.post-full{font-size:16px;white-space:pre-line}
.detail-grid{display:flex;gap:10px;flex-wrap:wrap}
.detail-grid span{display:inline-flex;gap:6px;align-items:center;background:var(--bg);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600}
.detail-grid .ms{font-size:18px;color:var(--green)}
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:14px 20px;border-radius:999px;font-weight:700;z-index:200;display:flex;gap:10px;align-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.toast .ms{color:var(--lime)}

/* community + contact */
.follow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}
.ig{display:flex;align-items:center;gap:18px;padding:28px;border-radius:24px;background:linear-gradient(120deg,var(--deep),var(--green) 55%,var(--sky-deep));color:#fff;text-decoration:none;min-height:100%}
.ig:hover{color:#fff;filter:brightness(1.05)}
.ig-ico{width:64px;height:64px;border-radius:18px;background:rgba(255,255,255,.18);display:grid;place-items:center;flex:none}.ig-ico .ms{font-size:34px}
.ig-t{display:grid;gap:2px;flex:1;min-width:0}.ig-t small{font-size:14px;font-weight:700;color:var(--lime)}.ig-t b{font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:-.02em}.ig-t span{color:#DDEFE2;font-size:15px}
.ig.compact{padding:18px}
.grp{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}
.grp:last-child{border-bottom:0}
a.grp:hover b{color:var(--green)}
.grp-t b{display:block;font-size:16px}.grp-t small{color:var(--muted);font-size:14px}
.ico.wa{background:#DDF5E4;color:#128C4A}.ico.tg{background:var(--sky-soft);color:var(--sky-deep)}
.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}
.panel.mail{flex-direction:row;align-items:center;text-decoration:none;color:inherit}
.panel.mail span:nth-child(2){flex:1}.panel.mail small{display:block;color:var(--muted);font-size:14px}.panel.mail b{font-size:18px;word-break:break-all}
.panel.sent{align-items:center;text-align:center}.panel.sent h3{font-size:26px;font-weight:800}.panel.sent p{color:var(--muted)}
@media (max-width:980px){.contact{grid-template-columns:1fr}.ig{flex-wrap:wrap}}
.who{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px}
.who-c{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}
.who-c>.btn,.who-c>.badge{grid-column:2;justify-self:start}
.who-c h3{font-size:24px;font-weight:800;margin-bottom:6px}.who-c p{color:var(--muted)}
.who-c .eyebrow{margin-bottom:6px}
@media (max-width:600px){.hdr-login span{display:none}.hdr-login{padding:9px}}
.recsw{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.recsw-b{display:inline-flex;gap:6px;align-items:center;font-weight:800;font-size:15px;color:var(--ink)}.recsw-b .ms{color:var(--green);font-size:20px}
.recsw-t{display:flex;background:#fff;border-radius:999px;padding:4px;gap:4px;box-shadow:0 1px 4px rgba(14,42,24,.06)}
.recsw-t button{border:0;background:none;border-radius:999px;padding:9px 16px;font-weight:700;font-size:14px;color:var(--muted);display:inline-flex;gap:6px;align-items:center}
.recsw-t button .ms{font-size:19px}
.recsw-t button.on{background:var(--deep);color:#fff}.recsw-t button.on.sky{background:var(--sky-deep)}
@media (max-width:600px){.recsw-t{width:100%}.recsw-t button{flex:1;justify-content:center;padding:9px 8px;font-size:13px}}
/* comunidad TWC */
.twc-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.twc-nav button{border:0;background:#fff;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;font-size:14px;color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.twc-nav button .ms{font-size:19px;color:var(--green)}.twc-nav button:hover{background:var(--deep);color:#fff}.twc-nav button:hover .ms{color:var(--lime)}
.circles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}
.circle{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.circle>.btn{grid-column:2;justify-self:start}
.circle h3{font-size:18px;font-weight:800}.circle p{color:var(--muted);font-size:15px;margin-top:2px}
.circle.on{border-color:var(--lime);box-shadow:0 0 0 2px var(--lime-soft)}
.moai{background:var(--sky-soft);border-radius:24px;padding:32px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center}
.moai h2{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.02em}.moai p{color:var(--ink);margin-top:10px;font-size:16px}
.moai>.btn{grid-column:1/-1;justify-self:start}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:s}
.steps li{background:#fff;border-radius:16px;padding:14px 16px 14px 56px;position:relative;counter-increment:s;display:grid}
.steps li::before{content:counter(s);position:absolute;left:14px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--sky-deep);color:#fff;font-weight:800;display:grid;place-items:center;font-size:14px}
.steps b{font-size:16px}.steps span{color:var(--muted);font-size:14px}
.prop{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 20px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}
.prop .vote{flex-direction:column;padding:8px 12px;border-radius:14px;min-width:52px}
.prop h3{font-size:18px;font-weight:800}.prop p{color:var(--muted);font-size:15px;margin:2px 0 8px}
.research{display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:13px;margin-top:20px;max-width:720px}.research .ms{font-size:17px;flex:none}
/* podcast */
.pod{background:var(--deep);color:#fff;border-radius:28px;padding:36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;position:relative;overflow:hidden}
.pod::after{content:"";position:absolute;width:260px;height:180px;right:-80px;top:-70px;background:var(--sky);opacity:.35;border-radius:55% 45% 50% 50%;pointer-events:none}
.pod-t{position:relative;z-index:1}
.pod-soon{display:inline-flex;gap:6px;align-items:center;background:var(--lime);color:var(--ink);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.06em;padding:5px 12px;border-radius:999px;margin-bottom:16px}.pod-soon .ms{font-size:16px}
.pod-h{font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.02em}
.pod-t p{color:#D7E9DC;font-size:17px;margin-top:10px}
.pod-f{position:relative;z-index:1;background:rgba(255,255,255,.08);border-radius:20px;padding:20px;display:grid;gap:12px}
.pod-f .inp{background:#fff}.pod-f .check{color:#D7E9DC}.pod-f .btn{justify-self:start}
.pod-f.sent{justify-items:center;text-align:center;padding:32px}.pod-f.sent b{font-size:22px}.pod-f.sent span{color:#D7E9DC}
.pod-seg{display:flex;background:rgba(0,0,0,.2);border-radius:999px;padding:4px;gap:4px}
.pod-seg button{flex:1;border:0;background:none;color:#fff;font:inherit;font-weight:700;font-size:14px;padding:9px 10px;border-radius:999px}
.pod-seg button.on{background:#fff;color:var(--deep)}
/* faq */
.faq-l{display:grid;gap:10px;max-width:860px}
.faq-l details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px}
.faq-l summary{list-style:none;cursor:pointer;padding:16px 0;font-weight:700;font-size:16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq-l summary::-webkit-details-marker{display:none}
.faq-l summary .ms{transition:transform .2s;color:var(--green)}.faq-l details[open] summary .ms{transform:rotate(180deg)}
.faq-l details p{color:var(--muted);padding-bottom:16px;font-size:15px}
/* install banner (mobile) */
.install{display:none}
@media (max-width:980px){
.install{display:flex;position:fixed;left:10px;right:10px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:45;background:var(--ink);color:#fff;border-radius:18px;padding:10px 10px 10px 12px;gap:10px;align-items:center;box-shadow:0 10px 30px rgba(14,42,24,.25)}
.install-ic{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:none}.install-ic .ms{color:var(--lime)}
.install-t{flex:1;min-width:0;display:grid;line-height:1.25}.install-t b{font-size:14px}.install-t small{font-size:12px;color:#C9D8CD}
.install-x{border:0;background:none;color:#C9D8CD;width:36px;height:36px;display:grid;place-items:center;border-radius:10px}
.moai,.pod{grid-template-columns:1fr;padding:24px}
}
.howto{background:var(--bg);border-radius:16px;padding:16px 18px;margin-bottom:12px}
.howto h4{display:flex;gap:8px;align-items:center;font-size:16px;margin:0 0 8px}.howto h4 .ms{color:var(--green)}
.howto ol{margin:0;padding-left:20px;display:grid;gap:6px;font-size:15px}.howto ol .ms{font-size:18px;vertical-align:-3px;color:var(--sky-deep)}
.ftr-note b{color:#fff}
.add-band{margin-top:28px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;display:grid;gap:18px}
.add-h h3{font-size:24px;font-weight:800}.add-h p{color:var(--muted);margin-top:6px;max-width:680px}
.add-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px}
.add-o{background:var(--bg);border-radius:18px;padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}
.add-o b{display:block;font-size:16px}.add-o small{color:var(--muted);font-size:14px}
@media (max-width:520px){.add-o{grid-template-columns:auto minmax(0,1fr)}.add-o .btn{grid-column:1/-1;justify-self:stretch;justify-content:center}}
.hdr-reg .s{display:none}
@media (max-width:600px){.hdr-in{gap:10px}.hdr-actions{gap:6px}.brand-name{font-size:18px}.brand{gap:8px}.hdr-reg .l{display:none}.hdr-reg .s{display:inline}.hdr-reg .ms{display:none}.hdr-login span{display:none}.hdr-login{padding:9px}}
.cmp{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:18px}
.cmp-c{border:0;text-align:left;font:inherit;color:var(--ink);border-radius:24px;padding:24px;display:grid;gap:12px;align-content:start;transition:transform .15s}
.cmp-c:hover{transform:translateY(-2px)}
.cmp-c.green{background:var(--lime-soft)}.cmp-c.sky{background:var(--sky-soft)}
.cmp-tag{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.06em}
.cmp-tag i{width:12px;height:12px;border-radius:50%;background:var(--green)}.cmp-c.sky .cmp-tag i{background:var(--sky-deep)}
.cmp-c.green .cmp-tag{color:var(--deep)}.cmp-c.sky .cmp-tag{color:var(--sky-deep)}
.cmp-c h3{font-size:22px;font-weight:800;letter-spacing:-.01em}
.cmp-c ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cmp-c li{display:flex;gap:10px;align-items:center;font-size:15px}
.cmp-c li .ms{font-size:20px;color:var(--green)}.cmp-c.sky li .ms{color:var(--sky-deep)}
.cmp-go{display:inline-flex;gap:4px;align-items:center;font-weight:700;font-size:14px;color:var(--deep);margin-top:4px}.cmp-c.sky .cmp-go{color:var(--sky-deep)}.cmp-go .ms{font-size:18px}
.subs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.subs span{font-size:12px;font-weight:600;background:var(--bg);color:var(--ink);padding:4px 10px;border-radius:999px}
.circle.on .subs span{background:var(--lime-soft)}
.circle-ln{border:0;background:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.circle-ln:hover{color:var(--green)}
.circle-a{grid-column:2;display:flex;gap:8px;flex-wrap:wrap}
.cd-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-weight:700;font-size:14px;color:var(--deep)}.cd-meta span{display:inline-flex;gap:5px;align-items:center}.cd-meta .ms{font-size:18px}
.cd-meta.sm{margin-top:10px;font-size:13px;color:var(--muted)}
.back{border:0;background:none;padding:0;font:inherit;font-weight:700;font-size:14px;color:var(--deep);display:inline-flex;gap:6px;align-items:center;margin-bottom:18px;cursor:pointer}
.cd-tabs{margin-top:24px;max-width:420px}.cd-tabs button{display:inline-flex;gap:6px;align-items:center;justify-content:center}
.cd{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}
.plan{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:start}
.plan-d{width:58px;border-radius:14px;background:var(--lime-soft);display:grid;justify-items:center;padding:8px 0;line-height:1}
.plan-d b{font-size:24px;font-weight:800;color:var(--deep)}.plan-d span{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--green);margin-top:4px}
.plan-b h3{font-size:18px;font-weight:800;margin-bottom:6px}.plan-b p{color:var(--muted);font-size:15px;margin-top:8px}
.plan-i{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;color:var(--ink);font-weight:600}.plan-i span{display:inline-flex;gap:4px;align-items:center}.plan-i .ms{font-size:17px;color:var(--green)}
.plan-a{display:grid;justify-items:end;gap:6px}.plan-a small{color:var(--muted);font-size:13px;font-weight:600}
.members{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}
.mem{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;gap:10px;align-items:center}.mem b{flex:1;font-size:15px}
@media (max-width:980px){.cd{grid-template-columns:1fr}.cd .side{display:flex;overflow-x:auto;gap:8px;position:static}.cd .side button{flex:none}.cd .side .side-note{display:none}}
@media (max-width:600px){.plan{grid-template-columns:auto minmax(0,1fr)}.plan-a{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}}
.brand-logo{height:30px;width:auto;flex:none;display:block}
@media (max-width:600px){.brand-logo{height:26px}}
.check.opt{color:var(--muted);font-size:14px}
/* barómetro */
.baro-intro p{font-size:16px;margin-top:10px}.baro-nuts{display:flex;flex-wrap:wrap;gap:6px}.baro-nuts span{background:var(--lime-soft);color:var(--deep);font-weight:700;font-size:13px;padding:5px 12px;border-radius:999px}
.baro-note{color:var(--muted);font-size:13px;margin-top:12px}
.baro-q h3{font-size:clamp(20px,2.6vw,24px);font-weight:800;margin:2px 0 6px}.baro-q>p{color:var(--muted);font-size:15px}
.baro-prog{height:6px;background:var(--bg);border-radius:999px;overflow:hidden;margin-bottom:18px}.baro-prog i{display:block;height:100%;background:var(--green);border-radius:999px;transition:width .25s}
.baro-opts{display:grid;gap:10px;margin-top:18px}
.baro-opts button{border:1.5px solid var(--line);background:#fff;border-radius:16px;padding:14px 16px;font:inherit;font-weight:700;font-size:16px;text-align:left;color:var(--ink);min-height:52px;cursor:pointer}
.baro-opts button:hover{border-color:var(--lime)}.baro-opts button.on{background:var(--deep);border-color:var(--deep);color:#fff}
.baro-hint{color:var(--muted);font-size:13px;margin-left:auto}
.baro-consent ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px}.baro-consent li{display:flex;gap:10px;align-items:flex-start;font-size:15px}.baro-consent li .ms{color:var(--green)}
.baro-score{border-radius:20px;padding:20px;display:grid;gap:4px;background:var(--lime-soft)}
.baro-score.sky{background:var(--sky-soft)}.baro-score.lime{background:#E3F2CC}
.baro-score small{font-weight:700;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.baro-score b{font-size:44px;font-weight:800;line-height:1;color:var(--deep)}.baro-score b span{font-size:18px;color:var(--muted)}
.baro-lvl{font-weight:800;font-size:18px}.baro-diff{font-size:14px;font-weight:700;color:var(--green)}
.nuts{display:grid;gap:10px;margin:16px 0}
.nut{display:grid;grid-template-columns:150px minmax(0,1fr) 90px;gap:12px;align-items:center;font-size:14px}.nut span{font-weight:700}.nut b{font-size:13px;color:var(--muted);text-align:right}
.nut i{height:8px;background:var(--bg);border-radius:999px;overflow:hidden;display:block}.nut em{display:block;height:100%;border-radius:999px;background:var(--green)}
.nut i.lv0 em{background:var(--coral-ink,#C2573A)}.nut i.lv1 em{background:#E0A93B}
.baro-tips h4{font-size:15px;margin:0 0 4px}
.baro-banner{margin-top:20px;background:var(--lime-soft);border-radius:18px;padding:14px 16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}
.baro-banner b{display:block;font-size:16px}.baro-banner small{color:var(--muted);font-size:14px}
.evo{display:flex;gap:14px;align-items:flex-end;height:170px;padding:10px 4px 0;border-bottom:1px solid var(--line);overflow-x:auto}
.evo-c{display:grid;grid-template-rows:auto 1fr auto;justify-items:center;gap:6px;height:100%;min-width:52px}
.evo-c i{width:36px;border-radius:10px 10px 4px 4px;background:var(--green);align-self:end;display:block}.evo-c i.sky{background:var(--sky)}.evo-c i.lime{background:var(--lime)}
.evo-v{font-weight:800;font-size:14px;align-self:end}.evo-c small{font-size:12px;color:var(--muted);font-weight:600;padding-bottom:6px}
.evo-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px}
.evo-sum div{background:var(--bg);border-radius:14px;padding:12px 14px}.evo-sum small{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.evo-sum b{font-size:15px}
.menu-danger{color:var(--coral-ink,#C2573A)!important}
.btn.danger{background:var(--coral-ink,#C2573A)}.btn.danger:hover{filter:brightness(.92)}
.plan-warn{max-width:160px;text-align:right;font-weight:500!important}
@media (max-width:600px){.nut{grid-template-columns:110px minmax(0,1fr) 72px}.baro-banner{grid-template-columns:auto minmax(0,1fr)}.baro-banner .btn{grid-column:1/-1;justify-content:center}.plan-warn{text-align:left;max-width:none}}
/* admin */
.adm-top{background:var(--ink);color:#fff;padding:28px 0}.adm-top .eyebrow{color:var(--lime)}.adm-top h1{font-size:clamp(26px,3vw,36px);font-weight:800}
.adm-top-in{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.adm-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;padding-top:24px;padding-bottom:48px;align-items:start}
.adm-alert{background:var(--coral-ink,#C2573A)!important;color:#fff!important}
.adm-sec{display:grid;gap:18px}
.adm-h{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}.adm-h h2{font-size:26px;font-weight:800}.adm-h p{color:var(--muted);margin-top:4px;max-width:620px}
.adm-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:14px}
.adm-metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;gap:14px;align-items:flex-start}
.adm-metric small{display:block;color:var(--muted);font-weight:700;font-size:13px}.adm-metric b{display:block;font-size:32px;font-weight:800;line-height:1.1}.adm-metric span:not(.ico){font-size:13px;color:var(--muted)}
.adm-table-wrap{background:#fff;border:1px solid var(--line);border-radius:18px;overflow-x:auto}
.adm-table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
.adm-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--line);background:var(--bg)}
.adm-table td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.adm-table tr:last-child td{border-bottom:0}
.adm-table td b{display:block;font-size:15px}.adm-table td small{display:block;color:var(--muted);font-size:13px}
.adm-table .r{text-align:right}.adm-table tr.is-hidden td{opacity:.55}
.adm-empty{text-align:center;color:var(--muted);padding:28px!important}
.adm-actions{display:inline-flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.icon-btn.on{background:#E3F2CC;color:#3E6B10}
.adm-days{display:block;width:90px;height:6px;border-radius:999px;background:var(--bg);overflow:hidden;margin-bottom:4px}.adm-days i{display:block;height:100%;background:var(--green)}
.adm-tags{display:flex;gap:4px;flex-wrap:wrap}
.pill.coral{background:#FBE3DC;color:var(--coral-ink,#C2573A)}
.adm-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.adm-bar .fbar{margin:0}
.adm-count{font-style:normal;font-size:12px;opacity:.7;margin-left:4px}
.adm-sub{font-size:18px;font-weight:800;display:flex;gap:8px;align-items:center;margin-top:6px}
.invite-code{background:var(--lime-soft);border-radius:18px;padding:18px;text-align:center}.invite-code small{display:block;color:var(--muted);font-weight:700;font-size:13px}.invite-code b{font-size:28px;font-weight:800;letter-spacing:.04em;color:var(--deep)}
.invite-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.invite-btns .btn{flex:1;justify-content:center;text-decoration:none}
@media (max-width:980px){.adm-body{grid-template-columns:1fr}.adm-nav{display:flex;overflow-x:auto;gap:8px;position:static}.adm-nav button{flex:none}}
/* home: conoce vecinos */
.hv{background:var(--sky-soft);border-radius:28px;padding:32px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:center}
.hv-t h2{font-size:clamp(26px,3.2vw,38px);font-weight:800;letter-spacing:-.02em}.hv-t p{font-size:17px;margin-top:12px;color:var(--ink)}
.hv-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.hv .btn.ghost{background:#fff}
.hv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:10px}
.hv-c{border:0;background:#fff;border-radius:18px;padding:14px;text-align:left;font:inherit;color:var(--ink);display:grid;gap:4px;align-content:start;cursor:pointer;transition:transform .15s,box-shadow .15s}
.hv-c:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,42,24,.08)}
.hv-c .ms{font-size:26px;color:var(--green)}.hv-c b{font-size:14px;line-height:1.25}.hv-c small{font-size:12px;color:var(--muted)}
.hv-c.moai{background:var(--sky-deep);color:#fff}.hv-c.moai .ms{color:#fff}.hv-c.moai small{color:#D6ECF8}
.chip.chip-c{background:rgba(141,198,63,.22);border-color:transparent}
@media (max-width:900px){.hv{grid-template-columns:1fr;padding:24px}}
.google-btn{justify-content:center;background:#fff;gap:10px}
.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
button.lnk{border:0;background:none;padding:0;font:inherit;color:var(--deep);text-decoration:underline;cursor:pointer}button.lnk:hover{color:var(--green)}
.auth-forgot{justify-self:start;font-size:14px}
/* adjuntos */
.post{position:relative}
.post:has(.post-thumb){grid-template-columns:auto minmax(0,1fr) auto}
.post-thumb{width:84px;height:84px;object-fit:cover;border-radius:14px;flex:none;align-self:center;margin-left:auto;background:var(--bg)}
.att-pick{display:flex;flex-wrap:wrap;gap:10px}
.att-item,.att-add{width:92px;height:92px;border-radius:14px;position:relative;overflow:hidden;flex:none}
.att-item{background:var(--bg);border:1px solid var(--line)}.att-item img{width:100%;height:100%;object-fit:cover;display:block}
.att-pdf{display:grid;place-items:center;align-content:center;gap:4px;height:100%;padding:6px;text-align:center}.att-pdf .ms{font-size:30px;color:var(--coral-ink,#C2573A)}.att-pdf small{font-size:11px;line-height:1.2;word-break:break-all;color:var(--muted)}
.att-x{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:50%;border:0;background:rgba(14,42,24,.75);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}.att-x .ms{font-size:16px}
.att-add{border:2px dashed var(--line);background:#fff;display:grid;place-items:center;align-content:center;gap:2px;color:var(--deep);font:inherit;font-weight:700;font-size:13px;cursor:pointer}.att-add:hover{border-color:var(--lime)}.att-add .ms{font-size:28px;color:var(--green)}
.attach{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:10px;margin:14px 0}
.attach-img{display:block;border-radius:14px;overflow:hidden;background:var(--bg);aspect-ratio:4/3}.attach-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.attach-img:hover img{transform:scale(1.03)}
.attach-pdf{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--bg);color:var(--ink);text-decoration:none;font-weight:700;font-size:15px}.attach-pdf span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attach-pdf .ms:first-child{color:var(--coral-ink,#C2573A)}.attach-pdf:hover{background:var(--lime-soft)}
@media (max-width:600px){.post-thumb{width:64px;height:64px}}
/* footer */
.ftr{background:var(--ink);color:#C9D6CC;padding:48px 0 32px;margin-top:40px}
.ftr-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.ftr .brand{color:#fff}.ftr .brand-sub{color:#93A698}.ftr .brand-name b{color:var(--lime)}
.ftr .brand-mark i{mix-blend-mode:screen}
.ftr h4{color:#fff;font-size:15px;margin-bottom:12px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
.ftr a{color:#C9D6CC;text-decoration:none}.ftr a:hover{color:var(--lime)}
.ftr button.lnk{background:none;border:0;padding:0;color:#C9D6CC;font-size:15px;text-align:left}.ftr button.lnk:hover{color:var(--lime)}
.ftr-note{font-size:14px;margin-top:14px;max-width:380px}
.ftr-b{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:20px;font-size:13px;color:#93A698;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* mobile */
.mnav{display:none}
@media (max-width:980px){
.nav{display:none}
.hdr-actions{margin-left:auto}
.mnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:50;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
.mnav button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;font-weight:700;color:var(--muted);padding:6px 2px;border-radius:12px;min-height:52px;justify-content:center}
.mnav button .ms{font-size:24px}
.mnav button.on{color:var(--deep);background:var(--lime-soft)}
body{padding-bottom:72px}
.board{grid-template-columns:1fr}
.side{position:static;display:flex;overflow-x:auto;gap:6px}
.side button{white-space:nowrap;background:#fff;flex:none}
.side button em,.side-note{display:none}
.news-feat{grid-template-columns:1fr}
.ftr-in{grid-template-columns:1fr}
}
@media (max-width:600px){
.wrap{padding:0 16px}
.hero-in{padding:40px 0 64px}
.door{padding:22px;border-radius:22px}
.tiles{grid-template-columns:repeat(3,1fr)}
.tile{padding:12px 6px;font-size:12px}
.row2{grid-template-columns:1fr}
.brand-sub{display:none}
.user-chip span.nm{display:none}
.search-box input{font-size:17px}
.search-box .btn span{display:none}
}
