*{box-sizing:border-box}html,body,#root{height:100%;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background:linear-gradient(180deg,#ffffff0f,#fff0 40%,#0000000f),radial-gradient(1200px 800px at 50% -200px,#93c5fd,#93c5fd00 60%),linear-gradient(135deg,#7dd3fc,#60a5fa 35%,#6366f1);background-attachment:fixed,fixed,fixed;color:#0f172a}:root{--glass-bg: rgba(255,255,255,.3);--glass-brd: rgba(255,255,255,.45);--muted: #334155;--accent: #0ea5e9;--accent-2: #ef4444}.container{max-width:1000px;margin:0 auto;padding:24px 16px}.container.small{max-width:420px}.header{display:flex;align-items:center;justify-content:space-between;padding:8px 0 20px;color:#f8fafc}.title{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em}.subtitle{opacity:.9;font-size:14px}.hero{border-radius:16px;padding:18px;background:linear-gradient(120deg,#ffffff2e,#ffffff0f);border:1px solid var(--glass-brd);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 16px 30px #02061726}.section{margin:18px 0}.search{display:flex;gap:10px}.search input{flex:1;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.35);background:#ffffff40;color:#0f172a;outline:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.search input::placeholder{color:#0f172ab3}button{padding:10px 14px;cursor:pointer;border:none;border-radius:10px;background:var(--accent);color:#fff;font-weight:600;box-shadow:0 8px 16px #0284c740;transition:transform .06s ease,filter .12s ease}button:hover{transform:translateY(-1px);filter:brightness(1.05)}.btn{padding:10px 14px;border-radius:10px;color:#fff;font-weight:700;box-shadow:0 8px 16px #0206172e}.btn-refresh{background:#10b981;box-shadow:0 8px 16px #10b98147}.btn-refresh:hover{filter:brightness(1.06)}.btn-fav{background:#f59e0b;box-shadow:0 8px 16px #f59e0b52}.btn-fav:hover{filter:brightness(1.06)}.btn-search{background:#6366f1;box-shadow:0 8px 16px #6366f152}.btn-search:hover{filter:brightness(1.06)}.btn-logout{background:#ef4444;box-shadow:0 8px 16px #ef444447}.btn-logout:hover{filter:brightness(1.06)}.btn-danger{background:#ef4444;box-shadow:0 8px 16px #ef444447}.btn-danger:hover{filter:brightness(1.06)}.card{border-radius:16px;padding:16px;background:var(--glass-bg);border:1px solid var(--glass-brd);box-shadow:0 20px 30px #0206171f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card .muted{color:var(--muted);font-size:13px}.markdown{line-height:1.6;font-size:15px}.markdown p{margin:0 0 8px}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:8px 0 6px;line-height:1.2}.markdown h1{font-size:20px}.markdown h2{font-size:18px}.markdown h3{font-size:16px}.markdown ul,.markdown ol{padding-left:20px;margin:6px 0}.markdown li{margin:2px 0}.markdown a{color:#2563eb;text-decoration:none}.markdown a:hover{text-decoration:underline}.markdown code{background:#02061714;padding:1px 4px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.markdown pre{background:#020617d9;color:#e5e7eb;padding:10px 12px;border-radius:10px;overflow:auto}.markdown pre code{background:transparent;padding:0}.chips{display:flex;gap:8px}.chip{padding:6px 10px;border-radius:999px;border:1px solid var(--glass-brd);background:#ffffff8c;color:#0f172a;font-size:12px;cursor:pointer}.chip.active{background:var(--accent-2);color:#fff;border-color:transparent}h2{margin:0 0 8px;color:#f8fafc;font-weight:800;letter-spacing:-.02em}.error{color:#fef2f2;background:#ef444440;border:1px solid rgba(239,68,68,.45);padding:10px 12px;border-radius:10px}.notice{color:#064e3b;background:#10b9812e;border:1px solid rgba(16,185,129,.35);padding:10px 12px;border-radius:10px}.form{display:flex;flex-direction:column;gap:12px}label{display:flex;flex-direction:column;gap:4px}.card::-webkit-scrollbar,.forecast-scroll::-webkit-scrollbar{height:8px}.card::-webkit-scrollbar-thumb,.forecast-scroll::-webkit-scrollbar-thumb{background:#fff6;border-radius:99px}.daily-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}@media (max-width: 640px){.daily-grid{grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);overflow-x:auto;padding-bottom:4px}}
