@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg:#f4f7fb;--surface:#fff;--surface2:#f7f9fc;--line:#e3e9f2;--text:#152033;--muted:#6b778c;--accent:#0aa67a;--accent2:#087c5d;--danger:#e5484d;--shadow:0 14px 40px #202e4214}[data-theme=dark]{--bg:#080d14;--surface:#0f1621;--surface2:#141d2a;--line:#243043;--text:#e8eef7;--muted:#8d9bb0;--accent:#16c995;--accent2:#0fa579;--shadow:0 18px 50px #0000004d}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:DM Sans,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}.muted{color:var(--muted)}.eyebrow{letter-spacing:.18em;color:var(--accent);align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.eyebrow svg{width:14px}.brand{letter-spacing:-.03em;align-items:center;gap:12px;height:80px;font-size:21px;font-weight:700;display:flex}.brand span{color:var(--accent)}.brand small{letter-spacing:.2em;color:var(--muted);margin-top:2px;font-size:8px;display:block}.brand-mark{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 11%,transparent);border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.brand-mark svg{width:21px}.brand.large{height:auto;font-size:26px}.brand.large .brand-mark{width:48px;height:48px}.login-page{grid-template-columns:1.15fr .85fr;min-height:100vh;display:grid}.login-hero{color:#f4fffb;background:#08110f;flex-direction:column;padding:7vh 8vw;display:flex;position:relative;overflow:hidden}.grid-bg{pointer-events:none;background-image:linear-gradient(#25ffbb0a 1px,#0000 1px),linear-gradient(90deg,#25ffbb0a 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.login-hero:after{content:"";background:var(--accent);filter:blur(170px);opacity:.11;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-120px;right:-120px}.hero-copy{z-index:1;max-width:650px;margin:auto 0;position:relative}.hero-copy h1{letter-spacing:-.055em;margin:20px 0 24px;font-size:clamp(45px,5vw,78px);line-height:1.03}.hero-copy h1 em{color:#42d7ac;font-style:normal}.hero-copy>p:not(.eyebrow){color:#9db3ac;max-width:580px;font-size:18px;line-height:1.7}.feature-row{gap:30px;margin-top:45px;display:flex}.feature-row span{color:#b8ccc6;align-items:center;gap:9px;font-size:13px;display:flex}.feature-row svg{color:#42d7ac;width:18px}.login-panel{background:var(--surface);place-items:center;padding:40px;display:grid}.login-card{gap:24px;width:min(420px,100%);display:grid}.login-card h2{margin:6px 0;font-size:36px}.login-card p{margin:0}.login-card label,.modal label{gap:8px;font-size:13px;font-weight:600;display:grid}.login-card input,.modal input,.modal select,.modal textarea,.toolbar-actions select{border:1px solid var(--line);background:var(--surface2);width:100%;color:var(--text);border-radius:9px;outline:none;padding:13px 14px}.login-card input:focus,.modal input:focus,.modal textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}button,.icon-btn,.row-actions a{cursor:pointer;background:0 0;border:0}.primary{background:var(--accent);border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-weight:700;display:inline-flex;color:#042119!important}.primary:hover{background:var(--accent2);color:#fff!important}.primary svg{width:17px}.wide{width:100%;padding:14px}.secure-note{text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.secure-note svg{width:14px}.error{color:#ef4444;background:#ef444418;border:1px solid #ef44443d;border-radius:7px;padding:10px;font-size:13px}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);z-index:10;flex-direction:column;width:260px;padding:0 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar nav{flex:1;overflow:auto}.sidebar nav p{letter-spacing:.16em;color:var(--muted);margin:22px 12px 7px;font-size:9px;font-weight:700}.sidebar button{text-align:left;border-radius:8px;align-items:center;gap:11px;width:100%;margin:2px 0;padding:10px 12px;font-size:13px;display:flex}.sidebar button:hover,.sidebar button.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.sidebar button svg{width:18px}.sidebar button i{border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px}.sidebar button span{flex-direction:column;font-weight:600;display:flex}.sidebar button small{color:var(--muted);margin-top:2px;font-size:10px;font-weight:400}.sidebar-bottom{padding:14px 0}.profile{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:8px;padding:16px 8px 4px;display:flex}.profile>span,.avatar{background:color-mix(in srgb,var(--accent) 16%,var(--surface));width:34px;height:34px;color:var(--accent);border-radius:9px;place-items:center;font-size:12px;font-weight:700;display:grid}.profile div{font-size:13px;font-weight:600}.profile small{color:var(--muted);font-size:10px;font-weight:400;display:block}.workspace{grid-column:2;min-width:0}.page{max-width:1500px;margin:auto;padding:42px clamp(25px,4vw,65px)}.page>header{justify-content:space-between;align-items:flex-start;margin-bottom:35px;display:flex}.page h1{letter-spacing:-.04em;margin:7px 0;font-size:34px}.status{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:99px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;display:flex}.status i{background:var(--accent);width:7px;height:7px;box-shadow:0 0 8px var(--accent);border-radius:50%}.status i.warn{background:#eaa52d}.stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:42px;display:grid}.stats article{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:15px;padding:20px;display:flex}.stats article>span{width:44px;height:44px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-radius:9px;place-items:center;display:grid}.stats strong{font-size:24px;display:block}.stats small{color:var(--muted)}.section-title{justify-content:space-between;display:flex}.section-title h2,.admin-panel h2{margin:0;font-size:20px}.section-title p{margin:7px 0 20px;font-size:13px}.connection-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.connection-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px;transition:all .2s}.connection-card:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));transform:translateY(-2px)}.connection-top{justify-content:space-between;display:flex}.server-icon{background:color-mix(in srgb,currentColor 10%,transparent);border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.server-icon svg{width:21px}.protocol{letter-spacing:.08em;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:5px;height:min-content;padding:5px 7px;font:600 9px JetBrains Mono}.connection-card h3{margin:18px 0 5px}.connection-card>p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font:11px JetBrains Mono;overflow:hidden}.card-actions{gap:8px;margin-top:20px;display:flex}.card-actions .primary{flex:1}.icon-btn{border:1px solid var(--line);border-radius:8px;width:40px}.icon-btn svg{width:17px}.empty{text-align:center;border:1px dashed var(--line);color:var(--muted);border-radius:12px;grid-column:1/-1;padding:60px}.empty>svg{width:32px}.loading{height:100vh;color:var(--muted);place-items:center;display:grid}.console-page{background:var(--bg);flex-direction:column;height:100vh;display:flex}.console-toolbar{background:var(--surface);border-bottom:1px solid var(--line);flex:0 0 76px;justify-content:space-between;align-items:center;height:76px;padding:0 24px;display:flex}.console-toolbar>div:first-child{align-items:center;gap:12px;display:flex}.console-toolbar h2{margin:0;font-size:15px}.console-toolbar p{color:var(--muted);margin:4px 0;font:10px JetBrains Mono}.toolbar-actions{align-items:center;gap:8px;display:flex}.toolbar-actions>button,.toolbar-actions select{border:1px solid var(--line);background:var(--surface2);border-radius:7px;align-items:center;gap:7px;width:auto;min-height:36px;padding:7px 10px;display:flex}.toolbar-actions svg{width:17px}.terminal-wrap{border:1px solid var(--line);min-height:0;box-shadow:var(--shadow);background:#07120e;border-radius:10px;flex:1;margin:14px;padding:14px;overflow:hidden}.terminal-wrap .xterm{height:100%}.rdp-wrap{color:#687385;background:#030507;flex:1;place-items:center;min-height:0;display:grid;overflow:auto}.rdp-wrap>div{max-width:100%}.files-page{max-width:none;padding:0}.pathbar{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin:20px 24px 12px;padding:5px;display:flex}.pathbar button{border-right:1px solid var(--line);width:36px}.pathbar svg{width:16px}.pathbar code{flex:1;padding:8px 12px;font-size:12px}.file-table{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:0 24px;overflow:hidden}.file-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(240px,1fr) 100px 90px 180px 90px;align-items:center;padding:10px 14px;font-size:12px;display:grid}.file-row.head{color:var(--muted);background:var(--surface2);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.file-name{text-align:left;align-items:center;gap:10px;display:flex}.file-name svg{width:17px;color:var(--accent)}.row-actions{justify-content:flex-end;gap:9px;display:flex}.row-actions svg{width:16px}.row-actions a{color:var(--text)}.row-actions button{color:var(--danger)}.empty-line{text-align:center;color:var(--muted);padding:20px}.tabs{border-bottom:1px solid var(--line);gap:5px;margin-bottom:22px;display:flex}.tabs button{color:var(--muted);border-bottom:2px solid #0000;align-items:center;gap:7px;padding:11px 14px;display:flex}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.tabs svg{width:16px}.admin-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 20px;display:flex}.admin-list{padding:6px 18px}.admin-row{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr auto 36px;align-items:center;gap:12px;padding:12px 0;display:grid}.admin-row>div strong,.admin-row>div small{display:block}.admin-row small{color:var(--muted);margin-top:3px;font-size:11px}.danger-icon{color:var(--danger)}.danger-icon svg{width:17px}.modal-bg{z-index:50;background:#000a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line);width:min(620px,100%);box-shadow:var(--shadow);border-radius:14px;padding:25px}.modal h2{margin:0 0 20px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.span2{grid-column:1/-1}.modal textarea{resize:vertical;font-family:JetBrains Mono;font-size:11px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.modal-actions button{border:1px solid var(--line);border-radius:8px;padding:10px 15px}.share-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;padding:18px;display:grid}.share-card{border:1px solid var(--line);border-radius:10px;padding:16px}.share-card>div:first-child{align-items:center;gap:10px;margin-bottom:14px;display:flex}.share-card strong,.share-card small{display:block}.share-card small{color:var(--muted);font-size:10px}.share-card label{border-top:1px solid var(--line);gap:9px;padding:9px;font-size:12px;display:flex}.share-card label span{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-card label svg{width:14px}.share-card label small{width:100%;margin-left:22px}.share-card>.primary{width:100%;margin-top:13px}.audit-list{padding:8px 20px}.audit-list>div{border-bottom:1px solid var(--line);grid-template-columns:35px 1fr auto;align-items:center;padding:11px 0;display:grid}.audit-list svg{width:16px;color:var(--accent)}.audit-list strong,.audit-list small{font-size:12px;display:block}.audit-list small,.audit-list time{color:var(--muted);font-size:10px}@media (max-width:800px){.login-page{grid-template-columns:1fr}.login-hero{display:none}.shell{display:block}.sidebar{width:100%;height:auto;position:relative}.sidebar nav,.sidebar-bottom{display:none}.workspace{width:100%}.stats{grid-template-columns:1fr}.page{padding:25px 16px}.page>header{display:block}.page>header .status{width:max-content;margin-top:15px}.console-toolbar{flex-wrap:wrap;height:auto;min-height:70px;padding:8px 12px}.toolbar-actions .status,.toolbar-actions select{display:none}.file-row{grid-template-columns:1fr 70px 60px}.file-row>:nth-child(4){display:none}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.tabs{overflow:auto}.tabs button{white-space:nowrap}.admin-page{padding:20px 10px}}
.password-control{z-index:20;width:228px;position:fixed;bottom:118px;left:16px}.password-control>button{background:var(--surface);width:100%;color:var(--text);cursor:pointer;text-align:left;border:0;border-radius:8px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;display:flex}.password-control>button:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.password-control>button svg{width:18px}.password-modal .modal-title{align-items:center;gap:12px;margin-bottom:22px;display:flex}.password-modal .modal-title h2{margin:0}.password-modal .modal-title p{margin:4px 0 0;font-size:12px}.password-grid{grid-template-columns:1fr}.password-grid .error{margin:0}.success-message{text-align:center;color:var(--muted);padding:28px 15px}.success-message>svg{width:36px;height:36px;color:var(--accent);margin-bottom:10px}.success-message strong{color:var(--text);display:block}.success-message p{font-size:13px}@media (max-width:800px){.password-control{width:auto;position:fixed;bottom:14px;left:auto;right:14px}.password-control>button{box-shadow:var(--shadow);border:1px solid var(--line)}.password-control>button svg{margin:0}.password-control>button{justify-content:center;width:44px;height:44px;padding:0;font-size:0}}
.account-email-form{grid-template-columns:1fr 1fr;gap:12px;display:grid}.account-email-form h3{grid-column:1/-1;align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.account-email-form h3 svg,.password-heading svg{width:17px;color:var(--accent)}.account-email-form label{gap:7px;font-size:12px;font-weight:600;display:grid}.account-email-form input{border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:8px;padding:11px}.account-email-form .error,.account-email-form .success-inline{grid-column:1/-1;margin:0}.success-inline{color:var(--accent);font-size:12px}.account-email-form .primary{grid-column:2}.account-separator{border-top:1px solid var(--line);margin:22px 0 17px}.password-heading{align-items:center;gap:8px;margin:0 0 14px;font-size:14px;display:flex}@media (max-width:600px){.account-email-form{grid-template-columns:1fr}.account-email-form h3,.account-email-form .error,.account-email-form .success-inline,.account-email-form .primary{grid-column:1}}
.connection-control{z-index:19;width:228px;position:fixed;bottom:158px;left:16px}.connection-control>button{background:var(--surface);width:100%;color:var(--text);cursor:pointer;text-align:left;border:0;border-radius:8px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;display:flex}.connection-control>button:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.connection-control>button svg{width:18px}.connection-manager{width:min(720px,100%);max-height:88vh;overflow:auto}.manager-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.manager-head h2,.manager-head h3{margin:0}.manager-head h3{align-items:center;gap:8px;display:flex}.manager-head h3 svg{width:18px;color:var(--accent)}.manager-head p{margin:5px 0 0;font-size:12px}.manager-head>button svg{width:20px}.add-connection{margin-bottom:14px}.owned-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.owned-list article{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr 34px 34px;align-items:center;gap:10px;padding:11px 13px;display:grid}.owned-list article:last-child{border-bottom:0}.owned-list strong,.owned-list small{display:block}.owned-list small{color:var(--muted);margin-top:3px;font-size:10px}.owned-list button svg{width:17px}.share-overlay{background:#0008;border-radius:14px;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.share-dialog{background:var(--surface);border:1px solid var(--line);border-radius:11px;width:min(500px,100%);max-height:76vh;padding:20px;overflow:auto}.user-share-list{border:1px solid var(--line);border-radius:8px;max-height:330px;overflow:auto}.user-share-list label{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:11px;padding:10px 12px;display:flex}.user-share-list label:last-child{border-bottom:0}.user-share-list strong,.user-share-list small{display:block}.user-share-list small{color:var(--muted);margin-top:2px;font-size:10px}@media (max-width:800px){.connection-control{width:auto;position:fixed;bottom:14px;left:auto;right:66px}.connection-control>button{width:44px;height:44px;box-shadow:var(--shadow);border:1px solid var(--line);justify-content:center;padding:0;font-size:0}}
.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}
