:root {--color-bg:#000000;--color-accent:#44D62B;--glass-bg:rgba(10,10,10,0.55);--glass-border:rgba(255,255,255,0.08);--radius:18px;--gradient:linear-gradient(135deg,#44D62B 0%,#031a00 60%,#000 100%);--font-main:'Inter',system-ui,sans-serif;}
*{box-sizing:border-box;margin:0;padding:0;}
body.dark-theme{font-family:var(--font-main);background:#000;color:#f5f5f5;min-height:100vh;display:flex;flex-direction:column;}
main{flex:1;padding:clamp(1rem,2vw,2.5rem);}
a{color:var(--color-accent);text-decoration:none;}a:hover{text-decoration:underline;}

.main-nav{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:#000;position:sticky;top:0;z-index:40;border-bottom:1px solid #0f0f0f;}
.main-nav .logo{font-weight:700;font-size:1.25rem;letter-spacing:.5px;}
.main-nav ul{list-style:none;display:flex;gap:1rem;align-items:center;}
.main-nav a{padding:.5rem .9rem;border-radius:999px;transition:.25s background,color;}
.btn-primary{background:var(--color-accent);color:#000;font-weight:600;display:inline-block;}
.btn-primary:hover{filter:brightness(1.1);text-decoration:none;}
.nav-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;}

@media (max-width:820px){
  .main-nav ul{position:absolute;inset:60px 0 auto 0;background:#000;flex-direction:column;padding:1rem 1.25rem;border-bottom:1px solid #121212;display:none;}
  .main-nav ul.open{display:flex;}
  .nav-toggle{display:block;}
}

.hero{display:grid;place-items:center;min-height:60vh;padding:2rem;background:var(--gradient);border-radius:var(--radius);}
.hero-inner{max-width:780px;text-align:center;}
.hero h1{font-size:clamp(2.4rem,7vw,4rem);background:linear-gradient(90deg,#fff,#9dffb4);-webkit-background-clip:text;color:transparent;margin-bottom:1rem;}
.hero p{font-size:clamp(1rem,1.4vw,1.25rem);margin-bottom:1.5rem;line-height:1.5;}

.features-grid{margin-top:3rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}
.dashboard-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));}

.glass-panel{position:relative;background:radial-gradient(circle at 25% 15%,rgba(68,214,43,0.15),rgba(0,0,0,0.55) 70%),var(--glass-bg);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);border:1px solid var(--glass-border);border-radius:var(--radius);padding:1.35rem;box-shadow:0 4px 24px -6px rgba(0,0,0,.6),0 1px 0 0 rgba(255,255,255,0.04) inset;overflow:hidden;}
.glass-panel:before{content:"";position:absolute;top:-40%;left:-30%;width:70%;height:140%;background:radial-gradient(circle at 65% 50%,rgba(68,214,43,0.35),rgba(0,0,0,0) 70%);filter:blur(40px);opacity:.35;pointer-events:none;}
.glass-panel h3{margin-bottom:.65rem;font-size:1.1rem;}

.auth-form{max-width:420px;margin:2rem auto;}
.form-row{display:flex;flex-direction:column;margin-bottom:.9rem;gap:.4rem;}
.form-row input{background:#0d0d0d;border:1px solid #1d1d1d;color:#fff;padding:.65rem .85rem;border-radius:10px;font-size:.95rem;}
.form-row input:focus{outline:1px solid var(--color-accent);}

/* Useful links */
.useful-letter{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0c0c0c,#111);border:1px solid #1d1d1d;border-radius:10px;font-weight:700;font-size:1.05rem;color:#9dffb4;box-shadow:0 2px 6px -2px rgba(0,0,0,.6);}
.useful-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-top:.75rem;}
.useful-card{display:flex;gap:.65rem;padding:.85rem 1rem;background:radial-gradient(circle at 25% 15%,rgba(68,214,43,0.1),rgba(0,0,0,0.55) 70%),var(--glass-bg);backdrop-filter:blur(18px) saturate(140%);border:1px solid var(--glass-border);border-radius:16px;position:relative;text-decoration:none;color:#fff;transition:.25s transform, .25s border-color;min-height:72px;}
.useful-card:hover{transform:translateY(-3px);border-color:#214b1b;text-decoration:none;}
.useful-icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;}
.useful-img{width:36px;height:36px;object-fit:cover;border-radius:10px;border:1px solid #1d1d1d;}
.useful-title{font-weight:600;font-size:.95rem;margin-bottom:.25rem;word-break:break-word;}
.useful-url{font-size:.65rem;opacity:.65;letter-spacing:.5px;}

/* утилиты */
.text-center{text-align:center;}

@media (min-width:1700px){
  body{font-size:18px;}
  .hero{min-height:50vh;}
}
