:root{--bg: #e8ecf2;--surface: #ffffff;--border: #e0e3e8;--text: #1a1e2c;--text-muted: #6b7280;--accent: #4f68e8;--radius: 12px;--font: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif}html,body{margin:0;padding:0}html{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}body{min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app{max-width:1100px;margin:0 auto;padding:0 24px 48px}.hero{padding:48px 0 28px;text-align:center}.hero h1{font-size:2.2rem;font-weight:700;letter-spacing:-.03em;color:var(--text);margin:0}.subtitle{margin:6px 0 0;color:var(--text-muted);font-size:1rem}.badges{margin-top:14px;display:flex;gap:8px;justify-content:center}.badges img{height:22px}.controls{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-end;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;box-shadow:0 1px 3px #0000000f}.control-group{display:flex;flex-direction:column;gap:5px}.control-group label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.btn-group{display:flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:6px 0 0 6px}.btn-group .btn:last-child{border-radius:0 6px 6px 0}.btn{padding:6px 13px;font-size:.8rem;font-weight:500;font-family:var(--font);border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer;transition:all .15s ease;text-transform:capitalize}.btn:hover{background:#f3f4f6}.btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.btn-small{padding:4px 10px;font-size:.7rem}.gantt-section{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:0 2px 8px #0000000f}.task-lunch{background:repeating-linear-gradient(45deg,#fca5a5,#fca5a5 4px,#fff 4px,#fff 8px)!important;color:#ef4444!important}.task-pink{background:#ec4899!important;color:#fff!important}.task-blue{background:#3b82f6!important;color:#fff!important}.task-gray{background:#9ca3af!important;color:#fff!important}.log-section{margin-top:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:0 1px 3px #0000000f}.log-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border)}.log-header h2{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0}.log-body{max-height:180px;overflow-y:auto;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.75rem}.log-empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-style:italic;font-family:var(--font)}.log-entry{display:flex;gap:12px;padding:5px 16px;border-bottom:1px solid #f3f4f6;animation:log-slide-in .2s ease}.log-entry:hover{background:#f9fafb}.log-time{color:var(--text-muted);flex-shrink:0}.log-event{color:var(--accent);font-weight:600;flex-shrink:0;min-width:140px}.log-detail{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes log-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.footer{margin-top:36px;text-align:center;color:var(--text-muted);font-size:.85rem}
