:root{
  --bg:#375f3b; --frame:#7b68ff; --card:#e4e9ff; --head:#d4d9f0;
  --ink:#1a1030; --accent:#e8681c; --link:#3a5cff;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 Roboto,system-ui,sans-serif}
.page{max-width:1520px;margin:0 auto;background:var(--frame);min-height:100vh;padding:0 0 8px}
header{text-align:center;padding:26px 16px 22px;border-radius:0 0 40px 40px;background:var(--frame)}
header h1{margin:0;font:700 clamp(2.4rem,9vw,5rem)/1 "Courier New",monospace;letter-spacing:.12em;text-transform:uppercase;color:#1a1040}
header p{margin:6px 0 0;color:#1a1040;font-weight:500}
main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:8px;padding:8px}
aside,.projects{display:flex;flex-direction:column;gap:8px}
.card,details{background:var(--card);border:6px solid var(--frame);outline:0;border-radius:28px}
.card{padding:6px 14px;box-shadow:0 0 0 6px var(--frame)}
.card p{margin:.5em 0}
details{background:var(--head);overflow:hidden;box-shadow:0 0 0 6px var(--frame)}
summary{cursor:pointer;list-style:none;font-weight:700;padding:8px 14px;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:16px;color:var(--accent)}
details[open]>summary{color:var(--link);font-weight:500}
details[open]>summary::after{content:"\2013"}
.body{background:var(--card);padding:6px 14px 10px}
.body p{margin:.5em 0}
a{color:var(--link)}
@media(max-width:800px){main{grid-template-columns:1fr}}
