/* Volatio SSH skin — derived from the supplied FTP client visual system.
 * Only presentation, not transport code; identical palette, dimensions,
 * input/dialog/button geometry and interactions to the reference FTP UI.
 */
:root[data-theme="light"]{
 --fond:#f4f3ef;--surface:#fff;--surface-2:#faf9f6;--survol:#f3f1ec;
 --texte:#1c1e20;--doux:#6c7074;--pale:#9a9ea2;--ligne:#e6e3dc;
 --accent-ftp:#0f6670;--accent-txt:#fff;--accent-doux:#e2eff0;--sel:#e8f2f3;
 --danger-ftp:#b3262f;--alerte:#9a6a00;--ok-ftp:#2f7d4f;
 --ombre-ftp:0 1px 2px rgba(20,20,20,.04),0 10px 30px rgba(20,20,20,.08);
 --bg-app:var(--fond);--bg-surface:var(--surface);--bg-elevated:var(--surface-2);--border-color:var(--ligne);
 --text-primary:var(--texte);--text-secondary:var(--doux);--text-muted:var(--pale);--border-focus:var(--accent-ftp);
 --status-ok:var(--ok-ftp);--status-err:var(--danger-ftp);
 --soft-grid:transparent;--soft-wash:transparent;
 color-scheme:light;
}
:root[data-theme="dark"]{
 --fond:#111315;--surface:#181b1e;--surface-2:#1c1f23;--survol:#21252a;
 --texte:#e7e5e0;--doux:#9aa0a6;--pale:#6d7379;--ligne:#2a2f34;
 --accent-ftp:#4cb0ba;--accent-txt:#0b1a1c;--accent-doux:#173236;--sel:#1a3236;
 --danger-ftp:#ef6b72;--alerte:#e0b24a;--ok-ftp:#6cc58f;
 --ombre-ftp:0 1px 2px rgba(0,0,0,.3),0 12px 34px rgba(0,0,0,.45);
 --bg-app:var(--fond);--bg-surface:var(--surface);--bg-elevated:var(--surface-2);--border-color:var(--ligne);
 --text-primary:var(--texte);--text-secondary:var(--doux);--text-muted:var(--pale);--border-focus:var(--accent-ftp);
 --status-ok:var(--ok-ftp);--status-err:var(--danger-ftp);
 --soft-grid:transparent;--soft-wash:transparent;
 color-scheme:dark;
}
html,body{background:var(--fond);background-image:none;color:var(--texte);font:14px/1.45 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:normal}
.app-shell{backdrop-filter:none}
[hidden]{display:none!important}
/* Topbar: precise FTP explorer geometry */
.topbar.ftp-sshbar{height:auto;min-height:60px;padding:10px 14px 10px 18px;gap:14px;background:var(--surface);border-bottom:1px solid var(--ligne);box-shadow:none;display:flex;align-items:center;justify-content:initial;flex-shrink:0}
.ftp-ident{display:flex;align-items:center;gap:10px;min-width:0;flex:none;max-width:240px}
.ftp-ident>div{min-width:0;display:flex;flex-direction:column;line-height:1.2}
.ftp-ident strong{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.ftp-ident small{font-size:12px;font-weight:400;color:var(--doux);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.ftp-logo{width:30px;height:30px;border-radius:8px;background:var(--accent-ftp);color:var(--accent-txt);display:grid;place-items:center;flex:none}
.ftp-fil{flex:1;min-width:0;display:flex;align-items:center;gap:12px;overflow:hidden;padding:4px 7px;border-radius:9px;border:1px solid transparent;color:var(--doux);font-size:13px}
#sshPathLabel{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ftp-fil .status-dot{width:7px;height:7px}
.ftp-fil .execution-status{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;color:var(--alerte);white-space:nowrap}
.ftp-trace{font-size:11px;line-height:18px;background:var(--surface-2);color:var(--pale);border-color:var(--ligne)}
.ftp-outils{display:flex;align-items:center;gap:2px;flex:none;position:relative}
.ftp-trait{width:1px;height:22px;background:var(--ligne);margin:0 6px}
.ftp-i{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.ftp-icone{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:9px;border:0;background:transparent;color:var(--doux);cursor:pointer;position:relative;transition:background .15s,color .15s}
.ftp-icone:hover{background:var(--survol);color:var(--texte)}
.ftp-icone:focus-visible{outline:2px solid var(--accent-ftp)}
.ftp-icone.ftp-danger:hover{color:var(--danger-ftp)}
.ftp-text-icon{font-size:11px;font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700}
.ftp-point{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%;background:var(--alerte);box-shadow:0 0 0 2px var(--surface)}
.ftp-menu{position:absolute;z-index:90;right:42px;top:42px;min-width:210px;background:var(--surface);border:1px solid var(--ligne);border-radius:10px;box-shadow:var(--ombre-ftp);padding:5px}
.ftp-menu button{display:block;width:100%;border:0;background:none;text-align:left;padding:8px 10px;border-radius:7px;cursor:pointer;color:var(--texte)}
.ftp-menu button:hover{background:var(--survol)}
/* Homepage: FTP card, centered drop and discreet secondary links */
.auth-overlay{display:flex;min-height:0;align-items:center;justify-content:center;background:var(--fond);padding:32px;overflow-y:auto}
.ftp-accueil-boite{width:min(520px,100%);display:flex;flex-direction:column;align-items:center;gap:17px;margin:auto}
.ftp-marque{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:650;letter-spacing:.02em}
.ftp-depot{width:100%;aspect-ratio:16/10;border:1.5px dashed var(--ligne);border-radius:18px;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s,transform .2s;padding:24px;box-shadow:var(--ombre-ftp)}
.ftp-depot:hover{border-color:var(--pale)}.ftp-depot.active{border-color:var(--accent-ftp);background:var(--accent-doux);transform:scale(1.01)}
.ftp-depot-icone{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--accent-doux);color:var(--accent-ftp);margin-bottom:6px}
.ftp-depot-icone svg{width:24px;height:24px}
.ftp-depot strong{font-size:17px;font-weight:600}.ftp-depot>span:not(.ftp-depot-icone){color:var(--doux)}
.ftp-link{background:none;border:0;color:var(--accent-ftp);cursor:pointer;padding:4px 2px;font-weight:500;text-decoration:none}
.ftp-link:hover{text-decoration:underline}
.ftp-note{color:var(--doux);font-size:12.5px;text-align:center;max-width:420px;margin:2px 0 0}
/* Original FTP dialog layout */
.ftp-dialog{position:fixed;max-width:calc(100vw - 32px);width:min(580px,calc(100vw - 32px));max-height:calc(100vh - 40px);margin:auto;border:0;padding:0;border-radius:16px;background:var(--surface);color:var(--texte);box-shadow:var(--ombre-ftp);overflow:hidden}
.ftp-dialog::backdrop{background:rgba(10,12,14,.38);backdrop-filter:blur(2px)}
.ftp-dialog[open]{animation:ftpApparait .16s ease-out}
@keyframes ftpApparait{from{opacity:0;transform:translateY(6px) scale(.99)}}
.ftp-d-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px 4px}
.ftp-d-head h2{margin:0;font-size:16px;font-weight:600}
.ftp-close{border:0;background:transparent;cursor:pointer;color:var(--doux);font-size:22px;border-radius:8px;width:32px;height:32px}
.ftp-close:hover{background:var(--survol)}
.ftp-d-body{padding:10px 20px 4px;max-height:calc(100vh - 195px);overflow:auto}
.ftp-d-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:16px 20px 18px}
.ftp-d-footer>.ftp-btn:first-child:not(:last-child){margin-right:auto}
.ftp-section{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--pale);font-weight:600;margin:18px 0 10px;display:flex;align-items:center;gap:10px}
.ftp-section::after{content:"";flex:1;height:1px;background:var(--ligne)}
.ftp-section:first-child{margin-top:4px}
.ftp-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;color:var(--doux);font-size:12.5px;font-weight:500}
.ftp-field input,.ftp-field select,.ftp-field textarea{font:13px/1.45 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:38px;width:100%;color:var(--texte);border:1px solid var(--ligne);border-radius:9px;background:var(--surface-2);padding:7px 12px;outline:none}
.ftp-field textarea{resize:vertical;min-height:70px;font-family:ui-monospace,Menlo,Consolas,monospace}
.ftp-field input:focus,.ftp-field select:focus,.ftp-field textarea:focus{border-color:var(--accent-ftp);background:var(--surface)}
.ftp-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ftp-port{max-width:none}
.ftp-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:9px;border:1px solid var(--ligne);background:var(--surface);cursor:pointer;white-space:nowrap;color:var(--texte);font-size:13px}
.ftp-btn:hover{background:var(--survol)}.ftp-btn.ftp-primary{background:var(--accent-ftp);color:var(--accent-txt);border-color:var(--accent-ftp)}
.ftp-hint{color:var(--doux);font-size:12px;line-height:1.5;margin:0 0 10px}
.ftp-check{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer;font-size:13px}
.ftp-check input{width:16px;height:16px;accent-color:var(--accent-ftp)}
.ftp-segments{display:flex;background:var(--surface-2);border:1px solid var(--ligne);border-radius:9px;padding:3px;gap:2px}
.ftp-segments label{flex:1;text-align:center;position:relative;cursor:pointer}
.ftp-segments input{position:absolute;opacity:0;pointer-events:none}
.ftp-segments span{display:block;padding:6px 8px;border-radius:7px;color:var(--doux);font-size:13px}
.ftp-segments input:checked+span{background:var(--surface);color:var(--texte);box-shadow:0 1px 2px rgba(0,0,0,.12)}
/* Terminal surface & chronology follow FTP explorer clean plain background */
.workspace.active{background:var(--fond);padding:0;gap:0}
.terminal-main{border:0;border-radius:0;box-shadow:none;background:var(--surface);min-width:0}
.terminal-viewport{background:var(--surface);background-image:none}
.command-timeline{border:0;border-left:1px solid var(--ligne);border-radius:0;box-shadow:none;background:var(--surface-2)}
.timeline-head{background:var(--surface-2);border-color:var(--ligne)}
.shortcut-rail{border-color:var(--ligne);background:var(--surface-2)}
.shortcut-btn{border-color:var(--ligne);background:var(--surface);color:var(--texte);border-radius:99px}
.shortcut-btn:hover{background:var(--survol)}
.term-system-notice{background:var(--surface-2);border-radius:9px;border-left-color:var(--accent-ftp)}
@media(max-width:850px){.ftp-trace{display:none}.ftp-ident{max-width:155px}.ftp-outils .ftp-trait{display:none}}
@media(max-width:620px){.ftp-ident{display:none}.ftp-fil{min-width:80px}.ftp-sshbar{padding:10px 8px}.ftp-outils{gap:0}.ftp-icone{width:32px;height:34px}.ftp-cols{grid-template-columns:1fr}.ftp-d-footer{flex-wrap:wrap}}
/* Font preference affects the terminal only; header stays identical to FTP. */
.ui-inter-term .terminal-viewport .term-entry, .ui-inter-term .terminal-viewport .prompt-bar{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
