/* Shared harbor palette. Desktop pixels, QR codes, and input geometry stay untouched. */
:root{--muted:#a4adb7;--border:#48505e;--accent:#b9c8da;--panel:#24252e;--hover:#343d4c}
body{background:#1b1e28;color:#d4d6cc}
#workspace,.setup-wrap{min-height:100svh;background:linear-gradient(#1c202bdf,#1c202bd9),url('/static/art/ink-tide.png') center bottom/cover fixed}
.topbar{background:#24252ef5;border-bottom-color:#afa78c;color:#d8d5c1}
.wordmark{color:#d8d5c1}.wordmark-tag{color:#a6b5c7;border-color:#626775}
.wordmark .brand-mark.small{width:20px;height:20px;border:0;background:none;color:#c9c2a3}
.wordmark .brand-mark svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1}
.wordmark .compass-point{fill:#96acc440;stroke:#aabed0}
.account,.host-stats{color:#aab8c7}.host-stats strong{color:#dddccf}.host-stats .host-name{color:#c1bda5}
.workspace-bar h1{color:#d8d5c1}.workspace-bar{color:#acb5bf}#vm-count,#focus-label{color:#bdc7ce}.summary strong{color:#d2d6cd}
.workspace-tools{padding:7px 0 9px;border-top:1px solid #c9c2a324;border-bottom:1px solid #c9c2a324}
.audio-controls{color:#b5c3cb}.audio-controls input{accent-color:#a3b9d0}
#workspace button,dialog button,.setup-card button{background:#2b303d;color:#d5d9d4;border-color:#596270}
#workspace button.quiet,dialog button.quiet{background:transparent;border-color:transparent}
#workspace button:hover,dialog button:hover,.setup-card button:hover{background:#394657;border-color:#a0b1c5;color:#f0eee1}
#workspace button.primary,dialog button.primary,.setup-card button.primary{background:linear-gradient(#394455,#2d3545);border-color:#9ca8b4;color:#e2e4da}
#workspace button.primary:hover,dialog button.primary:hover,.setup-card button.primary:hover{background:#47566d;border-color:#c4d2e2}
#workspace select,dialog select{background:#202531;color:#d6dccf;border-color:#626776}
.tile{background:#24252eee;border-color:#8d8b7988}
.tile-head{background:linear-gradient(#303440f2,#242935f2);border-bottom-color:#8d8b7955}
.tile h2{color:#ddd9c3}.vm-status{color:#b1bdc8}.vm-icon,.tile.is-focused .vm-icon{color:#9eb6d0}
.tile.is-focused{border-color:#d3c8a6;box-shadow:inset 0 1px #d3c8a6}
.tile.is-focused .tile-head{background:linear-gradient(#414c5d,#303a4c);border-bottom-color:#b6ae92}
#workspace .pin{border-color:#626b78;color:#c2c9d1}
#workspace .pin[aria-pressed=true]{background:#3b495a;border-color:#b5c4d7;color:#e1e7ed}
.tile-foot,.power-controls{background:#24252ef5;border-color:#77786666}
.mode-text,.power-controls .power-state{color:#b0bcca}.is-focused .mode-text{color:#d3c8a6}
.connection-summary{color:#d0d4c2}
.screen-badge{background:#202530f5;border-color:#73829a;color:#bdcbdc}
.is-focused .screen-badge{background:#3c4b60;color:#e8e6d4;border-color:#c9c2a3}
#workspace .power-controls .shutdown:not(:disabled):hover{color:#efbbaf;background:#362a2b;border-color:#785054}
.screen-placeholder{color:#bcc7d0}
footer{color:#adb9c7}.footer-divider{color:#8b8b77}kbd{color:#d2d7d9;border-color:#657080}
.power-visual{background:#111722;color:#c5d0db}
.power-visual[data-mode=offline]{background:radial-gradient(ellipse at 50% 45%,#293240,#111722 78%)}
.power-visual-title,.power-visual[data-mode=offline] .power-visual-title{color:#d8d5c1}
.power-visual-kicker,.power-visual[data-mode=offline] .power-visual-kicker{color:#a4b6cb}
.power-visual-detail{color:#b6c2d0}.power-visual-corner{color:#98a5b4}
.digital-rain>span{color:#8eabc1}.boot-signal{background:#323e4f}.boot-signal i{background:#c5ccbc}
dialog,.setup-card{color:#d4d6cc;background:#24252efc;border:1px solid #b4ae96;border-top:2px solid #d3c8a6;box-shadow:0 20px 70px #0008}
dialog::backdrop{background:#101521cc}
.dialog-head{padding-bottom:12px;border-bottom:1px solid #b7b09644;gap:12px}.dialog-head h2,.setup-card h1,.setup-card h2{color:#ded9c1}
.setup-wrap{grid-template-columns:minmax(0,1fr)}
.setup-card{position:relative;max-width:100%;min-width:0}.setup-card .eyebrow{color:#a4bdd8}.setup-card p,dialog p{line-height:1.6}
dialog input,dialog textarea,.setup-card input{background:#1a1d27;color:#e0e2d9;border-color:#626776}
dialog input:focus,dialog textarea:focus,.setup-card input:focus{border-color:#a9bdd6;box-shadow:0 0 0 1px #a9bdd633}
dialog input[type=checkbox],.setup-card input[type=checkbox]{accent-color:#a3b9d0}
dialog a{color:#b2c9e6}.dialog-head button{flex-shrink:0}
#toast{background:#2b3340;border-color:#8596ac;color:#e4e5d9}
#users-dashboard section,#files-dialog section{border-color:#8c8c7444}
#users-dashboard fieldset,#transfer-targets{border-color:#626776}
#users-dashboard legend,.assignment-roster>strong{color:#b8c4cf}
.managed-user,.assignment-card{background:#202530;border-color:#626776}
.assignment-roster{background:#2b303d;border-color:#626776}
.assignment-head{background:linear-gradient(#303440,#252b37);border-color:#626776}
.assignment-icon{color:#9eb6d0}.assignment-count,.assignment-empty{color:#a6b2c0}
.assignment-person{background:#303a49;border-color:#65738a;color:#d0d9e3}
.assignment-person.is-admin{background:#444637;border-color:#938e71;color:#ddd9c3}
.assignment-tools p{color:#bac8d7}
#assignment-board .assignment-person[aria-pressed=true]{background:#42516a;border-color:#b7cbe3;box-shadow:0 0 0 1px #b7cbe3}
#assignment-board .is-drop-target{outline-color:#b7cbe3;background:#344354}
#assignment-board button:focus-visible{outline-color:#b7cbe3}
#assignment-board .assignment-destination{color:#c4d1e1}
dialog .delete-account,#remove-assignment{color:#edb9ad;border-color:#92665b}
dialog .delete-account:hover{background:#382825;border-color:#ad7466;color:#f1c6bc}
.download-row{border-color:#535e70}.download-row a{color:#b2c9e6}.download-row span,#files-status{color:#bac8d7}
#transfer-progress{accent-color:#a3b9d0}
#enrollment-qr-account{color:#cbd3e0}
.phone-dialog a{color:#b2c9e6}.phone-route,.phone-os-guide{border-color:#626776;border-radius:0;background:#202530}
.phone-route[data-verified=true]{border-color:#889d89;color:#c2d4bd}
.phone-switch input{background:#454953;border-color:#858e9c}
.phone-switch input:checked{background:#506988;border-color:#b1c7e3}
.phone-switch input:focus-visible{outline-color:#c1d4ee}
.phone-switch input::before{background:#dedfd5}
.phone-signin,.phone-admin-list article{border-color:#8c8c7444}
@media(max-width:700px){#workspace,.setup-wrap{background-attachment:scroll}.workspace-tools{flex-wrap:wrap}.workspace-tools>.audio-controls{margin-left:auto}.wordmark{letter-spacing:.02em}}
