/*
Theme Name: ASTRA Clean Theme
Theme URI: https://astra-tools.com
Author: Astra Pro
Author URI: https://astra-tools.com
Description: Clean WordPress theme for ASTRA shortcode-based one-page shops and technical pages. No WooCommerce, no Elementor, no legacy shop logic.
Version: 2026.05.26.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: astra-clean-theme
*/

:root{
  --astra-page-bg:#ffffff;
  --astra-text:#111827;
  --astra-muted:#5f6673;
  --astra-line:#e5e7eb;
  --astra-accent:#d8a100;
  --astra-dark:#0f172a;
  --astra-container:1180px;
  --astra-radius:18px;
  --astra-shadow:0 18px 55px rgba(15,23,42,.08);
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

body{
  margin:0;
  background:var(--astra-page-bg);
  color:var(--astra-text);
  font-family:Roboto, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:16px;
  line-height:1.55;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

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

a{
  color:inherit;
}

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

table{
  border-collapse:collapse;
  width:100%;
}

.screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.astra-clean-page{
  min-height:100vh;
  background:var(--astra-page-bg);
}

.astra-clean-main{
  width:100%;
}

.astra-clean-content{
  width:100%;
}

.astra-clean-content > *:first-child{
  margin-top:0;
}

.astra-clean-content > *:last-child{
  margin-bottom:0;
}

.astra-clean-container{
  width:min(var(--astra-container), calc(100% - 32px));
  margin-inline:auto;
}

.astra-clean-article{
  width:min(var(--astra-container), calc(100% - 32px));
  margin:0 auto;
  padding:48px 0;
}

.astra-clean-article h1,
.astra-clean-article h2,
.astra-clean-article h3,
.astra-clean-article h4{
  line-height:1.08;
  letter-spacing:-.03em;
}

.astra-clean-article h1{
  font-size:clamp(36px, 6vw, 72px);
  margin:0 0 24px;
}

.astra-clean-article h2{
  font-size:clamp(28px, 4vw, 48px);
  margin:42px 0 16px;
}

.astra-clean-article p{
  color:var(--astra-muted);
}

.astra-clean-header{
  display:none;
}

.astra-clean-footer{
  width:100%;
  padding:30px 0;
  border-top:1px solid var(--astra-line);
  background:#fff;
}

.astra-clean-footer-inner{
  width:min(var(--astra-container), calc(100% - 32px));
  margin-inline:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:var(--astra-muted);
  font-size:13px;
}

.astra-clean-footer a{
  color:var(--astra-text);
  text-decoration:none;
}

.astra-clean-footer a:hover{
  text-decoration:underline;
}

.astra-clean-empty{
  width:min(860px, calc(100% - 32px));
  margin:80px auto;
  padding:30px;
  border:1px dashed var(--astra-line);
  border-radius:var(--astra-radius);
  color:var(--astra-muted);
  background:#fafafa;
}

/* Gutenberg neutral reset for shortcode pages */
.entry-content{
  width:100%;
}

.entry-content > .wp-block-group,
.entry-content > .wp-block-shortcode{
  margin-block-start:0;
  margin-block-end:0;
}

.wp-block-shortcode{
  width:100%;
}

/* Avoid WordPress default image spacing breaking one-page layouts */
.entry-content figure{
  margin:0;
}

/* Admin bar offset for sticky ASTRA menu if needed */
body.admin-bar .astra-market-menu,
body.admin-bar [class*="sticky"],
body.admin-bar [style*="position: fixed"]{
  scroll-margin-top:32px;
}

@media(max-width:782px){
  body.admin-bar .astra-market-menu,
  body.admin-bar [class*="sticky"],
  body.admin-bar [style*="position: fixed"]{
    scroll-margin-top:46px;
  }

  .astra-clean-footer-inner{
    flex-direction:column;
    align-items:flex-start;
  }
}
