.mobile-terminal{display:none}
.form-error{margin:12px 0;padding:10px;border:1px solid #6b3440;border-radius:7px;color:var(--red);font-size:12px;background:#27121a}
button:disabled{cursor:wait;opacity:.6}

@media(max-width:720px){
  body{height:100dvh;overflow:hidden;background:#050d17}
  main{height:calc(100dvh - 66px - env(safe-area-inset-top));padding:0;width:100%;overflow:hidden}
  .hero,.runtime,.command-grid{display:none}
  .mobile-terminal{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) minmax(132px,25vh);gap:0;background:linear-gradient(180deg,#071423,#050d17)}
  .mobile-quick{display:flex;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;background:#07111e}
  .mobile-quick::-webkit-scrollbar{display:none}
  .mobile-quick button{flex:0 0 auto;min-width:88px;min-height:40px;padding:9px 14px;border:1px solid #294761;border-radius:7px;color:#cfe6fb;background:#0b1b2c;font-size:12px;font-weight:650}
  .mobile-quick button:active{border-color:var(--cyan);background:#102a3b;transform:translateY(1px)}
  .mobile-focus{min-height:0;padding:10px 12px;overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(180deg,#07111e,#06101b)}
  .terminal-empty{height:100%;min-height:220px;border:1px solid #1d3851;border-radius:10px;display:grid;place-content:center;color:var(--muted);font:10px ui-monospace;letter-spacing:.22em;background:#081522}
  .terminal-empty span{padding:8px 11px;border:1px solid #28506b;border-radius:5px;color:var(--cyan);box-shadow:inset 0 0 14px #54e1c10d}
  .terminal-card{min-height:100%;border-radius:10px;background:#081725;padding:16px 14px 14px;box-shadow:inset 0 0 35px #0b294733}
  .terminal-card .task-name{font-size:16px}.terminal-card .task-channel{font-size:8px}.terminal-card .status{font-size:9px;padding:6px 8px}
  .terminal-card .result{max-height:none;font-size:12px;line-height:1.65}.terminal-card .approval{margin-top:14px}.terminal-card .approval-detail{max-height:190px;font-size:10px}
  .terminal-card details{font-size:11px}.terminal-card .log{max-height:120px}
  .mobile-task-list{min-height:0;padding:7px 8px calc(7px + env(safe-area-inset-bottom));overflow-y:auto;border-top:1px solid var(--line);background:#050c15;box-shadow:0 -12px 32px #02070dbb}
  .mobile-task-row{width:100%;min-height:46px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink);text-align:left}
  .mobile-task-row+.mobile-task-row{margin-top:3px}.mobile-task-row.selected{border-color:#284a68;background:#0b1b2c}.mobile-task-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.mobile-task-row small{color:var(--muted);font:9px ui-monospace}
  .state-lamp{position:relative;width:10px;height:10px;margin:auto;border:2px solid #43627e;border-radius:50%}
  .mobile-task-row.completed .state-lamp{border:0;background:var(--green);box-shadow:0 0 9px #66dda099}
  .mobile-task-row.waiting_approval .state-lamp{border:0;background:var(--amber);box-shadow:0 0 11px #ffc46bbb;animation:terminal-breathe 1.2s ease-in-out infinite}
  .mobile-task-row.running .state-lamp{width:14px;height:14px;border:2px solid #244a67;border-top-color:var(--cyan);border-right-color:var(--cyan);animation:terminal-spin .85s linear infinite;box-shadow:0 0 8px #54e1c144}
  .mobile-task-row.queued .state-lamp{background:var(--blue);border:0;animation:terminal-breathe 1.5s ease-in-out infinite}.mobile-task-row.failed .state-lamp{border:0;background:var(--red)}
  dialog form{padding:22px 18px 18px}dialog h2{font-size:18px;padding-right:40px}dialog p{font-size:12px}.field{margin:13px 0}.field input,.field select{min-height:44px}.primary#run{width:100%;min-height:44px;margin-top:5px}
}
@keyframes terminal-spin{to{transform:rotate(360deg)}}
@keyframes terminal-breathe{50%{opacity:.38;transform:scale(.82)}}
@media(prefers-reduced-motion:reduce){.mobile-task-row .state-lamp{animation:none!important}}
