/* M365Buddy community page and article discussion styling */
:root{
  --m365-navy:#071a3d;
  --m365-blue:#0878ee;
  --m365-text:#263b5c;
  --m365-muted:#617492;
  --m365-line:#d7e1ee;
  --m365-soft:#f5f9ff;
  --m365-shadow:0 8px 28px rgba(20,55,95,.07);
}
*{box-sizing:border-box}
.community-page{
  max-width:1240px;
  margin:28px auto 64px;
  padding:0 24px;
  color:var(--m365-text);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
.m365-header{
  position:sticky;
  top:0;
  z-index:100;
  color:#fff;
  background:linear-gradient(105deg,#07346f,#0873c9);
  box-shadow:0 4px 18px rgba(7,26,61,.12);
}
.m365-header-inner{
  width:100%;
  min-height:68px;
  max-width:1440px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:minmax(290px,1fr) minmax(220px,420px) auto;
  gap:24px;
  align-items:center;
}
.m365-nav{display:flex;align-items:center;gap:5px;min-width:0}
.m365-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 12px;
  border-radius:9px;
  color:#fff!important;
  font-size:13px;
  font-weight:650;
  white-space:nowrap;
  text-decoration:none;
  transition:background .16s ease;
}
.m365-nav a:hover,.m365-nav a[aria-current="page"]{background:rgba(255,255,255,.16)}
.m365-header-search{position:relative;width:100%;min-width:0}
.m365-header-search input{
  width:100%;
  height:39px;
  padding:0 14px 0 40px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:10px;
  outline:none;
  background:rgba(255,255,255,.1);
  color:#fff;
  font:inherit;
  font-size:12px;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.m365-header-search input::placeholder{color:#e3effb}
.m365-header-search input:focus{background:rgba(255,255,255,.16);border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.13)}
.m365-header-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#fff;font-size:19px;line-height:1;pointer-events:none}
.m365-brand{
  justify-self:end;
  color:#fff!important;
  text-decoration:none;
  font-size:23px;
  font-weight:850;
  letter-spacing:-.55px;
  white-space:nowrap;
}
.m365-brand span{color:#a9d8ff}
.community-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);
  gap:clamp(24px,4vw,52px);
  align-items:center;
  overflow:hidden;
  padding:clamp(26px,4.5vw,54px);
  border:1px solid #cfe0f3;
  border-radius:24px;
  background:
    radial-gradient(ellipse at 5% 5%,rgba(115,184,255,.18),transparent 42%),
    linear-gradient(125deg,#f2f8ff 0%,#fff 56%,#eaf4ff 100%);
  box-shadow:var(--m365-shadow);
}
.community-hero:after{
  content:"";
  position:absolute;
  right:-110px;
  bottom:-210px;
  width:410px;
  height:410px;
  border:1px solid rgba(8,120,238,.1);
  border-radius:50%;
  pointer-events:none;
}
.community-hero-copy,.community-hero-aside{position:relative;z-index:1;min-width:0}
.community-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 11px;
  border:1px solid #c9e0fa;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  color:var(--m365-blue);
  font-size:10px;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.community-hero h1{
  max-width:740px;
  margin:17px 0 13px;
  color:var(--m365-navy);
  font-size:clamp(34px,4vw,50px);
  font-weight:820;
  line-height:1.08;
  letter-spacing:-.045em;
}
.community-hero-copy>p{
  max-width:690px;
  margin:0;
  color:#526987;
  font-size:16px;
  line-height:1.75;
}
.community-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:25px}
.community-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:44px;
  padding:0 17px;
  border:1px solid #cbd9e8;
  border-radius:10px;
  background:#fff;
  color:#173961!important;
  font-size:13px;
  font-weight:760;
  text-decoration:none;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}
