/* Vanilla ports: 21st.dev Split Sign In Form 39096 and macOS Dock 2572.
   Matrix Green reference mapped to the existing deependhq operator tokens. */
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.65 var(--font-ui)}[hidden]{display:none!important}button,input,select,textarea{font:inherit;color:var(--text)}button,a,input,select,textarea{touch-action:manipulation}button,a{min-height:44px}button{cursor:pointer;border:1px solid var(--line-2);border-radius:6px;padding:8px 16px;background:var(--card);color:var(--text)}button:hover{background:var(--card-2)}button:disabled{cursor:not-allowed;color:var(--dim);background:var(--surface)}a{color:var(--build-text);display:inline-flex;align-items:center;gap:8px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--build-text);outline-offset:2px}input,select,textarea{width:100%;min-height:44px;background:var(--bg);border:1px solid var(--line-2);border-radius:4px;padding:8px 12px;font-size:16px}textarea{min-height:88px;resize:vertical}label{display:block;font-weight:600;color:var(--text)}label input,label select,label textarea{display:block;margin-top:8px}input[type=checkbox]{width:44px;height:44px;min-width:44px;margin:0;accent-color:var(--build-text)}h1,h2,h3,p{margin:0 0 16px}h1,h2,h3{line-height:1.15;letter-spacing:-.03em}h1{font-size:clamp(32px,4vw,52px)}h2{font-size:28px}h3{font-size:20px}small,.muted{color:var(--muted)}.skip{position:fixed;top:0;left:20px;transform:translateY(-120%);z-index:10000;background:var(--card);padding:12px}.skip:focus{transform:none}.menubar{min-height:64px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 24px;background:var(--surface);border-bottom:1px solid var(--line)}.menubar .brand{margin-right:auto;text-decoration:none;font-weight:700;color:var(--text)}.brand span{font-weight:400;color:var(--muted)}.wallet{display:flex;gap:16px;font:13px var(--font-mono)}.wallet span:first-child{color:var(--build-text)}.eyebrow{font:12px/1.6 var(--font-mono);letter-spacing:.08em;color:var(--build-text)}.desktop-intro{max-width:1200px;margin:0 auto;min-height:70vh;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;padding:64px 32px 160px}.desktop-intro h1 span{color:var(--build-text)}.desktop-intro p{max-width:45ch}.terminal-summary{padding:24px;border-top:1px solid var(--build-text);border-bottom:1px solid var(--line);font-family:var(--font-mono)}.terminal-summary #identity{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.terminal-summary #session-status{margin-top:16px}.dock{position:fixed;z-index:900;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:12px;padding:16px 24px;border:1px solid var(--line-2);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-3)}@supports(backdrop-filter:blur(12px)){.dock{background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px)}}.dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:112px;padding:8px 4px;border:none;background:transparent;position:relative;font-size:12px;color:var(--text)}.dock .app-icon{width:44px;height:44px;display:grid;place-items:center;color:var(--build-text);transform:scale(var(--scale,1));transform-origin:bottom;transition:transform 120ms ease-out}.app-icon svg{width:32px;height:32px}.dock button[data-open=true]::after{content:'';width:4px;height:4px;position:absolute;bottom:0;background:var(--build-text);border-radius:50%}.window{position:fixed;top:88px;left:max(24px,calc((100vw - 1100px)/2));width:min(1100px,calc(100vw - 48px));height:calc(100dvh - 232px);min-height:280px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow-3);overflow:hidden}.window[data-focused=true]{border-color:var(--build-text)}.window-header{display:flex;align-items:center;gap:4px;min-height:56px;padding:4px 12px;background:var(--card-2);border-bottom:1px solid var(--line);touch-action:none}.window-title{font:700 14px var(--font-ui);margin:0 auto 0 4px;display:flex;align-items:center;gap:8px}.window-header button{padding:8px;min-width:44px;border:none;background:transparent}.window-body{padding:24px;overflow:auto;flex:1;min-height:0}.window-body>p{max-width:65ch}.window-body iframe{width:100%;min-height:380px;height:calc(100% - 100px);border:1px solid var(--line);background:var(--bg)}.window-footer{font:12px var(--font-mono);color:var(--muted);padding:8px 16px;border-top:1px solid var(--line)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0}.primary{background:var(--build);color:var(--ink);border-color:var(--build);font-weight:700}.primary:hover{background:#52eb7b;color:var(--ink)}.notice{padding:16px;background:var(--card-2);border:1px solid var(--line);border-radius:4px;margin:16px 0;color:var(--text);overflow-wrap:anywhere}.notice.bad{color:var(--danger-text)}.dropzone{padding:32px;border:1px dashed var(--line-2);background:var(--bg)}.dropzone input{margin-top:16px;max-width:560px}.steps{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:16px;font:12px var(--font-mono);color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:16px;margin:0 0 24px}.steps [aria-current=step]{color:var(--build-text);font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.operation{margin:16px 0;padding:20px;border:1px solid var(--line);background:var(--bg)}.operation .op-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.operation h3{margin:0}.check{display:flex;align-items:center;gap:8px;min-height:44px}.checks{display:flex;flex-wrap:wrap;gap:16px}.table-scroll{overflow:auto;max-width:100%;margin:16px 0;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:12px 16px;vertical-align:top;border-bottom:1px solid var(--line);min-width:120px}th{background:var(--card-2);font-weight:600;color:var(--text)}td{color:var(--text);overflow-wrap:anywhere;max-width:360px}td small{display:block}td input{min-width:120px}.money{font-family:var(--font-mono);font-size:24px;color:var(--build-text)}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.metrics>div{border-bottom:1px solid var(--line);padding-bottom:16px}.metrics strong{display:block}.progress-list{list-style:none;padding:0;margin:16px 0;font-family:var(--font-mono);font-size:13px}.progress-list li{border-bottom:1px solid var(--line);padding:12px 0}.progress-list strong{color:var(--build-text)}.signin-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:64px 32px}.signin-form{padding:24px 0}.signin-form>p{max-width:42ch}.signin-story{background:var(--surface);border:1px solid var(--line);padding:32px;border-radius:10px}.signin-story h2{font-size:32px}.pipeline{list-style:none;padding:0;margin:32px 0}.pipeline li{padding:20px 0;border-bottom:1px solid var(--line)}.pipeline span,.pipeline strong,.pipeline small{display:block}.pipeline span{font:11px var(--font-mono);color:var(--build-text);margin-bottom:8px}.pipeline strong{font-size:18px}.terminal-foot{font:12px/1.6 var(--font-mono);color:var(--muted)}.back{display:flex;margin-top:16px}.signin-form .cl-rootBox,.signin-form .cl-cardBox{width:100%;max-width:440px}.signin-form .cl-card{box-shadow:none;padding:24px 0;background:var(--bg)}.signin-form .cl-footer{background:var(--surface)}.signin-form .cl-formButtonPrimary{color:var(--ink);min-height:44px}.signin-form .cl-formFieldInput,.signin-form .cl-socialButtonsBlockButton{min-height:44px}.signin-form .cl-socialButtonsBlockButtonText,.signin-form .cl-formFieldLabel,.signin-form .cl-headerTitle{color:var(--text)}.signin-form .cl-footerActionLink,.signin-form .cl-formFieldAction{min-height:44px;display:inline-flex;align-items:center;color:var(--build-text)}.loading::before{content:'•••';display:inline-block;color:var(--build-text);letter-spacing:4px;margin-right:8px;animation:tk-load 1s infinite alternate}@keyframes tk-load{to{transform:translateY(-3px)}}
@media(max-width:64rem){.menubar{gap:8px;padding:8px 16px}.wallet{width:100%;order:2;justify-content:space-between}.dock{gap:4px;padding:12px}.dock button{width:100px}.desktop-intro{gap:32px}.signin-layout{gap:32px}}
@media(max-width:48rem){.brand span{display:none}.menubar{font-size:13px}.menubar button{padding:8px}.desktop-intro{display:block;padding:40px 20px;min-height:auto}.desktop-intro h1{font-size:40px}.terminal-summary{margin-top:32px;padding:20px 0}.dock{position:static;transform:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 20px 32px;box-shadow:none;border-radius:6px;background:var(--surface);backdrop-filter:none}.dock button{width:100%;min-height:100px;font-size:13px}.window{inset:0!important;width:100%;height:100dvh;min-height:0;border-radius:0;z-index:1000!important}.window:not([data-focused=true]){display:none}.window-body{padding:20px}.window-header{min-height:64px}.form-grid{grid-template-columns:minmax(0,1fr)}.metrics{grid-template-columns:minmax(0,1fr)}.dropzone{padding:20px}.signin-layout{grid-template-columns:minmax(0,1fr);padding:32px 20px;gap:24px}.signin-story{padding:24px}.signin-form{padding:0}.signin-form h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.dock .app-icon{transform:none!important}}

