init
This commit is contained in:
131
internal/app/web/static/app.css
Normal file
131
internal/app/web/static/app.css
Normal file
@@ -0,0 +1,131 @@
|
||||
/* Minimal dark UI, no external deps */
|
||||
:root{
|
||||
--bg:#0b0f17;
|
||||
--panel:#111827;
|
||||
--panel2:#0f172a;
|
||||
--text:#e5e7eb;
|
||||
--muted:#9ca3af;
|
||||
--border:#243041;
|
||||
--accent:#22c55e;
|
||||
--danger:#ef4444;
|
||||
--warn:#f59e0b;
|
||||
}
|
||||
*{box-sizing:border-box}
|
||||
html,body{height:100%}
|
||||
body{
|
||||
margin:0;
|
||||
font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, "Apple Color Emoji","Segoe UI Emoji";
|
||||
background: radial-gradient(1200px 600px at 10% 0%, #0f1b2e 0%, var(--bg) 55%);
|
||||
color:var(--text);
|
||||
}
|
||||
a{color:inherit}
|
||||
code.mono, pre, code{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}
|
||||
.page{max-width:1100px;margin:0 auto;padding:22px}
|
||||
.page.center{display:flex;align-items:center;justify-content:center;min-height:100%}
|
||||
.nav{
|
||||
position:sticky;top:0;z-index:2;
|
||||
display:flex;align-items:center;gap:16px;
|
||||
padding:14px 18px;
|
||||
border-bottom:1px solid var(--border);
|
||||
background: rgba(15,23,42,.82);
|
||||
backdrop-filter: blur(10px);
|
||||
}
|
||||
.brand a{font-weight:700;text-decoration:none}
|
||||
.links{display:flex;gap:14px;flex:1}
|
||||
.links a{opacity:.9;text-decoration:none}
|
||||
.links a:hover{opacity:1;text-decoration:underline}
|
||||
.user{display:flex;gap:10px;align-items:center}
|
||||
.badge{
|
||||
padding:6px 10px;border:1px solid var(--border);
|
||||
border-radius:999px;background:rgba(17,24,39,.7);color:var(--muted)
|
||||
}
|
||||
h1{margin:0 0 14px;font-size:28px}
|
||||
h2{margin:0 0 10px;font-size:18px}
|
||||
h3{margin:14px 0 8px;font-size:15px;color:var(--muted)}
|
||||
.card{
|
||||
background: linear-gradient(180deg, rgba(17,24,39,.85), rgba(15,23,42,.85));
|
||||
border:1px solid var(--border);
|
||||
border-radius:14px;
|
||||
padding:16px 16px;
|
||||
box-shadow: 0 10px 40px rgba(0,0,0,.25);
|
||||
margin: 0 0 16px;
|
||||
}
|
||||
label{display:block;margin:10px 0 6px;color:var(--muted);font-size:13px}
|
||||
input, select{
|
||||
width:100%;
|
||||
padding:10px 10px;
|
||||
border-radius:10px;
|
||||
border:1px solid var(--border);
|
||||
background: rgba(2,6,23,.65);
|
||||
color:var(--text);
|
||||
outline:none;
|
||||
}
|
||||
input:focus, select:focus{border-color: rgba(34,197,94,.5); box-shadow: 0 0 0 3px rgba(34,197,94,.12)}
|
||||
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
|
||||
@media (max-width:800px){.grid{grid-template-columns:1fr}.links{display:none}}
|
||||
.btn{
|
||||
margin-top:12px;
|
||||
display:inline-flex;align-items:center;justify-content:center;
|
||||
padding:10px 14px;border-radius:12px;
|
||||
border:1px solid rgba(34,197,94,.5);
|
||||
background: rgba(34,197,94,.14);
|
||||
color: var(--text);
|
||||
cursor:pointer;
|
||||
}
|
||||
.btn:hover{background: rgba(34,197,94,.22)}
|
||||
.btn-ghost{
|
||||
border-color: var(--border);
|
||||
background: rgba(148,163,184,.08);
|
||||
}
|
||||
.btn-ghost:hover{background: rgba(148,163,184,.12)}
|
||||
.btn-danger{
|
||||
border-color: rgba(239,68,68,.6);
|
||||
background: rgba(239,68,68,.12);
|
||||
}
|
||||
.btn-danger:hover{background: rgba(239,68,68,.18)}
|
||||
.flash{
|
||||
margin:10px 0;
|
||||
padding:10px 12px;
|
||||
border:1px solid rgba(34,197,94,.35);
|
||||
border-radius:12px;
|
||||
background: rgba(34,197,94,.10);
|
||||
}
|
||||
.flash-err{
|
||||
border-color: rgba(239,68,68,.55);
|
||||
background: rgba(239,68,68,.10);
|
||||
}
|
||||
.hint{margin-top:10px;color:var(--muted);font-size:13px;line-height:1.35}
|
||||
.table{
|
||||
width:100%;
|
||||
border-collapse:collapse;
|
||||
overflow:hidden;
|
||||
}
|
||||
.table th, .table td{
|
||||
text-align:left;
|
||||
padding:10px 10px;
|
||||
border-top:1px solid var(--border);
|
||||
vertical-align:top;
|
||||
}
|
||||
.table th{color:var(--muted);font-size:12px;font-weight:600}
|
||||
.pill{
|
||||
display:inline-flex;align-items:center;
|
||||
padding:4px 8px;
|
||||
border-radius:999px;
|
||||
border:1px solid rgba(148,163,184,.25);
|
||||
background: rgba(148,163,184,.08);
|
||||
color: var(--text);
|
||||
font-size:12px;
|
||||
margin:2px 6px 2px 0;
|
||||
}
|
||||
.pill-muted{opacity:.7}
|
||||
.muted{color:var(--muted)}
|
||||
.pre{
|
||||
margin:0;padding:12px;
|
||||
border-radius:12px;
|
||||
border:1px solid var(--border);
|
||||
background: rgba(2,6,23,.65);
|
||||
overflow:auto;
|
||||
}
|
||||
.row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--border)}
|
||||
.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
|
||||
.footer{padding:20px;color:var(--muted);border-top:1px solid var(--border)}
|
||||
Reference in New Issue
Block a user