PL
apps/jumphp-ide-remote / ui / css / shell.css · commit b81e652
:root{--bg:#14161c;--panel:#1b1e26;--line:#2b303b;--fg:#e6e8ee;--muted:#8d94a6;--accent:#6aa7ff;--ok:#4cc38a;--warn:#e9b44c;--bad:#ef6b6b;--bar:48px;--tabs:56px}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f5f6f9;--panel:#fff;--line:#d9dde6;--fg:#1c2030;--muted:#5c6579;--accent:#2563eb}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font:15px/1.4 system-ui,sans-serif;display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding:env(safe-area-inset-top) 0 0}.muted{color:var(--muted)}.error{color:var(--bad)}#bar{display:flex;align-items:center;gap:10px;min-height:var(--bar);padding:6px 16px;border-bottom:1px solid var(--line);background:var(--panel)}.title{display:flex;flex-direction:column;min-width:0;flex:1}.title strong,.title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title small{color:var(--muted);font-size:12px}.device{color:var(--muted);font-size:12px;max-width:30%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:10px;height:10px;border-radius:50%;background:var(--muted);flex:none}.dot[data-state=connected]{background:var(--ok)}.dot[data-state=connecting],.dot[data-state=waiting]{background:var(--warn)}.dot[data-state=lost],.dot[data-state=denied]{background:var(--bad)}button{font:inherit;color:#fff;background:var(--accent);border:0;border-radius:8px;padding:10px 16px;min-height:44px;cursor:pointer}button.ghost{background:transparent;color:var(--fg);border:1px solid var(--line);min-height:36px;padding:6px 12px}input{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:44px;width:100%}label{display:block;margin:10px 0}label span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.gate{flex:1;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}.gate[hidden],[hidden]{display:none!important}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;width:100%;max-width:440px}.card h1{font-size:20px;margin:0 0 8px}.card button[type=submit]{width:100%;margin-top:8px}#wait{text-align:center}.spinner{width:28px;height:28px;margin:4px auto 12px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}/* panels: bottom tab bar on phones, side tabs on wide screens */#panels{flex:1;min-height:0;display:flex;flex-direction:column-reverse}#tabs{display:flex;border-top:1px solid var(--line);background:var(--panel);padding-bottom:env(safe-area-inset-bottom)}#tabs button{flex:1;background:transparent;color:var(--muted);border-radius:0;min-height:var(--tabs);border-top:3px solid transparent}#tabs button[aria-selected=true]{color:var(--fg);border-top-color:var(--accent)}#views{flex:1;min-height:0;position:relative}.panel{position:absolute;inset:0;overflow:hidden;display:flex;flex-direction:column}@media (min-width:800px){  #panels{flex-direction:row}  #tabs{flex-direction:column;width:132px;border-top:0;border-right:1px solid var(--line);padding:8px 0}  #tabs button{flex:none;text-align:left;padding:12px 16px;min-height:44px;border-top:0;border-left:3px solid transparent}  #tabs button[aria-selected=true]{border-left-color:var(--accent)}}