:root {
    --bg:#0d0d0f;
    --accent:#00ffcc;
    --muted:#bfb8d9;
    --flat-bg:#0f0b16;
    --flat-accent:#9f5aff;
    --flat-accent-2:#5a0aff;
    --flat-card:rgba(255,255,255,0.03);
    --info-bg:rgba(255,255,255,0.05);
}
* { box-sizing:border-box; }
html,body { margin:0; padding:0; font-family:Inter,sans-serif; background:var(--bg); color:#eee; height:100%; overflow-x:hidden; }
button,input,textarea { font-family:inherit; }

/* Layout */
main.site { min-height:100vh; padding:36px 20px 140px; overflow-y:auto; background:linear-gradient(180deg,#0f0b16,#090613);} 
header.site-head { max-width:1100px;margin:24px auto 18px;display:flex; align-items:center; gap:18px; justify-content:space-between;}
.header-left { display:flex; align-items:center; gap:18px; }
.avatar { width:86px;height:86px;border-radius:50%; background:linear-gradient(135deg,var(--flat-accent),var(--flat-accent-2)); display:flex;align-items:center;justify-content:center; font-weight:700;font-size:28px; color:#fff; box-shadow:0 10px 40px rgba(95,12,200,0.18); overflow:hidden; }
.avatar img { width:100%; height:100%; border-radius:50%; object-fit:cover; }
.titlewrap h1{margin:0;font-size:1.6rem;color:#fff;}
.titlewrap p{margin:6px 0 0;color:var(--muted);font-size:0.94rem;}
.header-actions { display:flex; gap:12px; align-items:center; }
.btn { padding:8px 12px; border-radius:8px; border:1px solid rgba(255,255,255,0.06); background:transparent; color:#fff; cursor:pointer; font-weight:600; }
.btn.primary { background:linear-gradient(90deg,var(--flat-accent),var(--flat-accent-2)); border:none; }

/* Cards & grid */
.container { max-width:1100px; margin:18px auto; display:grid; gap:22px; }
section.card { background:var(--flat-card); border-radius:12px; padding:20px; border:1px solid rgba(159,90,255,0.08); box-shadow:0 8px 40px rgba(6,4,10,0.5);} 
section.card h2 { margin:0 0 12px; color:var(--flat-accent);}
.info-box { background:var(--info-bg); padding:10px 14px; border-radius:12px; margin-bottom:8px; display:inline-block; font-weight:500; }
.skills-grid { display:flex; gap:14px; flex-wrap:wrap;}
.skill { flex:1 1 200px; min-width:180px; }
.skill .label { font-weight:600;color:#fff;margin-bottom:6px;}
.skill .bar { height:16px;background:rgba(255,255,255,0.06);border-radius:8px;overflow:hidden;}
.skill .fill { height:100%; background:linear-gradient(90deg,var(--flat-accent),var(--flat-accent-2)); width:0; color:#fff; font-weight:700; font-size:12px; text-align:right; padding-right:8px; line-height:16px; transition:width 1s ease; }

.projects-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px;}
.proj-card { background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border-radius:10px; padding:14px; border:1px solid rgba(159,90,255,0.06); transition: transform .16s ease, box-shadow .16s ease; display:flex; flex-direction:column; gap:10px; justify-content:space-between; cursor:pointer; }
.proj-card:hover { transform:translateY(-6px); box-shadow:0 18px 50px rgba(95,12,200,0.12); }
.chip { display:inline-block; padding:6px 10px; border-radius:999px; background:var(--flat-accent); color:#fff; font-weight:700; font-size:13px;}
.star { margin-left:6px; color:#ffd700; }
.proj-title{font-weight:700; color:#fff; font-size:1.02rem;}
.proj-desc{color:var(--muted); font-size:0.95rem; margin-top:6px; flex:1;}

.contact-grid { display:flex; gap:18px; flex-wrap:wrap; }
.contact-left { flex:1 1 360px; }
.contact-right { flex:1 1 320px; min-width:260px; }
.contact a.mail-btn { display:inline-block; background:linear-gradient(90deg,var(--flat-accent),var(--flat-accent-2)); color:#fff; padding:10px 12px; border-radius:8px; text-decoration:none; font-weight:700; cursor:pointer;}

footer{text-align:center; color:var(--muted); margin:42px 0 18px; font-size:0.9rem;}

/* NEWS PAGE */
.news-page { display:none; padding:36px 20px 120px; }
.news-header { max-width:1100px; margin:12px auto 18px; display:flex; justify-content:space-between; align-items:center; }
.news-list { max-width:1100px; margin:0 auto; display:grid; gap:14px; }
.news-item { background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border-radius:10px; padding:16px; border:1px solid rgba(159,90,255,0.06); transition: transform 0.15s ease, box-shadow 0.15s ease; }
.news-item h3{margin:0 0 6px;color:#fff;font-size:1.05rem}
.news-item .meta{color:var(--muted);font-size:0.9rem;margin-bottom:8px}
.news-content{color:var(--muted);white-space:pre-wrap}

/* small screen tweaks */
@media (max-width:700px){ .header-actions{display:none} }
