/* =========================================================
   MUSTAFA.NET :: MN BASE STYLESHEET (Publisher as skeleton)
   Version: 2.0.0
   - Uses html[data-theme="dark|light"] (set by mn-theme.js)
   - Full-width + responsive container rhythm
   - Clean modern typography + cards + nav + widgets + posts
   ========================================================= */

/* ---------------------------
   0) RESET / NORMALIZE (light)
   --------------------------- */
*,
*::before,
*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; text-rendering:optimizeLegibility; }
body{ margin:0; }

img, video{ max-width:100%; height:auto; display:block; }
svg{ display:block; }

a{ text-decoration:none; }
a:hover{ text-decoration:none; }

button, input, select, textarea{ font: inherit; }
button{ cursor:pointer; }

:focus-visible{ outline: 3px solid rgba(37,99,235,.45); outline-offset: 2px; border-radius: 10px; }

/* ---------------------------
   1) DESIGN TOKENS
   --------------------------- */
:root{
  /* Sizing */
  --mn-wide-max: 1600px;      /* site max content width */
  --mn-pad: 22px;             /* page padding */
  --mn-radius: 18px;
  --mn-radius-sm: 14px;

  /* Typography */
  --mn-font: ui-sans-serif, system-ui, -apple-system, "SF Pro Display", "Segoe UI", Roboto, Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
  --mn-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;

  --mn-text: #0b1220;
  --mn-muted: rgba(15,23,42,.72);

  --mn-bg: #ffffff;
  --mn-surface: #ffffff;
  --mn-surface2: rgba(15,23,42,.03);

  --mn-line: rgba(15,23,42,.12);

  --mn-link: #2563eb;

  --mn-shadow: 0 18px 55px rgba(16,24,40,.10);
  --mn-shadow-strong: 0 26px 80px rgba(16,24,40,.14);

  /* Accent gradient */
  --mn-grad: linear-gradient(135deg, #2563eb, #7c3aed);

  /* Content rhythm */
  --mn-prose: 72ch;
}

/* Dark */
html[data-theme="dark"]{
  --mn-text: #eaf0ff;
  --mn-muted: rgba(234,240,255,.72);

  --mn-bg: #070b14;
  --mn-surface: rgba(255,255,255,.06);
  --mn-surface2: rgba(255,255,255,.04);

  --mn-line: rgba(255,255,255,.14);

  --mn-link: #7dd3fc;

  --mn-shadow: 0 24px 70px rgba(0,0,0,.45);
  --mn-shadow-strong: 0 34px 90px rgba(0,0,0,.55);
}

/* ---------------------------
   2) BASE
   --------------------------- */
html, body{
  background: var(--mn-bg);
  color: var(--mn-text);
  font-family: var(--mn-font);
}

p, li{ color: var(--mn-muted); }

a{ color: var(--mn-link); }

/* Make common WP text align with tokens */
h1,h2,h3,h4,h5,h6{
  color: var(--mn-text);
  line-height:1.2;
  margin: 0 0 10px;
  letter-spacing: -.02em;
}
h1{ font-size: clamp(30px, 3.6vw, 44px); }
h2{ font-size: clamp(22px, 2.2vw, 30px); }
h3{ font-size: 18px; }
h4{ font-size: 16px; }

p{ margin: 0 0 14px; line-height: 1.75; }
ul, ol{ margin: 0 0 14px; padding-left: 18px; line-height: 1.75; }

/* Links inside content */
.entry-content a, .comment-content a, .widget a{
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(37,99,235,.35);
}
html[data-theme="dark"] .entry-content a,
html[data-theme="dark"] .comment-content a,
html[data-theme="dark"] .widget a{
  text-decoration-color: rgba(125,211,252,.35);
}

/* ---------------------------
   3) FULL-WIDTH LAYOUT
   --------------------------- */
/* Force wrappers wide (Publisher + generic) */
.wrap, .container, .site, .site-content, .content-wrap, .content-area,
.main-content, .rb-container, .rb-container-fluid, .rb-row,
.page .container, .single .container, .archive .container{
  width: 100% !important;
  max-width: none !important;
}

/* Apply padding to MAIN areas only */
.site-content,
.content-wrap,
.content-area,
.main-content,
main{
  padding-left: var(--mn-pad);
  padding-right: var(--mn-pad);
}

/* Standard page container */
.mn-wide{
  max-width: var(--mn-wide-max);
  margin-left: auto;
  margin-right: auto;
}

/* Cap prose areas */
.entry-content,
.post-content,
.single .entry-content,
.page .entry-content{
  max-width: var(--mn-wide-max);
  margin-left: auto;
  margin-right: auto;
}

/* Responsive padding */
@media (max-width: 900px){ :root{ --mn-pad: 16px; } }
@media (max-width: 520px){ :root{ --mn-pad: 12px; } }

/* ---------------------------
   4) HEADER / NAV
   --------------------------- */
/* Best-effort selectors (Publisher varies) */
.site-header, header{
  position: sticky;
  top: 0;
  z-index: 999;
  border-bottom: 1px solid var(--mn-line);
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
html[data-theme="dark"] .site-header,
html[data-theme="dark"] header{
  background: rgba(7,11,20,.72);
}

.site-title a, .logo a{ color: var(--mn-text); font-weight: 950; }

/* Nav links */
.main-navigation a, nav a{
  color: var(--mn-text);
  font-weight: 850;
  opacity: .92;
}
.main-navigation a:hover, nav a:hover{ opacity: 1; }

/* Dropdowns */
.sub-menu, .menu .children{
  border: 1px solid var(--mn-line);
  border-radius: var(--mn-radius);
  background: var(--mn-surface);
  box-shadow: var(--mn-shadow);
  overflow: hidden;
}
.sub-menu a, .menu .children a{ padding: 10px 12px; display:block; }

/* ---------------------------
   5) CARDS / PANELS
   --------------------------- */
.mn-card,
article.post,
article.type-post,
article.page,
.widget,
.sidebar .widget,
.comment-body{
  border: 1px solid var(--mn-line);
  border-radius: var(--mn-radius);
  background: var(--mn-surface);
  box-shadow: var(--mn-shadow);
}

.mn-card{ padding: 16px; }

/* Ensure wrappers stay clean */
.site, .site-content, .content-area, .main-content{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Optional glow accent */
.mn-glow{ position: relative; overflow: hidden; }
.mn-glow::before{
  content:"";
  position:absolute; inset:-1px;
  background:
    radial-gradient(520px 240px at 10% 0%, rgba(110,231,255,.18), transparent 60%),
    radial-gradient(520px 240px at 95% 15%, rgba(167,139,250,.16), transparent 62%);
  pointer-events:none;
  opacity:.95;
}
.mn-glow > *{ position:relative; }

/* ---------------------------
   6) POSTS / ARCHIVES
   --------------------------- */
/* ---------------------------
   6) POSTS / ARCHIVES
   --------------------------- */
.entry-title a{ color: var(--mn-text); }
.entry-meta, .post-meta, .meta{ color: var(--mn-muted); font-size: 13px; }

.archive .post, .blog .post{
  padding: 16px;
  margin-bottom: 14px;
}

/* Featured image */
.post-thumbnail img{
  border-radius: calc(var(--mn-radius) - 4px);
}

/* ---------------------------
   7) BUTTONS
   --------------------------- */
button,
input[type="submit"],
.wp-block-button__link,
.button, .btn, .more-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding: 12px 14px;
  border-radius: var(--mn-radius-sm);
  border: 1px solid var(--mn-line);
  background: var(--mn-surface2);
  color: var(--mn-text);
  font-weight: 950;
}

.wp-block-button__link,
button.is-primary,
.btn-primary,
.button.primary{
  border: 0;
  background: var(--mn-grad);
  color: #fff;
  box-shadow: 0 18px 55px rgba(37,99,235,.25);
}

button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover,
.button:hover, .btn:hover{
  transform: translateY(-1px);
}

/* ---------------------------
   8) FORMS
   --------------------------- */
input, select, textarea{
  width:100%;
  padding: 12px 12px;
  border-radius: var(--mn-radius-sm);
  border: 1px solid var(--mn-line);
  background: var(--mn-surface);
  color: var(--mn-text);
}

label{ font-weight: 900; display:block; margin-bottom: 6px; }
::placeholder{ color: var(--mn-muted); }

/* ---------------------------
   9) TABLES
   --------------------------- */
table{
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: var(--mn-radius);
  border: 1px solid var(--mn-line);
  background: var(--mn-surface);
}
th, td{
  padding: 12px 10px;
  border-bottom: 1px solid var(--mn-line);
}
th{
  text-align:left;
  font-weight: 950;
  color: var(--mn-text);
  background: var(--mn-surface2);
}
tr:last-child td{ border-bottom: 0; }

/* ---------------------------
   10) PAGINATION
   --------------------------- */
.pagination, .nav-links, .page-numbers{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.page-numbers{
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid var(--mn-line);
  background: var(--mn-surface2);
  color: var(--mn-text);
  font-weight: 900;
}
.page-numbers.current{
  border:0;
  background: var(--mn-grad);
  color:#fff;
}

/* ---------------------------
   11) FOOTER
   --------------------------- */
.site-footer, footer{
  margin-top: 26px;
  border-top: 1px solid var(--mn-line);
  background: var(--mn-surface2);
}
.site-footer .widget, footer .widget{
  background: transparent;
  box-shadow: none;
}

/* ---------------------------
   12) UTILITIES
   --------------------------- */
.mn-wide{ max-width: var(--mn-wide-max); margin-left:auto; margin-right:auto; }
.mn-prose{ max-width: var(--mn-prose); }
.mn-center{ text-align:center; }
.mn-mono{ font-family: var(--mn-mono); }

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  *{ scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
