:root{font-family:Inter,SF Pro Display,Segoe UI,PingFang SC,sans-serif;color:#13201c;background:#15221e;font-synthesis:none}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}button{cursor:pointer}.auth-page{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:76px 24px 62px;isolation:isolate;overflow:hidden}.auth-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-3;background:url(/docker-demo/background-fast.webp) center/cover no-repeat;transform:scale(1.02)}.auth-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(115deg,#09131052,#18272114 50%,#08120f3d),radial-gradient(circle at 50% 42%,rgba(255,255,255,.08),transparent 48%)}.site-mark{position:absolute;top:26px;left:34px;display:flex;align-items:center;gap:10px;color:#ffffffeb;font-size:14px;font-weight:620;letter-spacing:.02em;text-shadow:0 1px 8px rgba(0,0,0,.25)}.mark-dot{width:9px;height:9px;border:2px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:inset 0 0 0 2px #14372a80}.auth-card{width:min(100%,420px);padding:38px 38px 28px;border:1px solid rgba(255,255,255,.58);border-radius:24px;background:linear-gradient(145deg,#ffffffe0,#f7faf8c2);box-shadow:0 28px 80px #04110d40,inset 0 1px #ffffffd9;backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%)}.card-heading{margin-bottom:28px}.eyebrow{margin:0 0 10px;color:#587067;font-size:10px;font-weight:760;letter-spacing:.2em}h1{margin:0;color:#16241f;font-size:clamp(30px,5vw,38px);font-weight:680;letter-spacing:-.035em;line-height:1.15}.intro{margin:10px 0 0;color:#63746e;font-size:14px;line-height:1.6}.auth-form{display:grid}.auth-form label{margin:0 0 8px;color:#344941;font-size:13px;font-weight:640}.auth-form>input,.password-field input{width:100%;height:48px;border:1px solid rgba(52,77,68,.22);border-radius:12px;outline:none;background:#ffffffab;color:#172620;padding:0 14px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.auth-form input::placeholder{color:#87938e}.auth-form input:hover{border-color:#274e3e61;background:#ffffffd1}.auth-form input:focus-visible{border-color:#2f7659;background:#fff;box-shadow:0 0 0 4px #2f765921}.password-label{margin-top:18px}.password-field{position:relative}.password-field input{padding-right:48px}.visibility-button{position:absolute;top:5px;right:5px;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#61736c}.visibility-button:hover{background:#315b4a14;color:#285b47}.visibility-button:focus-visible,.registration-row button:focus-visible,.submit-button:focus-visible{outline:3px solid rgba(47,118,89,.25);outline-offset:2px}.visibility-button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.form-message{min-height:30px;padding-top:9px;font-size:12px;line-height:1.5}.form-message.error{color:#9c3f38}.form-message.notice{color:#42685a}.submit-button{height:49px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:12px;background:#174c39;color:#fff;font-weight:680;box-shadow:0 8px 20px #12402e33;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.submit-button:hover:not(:disabled){transform:translateY(-1px);background:#1c5b44;box-shadow:0 11px 25px #12402e40}.submit-button:disabled{cursor:not-allowed;opacity:.54;box-shadow:none}.registration-row{display:flex;justify-content:center;gap:6px;margin-top:20px;color:#72817b;font-size:13px}.registration-row button{border:0;padding:0 2px;background:transparent;color:#245f49;font-weight:680}.registration-row button:hover{text-decoration:underline;text-underline-offset:3px}.security-note{display:flex;justify-content:center;align-items:center;gap:7px;margin:22px 0 0;padding-top:18px;border-top:1px solid rgba(48,76,65,.12);color:#77867f;font-size:11px}.page-footer{position:absolute;bottom:22px;color:#ffffffa3;font-size:10px;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 5px rgba(0,0,0,.25)}.redirect-state{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.5);border-radius:14px;padding:16px 20px;background:#ffffffd1;color:#355247;box-shadow:0 18px 48px #0003;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.38);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite}.redirect-state .spinner{border-color:#20594233;border-top-color:#205942}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:520px){.auth-page{padding:70px 16px 54px;align-items:center}.site-mark{top:22px;left:22px}.auth-card{padding:30px 22px 24px;border-radius:20px}.page-footer{bottom:17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.workbench-page{min-height:100vh;min-height:100svh;color:#edf5f1;background:linear-gradient(135deg,#081410e6,#12271fad),url(/docker-demo/background-fast.webp) center/cover fixed;padding:0 34px}.workbench-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.12)}.workbench-brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:14px;font-weight:680}.account-controls{display:flex;align-items:center;gap:12px}.account-name{padding:7px 11px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:#ffffff12;font-size:12px}.account-controls button{border:0;border-radius:9px;padding:9px 13px;background:#ffffff1c;color:#fff;font-size:12px;font-weight:650}.account-controls button:hover:not(:disabled){background:#ffffff2e}.account-controls button:focus-visible,.service-action:focus-visible,.workbench-brand:focus-visible{outline:3px solid rgba(142,221,188,.45);outline-offset:3px}.workbench-content{width:min(1040px,100%);margin:0 auto;padding:clamp(64px,9vh,112px) 0 90px}.workbench-content .eyebrow{color:#9bbbab}.workbench-content h1{color:#fff;font-size:clamp(34px,6vw,58px);max-width:720px}.workbench-intro{max-width:620px;margin:16px 0 42px;color:#b9c9c2;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{min-height:260px;display:flex;flex-direction:column;padding:28px;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:linear-gradient(145deg,#ffffff24,#ffffff13);box-shadow:0 24px 68px #0003;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:transform .18s ease,border-color .18s ease,background .18s ease}.service-card:hover{transform:translateY(-3px);border-color:#c0eed86b;background:linear-gradient(145deg,#ffffff2e,#ffffff17)}.service-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#b7ebd224;color:#c2ead7}.service-icon svg{width:25px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.service-copy{flex:1}.service-copy h2{margin:22px 0 8px;color:#fff;font-size:23px}.service-copy p{margin:0;color:#b7c8c0;font-size:14px;line-height:1.65}.service-card form{margin:0}.service-action{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:12px;padding:13px 15px;background:#daf8e9eb;color:#133c2d;text-decoration:none;font-size:13px;font-weight:730}.service-action:hover{background:#fff}.service-loading{display:flex;align-items:center;gap:10px;color:#c8d8d1}.workbench-message{padding:16px 18px;border:1px solid rgba(255,184,174,.3);border-radius:12px;background:#671c1538;color:#ffd5cf}.workbench-footer{position:fixed;left:34px;bottom:22px;color:#e8f3ee8c;font-size:10px;letter-spacing:.08em;text-transform:uppercase}@media(max-width:720px){.workbench-page{padding:0 18px}.workbench-header{min-height:68px}.workbench-content{padding-top:56px}.service-grid{grid-template-columns:1fr}.service-card{min-height:230px}.workbench-footer{position:static;padding:0 0 22px}.account-name{display:none}}
