:root{--bg:#fff;--fg:#1a1a1a;--muted:#6b7280;--card:#f5f6f8;--line:#e5e7eb;--accent:#1f3a5f;--error:#b91c1c;color:var(--fg);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--bg:#111418;--fg:#e8eaed;--muted:#9aa0a6;--card:#1b2026;--line:#2a3038;--accent:#8ab4f8;--error:#f28b82}}*{box-sizing:border-box}body{margin:0}.page{max-width:640px;padding:calc(16px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));margin:0 auto}h1{margin:0 0 8px;font-size:1.4rem}h2{margin:0 0 8px;font-size:1.05rem}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--error)}.center{text-align:center;margin-top:30vh}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.actions{flex-wrap:wrap;gap:8px;display:flex}.button{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-size:.95rem;text-decoration:none;display:inline-block}.button:disabled{opacity:.5;cursor:default}.button.secondary{background:var(--card);color:var(--fg);border:1px solid var(--line)}.spinner{vertical-align:-.1em;border:2px solid;border-right-color:#0000;border-radius:50%;width:.9em;height:.9em;margin-right:6px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.status-line{flex-basis:100%;order:1;margin:0}.button.kakao{color:#191919;background:#fee500;padding:12px 20px;font-weight:600}.login{text-align:center;margin-top:20vh}.card{background:var(--card);border-radius:12px;margin:12px 0;padding:14px 16px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:8px;display:flex}.section-head h2{margin:0}.items{margin:0;padding:0;list-style:none}.items li{border-top:1px solid var(--line);padding:8px 0}.items li:first-child{border-top:none}.items a{color:var(--fg);font-weight:500}.summary{margin:4px 0 0;font-size:.9rem}.items p.small{margin:2px 0 0}.weather p{margin:2px 0}.weather .sky{font-size:1.3rem;font-weight:600}.settings{flex-direction:column;gap:14px;display:flex}.settings fieldset{border:1px solid var(--line);border-radius:8px;padding:10px 12px}.settings label{flex-direction:column;gap:4px;display:flex}.settings label.check{flex-direction:row;align-items:center;gap:8px;padding:4px 0}.settings select{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:8px;padding:8px;font-size:1rem}.center-actions{justify-content:center;margin-top:16px}.user-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.user-row .button{white-space:nowrap;flex-shrink:0}.user-row p.small{margin:2px 0 0}.status-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;display:flex}.cause{overflow-wrap:anywhere}.badge{border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.75rem;display:inline-block}.badge.success{color:var(--muted)}.badge.failed,.badge.interrupted{color:var(--error);border-color:var(--error);font-weight:600}.badge.running{color:var(--fg)}.item-badge{vertical-align:1px;margin-right:6px}.restart{margin-top:6px}.restart p{margin:4px 0 0}
