:root{--bg:#fff8ef;--surface:#fffdf9;--surface2:#fff2e2;--surface3:#f8e1cf;--text:#351b24;--muted:#755e63;--muted2:#9b8185;--purple:#6c2a5b;--magenta:#c72f67;--gold:#d89c25;--orange:#e8752f;--green:#2f8d60;--line:rgba(82,43,52,.12);--radius:20px;--max:1120px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 88% -8%,rgba(216,156,37,.18),transparent 28rem),radial-gradient(circle at -5% 20%,rgba(199,47,103,.10),transparent 30rem),var(--bg);color:var(--text);font-family:"DM Sans",system-ui,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;background:rgba(255,248,239,.90);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.topbar-inner{width:min(100% - 28px,var(--max));height:66px;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font:800 18px Outfit}.logo{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,var(--purple),var(--magenta));box-shadow:0 10px 28px rgba(199,47,103,.22)}.logo svg{width:25px}.icons{display:flex;gap:8px}.icon{width:42px;height:42px;border:1px solid var(--line);border-radius:13px;background:#5b2e3708;color:var(--text)}main{width:min(100% - 28px,var(--max));margin:auto;padding:26px 0 100px}.hero{padding:34px 24px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(199,47,103,.13),rgba(216,156,37,.12),rgba(232,117,46,.06));box-shadow:0 18px 50px rgba(84,42,47,.12)}.eyebrow{color:#8f2d50;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}h1,h2,h3{font-family:Outfit;margin:0;letter-spacing:-.03em}h1{font-size:clamp(38px,7vw,64px);line-height:.96;max-width:700px;margin:12px 0}h2{font-size:28px}h3{font-size:19px}.hero p,.meta{color:var(--muted);line-height:1.6}.actions,.card-actions,.tabs{display:flex;gap:9px;flex-wrap:wrap}.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:800;color:var(--text);background:var(--surface2)}.btn.primary{background:linear-gradient(135deg,var(--purple),var(--magenta));color:#fff}.btn.gold{background:linear-gradient(135deg,var(--gold),var(--orange));color:#251707}.btn.ghost{background:#5b2e3708;border:1px solid var(--line)}.btn.danger{background:#c72f6714;color:#8e284d;border:1px solid #c72f6730}.section{margin-top:30px}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:14px}.section-head p{margin:5px 0 0;color:var(--muted2);font-size:14px}.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:rgba(255,253,249,.90);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 12px 35px rgba(84,42,47,.08)}.top{display:flex;justify-content:space-between;gap:12px}.pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#5b2e3708;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800}.premium{color:#2b1a00;background:linear-gradient(135deg,var(--gold),var(--orange));border:0}.free{color:#7d315e;background:#c72f6714;border-color:#c72f6730}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;font-weight:700;color:var(--muted)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:#5b2e3708;color:var(--text);padding:12px;border-radius:13px;outline:0}.field textarea{min-height:100px}.filter{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.tab{white-space:nowrap;border:1px solid var(--line);background:transparent;color:var(--muted);padding:9px 12px;border-radius:12px}.tab.active{color:var(--text);background:var(--surface3)}.bottom{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:20;width:min(calc(100% - 20px),650px);background:rgba(255,250,244,.95);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:20px;padding:8px;display:grid;grid-template-columns:repeat(6,1fr);box-shadow:0 18px 50px rgba(84,42,47,.16)}.nav{border:0;background:transparent;color:var(--muted);padding:8px 4px;border-radius:13px;font-size:10px}.nav.active{color:var(--text);background:var(--surface3)}.nav b{display:block;font-size:17px;margin-bottom:3px}.modal-bg{position:fixed;inset:0;z-index:50;background:#241018aa;display:none;align-items:flex-end;justify-content:center;padding:14px}.modal-bg.open{display:flex}.modal{width:min(100%,620px);max-height:90vh;overflow:auto;background:#fffaf4;border:1px solid var(--line);border-radius:24px;padding:20px}.modal-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:18px}.close{border:0;background:transparent;color:var(--muted);font-size:26px}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);z-index:80;background:#351b24;color:#fff8ef;padding:12px 16px;border-radius:13px;font-weight:700;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.stat{padding:14px;border-radius:16px;background:#5b2e3708;border:1px solid var(--line)}.stat strong{display:block;font:700 24px Outfit}.stat span{color:var(--muted2);font-size:12px}.avatar{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#f0d9c9;border:1px solid var(--line);font-weight:800}.chat{height:min(65vh,620px);display:flex;flex-direction:column}.messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:9px}.msg{max-width:82%;padding:10px 12px;border-radius:16px;background:var(--surface3)}.msg.mine{align-self:flex-end;background:linear-gradient(135deg,var(--purple),var(--magenta));color:#fff}.composer{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.composer input{flex:1;min-width:0;border:1px solid var(--line);background:#5b2e3708;color:var(--text);border-radius:13px;padding:12px}.safe-card{background:linear-gradient(135deg,rgba(199,47,103,.08),rgba(216,156,37,.08))}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.choice{border:1px solid var(--line);background:#fff;color:var(--text);padding:11px;border-radius:13px;text-align:left}.choice.active{border-color:#c72f6766;background:#c72f6712}@media(max-width:800px){.g3{grid-template-columns:1fr 1fr}.filter{grid-template-columns:1fr 1fr}}@media(max-width:600px){.g2,.g3{grid-template-columns:1fr}.filter{grid-template-columns:1fr 1fr}.hero{padding:26px 20px}h1{font-size:42px}.choice-grid{grid-template-columns:1fr}}

body:before {
  content:""; position:fixed; inset:0; pointer-events:none; z-index:-1; opacity:.32;
  background-image:
    radial-gradient(circle at 15px 15px, rgba(105,38,83,.055) 1px, transparent 1.5px),
    radial-gradient(circle at 45px 35px, rgba(213,154,34,.06) 1px, transparent 1.5px);
  background-size:60px 60px;
}
.hero {
  background:
    radial-gradient(circle at 88% 20%, rgba(213,154,34,.18), transparent 14rem),
    radial-gradient(circle at 8% 85%, rgba(197,44,101,.13), transparent 17rem),
    linear-gradient(135deg, #fff0e2 0%, #fff9f1 52%, #ffe9d2 100%);
  box-shadow:0 24px 65px rgba(111,57,46,.13), inset 0 1px 0 rgba(255,255,255,.8);
}
.card {
  box-shadow:0 13px 34px rgba(111,57,46,.09), inset 0 1px 0 rgba(255,255,255,.75);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.card:hover { transform:translateY(-2px); box-shadow:0 17px 42px rgba(111,57,46,.12), inset 0 1px 0 rgba(255,255,255,.8); }
.logo { background:linear-gradient(145deg,var(--magenta),var(--purple)); box-shadow:0 11px 30px rgba(197,44,101,.26); }
.pill.premium { box-shadow:0 5px 14px rgba(213,154,34,.20); }
.btn.primary { box-shadow:0 12px 26px rgba(197,44,101,.18); }
.btn.gold { box-shadow:0 12px 24px rgba(213,154,34,.20); }
.bottom-nav { box-shadow:0 18px 50px rgba(111,57,46,.16); }
.section-head h2 { color:#4a2030; }

.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--surface);color:var(--text);padding:9px 12px;border-radius:999px;cursor:pointer}.chip.selected{background:var(--plum);color:white;border-color:var(--plum)}

/* v1.2.1 polished profile + connection UI */
.profile-hero{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,#fffdf9 0%,#fff1e2 55%,#fbe2cf 100%);box-shadow:0 22px 60px rgba(111,57,46,.12);padding:0 22px 18px}
.profile-cover{height:82px;margin:0 -22px;background:radial-gradient(circle at 85% 10%,rgba(216,156,37,.32),transparent 12rem),linear-gradient(120deg,#6c2a5b,#c72f67 58%,#e8752f)}
.profile-main{display:flex;align-items:flex-end;gap:15px;position:relative;margin-top:-27px}
.profile-avatar{width:74px;height:74px;border-radius:24px;border:4px solid #fff8ef;background:linear-gradient(145deg,#f5d9c6,#efb7a0);font-size:22px;box-shadow:0 10px 25px rgba(84,42,47,.16)}
.profile-copy{padding-bottom:2px;min-width:0}.profile-copy h1{font-size:30px;margin:3px 0 2px}.profile-actions{margin-left:auto;padding-bottom:3px}.profile-chips{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 0 89px}
.profile-stat{display:flex;align-items:center;gap:12px;padding:15px 16px}.profile-stat strong{display:block;font:800 25px Outfit}.profile-stat>div span{display:block;color:var(--muted2);font-size:12px}.profile-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#c72f6710}.profile-detail{min-height:112px}.profile-detail h3{margin-top:7px}.account-card{background:linear-gradient(135deg,rgba(199,47,103,.06),rgba(216,156,37,.07))}.verified{background:#2f8d6014;color:#246c4a;border-color:#2f8d6030}.attention{background:#d89c2515;color:#8a5b10;border-color:#d89c2530}
@media(max-width:600px){.profile-main{align-items:flex-start;flex-wrap:wrap}.profile-avatar{margin-top:0}.profile-copy{padding-top:4px;flex:1}.profile-actions{width:100%;margin-left:0}.profile-actions .btn{width:100%}.profile-chips{margin-left:0}.profile-grid{grid-template-columns:1fr 1fr}.profile-grid .profile-stat:last-child{grid-column:1/-1}}


/* v1.3 Notifications */
.bell{position:relative}.badge{position:absolute;top:-3px;right:-3px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#d51f68;color:#fff;font:700 10px/17px DM Sans;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.notifications-list{display:grid;gap:10px;max-height:70vh;overflow:auto}.notification{display:flex;gap:12px;padding:14px;border:1px solid rgba(70,32,56,.10);border-radius:16px;background:#fff8f2}.notification.unread{background:#fff0f7;border-color:rgba(213,31,104,.20)}.notification.read{opacity:.78}.notification-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:#f7dfb5;font-size:19px}.notification-body{min-width:0;flex:1}.notification-top{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}.notification-top .meta{white-space:nowrap;font-size:11px}.notification-body p{margin:5px 0 9px;color:#594b57;font-size:13px;line-height:1.45}.notification-body .btn{padding:7px 10px;font-size:12px}


/* v1.5 Admin moderation */
.admin-summary{margin:14px 0 18px}
.admin-stat{padding:16px}
.admin-stat strong{display:block;font:800 28px Outfit;color:var(--purple)}
.admin-stat span{display:block;margin-top:3px;color:var(--muted);font-size:13px}
.admin-tabs{margin-bottom:14px;overflow:auto;padding-bottom:2px}
.admin-tabs .tab{display:inline-flex;align-items:center;gap:6px}
.admin-count{font-size:10px;font-weight:800;opacity:.7}
.admin-report{border-left:4px solid rgba(199,47,103,.22)}
.admin-report h3{text-transform:capitalize}
.admin-status-open{background:#c72f6714;color:#8e284d;border-color:#c72f6730}
.admin-status-reviewing{background:#d89c2518;color:#8b6110;border-color:#d89c2540}
.admin-status-resolved{background:#2f8d6014;color:#26724e;border-color:#2f8d6030}
.admin-status-dismissed{background:#5b2e3708;color:var(--muted);border-color:var(--line)}
.admin-people{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.admin-people>div,.admin-detail{padding:12px;border-radius:14px;background:rgba(91,46,55,.045);border:1px solid var(--line)}
.admin-people strong{display:block;margin-top:4px}
.admin-detail{margin-top:10px}
.admin-detail p{margin:5px 0 0;color:var(--muted);line-height:1.55}
.admin-context{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.admin-actions{margin-top:14px}
@media(max-width:600px){.admin-people{grid-template-columns:1fr}.admin-actions .btn{flex:1;min-width:110px}}
