
:root{ --bg:#0a1118; --ink:#edf3f8; --muted:#99a8b5; --accent:#ff5573; --card:#121b24; --border:#1f2a35; }
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}
a{color:var(--accent);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:0 1rem}
.section{padding:3rem 0}
h1,h2,h3{line-height:1.2;margin:.2em 0 .6em}
p{color:var(--ink)} .muted{color:var(--muted)}

.site-header{border-bottom:1px solid var(--border);background:#0b141b}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0}
.brand{display:flex;align-items:center;gap:.6rem;color:var(--ink);font-weight:700}
.brand .logo{height:32px;width:auto;display:block}
.brand .name{font-size:1.05rem;letter-spacing:.3px}
.nav{display:flex;gap:1.2rem}
.nav a{color:var(--muted);font-weight:500}
.nav a:hover{color:var(--ink)}

.banner{padding:2.2rem 0 1.6rem;text-align:center}
.banner h1{font-size:2rem;margin-bottom:.4rem}
.banner p{color:var(--muted)}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1rem}
.card{background:var(--card);border:1px solid var(--border);padding:1rem;border-radius:16px;display:flex;flex-direction:column;gap:.5rem}
.list{display:grid;gap:.4rem;padding-left:1rem} .list li{margin-left:1rem}

.site-footer{border-top:1px solid var(--border);padding:1rem 0;color:var(--muted)}

/* Tools modal */
dialog#toolModal{width:min(100vw,1100px);border:1px solid var(--border);border-radius:16px;background:var(--bg);color:var(--ink);padding:0}
.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border)}
.modal-body{height:min(80vh,760px)}
#toolFrame{width:100%;height:100%;border:0}
.modal-footer{display:flex;justify-content:flex-end;padding:1rem;border-top:1px solid var(--border)}
.modal-footer a{border:1px solid var(--border);padding:.4rem .8rem;border-radius:10px}

/* Forms */
form{display:grid;gap:1rem;margin-top:.6rem}
.row{display:flex;gap:1rem;flex-wrap:wrap}
label{display:flex;flex-direction:column;gap:.4rem;color:var(--muted)}
input,textarea{background:#0e1620;border:1px solid var(--border);color:var(--ink);padding:.7rem .8rem;border-radius:12px;width:100%}
button#sendBtn{background:var(--accent);color:#1a0f12;border:none;font-weight:700;border-radius:12px;padding:.7rem 1rem}
.form-status{min-height:1.4em;display:inline-flex;align-items:center;color:var(--muted)}
.hp{position:absolute;left:-5000px;visibility:hidden;height:0;overflow:hidden}