/* Matrix wallpaper: static glyph columns from the Matrix Green reference, drawn once, never animated.
   Opacity is low and the ground stays --bg, so every text pair keeps its measured contrast. */
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 40% at 50% 100%,color-mix(in oklab,var(--build) 10%,transparent),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='420' font-family='ui-monospace%2Cmonospace' font-size='15' fill='%2330E060'%3E%3Ctext y='28' fill-opacity='0.8'%3E%3Ctspan x='10' dy='28'%3E1%3C/tspan%3E%3Ctspan x='10' dy='28'%3ED%3C/tspan%3E%3Ctspan x='10' dy='28'%3EE%3C/tspan%3E%3Ctspan x='10' dy='28'%3E9%3C/tspan%3E%3Ctspan x='10' dy='28'%3E1%3C/tspan%3E%3Ctspan x='10' dy='28'%3E5%3C/tspan%3E%3Ctspan x='10' dy='28'%3E7%3C/tspan%3E%3Ctspan x='10' dy='28'%3E1%3C/tspan%3E%3Ctspan x='10' dy='28'%3ED%3C/tspan%3E%3Ctspan x='10' dy='28'%3E2%3C/tspan%3E%3Ctspan x='10' dy='28'%3E2%3C/tspan%3E%3C/text%3E%3Ctext y='28' fill-opacity='0.35'%3E%3Ctspan x='34' dy='28'%3E2%3C/tspan%3E%3Ctspan x='34' dy='28'%3E1%3C/tspan%3E%3Ctspan x='34' dy='28'%3EE%3C/tspan%3E%3Ctspan x='34' dy='28'%3EA%3C/tspan%3E%3Ctspan x='34' dy='28'%3E1%3C/tspan%3E%3Ctspan x='34' dy='28'%3EC%3C/tspan%3E%3C/text%3E%3Ctext y='28' fill-opacity='0.35'%3E%3Ctspan x='58' dy='28'%3EE%3C/tspan%3E%3Ctspan x='58' dy='28'%3E3%3C/tspan%3E%3Ctspan x='58' dy='28'%3E2%3C/tspan%3E%3Ctspan x='58' dy='28'%3EE%3C/tspan%3E%3Ctspan x='58' dy='28'%3EE%3C/tspan%3E%3C/text%3E%3Ctext y='112' fill-opacity='0.8'%3E%3Ctspan x='82' dy='28'%3EE%3C/tspan%3E%3Ctspan x='82' dy='28'%3E7%3C/tspan%3E%3Ctspan x='82' dy='28'%3E9%3C/tspan%3E%3Ctspan x='82' dy='28'%3EE%3C/tspan%3E%3Ctspan x='82' dy='28'%3ED%3C/tspan%3E%3Ctspan x='82' dy='28'%3E1%3C/tspan%3E%3Ctspan x='82' dy='28'%3E7%3C/tspan%3E%3C/text%3E%3Ctext y='140' fill-opacity='1'%3E%3Ctspan x='106' dy='28'%3EB%3C/tspan%3E%3Ctspan x='106' dy='28'%3EE%3C/tspan%3E%3Ctspan x='106' dy='28'%3EE%3C/tspan%3E%3Ctspan x='106' dy='28'%3E9%3C/tspan%3E%3Ctspan x='106' dy='28'%3E3%3C/tspan%3E%3Ctspan x='106' dy='28'%3EA%3C/tspan%3E%3Ctspan x='106' dy='28'%3EP%3C/tspan%3E%3Ctspan x='106' dy='28'%3EA%3C/tspan%3E%3Ctspan x='106' dy='28'%3ED%3C/tspan%3E%3Ctspan x='106' dy='28'%3E3%3C/tspan%3E%3Ctspan x='106' dy='28'%3E5%3C/tspan%3E%3C/text%3E%3Ctext y='56' fill-opacity='1'%3E%3Ctspan x='130' dy='28'%3E3%3C/tspan%3E%3Ctspan x='130' dy='28'%3ED%3C/tspan%3E%3Ctspan x='130' dy='28'%3EE%3C/tspan%3E%3Ctspan x='130' dy='28'%3E5%3C/tspan%3E%3Ctspan x='130' dy='28'%3E2%3C/tspan%3E%3Ctspan x='130' dy='28'%3EP%3C/tspan%3E%3Ctspan x='130' dy='28'%3EB%3C/tspan%3E%3Ctspan x='130' dy='28'%3EE%3C/tspan%3E%3Ctspan x='130' dy='28'%3E4%3C/tspan%3E%3Ctspan x='130' dy='28'%3E2%3C/tspan%3E%3Ctspan x='130' dy='28'%3E1%3C/tspan%3E%3Ctspan x='130' dy='28'%3ED%3C/tspan%3E%3C/text%3E%3Ctext y='56' fill-opacity='0.8'%3E%3Ctspan x='154' dy='28'%3E4%3C/tspan%3E%3Ctspan x='154' dy='28'%3EE%3C/tspan%3E%3Ctspan x='154' dy='28'%3ED%3C/tspan%3E%3Ctspan x='154' dy='28'%3ED%3C/tspan%3E%3Ctspan x='154' dy='28'%3EF%3C/tspan%3E%3Ctspan x='154' dy='28'%3E4%3C/tspan%3E%3Ctspan x='154' dy='28'%3ED%3C/tspan%3E%3Ctspan x='154' dy='28'%3E1%3C/tspan%3E%3Ctspan x='154' dy='28'%3E3%3C/tspan%3E%3Ctspan x='154' dy='28'%3EE%3C/tspan%3E%3C/text%3E%3Ctext y='140' fill-opacity='0.8'%3E%3Ctspan x='178' dy='28'%3E9%3C/tspan%3E%3Ctspan x='178' dy='28'%3E0%3C/tspan%3E%3Ctspan x='178' dy='28'%3EE%3C/tspan%3E%3Ctspan x='178' dy='28'%3E9%3C/tspan%3E%3Ctspan x='178' dy='28'%3EP%3C/tspan%3E%3Ctspan x='178' dy='28'%3EE%3C/tspan%3E%3Ctspan x='178' dy='28'%3E4%3C/tspan%3E%3Ctspan x='178' dy='28'%3E1%3C/tspan%3E%3Ctspan x='178' dy='28'%3E7%3C/tspan%3E%3Ctspan x='178' dy='28'%3E3%3C/tspan%3E%3Ctspan x='178' dy='28'%3EE%3C/tspan%3E%3C/text%3E%3Ctext y='84' fill-opacity='0.55'%3E%3Ctspan x='202' dy='28'%3E4%3C/tspan%3E%3Ctspan x='202' dy='28'%3ED%3C/tspan%3E%3Ctspan x='202' dy='28'%3EP%3C/tspan%3E%3Ctspan x='202' dy='28'%3EE%3C/tspan%3E%3Ctspan x='202' dy='28'%3EC%3C/tspan%3E%3Ctspan x='202' dy='28'%3EF%3C/tspan%3E%3Ctspan x='202' dy='28'%3EE%3C/tspan%3E%3Ctspan x='202' dy='28'%3E2%3C/tspan%3E%3Ctspan x='202' dy='28'%3EF%3C/tspan%3E%3Ctspan x='202' dy='28'%3E2%3C/tspan%3E%3Ctspan x='202' dy='28'%3E9%3C/tspan%3E%3C/text%3E%3Ctext y='28' fill-opacity='1'%3E%3Ctspan x='226' dy='28'%3ED%3C/tspan%3E%3Ctspan x='226' dy='28'%3EP%3C/tspan%3E%3Ctspan x='226' dy='28'%3EE%3C/tspan%3E%3Ctspan x='226' dy='28'%3EA%3C/tspan%3E%3Ctspan x='226' dy='28'%3EA%3C/tspan%3E%3Ctspan x='226' dy='28'%3E0%3C/tspan%3E%3Ctspan x='226' dy='28'%3E4%3C/tspan%3E%3C/text%3E%3C/svg%3E") 0 0/240px 420px;opacity:.09;-webkit-mask-image:radial-gradient(130% 100% at 75% 20%,#000 10%,transparent 80%);mask-image:radial-gradient(130% 100% at 75% 20%,#000 10%,transparent 80%)}
body{position:relative;z-index:0}
.menubar,.signin-story{position:relative}
.menu-user{font:13px var(--font-mono);color:var(--muted);max-width:28ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@supports(backdrop-filter:blur(12px)){.dock{background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:blur(16px) saturate(140%);border-color:color-mix(in srgb,var(--text) 14%,transparent)}}
@media(max-width:48rem){.dock{background:var(--surface);backdrop-filter:none}.menu-user{display:none}}
@media(prefers-reduced-transparency:reduce){.dock{background:var(--surface)!important;backdrop-filter:none!important}}
.window-body .notice{max-width:72ch}
.window-body fieldset>div:not(.dropzone):not(:empty){margin-top:32px}

/* Desktop icons (top-left column, macOS style) and the Recent runs widget fill the wallpaper beside the intro. */
.desktop-icons{display:none}
.recent-runs{margin:0 20px 32px;padding:20px;background:var(--surface);border:1px solid var(--line-2);border-radius:10px}
.recent-runs h2{margin:0 0 12px}
.recent-runs ol{list-style:none;margin:0;padding:0}
.recent-runs li{display:grid;gap:2px;padding:12px 0;border-top:1px solid var(--line)}
.recent-runs li:first-child{border-top:0;padding-top:0}
.recent-runs strong{font-size:14px;overflow-wrap:anywhere}
.recent-runs span,.recent-runs small,.recent-runs .empty{font:13px/1.5 var(--font-mono);color:var(--muted)}
.desktop-icons button{display:flex;flex-direction:column;align-items:center;gap:6px;width:104px;min-height:96px;padding:8px 4px;border:1px solid transparent;border-radius:8px;background:transparent;font-size:12px;line-height:1.3;text-align:center}
.desktop-icons .app-icon{width:52px;height:52px;display:grid;place-items:center;color:var(--build-text);background:var(--surface);border:1px solid var(--line-2);border-radius:12px}
.desktop-icons .app-icon svg{width:28px;height:28px}
.desktop-icons span:last-child{padding:2px 6px;border-radius:4px;background:var(--bg)}
.desktop-icons button:hover{background:color-mix(in srgb,var(--card) 70%,transparent)}
.desktop-icons button[data-selected=true]{background:var(--card-2);border-color:var(--line-2)}
.desktop-icons button[data-selected=true] span:last-child{background:var(--build);color:var(--ink);font-weight:700}
@media(width>48rem){
  main#main{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:24px;padding:24px 24px 176px;align-items:start}
  .desktop-icons{display:flex;flex-direction:column;gap:8px;grid-column:1;grid-row:1/span 2}
  .desktop-intro{grid-column:2;margin:0;padding:24px 0 40px;min-height:0;max-width:none}
  .recent-runs{grid-column:2;margin:0;max-width:440px}
  #windows{grid-column:1/-1}
  @supports(backdrop-filter:blur(12px)){.recent-runs{background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:blur(16px) saturate(140%);border-color:color-mix(in srgb,var(--text) 14%,transparent);box-shadow:var(--shadow-2)}}
}
@media(min-width:73.75rem){
  main#main{grid-template-columns:104px minmax(0,1fr) 300px}
  .desktop-intro{min-height:60vh;gap:48px}
  .recent-runs{grid-column:3;grid-row:1;max-width:none;margin-top:24px}
}
@media(prefers-reduced-transparency:reduce){.recent-runs{background:var(--surface)!important;backdrop-filter:none!important}}
