:root{--bg: var(--tg-theme-bg-color, #ffffff);--text: var(--tg-theme-text-color, #1a1a1a);--hint: var(--tg-theme-hint-color, #8a8a8e);--link: var(--tg-theme-link-color, #2481cc);--button: var(--tg-theme-button-color, #2481cc);--button-text: var(--tg-theme-button-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #f2f2f7);--section-bg: var(--tg-theme-section-bg-color, #ffffff);--header-bg: var(--tg-theme-header-bg-color, var(--secondary-bg));--destructive: var(--tg-theme-destructive-text-color, #e5484d)}:root[data-theme=dark]{--bg: var(--tg-theme-bg-color, #17212b);--text: var(--tg-theme-text-color, #f5f5f5);--hint: var(--tg-theme-hint-color, #8a95a0);--link: var(--tg-theme-link-color, #6ab3f3);--button: var(--tg-theme-button-color, #5288c1);--button-text: var(--tg-theme-button-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #232e3c);--section-bg: var(--tg-theme-section-bg-color, #202b38);--header-bg: var(--tg-theme-header-bg-color, var(--secondary-bg));--destructive: var(--tg-theme-destructive-text-color, #ff595a)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased}.app{max-width:640px;margin:0 auto;padding:12px 16px 32px}.dev-badge{position:sticky;top:0;z-index:10;margin:-12px -16px 12px;padding:4px 16px;font-size:12px;font-weight:600;letter-spacing:.04em;background:#ffb020;color:#1a1a1a;text-align:center}.screen-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.screen-header h1{margin:0;font-size:22px;font-weight:700}.screen-header .spacer{flex:1}.section-title{margin:20px 0 8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--hint)}.card{background:var(--section-bg);border-radius:12px;padding:12px 14px;margin-bottom:8px;border:1px solid color-mix(in srgb,var(--hint) 18%,transparent)}.task-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--section-bg);color:var(--text);border:1px solid color-mix(in srgb,var(--hint) 18%,transparent);border-radius:12px;padding:12px 14px;margin-bottom:8px;cursor:pointer;font:inherit}.task-row:active{background:var(--secondary-bg)}.task-row .task-main{flex:1;min-width:0}.task-row .task-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-row .task-sub{font-size:13px;color:var(--hint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{background:var(--secondary-bg);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:500}.badge{flex:none;font-size:11px;font-weight:700;letter-spacing:.03em;padding:3px 8px;border-radius:999px;color:#fff;white-space:nowrap}.badge--gray{background:#8a8a8e}.badge--blue{background:#2f7fe0}.badge--green{background:#2ca24b}.badge--red{background:#e5484d}.empty{color:var(--hint);text-align:center;padding:28px 12px;font-size:15px}.error-banner{background:color-mix(in srgb,var(--destructive) 14%,transparent);color:var(--destructive);border:1px solid color-mix(in srgb,var(--destructive) 40%,transparent);border-radius:12px;padding:12px 14px;margin-bottom:12px;font-size:14px}.error-banner button{margin-top:8px}label.field{display:block;margin-bottom:16px}label.field .label{display:block;font-size:13px;font-weight:600;color:var(--hint);margin-bottom:6px}input,textarea,select{width:100%;font:inherit;color:var(--text);background:var(--section-bg);border:1px solid color-mix(in srgb,var(--hint) 30%,transparent);border-radius:10px;padding:11px 12px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--button)}textarea{resize:vertical;min-height:96px}.field.invalid input,.field.invalid textarea,.field.invalid select{border-color:var(--destructive)}.segment{display:flex;gap:0;border:1px solid color-mix(in srgb,var(--hint) 30%,transparent);border-radius:10px;overflow:hidden}.segment button{flex:1;border:none;background:var(--section-bg);color:var(--text);padding:10px;font:inherit;font-weight:600;cursor:pointer}.segment button.active{background:var(--button);color:var(--button-text)}button.btn{width:100%;border:none;border-radius:10px;background:var(--button);color:var(--button-text);font:inherit;font-weight:600;padding:13px;cursor:pointer}button.btn:disabled{opacity:.5;cursor:default}button.btn--secondary{background:var(--secondary-bg);color:var(--text);width:auto;padding:8px 14px}button.btn--ghost{background:transparent;color:var(--link);width:auto;padding:6px 8px}.spinner{color:var(--hint);text-align:center;padding:28px}.task-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:4px}.task-head h1{margin:0;font-size:20px;font-weight:700}.task-meta{color:var(--hint);font-size:14px;margin-bottom:12px}.task-meta a{color:var(--link);text-decoration:none}.conn{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--hint);margin-bottom:12px}.conn .dot{width:8px;height:8px;border-radius:50%;background:var(--hint)}.conn.live .dot{background:#2ca24b}.conn.connecting .dot{background:#2f7fe0}.conn.error .dot{background:#e5484d}.plan-block{background:var(--secondary-bg);border-radius:12px;padding:12px 14px;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5;max-height:40vh;overflow:auto;margin-bottom:12px}.actions{display:flex;gap:8px;margin-bottom:16px}.actions .btn{width:auto;flex:1}.info-block{background:var(--secondary-bg);border-radius:12px;padding:12px 14px;margin-bottom:12px}.success-block{background:color-mix(in srgb,#2ca24b 14%,transparent);color:#1c7d38;border:1px solid color-mix(in srgb,#2ca24b 40%,transparent);border-radius:12px;padding:12px 14px;margin-bottom:12px;font-weight:600}:root[data-theme=dark] .success-block{color:#57d97a}.fail-block{background:color-mix(in srgb,var(--destructive) 14%,transparent);color:var(--destructive);border:1px solid color-mix(in srgb,var(--destructive) 40%,transparent);border-radius:12px;padding:12px 14px;margin-bottom:12px;white-space:pre-wrap;word-break:break-word;font-size:14px}.timeline{margin-top:4px}.event-row{display:flex;gap:10px;padding:8px 0;border-top:1px solid color-mix(in srgb,var(--hint) 15%,transparent)}.event-row .event-time{flex:none;color:var(--hint);font-size:12px;font-variant-numeric:tabular-nums;padding-top:1px;width:62px}.event-row .event-body{flex:1;min-width:0}.event-row .event-label{font-weight:600;font-size:14px}.event-row .event-detail{color:var(--hint);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;word-break:break-word;margin-top:2px}html,body{overflow-x:hidden}body{max-width:100%}.app{width:100%}.screen-header{min-width:0}.screen-header h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-header .btn{flex:none}.task-row{max-width:100%;overflow:hidden}.task-row .task-main{overflow:hidden}.chips,.task-head{max-width:100%}.task-head h1{min-width:0;overflow-wrap:anywhere}.plan-block,.info-block,.success-block,.fail-block,.error-banner{max-width:100%;overflow-wrap:anywhere}.timeline,.event-row,.event-body{min-width:0}.event-body{overflow:hidden}
