*{box-sizing:border-box}
:root{
  --bg:#0f172a;--panel:#1e293b;--text:#f1f5f9;--muted:#94a3b8;--accent:#3b82f6;--soft:#334155;
}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif}
.container{max-width:1000px;margin:0 auto;padding:20px}
header{text-align:center;margin-bottom:16px}
h1{margin:0 0 6px 0}
.muted{color:var(--muted);font-size:.9rem}
.search{display:flex;gap:8px;justify-content:center;margin-top:10px}
.search input{flex:1;max-width:520px;padding:10px 12px;border-radius:10px;border:1px solid var(--soft);background:#0b1220;color:var(--text)}
.search button{padding:10px 14px;border:none;border-radius:10px;background:var(--accent);color:white;cursor:pointer}
.search button:hover{filter:brightness(1.1)}
.hint{font-size:.85rem;color:var(--muted)}
.hidden{display:none}
.result{display:grid;gap:16px}
.now{background:var(--panel);padding:16px;border-radius:14px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.nowgrid{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px}
.chartbox{background:var(--panel);padding:16px;border-radius:14px}
.hours{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.hour{background:var(--panel);padding:12px;border-radius:12px}
.hour p{margin:6px 0 0 0}
.footer{margin-top:20px;text-align:center;color:var(--muted);font-size:.9rem}