.community-btn:hover{transform:translateY(-1px);border-color:#a8c9f0;box-shadow:0 6px 18px rgba(15,55,95,.1)}
.community-btn.primary{background:var(--m365-blue);border-color:var(--m365-blue);color:#fff!important;box-shadow:0 7px 16px rgba(8,120,238,.18)}
.community-btn.primary:hover{background:#0668d8}
.community-hero-foot{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:21px;color:#617492;font-size:11px}
.community-hero-foot span{display:inline-flex;align-items:center;gap:7px}
.community-hero-foot span:first-child:before{content:"✓";display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#e0f4ea;color:#17764d;font-weight:900}
.community-hero-aside{
  padding:25px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:18px;
  background:linear-gradient(155deg,#0b3770,#082550);
  color:#fff;
  box-shadow:0 16px 34px rgba(7,26,61,.16);
}
.community-aside-label{color:#9bd1ff;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.community-hero-aside h2{margin:12px 0 17px;color:#fff;font-size:23px;line-height:1.22;letter-spacing:-.025em}
.community-value-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.community-value-list li{display:flex;align-items:flex-start;gap:11px;color:#dbe9fb;font-size:12.5px;line-height:1.55}
.community-value-icon{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border:1px solid rgba(160,207,255,.23);border-radius:9px;background:rgba(255,255,255,.08);color:#b9deff;font-size:14px;font-weight:800}
.community-notice{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:18px 0 26px;
  padding:15px 17px;
  border:1px solid #f2d28b;
  border-radius:12px;
  background:#fffbeb;
  color:#76500c;
}
.community-notice strong{display:block;margin-bottom:3px;color:#624108}
.community-notice p{margin:0;line-height:1.65;font-size:13px}
.community-notice[hidden]{display:none!important}
.community-section{margin-top:48px}
.community-section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:17px}
.community-section-head h2{margin:0;color:var(--m365-navy);font-size:clamp(22px,2.4vw,28px);font-weight:800;letter-spacing:-.035em}
.community-section-head p{margin:5px 0 0;color:var(--m365-muted);font-size:13.5px;line-height:1.65}
.community-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.community-card{
  display:flex;
  gap:15px;
  align-items:flex-start;
  min-height:155px;
  padding:22px;
  border:1px solid #d7e1ee;
  border-radius:15px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 2px 8px rgba(20,55,95,.025);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.community-card:hover{border-color:#9fc6f2;box-shadow:0 9px 25px rgba(20,55,95,.08);transform:translateY(-2px)}
.community-card:focus-visible,.community-btn:focus-visible,.m365-nav a:focus-visible{outline:3px solid #83baff;outline-offset:3px}
.community-card-icon{
  display:grid;
  place-items:center;
  flex:0 0 46px;
  width:46px;
  height:46px;
  border:1px solid #d6e8fb;
  border-radius:13px;
  background:#eef7ff;
  color:var(--m365-blue);
  font-size:20px;
  font-weight:800;
}
.community-card h3{margin:2px 0 7px;color:#102e53;font-size:16px;font-weight:800;letter-spacing:-.015em}
.community-card p{margin:0;color:#617492;font-size:13px;line-height:1.7}
.community-card .community-card-action{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:var(--m365-blue);font-size:12px;font-weight:850}
.community-guidelines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.community-guideline{padding:18px;border:1px solid #d7e1ee;border-radius:13px;background:linear-gradient(145deg,#fff,#f8fbff)}
.community-guideline strong{display:block;margin-bottom:7px;color:#173961;font-size:13px;font-weight:800}
.community-guideline p{margin:0;color:#617492;font-size:12px;line-height:1.7}
.community-bottom-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin-top:44px;
  padding:25px 28px;
  border:1px solid #cfe0f3;
  border-radius:16px;
  background:linear-gradient(105deg,#eff7ff,#f8fbff);
}
.community-bottom-cta h2{margin:0 0 5px;color:var(--m365-navy);font-size:20px;letter-spacing:-.025em}
.community-bottom-cta p{margin:0;color:#617492;font-size:13px;line-height:1.6}
.community-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:32px;padding:20px 0 0;border-top:1px solid #d7e1ee;color:#617492;font-size:12px}
.community-footer strong{color:#173961}
.community-footer-links{display:flex;flex-wrap:wrap;gap:14px}
.community-footer a{color:var(--m365-blue);font-weight:700}
.community-footer a:hover{text-decoration:underline}
.community-btn.is-disabled,.community-card.is-disabled{opacity:.58;filter:saturate(.65);cursor:not-allowed;pointer-events:none;box-shadow:none!important;transform:none!important}
.community-notice[hidden],.m365-comments-panel[hidden]{display:none!important}
.m365-community-link{margin:0 auto 18px;max-width:1100px;padding:10px 14px;font-size:12px}
.m365-community-link a{font-weight:750;color:var(--m365-blue)}
.docs-list{padding-left:20px}
.docs-list li{margin:7px 0}

/* Compact, contained article comments. The widget itself is cross-origin; style its shell here. */
.m365-comments{
  width:100%;
  max-width:930px;
  margin:38px auto 20px;
  padding:clamp(18px,2.5vw,28px);
  border:1px solid #d7e1ee;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f9fbff);
  box-shadow:0 5px 20px rgba(20,55,95,.055);
}
.m365-comments-head{margin-bottom:12px}
.m365-comments-kicker{margin:0 0 6px;color:var(--m365-blue);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.m365-comments h2{margin:0 0 8px;color:var(--m365-navy);font-size:clamp(21px,2.3vw,25px);line-height:1.25;letter-spacing:-.03em}
.m365-comments-intro{margin:0;color:#617492;font-size:13px;line-height:1.7}
.m365-comments-panel{padding:17px;border:1px solid #d7e1ee;border-radius:12px;background:#f4f8fd}
.m365-comments-panel strong{display:block;margin-bottom:5px;color:#173961;font-size:13px}
.m365-comments-panel p{margin:0;color:#617492;font-size:12.5px;line-height:1.65}
.m365-comments-panel a{display:inline-block;margin:10px 12px 0 0;color:var(--m365-blue);font-size:12px;font-weight:800;text-decoration:none}
.m365-comments-panel a:hover{text-decoration:underline}
.m365-comments .giscus{width:100%;max-width:100%;margin-top:8px}
.m365-comments iframe.giscus-frame{display:block;width:100%;max-width:100%;border:0}

@media(max-width:1050px){
  .community-hero{grid-template-columns:minmax(0,1fr) minmax(250px,.7fr);gap:24px;padding:30px}
  .community-guidelines{grid-template-columns:repeat(2,minmax(0,1fr))}
  .m365-header-inner{gap:14px}
  .m365-nav a{padding:0 9px}
}
@media(max-width:820px){
  .m365-header-inner{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:10px 18px}
  .m365-nav{grid-column:1;grid-row:1;flex-wrap:wrap}
  .m365-brand{grid-column:2;grid-row:1;font-size:21px}
  .m365-header-search{grid-column:1/-1;grid-row:2}
  .community-page{margin-top:20px;padding:0 18px}
  .community-hero{grid-template-columns:1fr;padding:26px}
  .community-hero-aside{max-width:none}
  .community-hero h1{font-size:clamp(32px,6vw,43px)}
  .community-section{margin-top:38px}
  .community-bottom-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .m365-header-inner{padding:10px 14px}
  .m365-nav{gap:2px}
  .m365-nav a{min-height:33px;padding:0 7px;font-size:11.5px}
  .m365-brand{font-size:19px}
  .community-page{padding:0 14px;margin-top:14px}
  .community-hero{padding:23px 19px;border-radius:17px}
  .community-hero h1{font-size:32px}
  .community-hero-copy>p{font-size:14px}
  .community-actions{display:grid;grid-template-columns:1fr;margin-top:20px}
  .community-btn{width:100%}
  .community-hero-aside{padding:20px}
  .community-hero-aside h2{font-size:21px}
  .community-section-head{display:block}
  .community-grid,.community-guidelines{grid-template-columns:1fr}
  .community-card{min-height:0;padding:18px;gap:12px}
  .community-card-icon{flex-basis:40px;width:40px;height:40px}
  .community-bottom-cta{padding:21px}
  .community-footer{align-items:flex-start;flex-direction:column}
  .m365-comments{margin-top:28px;padding:17px;border-radius:13px}
  .m365-comments h2{font-size:21px}
}
@media(prefers-reduced-motion:reduce){
  .community-btn,.community-card,.m365-nav a,.m365-header-search input{transition:none}
}
