/* Pixel-style theme (matched to "Узнать IP адрес") */
:root{
  --primary:#6A5ACD;
  --secondary:#9370DB;
  --accent:#7B68EE;
  --light:#F8F9FF;
  --dark:#2D2B55;
  --success:#50C878;
  --warning:#FF6B6B;
  --gray:#6C757D;
  --pixel-border:4px solid var(--dark);
  --shadow:8px 8px 0 var(--dark);
}

*{box-sizing:border-box;margin:0;padding:0;font-family:'Roboto Mono',monospace;image-rendering:pixelated;}
body{
  background:linear-gradient(135deg,#E6E6FA 0%,#F0F8FF 100%);
  min-height:100vh;
  display:flex;
  flex-direction:column;
  color:var(--dark);
  line-height:1.6;
}

/* Navbar (same as IP page) */
.navbar{
  background:linear-gradient(to right,var(--primary),var(--secondary));
  border-bottom:var(--pixel-border);
  padding:0;
  position:sticky;
  top:0;
  z-index:1000;
  box-shadow:0 4px 0 var(--dark);
}
.nav-container{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 20px;
}
.logo{
  font-family:'Press Start 2P',cursive;
  color:#fff;
  font-size:1rem;
  text-decoration:none;
  padding:15px 0;
  text-shadow:2px 2px 0 var(--dark);
}
.nav-menu{display:flex;list-style:none;margin:0;padding:0;}
.nav-item{position:relative;}
.nav-link{
  color:#fff;
  text-decoration:none;
  padding:20px 15px;
  display:block;
  font-weight:500;
  transition:all .3s;
  border-bottom:3px solid transparent;
}
.nav-link:hover{background:rgba(255,255,255,.1);border-bottom:3px solid #fff;}
.nav-link.active{background:rgba(255,255,255,.2);border-bottom:3px solid #fff;}
.hamburger{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:10px;}
.hamburger.active .fa-bars{display:none;}
.hamburger.active .fa-times{display:block;}
.hamburger .fa-times{display:none;}

/* Layout */
.main-wrapper{
  flex:1;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  padding:20px;
  width:100%;
}
.container{
  background-color:rgba(255,255,255,.95);
  border:var(--pixel-border);
  border-radius:0;
  width:100%;
  max-width:1000px;
  overflow:hidden;
  margin:20px 0;
  box-shadow:var(--shadow);
}
.pixel-header{
  background:linear-gradient(to right,var(--primary),var(--secondary));
  color:#fff;
  padding:25px;
  text-align:center;
  border-bottom:var(--pixel-border);
}
.pixel-title{
  font-family:'Press Start 2P',cursive;
  font-size:1.6rem;
  margin-bottom:12px;
  text-shadow:3px 3px 0 var(--dark);
}
.pixel-subtitle{font-size:1rem;opacity:.9;max-width:720px;margin:0 auto;}
.main-content{padding:30px;}

/* Form */
.input-section{display:flex;gap:15px;margin-bottom:20px;}
.pixel-input{
  flex:1;
  padding:15px 20px;
  border:var(--pixel-border);
  border-radius:0;
  font-size:1rem;
  background:var(--light);
}
.pixel-input:focus{outline:none;box-shadow:0 0 0 3px var(--accent);}
.pixel-button{
  background:var(--accent);
  color:#fff;
  border:var(--pixel-border);
  border-radius:0;
  padding:0 22px;
  font-size:1rem;
  font-weight:600;
  cursor:pointer;
  font-family:'Press Start 2P',cursive;
  transition:all .1s;
  display:flex;
  align-items:center;
  gap:10px;
}
.pixel-button:hover{background:var(--primary);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--dark);}
.pixel-button:active{transform:translate(0,0);box-shadow:none;}
.pixel-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none;}

/* Alerts */
.error, .cache-info{
  padding:15px;
  border:var(--pixel-border);
  margin:18px 0;
  font-weight:700;
}
.error{background:#fff0f5;color:var(--warning);}
.cache-info{background:#fff3cd;color:#856404;}
.cache-info a{color:inherit;text-decoration:underline;}

/* Result table -> pixel cards feel */
table.result{width:100%;border-collapse:collapse;border:var(--pixel-border);background:var(--light);}
table.result th, table.result td{
  padding:12px 14px;
  border-bottom:2px dotted var(--dark);
  text-align:left;
  vertical-align:top;
}
table.result th{
  width:30%;
  background:rgba(106,90,205,.08);
  font-weight:700;
}
table.result tr:last-child th, table.result tr:last-child td{border-bottom:none;}
ul.h1-list{margin:0;padding-left:18px;}

.good{color:var(--success);font-weight:800;}
.bad{color:var(--warning);font-weight:800;}
.normal{color:#ef6c00;font-weight:800;}

.serp-preview{
  margin-top:22px;
  padding:18px;
  border:var(--pixel-border);
  background:var(--light);
}
.serp-preview .url{font-size:.9em;color:#006621;margin-bottom:6px;word-break:break-all;}
.serp-preview .title{font-size:1.05em;color:#1a0dab;text-decoration:underline;margin-bottom:6px;}
.serp-preview .description{font-size:.95em;color:#545454;}

.report, .image-analysis, .seo-text-analysis{
  margin-top:24px;
  padding:20px;
  border:var(--pixel-border);
  background:var(--light);
}
.report-title, .image-analysis h2, .seo-text-analysis h2{
  font-family:'Press Start 2P',cursive;
  font-size:1.05rem;
  margin:0 0 14px 0;
  color:var(--primary);
}
.report ul{list-style:none;padding-left:0;margin:0;}
.report ul li{padding-left:28px;margin-bottom:8px;position:relative;line-height:1.45;}
.report ul.critical li::before{content:"✖";position:absolute;left:0;color:var(--warning);}
.report ul.improve li::before{content:"⚠";position:absolute;left:0;color:#ef6c00;}
.report ul.good-points li::before{content:"✅";position:absolute;left:0;color:var(--success);}

.disclaimer{margin-top:16px;font-size:.9em;color:var(--gray);}

.btn{
  display:inline-block;
  padding:10px 16px;
  background:var(--accent);
  color:#fff;
  text-decoration:none;
  border:var(--pixel-border);
  font-weight:700;
  font-family:'Press Start 2P',cursive;
}
.btn:hover{background:var(--primary);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--dark);}
.btn.secondary{background:rgba(106,90,205,.12);color:var(--dark);}
.btn.secondary:hover{background:rgba(106,90,205,.2);}

.copy-report{text-align:center;margin-top:18px;}
.copy-btn{background:var(--accent);color:#fff;border:var(--pixel-border);padding:10px 16px;cursor:pointer;font-family:'Press Start 2P',cursive;}
.copy-btn:hover{background:var(--primary);}

.seo-text-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;}
.seo-text-mini{font-size:.95em;color:var(--gray);}
.seo-text-subtitle{margin:16px 0 10px;font-size:1.02em;}
.seo-text-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.seo-text-card{border:2px dotted var(--dark);background:#fff;padding:12px;}
.seo-text-card .label{font-size:.85em;color:var(--gray);margin-bottom:6px;}
.seo-text-card .value{font-size:1.2em;font-weight:900;}
.seo-text-card .hint{margin-top:6px;font-size:.88em;color:var(--gray);line-height:1.35;}
.keyword-chips{display:flex;flex-wrap:wrap;gap:8px;}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:2px dotted var(--dark);background:#fff;font-size:.95em;}
.chip small{color:var(--gray);}
.seo-text-recs{margin:0;padding-left:18px;}
.seo-text-recs li{margin-bottom:8px;line-height:1.45;}
.muted{color:var(--gray);}

/* Footer */
footer{
  text-align:center;
  padding:20px;
  color:var(--dark);
  margin-top:auto;
  font-size:.95rem;
  background:var(--light);
  border-top:var(--pixel-border);
}
.footer-domain{
  font-weight:800;
  color:var(--primary);
  text-decoration:none;
  font-size:1.05rem;
  border-bottom:2px dotted var(--primary);
  font-family:'Press Start 2P',cursive;
}
.footer-domain:hover{border-bottom:2px solid var(--primary);}

/* Responsive */
@media (max-width:968px){
  .nav-menu{
    position:fixed;left:-100%;top:60px;flex-direction:column;
    background:linear-gradient(to bottom,var(--primary),var(--secondary));
    width:100%;text-align:center;transition:.3s;border-bottom:var(--pixel-border);
  }
  .nav-menu.active{left:0;}
  .nav-link{padding:20px;border-bottom:1px solid rgba(255,255,255,.1);}
  .hamburger{display:block;}
  .input-section{flex-direction:column;}
  .pixel-button{padding:12px;justify-content:center;}
  .seo-text-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  .main-content{padding:20px;}
  .pixel-title{font-size:1.2rem;}
  .logo{font-size:.75rem;}
  .seo-text-grid{grid-template-columns:1fr;}
  /* stacked table */
  table.result tr, table.result th, table.result td{display:block;width:100%;}
  table.result th{border-top:2px dotted var(--dark);}
  table.result tr{margin-bottom:10px;}
}
