/* extracted CSS from index.html */
:root{
    --bg:#0f1724;
    --card:#0f1724;
    --glass-bg: rgba(255,255,255,0.04);
    --accent: linear-gradient(90deg,#6EE7B7 0%, #3B82F6 60%, #8B5CF6 100%);
    --muted: #9AA4B2;
    --radius: 12px;
    --maxw: 960px;
}
*{box-sizing:border-box}
html,body{
    height:100%;
    margin:0;
    background: radial-gradient(1000px 600px at 10% 10%, rgba(59,130,246,0.06), transparent),
                radial-gradient(800px 500px at 90% 90%, rgba(139,92,246,0.05), transparent),
                #081025;
    color:#E6EEF6;
    font-family: Inter, 'Segoe UI', Tahoma, Verdana, sans-serif;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    -webkit-tap-highlight-color:transparent;
    padding:24px;
}
.container{
    max-width:var(--maxw);
    margin:24px auto;
    padding:28px;
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
    backdrop-filter: blur(6px);
    border-radius:var(--radius);
    box-shadow: 0 10px 30px rgba(2,6,23,0.6), inset 0 1px 0 rgba(255,255,255,0.02);
    transform: translateY(18px);
    transition: transform .28s ease;
}
.container:hover{ transform: translateY(0); }
.hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:8px;
}
.title{
    text-align:left;
}
h1{
    font-size:20px;
    margin:0;
    font-weight:700;
    letter-spacing:-0.2px;
}
.subtitle{
    margin:6px 0 0 0;
    color:var(--muted);
    font-size:13px;
}
.cta-row{
    display:flex;
    align-items:center;
    gap:12px;
}
.btn{
    background:var(--accent);
    color:#021026;
    padding:10px 14px;
    border-radius:10px;
    font-weight:600;
    border:none;
    cursor:pointer;
    text-decoration:none;
    box-shadow: 0 6px 18px rgba(59,130,246,0.12);
    transition: transform .12s ease, box-shadow .12s ease;
    font-size:14px;
}
.btn:active{ transform: translateY(1px); }
.link{
    color:#A9D0FF;
    text-decoration:none;
    font-weight:600;
    font-size:13px;
}
.content{
    text-align:left;
    margin-top:18px;
    line-height:1.55;
    font-size:14px;
    color:#E6EEF6;
}
.content p{ margin:14px 0; }
.tags{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.tag{
    background: linear-gradient(90deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));
    border:1px solid rgba(255,255,255,0.03);
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    color:var(--muted);
}
.tech-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:14px;
}
.chip{
    background: linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
    padding:10px;
    border-radius:10px;
    font-size:13px;
    color:#CFE9FF;
    border:1px solid rgba(255,255,255,0.03);
}
a { color:inherit }
.small{ color:var(--muted); font-size:12px }
@media (max-width:640px){
    .hero{ flex-direction:column; align-items:flex-start; gap:8px; }
    .cta-row{ width:100%; justify-content:space-between; }
}
.fade-in{ animation: fadeIn .6s ease both; }
@keyframes fadeIn{ from{ opacity:0; transform: translateY(6px)} to{opacity:1; transform:none} }

/* contact form specific tweaks */
.form-wrap {
    display:block;
    max-width:640px;
    margin:0 auto;
    background: linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.00));
    padding:20px;
    border-radius:10px;
    border:1px solid rgba(255,255,255,0.03);
}
.form-row { margin-bottom:12px; }
label { display:block; font-weight:600; margin-bottom:6px; color:#CFE9FF; font-size:13px; }
input[type="text"], input[type="email"], textarea {
    width:100%;
    padding:10px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,0.04);
    background: rgba(255,255,255,0.02);
    color: #E6EEF6;
    font-size:14px;
    resize:vertical;
}
input[type="submit"] {
    background:var(--accent);
    color:#021026;
    padding:10px 16px;
    border-radius:10px;
    font-weight:600;
    border:none;
    cursor:pointer;
    box-shadow: 0 6px 18px rgba(59,130,246,0.12);
}
.notice {
    margin:12px 0;
    padding:10px;
    border-radius:8px;
    background: rgba(46, 204, 113, 0.08);
    color: #B9F6C9;
    border:1px solid rgba(46, 204, 113, 0.12);
}
.error {
    margin:12px 0;
    padding:10px;
    border-radius:8px;
    background: rgba(239, 83, 80, 0.06);
    color:#FFD6D6;
    border:1px solid rgba(239, 83, 80, 0.12);
}
