/* ─────────────────────────────────────────────────────────────
   AWESOME Crystal Theme · 2026 rebrand
   기존 기능 CSS 위에 얹는 독립 테마 레이어. 이 파일 링크만 제거하면 원래 디자인으로 복귀한다.
   ───────────────────────────────────────────────────────────── */

:root{
  --bg:#f5f3ff;--bg2:#ece9fb;--panel:#fdfcff;--panel2:#f1edff;
  --line:rgba(104,82,171,.18);--txt:#29223f;--muted:#786e92;--soft:#625978;
  --accent:#7650db;--accent2:#526bdc;--pink:#bd3eaa;--mint:#16818b;
  --gold:#c69a60;--toon:#ef83b7;--star:#61bce8;--bank:#846cf2;
  --rank1:#d4a44e;--rank2:#9ca8c1;--rank3:#bf7958;--warn:#c77a43;
  --radius:24px;--shadow:0 18px 48px rgba(78,57,132,.13);
  --nav-bg:rgba(248,247,255,.79);--nav-shadow:0 10px 32px rgba(62,43,112,.10);
  --glass:rgba(255,255,255,.68);--glass-strong:rgba(255,255,255,.88);
  --glass-edge:rgba(255,255,255,.82);--crystal-line:rgba(130,103,221,.24);
  --crystal-glow:0 0 28px rgba(151,105,255,.20);
  --hero-edge:rgba(255,255,255,.78);--hero-shadow:0 28px 80px rgba(65,39,117,.28);
  --float-bg:rgba(255,255,255,.92);--flash-bg:rgba(248,240,255,.92);--flash-tx:#6d3ab4;
  --chip-bg:#f5e9fb;--chip-tx:#9f4099;--ok-bg:#e5f7f6;--ok-tx:#157983;
  --warn-bg:#fff1e8;--warn-tx:#a45e2e;--info-bg:#ecefff;--info-tx:#4c62c7;
  --body-bg:
    radial-gradient(900px 560px at 8% -8%,rgba(171,132,255,.28),transparent 64%),
    radial-gradient(820px 520px at 96% 10%,rgba(103,145,255,.20),transparent 62%),
    radial-gradient(700px 540px at 54% 100%,rgba(225,137,231,.18),transparent 66%),
    linear-gradient(145deg,#f9f8ff 0%,#f1effc 46%,#eceafa 100%);
}

:root[data-theme="dark"]{
  --bg:#0d0b19;--bg2:#151126;--panel:#1b162d;--panel2:#241c3b;
  --line:rgba(196,177,255,.18);--txt:#f5f2ff;--muted:#9d94b6;--soft:#c9c1dc;
  --accent:#ad7cff;--accent2:#7f9cff;--pink:#ef73d5;--mint:#66d5e3;
  --gold:#e2bb7d;--toon:#f396c2;--star:#7bd4ff;--bank:#a18cff;--warn:#e39a65;
  --shadow:0 20px 55px rgba(0,0,0,.42);--nav-bg:rgba(13,10,27,.78);
  --nav-shadow:0 10px 38px rgba(0,0,0,.36);--glass:rgba(27,21,48,.70);
  --glass-strong:rgba(29,23,49,.90);--glass-edge:rgba(220,209,255,.13);
  --crystal-line:rgba(176,144,255,.26);--crystal-glow:0 0 34px rgba(156,102,255,.27);
  --hero-edge:rgba(203,184,255,.19);--hero-shadow:0 30px 86px rgba(0,0,0,.58);
  --float-bg:rgba(29,23,49,.94);--flash-bg:rgba(70,39,91,.72);--flash-tx:#efc9ff;
  --chip-bg:#3a2445;--chip-tx:#f49cdf;--ok-bg:#17383d;--ok-tx:#72dce3;
  --warn-bg:#3f2b24;--warn-tx:#f0b27c;--info-bg:#252d50;--info-tx:#9eb1ff;
  --body-bg:
    radial-gradient(900px 560px at 6% -8%,rgba(118,69,208,.25),transparent 64%),
    radial-gradient(820px 520px at 98% 8%,rgba(61,87,185,.21),transparent 62%),
    radial-gradient(760px 560px at 54% 108%,rgba(147,58,159,.16),transparent 65%),
    linear-gradient(145deg,#0b0915 0%,#110d20 48%,#0d0a18 100%);
}

html{background:var(--bg);scroll-behavior:smooth}
body.awesome-site{position:relative;overflow-x:hidden;background:var(--body-bg);background-attachment:fixed;color:var(--txt)}
body.awesome-site ::selection{background:rgba(142,91,246,.28);color:var(--txt)}
.site-main{position:relative;z-index:1;min-height:calc(100vh - 190px);padding-top:2px}
.site-ambient{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.site-ambient::before{content:"";position:absolute;inset:0;opacity:.32;background-image:
  linear-gradient(115deg,transparent 0 48.8%,rgba(255,255,255,.20) 49.4%,transparent 50%),
  linear-gradient(25deg,transparent 0 49%,rgba(132,104,224,.09) 49.5%,transparent 50.2%);
  background-size:210px 210px,260px 260px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 78%);mask-image:linear-gradient(to bottom,black,transparent 78%)}
.site-ambient i{position:absolute;width:220px;aspect-ratio:1;clip-path:polygon(50% 0,66% 34%,100% 50%,66% 66%,50% 100%,34% 66%,0 50%,34% 34%);
  background:linear-gradient(145deg,rgba(255,255,255,.58),rgba(150,112,246,.10) 46%,rgba(100,156,255,.22));filter:blur(.3px);opacity:.18;animation:crystalFloat 12s ease-in-out infinite}
.site-ambient i:nth-child(1){left:-90px;top:18%;transform:rotate(18deg)}
.site-ambient i:nth-child(2){right:-120px;top:52%;width:300px;animation-delay:-5s;transform:rotate(-14deg)}
.site-ambient i:nth-child(3){left:42%;bottom:-150px;width:260px;animation-delay:-8s}
@keyframes crystalFloat{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -22px;rotate:4deg}}

.wrap{max-width:1240px;padding-left:24px;padding-right:24px}
h1,h2,h3{letter-spacing:-.035em;text-wrap:balance}
a,button,input,textarea,select{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(139,92,246,.28);outline-offset:3px}

/* navigation */
.nav{z-index:50;background:var(--nav-bg);border-bottom:1px solid var(--glass-edge);box-shadow:var(--nav-shadow);backdrop-filter:blur(24px) saturate(1.35)}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(151,108,255,.55),rgba(110,157,255,.45),transparent);opacity:.72}
.nav .wrap{height:74px;gap:10px}
.logo{gap:11px;margin-right:22px;letter-spacing:0}
.logo-mark{position:relative;display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.72),rgba(156,114,245,.08) 62%,transparent 70%)}
.logo-mark::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:1px solid rgba(170,137,249,.32);box-shadow:0 0 18px rgba(151,103,255,.22);pointer-events:none}
.logo img{width:44px;height:44px;border-radius:50%;box-shadow:none;object-fit:contain}
.logo b{display:flex;flex-direction:column;gap:0;background:none;color:var(--txt);line-height:1.05;white-space:nowrap}
.logo b>span{font-size:19px;font-weight:900;letter-spacing:-.04em}
.logo b small{font-size:8.5px;font-weight:800;letter-spacing:.24em;color:var(--accent);margin-top:4px}
.menu{gap:3px;flex-shrink:0}
.menu>a,.menu>.dropdown{flex:none}
.menu a,.dropdown-trigger{position:relative;padding:9px 12px;border:0;border-radius:12px;background:transparent;color:var(--soft);font-size:14px;font-weight:720;white-space:nowrap}
.dropdown-trigger{display:inline-flex;align-items:center;gap:4px;word-break:keep-all}
.menu a:hover,.dropdown:hover>.dropdown-trigger,.dropdown.open>.dropdown-trigger{color:var(--accent);background:rgba(139,92,246,.08)}
.menu a.on,.dropdown-trigger.on{color:#fff;background:linear-gradient(135deg,#7351d7,#8d64f4 50%,#667ff1);box-shadow:0 8px 22px rgba(103,73,190,.24)}
.navactions{gap:7px}
.navbtn,.qbtn,.navtoggle{background:var(--glass);border-color:var(--crystal-line);box-shadow:inset 0 1px rgba(255,255,255,.48)}
.navbtn{border-radius:12px;padding:8px 13px;color:var(--soft)}
.navbtn:hover,.qbtn:hover,.navtoggle:hover{color:var(--accent);border-color:rgba(139,92,246,.54);box-shadow:var(--crystal-glow)}
.navbtn.primary{background:linear-gradient(135deg,#7b55df,#9b68f5 52%,#6686f4);box-shadow:0 8px 22px rgba(103,73,190,.28)}
.qbtn{border-radius:13px;width:38px;height:38px}
.qdot{background:linear-gradient(135deg,var(--pink),#9a5ef2);border-color:var(--glass-strong)}
.navpanel,.dropdown-menu{background:var(--glass-strong);border-color:var(--glass-edge);box-shadow:0 22px 60px rgba(33,20,69,.24);backdrop-filter:blur(26px) saturate(1.25)}
.navpanel{border-radius:18px;padding:10px}
.dropdown-menu{border-radius:16px;padding:8px;min-width:214px}
.navpanel a,.navpanel-action,.dropdown-menu a{border-radius:10px}
.navpanel-action{display:block;width:100%;padding:10px 12px;border:0;background:transparent;color:var(--soft);font:inherit;text-align:left}
.navpanel-action:hover{background:var(--panel2);color:var(--accent)}

/* shared crystal surfaces */
.section{margin:38px 0}
.sec-head{gap:11px;margin-bottom:15px}
.sec-head::before{content:"";width:9px;height:9px;flex:none;transform:rotate(45deg);border:1px solid rgba(139,92,246,.68);background:linear-gradient(135deg,#fff,#9d78f5 48%,#6689f6);box-shadow:0 0 12px rgba(139,92,246,.44)}
.sec-head h2{font-size:20px;font-weight:850;color:var(--txt)}
.sec-head .tag{padding:4px 10px;color:var(--accent);background:rgba(139,92,246,.08);border-color:rgba(139,92,246,.22);font-size:10px;letter-spacing:.16em}
.sec-head .more{color:var(--muted)}
.sec-head .more:hover{color:var(--accent);transform:translateX(2px)}
.panel,.acard{background:linear-gradient(145deg,var(--glass-strong),var(--glass));border:1px solid var(--glass-edge);box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.50)}
.panel{border-radius:var(--radius)}
.acard{border-radius:20px}
.pill{border-color:var(--crystal-line);background:rgba(139,92,246,.07);color:var(--soft)}
.flash{background:var(--flash-bg);border-color:rgba(147,92,246,.40);box-shadow:0 12px 34px rgba(91,57,152,.13);backdrop-filter:blur(16px)}
.btn{border-radius:14px;border-color:var(--crystal-line);background:linear-gradient(145deg,var(--glass-strong),var(--glass));box-shadow:inset 0 1px rgba(255,255,255,.62);color:var(--txt)}
.btn:hover{border-color:rgba(139,92,246,.58);color:var(--accent);transform:translateY(-2px);box-shadow:0 10px 25px rgba(91,61,151,.16)}
.btn.primary{background:linear-gradient(135deg,#7450d5,#9a63f0 48%,#5f82ed);box-shadow:0 12px 30px rgba(101,66,181,.30);color:#fff}
.btn.primary:hover{color:#fff;filter:saturate(1.08) brightness(1.04);box-shadow:0 16px 34px rgba(101,66,181,.39)}
.empty{color:var(--muted)}

/* brand hero */
.hero{isolation:isolate;min-height:clamp(390px,39vw,490px);margin-top:28px;padding:34px 38px;border-radius:32px;border:1px solid var(--hero-edge);background-image:
  linear-gradient(90deg,rgba(18,10,45,.76) 0%,rgba(31,17,62,.50) 27%,rgba(34,22,68,.08) 58%,rgba(20,12,46,.12) 100%),
  linear-gradient(0deg,rgba(20,10,44,.42),transparent 48%),var(--banner,url('banner.jpg'));
  background-size:100% 100%,100% 100%,cover;background-position:center,center,center;box-shadow:var(--hero-shadow);overflow:hidden}
.hero::before{content:"";position:absolute;z-index:1;inset:10px;border:1px solid rgba(255,255,255,.24);border-radius:24px;pointer-events:none;box-shadow:inset 0 0 28px rgba(255,255,255,.05)}
.hero::after{content:"";position:absolute;z-index:1;inset:-35% -10%;pointer-events:none;background:linear-gradient(112deg,transparent 35%,rgba(255,255,255,.15) 49%,transparent 58%);transform:translateX(-72%);animation:heroPrism 8s ease-in-out infinite}
@keyframes heroPrism{0%,62%{transform:translateX(-72%)}88%,100%{transform:translateX(72%)}}
.hero>*{position:relative;z-index:2}
.hero-copy{max-width:460px}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(22,12,50,.28);backdrop-filter:blur(12px);color:#eee8ff;font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;box-shadow:inset 0 1px rgba(255,255,255,.18)}
.hero-kicker i{width:6px;height:6px;transform:rotate(45deg);background:#e8dbff;box-shadow:0 0 10px #c8a8ff}
.hero h1{margin:18px 0 10px;max-width:430px;font-size:clamp(29px,3.1vw,42px);line-height:1.12;letter-spacing:-.055em;text-shadow:0 5px 24px rgba(12,5,31,.72)}
.hero h1 .g{background:linear-gradient(118deg,#fff 0%,#eadcff 42%,#c6d5ff 76%,#f0c9ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:440px;color:#ece5ff;font-size:14.5px;line-height:1.65;text-shadow:0 2px 12px rgba(11,5,29,.78)}
.hero .cta{gap:9px;margin-top:auto}
.hero .cta .btn{padding:11px 17px;border-color:rgba(255,255,255,.24);background:rgba(20,12,48,.38);color:#f8f4ff;backdrop-filter:blur(14px);box-shadow:inset 0 1px rgba(255,255,255,.17),0 8px 22px rgba(8,3,24,.22)}
.hero .cta .btn:hover{background:rgba(83,52,153,.54);border-color:rgba(255,255,255,.52);color:#fff}
.hero .cta .btn.primary{background:linear-gradient(135deg,rgba(128,82,226,.95),rgba(101,126,239,.94));border-color:transparent}
.hero .cta .btn span{margin-left:4px}
.live-dot{background:#ec70d2;box-shadow:0 0 12px rgba(238,112,210,.82)}

/* home cards */
.home-dashboard{gap:30px}
.boardcols{gap:16px}
.boardcols>.panel,.donor-panel,.mini-cal{box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.48)}
.boardlabel{border-color:var(--line);letter-spacing:-.01em}
.boardlabel.pop{color:var(--pink)}.boardlabel.new{color:var(--accent2)}
.list .row{border-color:var(--line);border-radius:10px;padding-left:8px;padding-right:8px}
.list .row:hover{background:rgba(139,92,246,.055)}
.mncard{background:linear-gradient(145deg,var(--glass-strong),var(--glass));border-color:var(--glass-edge);box-shadow:0 10px 28px rgba(72,49,121,.09)}
.mncard:hover{box-shadow:0 15px 34px rgba(72,49,121,.16)}
.carbtn{background:var(--glass-strong);border:1px solid var(--glass-edge);box-shadow:0 10px 25px rgba(42,26,80,.20);backdrop-filter:blur(12px)}
.carbtn:hover{background:linear-gradient(135deg,var(--accent),var(--accent2))}
.donor-panel{background:linear-gradient(145deg,var(--glass-strong),rgba(237,231,255,.74))}
:root[data-theme="dark"] .donor-panel{background:linear-gradient(145deg,var(--glass-strong),rgba(39,30,66,.78))}
.home-sig-grid .sig,.sig{background:linear-gradient(145deg,var(--glass-strong),var(--glass));border-color:var(--glass-edge);box-shadow:0 12px 30px rgba(72,49,121,.10)}
.sig:hover{border-color:rgba(170,126,244,.62);box-shadow:0 18px 36px rgba(108,68,167,.20)}
.sig .cap{color:var(--gold)}
.sthumb{border-color:var(--glass-edge);box-shadow:0 12px 30px rgba(25,15,53,.16)}

/* footer */
footer.foot{position:relative;z-index:1;margin-top:80px;padding:32px 0 44px;border-top:1px solid var(--glass-edge);background:linear-gradient(180deg,transparent,rgba(128,96,203,.055))}
footer.foot::before{content:"";position:absolute;left:50%;top:-1px;width:min(520px,70vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);opacity:.55}
footer.foot .wrap{gap:18px}
.footer-brand{margin-right:0}
.footer-brand .logo-mark{width:42px;height:42px}.footer-brand .logo-mark img{width:38px;height:38px}
.footer-copy{font-size:12.5px;line-height:1.6}

@media(max-width:900px){
  .hero{min-height:390px;background-position:center,center,center}
  .home-dashboard{gap:8px}
}

@media(max-width:640px){
  .wrap{padding-left:15px;padding-right:15px}
  .nav .wrap{height:64px;gap:6px}
  .logo{margin-right:6px;gap:8px}.logo-mark{width:40px;height:40px}.logo img{width:37px;height:37px}
  .logo b>span{font-size:16px}.logo b small{font-size:7px;letter-spacing:.18em;margin-top:3px}
  .qbtn{width:35px;height:35px}.navtoggle{width:39px;height:37px}
  .site-main{padding-top:0}
  .section{margin:28px 0}.sec-head h2{font-size:18px}.sec-head::before{width:8px;height:8px}
  .hero{min-height:330px;aspect-ratio:auto;margin-top:16px;padding:22px 20px;border-radius:24px;background-image:
    linear-gradient(90deg,rgba(17,8,41,.69),rgba(28,16,59,.28) 60%,rgba(18,10,42,.18)),
    linear-gradient(0deg,rgba(16,8,38,.54),transparent 55%),var(--banner,url('banner.jpg'));background-size:100% 100%,100% 100%,cover;background-position:center,center,center}
  .hero::before{inset:7px;border-radius:18px}
  .hero-kicker{padding:5px 9px;font-size:8.5px}.hero h1{font-size:26px;max-width:290px;margin-top:13px}.hero p{max-width:300px;font-size:12px;line-height:1.55}
  .hero .cta{display:grid;grid-template-columns:1.25fr 1fr 1fr;width:100%;gap:6px}
  .hero .cta .btn{padding:9px 5px;font-size:11.5px;white-space:nowrap}
  .panel{border-radius:20px}.boardcols{gap:12px}
  footer.foot{margin-top:52px;padding-top:26px}.footer-copy{width:100%;padding-left:0}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.site-ambient i,.hero::after{animation:none}
  a,button,input,textarea,select{transition:none}
}

/* ── full-site component pass ─────────────────────────────── */

/* headings, links and numeric data */
.site-main>h1,.site-main>.section>.sec-head h2,.form h1{font-weight:880}
.site-main p{line-height:1.65}
.site-main p a:not(.btn),.notice-item .body a,.postbody a{color:#6546bc;text-decoration:underline;text-decoration-color:rgba(101,70,188,.30);text-underline-offset:3px}
:root[data-theme="dark"] .site-main p a:not(.btn),:root[data-theme="dark"] .notice-item .body a,:root[data-theme="dark"] .postbody a{color:#c6acff}
.amt,.num,.pct,.rankno,.rk .v,.lvbar-cap{font-variant-numeric:tabular-nums}
code{padding:2px 6px;border:1px solid var(--line);border-radius:7px;background:var(--panel2);color:var(--accent);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}

/* data cards, tables and tabs */
.rankcards{gap:16px}
.rk{padding:19px 20px;border-radius:18px;background:linear-gradient(145deg,var(--glass-strong),var(--glass));border-color:var(--glass-edge);box-shadow:0 12px 32px rgba(68,45,118,.09),inset 0 1px rgba(255,255,255,.5)}
.rk::before{content:"";display:block;width:24px;height:2px;margin-bottom:10px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));opacity:.72}
.rk .n{color:var(--muted);font-weight:700}.rk .v{font-size:23px;letter-spacing:-.035em}
table.board{border-collapse:separate;border-spacing:0}
table.board th,table.board td{border-color:var(--line)}
table.board th{background:rgba(122,91,198,.055);color:var(--muted);font-weight:780;letter-spacing:.02em}
table.board thead th:first-child{border-top-left-radius:12px}table.board thead th:last-child{border-top-right-radius:12px}
table.board tbody tr:last-child td{border-bottom:0}
table.board tr:hover td{background:rgba(120,84,209,.055)}
.rankno{border-radius:9px;background:rgba(132,96,220,.08);border-color:var(--crystal-line)}
.rankno.r1,.rankno.r2,.rankno.r3{box-shadow:inset 0 1px rgba(255,255,255,.58),0 5px 12px rgba(54,38,86,.13)}
.bar{height:9px;background:rgba(112,88,168,.10);box-shadow:inset 0 1px 3px rgba(40,25,70,.08)}
.bar i{background:linear-gradient(90deg,var(--accent),var(--accent2),var(--pink))!important;border-radius:999px}
.pct{color:var(--accent)}
.tabs{gap:8px}
.tabs a{padding:9px 15px;border-color:var(--crystal-line);background:var(--glass);box-shadow:inset 0 1px rgba(255,255,255,.45)}
.tabs a:hover{border-color:rgba(139,92,246,.48);color:var(--accent)}
.tabs a.on,.tabs a.ta.on,.tabs a.tb.on,.pager a.on{background:linear-gradient(135deg,#704bd0,#925ce8 48%,#5d7ce2);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(95,62,169,.24)}
.pager a{border-color:var(--crystal-line);background:var(--glass)}

/* forms and controls */
.form{max-width:460px;margin:58px auto}.form.wide{max-width:820px}
.form .panel{padding:32px}.form h1{font-size:27px;margin-bottom:22px}
.field{margin-bottom:16px}.field label{color:var(--soft);font-weight:740;margin-bottom:7px}
.field input,.field textarea,.field select,.toolbar input,.toolbar select,
.compose select,.compose textarea,.replybox textarea,.vform select,.vform input,
.acard input[type=text],.acard input:not([type]),.acard input[name],.acard select,.acard input[type=number],.acard textarea{
  border:1px solid var(--crystal-line);background:rgba(125,95,190,.055);color:var(--txt);border-radius:13px;box-shadow:inset 0 1px 2px rgba(45,28,84,.04);font-family:inherit}
:root[data-theme="dark"] .field input,:root[data-theme="dark"] .field textarea,:root[data-theme="dark"] .field select,
:root[data-theme="dark"] .toolbar input,:root[data-theme="dark"] .toolbar select,:root[data-theme="dark"] .compose select,
:root[data-theme="dark"] .compose textarea,:root[data-theme="dark"] .replybox textarea,:root[data-theme="dark"] .vform select,
:root[data-theme="dark"] .vform input,:root[data-theme="dark"] .acard input[name],:root[data-theme="dark"] .acard select,
:root[data-theme="dark"] .acard textarea{background:rgba(255,255,255,.045)}
.field input:focus,.field textarea:focus,.field select:focus,.toolbar input:focus,.toolbar select:focus,
.compose select:focus,.compose textarea:focus,.replybox textarea:focus,.vform select:focus,.vform input:focus,
.acard input:focus,.acard select:focus,.acard textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(139,92,246,.12);outline:0}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}
button,.btn,.navbtn,.qbtn,.cvbtn,.votebtn,.hbtn,.ubtn,.xbtn,.sigsort{font-family:inherit;cursor:pointer}
button:disabled,.btn[disabled]{cursor:not-allowed;opacity:.52;transform:none}
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.toolbar input{min-width:220px;padding:11px 14px}
.sigsort{border-color:var(--crystal-line);background:var(--glass);color:var(--soft);box-shadow:inset 0 1px rgba(255,255,255,.46)}

/* member and profile surfaces */
.member-section{margin-top:36px}.member-section-head{margin-bottom:22px}
.member-section-head::before,.member-section-head::after{background:linear-gradient(90deg,transparent,var(--crystal-line),transparent)}
.member-section-head h3{font-size:19px}.member-section-head>span:last-child{color:var(--accent)}
.member-grid,.members-grid{gap:16px}
.mcard{padding:20px 16px;border-radius:21px;background:linear-gradient(150deg,var(--glass-strong),var(--glass));border-color:var(--glass-edge);box-shadow:0 14px 34px rgba(64,41,111,.10),inset 0 1px rgba(255,255,255,.54)}
.mcard:hover{transform:none;border-color:rgba(139,92,246,.45);box-shadow:0 18px 40px rgba(75,47,131,.16)}
.avatar{border:2px solid rgba(255,255,255,.72);background:linear-gradient(135deg,#7d5bd8,#786fe7 48%,#d56ac5);box-shadow:0 0 0 3px rgba(137,94,223,.15),0 9px 24px rgba(82,54,145,.24)}
.mcard .mn{font-weight:850}.mcard .mr{color:var(--accent);font-weight:760}
.mphrase{color:var(--soft)}
.mprofile-btn{background:rgba(139,92,246,.065);border-color:var(--crystal-line);color:var(--accent)}
.mprofile-btn:hover{background:linear-gradient(135deg,#704bd0,#925ce8,#5d7ce2);box-shadow:0 8px 18px rgba(97,62,169,.23)}
.leave-section{border:1px solid var(--crystal-line);background:linear-gradient(145deg,rgba(122,99,193,.08),var(--glass));box-shadow:inset 0 1px rgba(255,255,255,.52),0 18px 46px rgba(65,43,112,.08)}
.leave-section .member-section-head::before,.leave-section .member-section-head::after{background:linear-gradient(90deg,transparent,rgba(82,107,220,.38),transparent)}
.leave-section .member-section-tag{border-color:rgba(82,107,220,.28);background:rgba(82,107,220,.08);color:var(--accent2)}
.mcard.on-leave-card{border-color:rgba(82,107,220,.30);background:linear-gradient(150deg,var(--glass-strong),rgba(231,232,255,.62))}
:root[data-theme="dark"] .mcard.on-leave-card{background:linear-gradient(150deg,var(--glass-strong),rgba(34,40,78,.62))}
.leavebadge{background:linear-gradient(135deg,var(--accent2),var(--accent));box-shadow:0 6px 16px rgba(70,75,180,.24)}
.profile-card{padding:28px;background:linear-gradient(145deg,var(--glass-strong),var(--glass))}
.profile-name{font-size:29px}.profile-facts{gap:10px}.profile-fact{background:rgba(139,92,246,.055);border:1px solid var(--line);border-radius:12px}
.teambox{border-color:var(--crystal-line);background:linear-gradient(150deg,var(--glass-strong),var(--glass));box-shadow:var(--shadow)}
.tcname,.teamcount{background:var(--glass-strong)}
.mcard.exec::after{animation-duration:12s;opacity:.55}

/* galleries, media and live */
.sig{border-radius:18px}.sig .img{background:linear-gradient(145deg,rgba(147,115,218,.07),rgba(93,129,219,.05))}
.sig .vidbadge,.livetag,.livebadge,.badge{background:linear-gradient(135deg,#d950b3,#8b55df);box-shadow:0 6px 16px rgba(181,66,159,.25)}
.sigvchip,.sigvfs,.sigvexpand{border-radius:12px!important}
body.awesome-site .sigvchip{background:var(--glass);border-color:var(--crystal-line)}
body.awesome-site .sigvchip.on{border-color:var(--accent);background:rgba(139,92,246,.10);color:var(--accent)}
body.awesome-site .sigvexpand{background:linear-gradient(135deg,#704bd0,#925ce8,#5d7ce2)}
body.awesome-site .sigvfs{border-color:var(--accent);color:var(--accent);background:var(--glass)}
.livecard,.livemain{border-color:rgba(222,79,180,.62);box-shadow:0 12px 34px rgba(195,67,163,.14)}
.livecard{border-radius:19px;background:linear-gradient(145deg,var(--glass-strong),var(--glass))}
.livemain{border-radius:22px}.livemain .playbtn{background:linear-gradient(135deg,#e84c9f,#8155df);box-shadow:0 10px 28px rgba(46,18,74,.42)}
.shortcard:hover .sthumb{border-color:rgba(139,92,246,.62)}
.splay{background:rgba(26,12,54,.66);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px)}
.carrow{scroll-snap-type:x proximity}.carrow>*{scroll-snap-align:start}

/* lists, board, notifications and chat */
.notice-item,.cmt,.notif,.sch-row{border-color:var(--line)}
.notice-item:hover,.notif:hover{background:rgba(139,92,246,.045)}
.notif{padding:15px 10px;border-radius:13px}.notif.new{background:rgba(139,92,246,.075)}
.postbody{line-height:1.82}.postimgs img,.imgslide,.ytembed iframe{border-radius:16px}
.votebtn,.cvbtn{background:rgba(139,92,246,.055);border-color:var(--crystal-line);border-radius:11px}
.cvbtn.voted,.votebtn.voted{background:rgba(67,191,207,.11);border-color:var(--mint);color:#177f8d}
:root[data-theme="dark"] .cvbtn.voted,:root[data-theme="dark"] .votebtn.voted{color:var(--mint)}
.pinned td{background:rgba(139,92,246,.065)}
.thitem,.compose,.replybox,.vform,.vrow{background:linear-gradient(145deg,var(--glass-strong),var(--glass))!important;border:1px solid var(--glass-edge);box-shadow:0 12px 30px rgba(58,36,102,.09)}
.thitem{border-radius:18px!important}.thitem:hover{box-shadow:0 17px 38px rgba(70,43,123,.16)!important}
.compose,.replybox,.vform{border-radius:20px!important}
.thdel,.msgdel{min-width:40px;min-height:40px}
.chat{scrollbar-color:rgba(139,92,246,.28) transparent}
.bub{border:1px solid var(--glass-edge);box-shadow:0 7px 18px rgba(38,22,75,.09)}
body.awesome-site .row.mine .bub,body.awesome-site .row.m .bub{background:linear-gradient(135deg,#6948c4,#8461dd 52%,#5975d7);color:#fff;border-color:transparent}
body.awesome-site .row.theirs .bub,body.awesome-site .row.f .bub{background:var(--glass-strong);color:var(--txt)}
.hbtn{min-height:38px;border:1px solid transparent}.hbtn.del{border-color:var(--line)}
.blocknote{border:1px solid rgba(216,93,199,.22)}

/* calendar */
.cal-panel,.mini-cal{background:linear-gradient(145deg,var(--glass-strong),var(--glass))}
.cal-title b,.mc-title{background:linear-gradient(110deg,var(--accent),var(--accent2),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}
.cal-nav{border-color:var(--crystal-line);background:var(--glass);box-shadow:inset 0 1px rgba(255,255,255,.45)}
.cal-nav:hover{box-shadow:0 8px 20px rgba(92,59,159,.18)}
.cal-cell{border-color:var(--line);background:var(--glass);border-radius:16px}.cal-cell.other{background:rgba(128,97,185,.04)}
.cal-cell.today{border-color:var(--accent);box-shadow:0 0 0 3px rgba(139,92,246,.12),0 8px 20px rgba(92,59,159,.12)}
.cal-cell.today .cal-day,.mc-cell.today{background:linear-gradient(135deg,#704bd0,#925ce8,#5d7ce2)}
.cal-ev,.mc-label,.mc-ev-row{border-color:var(--line);background:rgba(139,92,246,.065)}
.mc-cell.has{background:rgba(139,92,246,.09);box-shadow:inset 0 0 0 1.5px rgba(139,92,246,.28)}
.mc-cell.has .mc-day{color:var(--accent)}

/* modal and overlays */
.modal,.lightbox{background:rgba(7,4,18,.76);backdrop-filter:blur(12px)}
.modal .box{border-radius:24px;background:var(--glass-strong);border-color:var(--glass-edge);box-shadow:0 28px 90px rgba(0,0,0,.40);backdrop-filter:blur(24px) saturate(1.2)}
.modal .close{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--glass);color:var(--soft)}

/* administrator workspace */
.adminnav{gap:9px;margin:16px 0 12px}
.adminnav>a,.adminnav summary{border-color:var(--crystal-line);background:var(--glass);border-radius:13px;box-shadow:inset 0 1px rgba(255,255,255,.45)}
.adminnav>a.on,.adminnav summary.on,.adminnav-group[open] summary{background:linear-gradient(135deg,#704bd0,#925ce8 48%,#5d7ce2);box-shadow:0 9px 24px rgba(95,62,169,.25)}
.adminnav-pop{background:var(--glass-strong);border-color:var(--glass-edge);border-radius:18px;box-shadow:0 22px 62px rgba(32,18,68,.28);backdrop-filter:blur(22px)}
.adminnav-pop a.on{box-shadow:inset 3px 0 var(--accent);background:rgba(139,92,246,.08)}
.admin-quick{padding:17px;border-radius:16px;border-color:var(--glass-edge);background:linear-gradient(145deg,var(--glass-strong),var(--glass));box-shadow:0 10px 26px rgba(62,39,106,.08)}
.admin-quick:hover{border-color:rgba(139,92,246,.48);box-shadow:0 15px 34px rgba(70,43,123,.14)}
.member-bulk-savebar{border-color:rgba(139,92,246,.44);background:var(--glass-strong);box-shadow:0 14px 36px rgba(72,44,125,.16);backdrop-filter:blur(18px)}
.member-edit-form.is-dirty{border-color:var(--accent);box-shadow:0 0 0 3px rgba(139,92,246,.12)}
.trash-row,.visibility-toggle,.leave-toggle,.lvptier{background:rgba(139,92,246,.05);border-color:var(--line)}
.admin-member.is-leave-member .acard{border-color:rgba(82,107,220,.48);box-shadow:0 0 0 2px rgba(82,107,220,.08)}
.member-leave-pill{color:var(--accent2);border-color:rgba(82,107,220,.42);background:rgba(82,107,220,.08)}
.member-trash-btn,.xbtn,.ubtn.block{background:var(--chip-bg);color:var(--chip-tx);border:1px solid rgba(216,93,199,.18)}
body.awesome-site .ubtn.reset{background:var(--info-bg);color:var(--info-tx)}
body.awesome-site .ubtn.del{background:#3d1b2e;color:#ffadd7}body.awesome-site .ubtn.del:hover{background:#b83c7c;color:#fff}
body.awesome-site .utable,body.awesome-site .atable,body.awesome-site .rtable{width:100%;border-collapse:separate;border-spacing:0;background:linear-gradient(145deg,var(--glass-strong),var(--glass));border:1px solid var(--glass-edge);border-radius:18px;box-shadow:var(--shadow)}
body.awesome-site .utable th,body.awesome-site .utable td,body.awesome-site .atable th,body.awesome-site .atable td,
body.awesome-site .rtable th,body.awesome-site .rtable td{border-color:var(--line)}
body.awesome-site .utable th,body.awesome-site .atable th,body.awesome-site .rtable th{background:rgba(139,92,246,.065);color:var(--muted)}
.usebar{background:rgba(112,88,168,.10);border-color:var(--line)}.usebar i{background:linear-gradient(90deg,var(--accent),var(--accent2),var(--pink))}
.vrow{border-radius:16px!important}.vtag{background:rgba(139,92,246,.09);color:var(--accent)}

/* auth */
body.awesome-site .logintabs{padding:4px;border:1px solid var(--line);border-radius:15px;background:rgba(139,92,246,.045)}
body.awesome-site .logintabs button{border-radius:11px;background:transparent;color:var(--muted)}
body.awesome-site .logintabs button.on{background:linear-gradient(135deg,#704bd0,#925ce8,#5d7ce2);color:#fff;box-shadow:0 8px 18px rgba(95,62,169,.22)}
body.awesome-site .memcard{border:1px solid var(--glass-edge);background:linear-gradient(145deg,var(--glass-strong),var(--glass));box-shadow:0 8px 20px rgba(62,39,106,.07)}
body.awesome-site .memcard:hover,body.awesome-site .memcard.sel{border-color:var(--accent);background:rgba(139,92,246,.08);box-shadow:0 12px 28px rgba(77,47,136,.14)}
body.awesome-site .memcard .av{background:linear-gradient(135deg,#704bd0,#7c70e6,#d15fc0);box-shadow:0 0 0 3px rgba(139,92,246,.12)}

@media(hover:hover){
  .mcard:hover,.sig:hover,.mncard:hover,.livecard:hover,.shortcard:hover{transform:translateY(-4px)}
  .admin-quick:hover{transform:translateY(-2px)}
}

@media(max-width:760px){
  body.awesome-site .utable,body.awesome-site .atable,body.awesome-site .rtable{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
  .chead{flex-wrap:wrap}.chead h2{flex:1 1 calc(100% - 44px)}.chead form{margin-left:0!important}
  .twrap{height:auto!important;min-height:calc(100dvh - 145px)}.chat{min-height:44vh;max-height:62vh}
  .vrow{align-items:flex-start;flex-wrap:wrap}.vrow img{width:104px;height:59px}.vrow form{margin-left:auto}
}

@media(max-width:640px){
  body.awesome-site{background-attachment:scroll}
  .leave-section{padding:18px 12px}
  .hero{min-height:0;aspect-ratio:auto;padding:0;background:var(--panel);border-radius:24px}
  .hero::before,.hero::after{display:none}
  .hero-mobimg{display:block;order:0;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--glass-edge)}
  .hero-copy{order:1;max-width:none;padding:19px 19px 0}
  .hero-kicker{padding:5px 9px;border-color:var(--crystal-line);background:rgba(139,92,246,.07);color:var(--accent);font-size:8.5px;box-shadow:none}
  .hero-kicker i{background:var(--accent);box-shadow:0 0 9px rgba(139,92,246,.55)}
  .hero h1{max-width:none;margin:12px 0 8px;font-size:26px;text-shadow:none}
  .hero h1 .g{background:linear-gradient(112deg,#4b347e,#8a5cf6 52%,#4d70dc);-webkit-background-clip:text;background-clip:text;color:transparent}
  .hero p{max-width:none;color:var(--soft);font-size:12.5px;text-shadow:none}
  .hero .cta{order:2;display:grid;grid-template-columns:1.25fr 1fr 1fr;width:100%;gap:7px;margin-top:0;padding:15px 19px 19px}
  .hero .cta .btn{padding:10px 5px;border-color:var(--crystal-line);background:var(--glass);color:var(--soft);font-size:11.5px;white-space:nowrap;box-shadow:inset 0 1px rgba(255,255,255,.48);backdrop-filter:none}
  .hero .cta .btn.primary{background:linear-gradient(135deg,#7450d5,#9a63f0 48%,#5f82ed);color:#fff;box-shadow:0 9px 22px rgba(101,66,181,.28)}
  :root[data-theme="dark"] .hero h1 .g{background:linear-gradient(112deg,#f1e7ff,#c5a6ff 52%,#a8bdff);-webkit-background-clip:text;background-clip:text;color:transparent}
  .form{margin:30px auto}.form .panel{padding:24px 20px}.form h1{font-size:24px}
  .toolbar{align-items:stretch}.toolbar input,.toolbar select,.sigsort{width:100%;min-width:0}
  .tabs{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs a{flex:none}
  .rk{padding:16px}.member-grid,.members-grid{gap:11px}.mcard{padding:16px 10px;border-radius:18px}
  .avatar{width:70px;height:70px}.profile-card{padding:20px}.profile-name{font-size:25px}
  .cal-cell{border-radius:11px}
  .replybox{padding:10px!important;align-items:flex-end}.replybox textarea{min-width:0}.replybox .btn{padding:11px 13px}
  .thlink{padding:13px 12px!important}.thdel{padding:0 12px!important}
  .adminnav{margin-top:12px}.admin-quick-grid{gap:8px}.admin-quick{padding:13px}
  .adminlist{gap:13px}.member-bulk-savebar{top:66px}
}

@media(max-width:420px){
  body.awesome-site .memgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero .cta{grid-template-columns:1fr 1fr}.hero .cta .btn:first-child{grid-column:1/-1}
  .footer-brand{width:100%}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
