efnanaladagg's picture
Update src/app/static/style.css
141e48b verified
:root{
--bg:#0b1020;
--card:#111a33;
--card2:#0f1730;
--text:#e9eefc;
--muted:#a8b3d6;
--accent:#7aa2ff;
--ok:#57d39b;
--err:#ff6b6b;
--border:rgba(255,255,255,.08);
}
*{box-sizing:border-box}
body{
margin:0;
font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
background: radial-gradient(1200px 600px at 50% -10%, rgba(122,162,255,.25), transparent 70%),
var(--bg);
color:var(--text);
}
.page{max-width:1100px;margin:0 auto;padding:28px 18px 40px}
.header h1{margin:0 0 8px;font-size:40px;letter-spacing:.2px}
.header p{margin:0;color:var(--muted)}
.card{
margin-top:18px;
background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
border:1px solid var(--border);
border-radius:18px;
padding:18px;
box-shadow: 0 20px 60px rgba(0,0,0,.35);
}
.controls{
display:flex;
align-items:center;
gap:12px;
flex-wrap:wrap;
margin-bottom:14px;
}
.file{
display:inline-flex;
align-items:center;
gap:10px;
background:var(--card2);
border:1px solid var(--border);
border-radius:12px;
padding:10px 12px;
cursor:pointer;
}
.file input{display:none}
.file span{color:var(--text);font-weight:600}
.btn{
background:var(--accent);
border:none;
color:#0b1020;
font-weight:800;
padding:10px 14px;
border-radius:12px;
cursor:pointer;
}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.secondary{
background:transparent;
color:var(--text);
border:1px solid var(--border);
font-weight:700;
}
.status{color:var(--muted);font-weight:600}
.status.loading{color:var(--accent)}
.status.ok{color:var(--ok)}
.status.err{color:var(--err)}
.grid{
display:grid;
grid-template-columns: 1.1fr .9fr;
gap:14px;
}
@media (max-width: 900px){
.grid{grid-template-columns:1fr}
}
.panel{
background:rgba(17,26,51,.65);
border:1px solid var(--border);
border-radius:16px;
padding:14px;
}
.panel h2{margin:0 0 12px;font-size:20px}
.panel h3{margin:14px 0 8px;font-size:16px;color:var(--muted)}
.preview{
position:relative;
min-height:280px;
border-radius:14px;
overflow:hidden;
border:1px dashed rgba(255,255,255,.15);
background:rgba(0,0,0,.12);
display:flex;
align-items:center;
justify-content:center;
}
.preview img{
max-width:100%;
max-height:420px;
display:none;
}
.placeholder{
color:var(--muted);
padding:12px;
text-align:center;
}
.result-card{
background:rgba(15,23,48,.55);
border:1px solid var(--border);
border-radius:14px;
padding:12px;
}
.result-main{
display:flex;
justify-content:space-between;
gap:12px;
align-items:flex-end;
}
.label{color:var(--muted);font-size:12px;font-weight:700}
.pred-class{font-size:26px;font-weight:900;letter-spacing:.3px}
.pred-conf{font-size:20px;font-weight:900}
.bar-wrap{display:flex;align-items:center;gap:10px;margin:12px 0}
.bar{
flex:1;
height:10px;
border-radius:999px;
background:rgba(255,255,255,.1);
overflow:hidden;
}
.bar-fill{
height:100%;
background:linear-gradient(90deg, var(--accent), rgba(122,162,255,.4));
border-radius:999px;
width:0%;
}
.bar-text{color:var(--muted);font-weight:800}
.table{
width:100%;
border-collapse:collapse;
margin-top:6px;
}
.table th,.table td{
text-align:left;
padding:10px 8px;
border-bottom:1px solid rgba(255,255,255,.08);
}
.table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.8px}
.json{
margin-top:10px;
max-height:260px;
overflow:auto;
background:rgba(0,0,0,.28);
border:1px solid rgba(255,255,255,.08);
border-radius:12px;
padding:10px;
font-size:12px;
line-height:1.35;
}
.empty{color:var(--muted);padding:8px 2px}
.links{
margin-top:12px;
display:flex;
gap:12px;
}
.links a{
color:var(--accent);
text-decoration:none;
font-weight:700;
}
.links a:hover{text-decoration:underline}
.footer{margin-top:14px;color:var(--muted)}
.hidden{display:none !important}