:root{color-scheme:dark;--bg:#080808;--panel:#151515;--raised:#242424;--line:#383838;--ink:#f5f5f5;--muted:#b9b9b9;--red:#e8143c;--green:#65d5a2;font:14px/1.45 "Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer;color:var(--ink);background:var(--raised);border:1px solid var(--line);border-radius:4px;padding:8px 12px}button:hover{background:#303030}button:disabled{cursor:default;opacity:.55}button.primary{background:var(--red);border-color:var(--red);color:white;font-weight:600}input,select,textarea{background:#0c0c0c;color:var(--ink);border:1px solid #505050;border-radius:3px;padding:9px 10px;min-width:0}input:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ff7894;outline-offset:2px}label{display:grid;gap:6px}h1,h2,h3,p{margin:0}h1{font-size:25px}h2{font-size:18px}h3{font-size:15px}.muted{color:var(--muted)}.small{font-size:12px}[hidden]{display:none!important}.login-stage{min-height:100dvh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 80% 15%,#421425,transparent 60%),#090909}.login-box{width:min(440px,100%);border:1px solid var(--line);padding:30px;display:grid;gap:18px;background:#151515;box-shadow:0 22px 90px #0008;border-radius:9px}.login-logo{width:125px;height:45px;object-fit:contain;object-position:left}.login-tabs{display:flex;gap:8px}.login-tabs button[aria-selected=true]{border-color:var(--red);background:#4b192a}#auth-form{display:grid;gap:14px}#auth-error{color:#ff9eb2;min-height:20px}#desktop{height:100dvh;overflow:hidden;position:relative;background:linear-gradient(140deg,transparent 46%,#871c3244 46.2%,#e8143c66 46.4%,transparent 46.6%),radial-gradient(ellipse at 80% 20%,#32192666,transparent 50%),#0b0b0b}.desktop-brand{position:absolute;inset:20px 25px auto;display:flex;align-items:center;gap:20px;pointer-events:none}.desktop-brand img{width:150px;height:50px;object-fit:contain}.desktop-brand span{font-size:22px;font-style:italic}.desktop-brand b{margin-left:auto;color:#ababab;font-size:11px;letter-spacing:.12em;font-weight:400}#desktop-icons{position:absolute;top:105px;left:18px;display:grid;gap:10px;width:140px}.desktop-icon{background:transparent;border:1px solid transparent;display:flex;align-items:center;gap:12px;text-align:left;padding:10px 8px;min-height:49px}.desktop-icon:hover{background:#292929aa;border-color:#555555}.app-symbol{display:grid;place-items:center;width:30px;flex-shrink:0;height:30px;font-size:24px;line-height:1;color:#f24e6e}.desktop-icon span:last-child{font-size:13px}.app-window{position:absolute;top:105px;left:180px;width:min(900px,calc(100vw - 205px));height:min(620px,calc(100dvh - 180px));min-width:330px;min-height:240px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #454545;border-radius:7px;box-shadow:0 20px 60px #0009;background:#111111}.app-window.focused{border-color:#747474}.app-window.maximized{inset:76px 8px 62px!important;width:auto!important;height:auto!important;border-radius:3px}.window-titlebar{touch-action:none;user-select:none;display:flex;justify-content:space-between;align-items:center;padding-left:14px;min-height:40px;gap:10px;background:linear-gradient(#252525,#1b1b1b);border-bottom:1px solid var(--line)}.window-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.window-controls{display:flex;align-self:stretch}.window-controls button{padding:0;width:43px;border:0;background:transparent;border-radius:0;font-size:21px}.window-controls button:hover{background:#383838}.window-controls button:last-child:hover{background:#c71e40}.window-body{padding:18px;flex:1;min-height:0;overflow:auto}.window-status{padding:6px 12px;border-top:1px solid var(--line);background:#181818;color:var(--muted);font-size:11px}.window-body .stack{display:grid;gap:15px}.window-body .row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.window-body .between{justify-content:space-between}.window-body .grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.window-body .group{border:1px solid var(--line);padding:15px;background:#161616;display:grid;gap:12px}.window-body .notice{padding:12px;border-left:3px solid var(--red);background:#211c28;color:#d1dce4}.window-body .empty{display:grid;place-items:center;align-content:center;text-align:center;gap:13px;min-height:210px}.window-body .empty-symbol{font-size:40px;color:#d53e60}.window-body table{width:100%;border-collapse:collapse;font-size:13px}.window-body th{text-align:left;background:#242424;font-weight:500;padding:10px}.window-body td{padding:11px 10px;border-bottom:1px solid var(--line)}.window-body .table-wrap{overflow-x:auto}.window-body form{display:grid;gap:14px}.window-body .badge{display:inline-block;padding:3px 8px;border-radius:3px;color:#f5c596;background:#493627;font-size:11px}.window-body .message{color:#89e2b6;min-height:20px}.window-body .danger{border-color:#a43b54;color:#ffb2c2}.window-body .actions{display:flex;gap:10px;flex-wrap:wrap}.window-body .account-email{color:var(--muted);padding:9px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}#start-menu{position:absolute;left:12px;bottom:66px;width:355px;padding:18px;background:#191919f5;border:1px solid #53616e;border-radius:8px;box-shadow:0 10px 50px #000a;z-index:10000;display:grid;gap:17px;max-height:calc(100dvh - 90px);overflow:auto}#start-menu input{width:100%}#start-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}#start-apps button{display:grid;justify-items:center;gap:8px;padding:13px 5px;background:#242424;border:1px solid #414141;font-size:11px}#start-menu footer{border-top:1px solid var(--line);padding-top:12px;display:flex;justify-content:space-between;gap:10px;align-items:center}#taskbar{position:absolute;inset:auto 0 0;min-height:52px;display:flex;align-items:center;gap:14px;padding:7px 12px;background:#151515f5;border-top:1px solid #414141;z-index:11000}#start-button{font-size:20px;line-height:1;font-weight:800;font-style:italic;background:#64172a;border-color:#e8143c}#start-button span{color:#ff577c}#tasks{display:flex;gap:6px;flex:1;min-width:0;overflow:auto}#tasks button{white-space:nowrap;font-size:12px;padding:7px 12px;border-bottom:2px solid transparent}#tasks button.active{border-bottom-color:var(--red);background:#2b2b2b}#session-user{font-size:12px;white-space:nowrap}.connection{color:var(--green);font-size:11px;white-space:nowrap}#clock{font-size:13px}#toast{position:absolute;right:18px;bottom:70px;max-width:min(420px,90vw);border:1px solid #555555;background:#242424;padding:13px 17px;border-radius:5px;z-index:12000;box-shadow:0 10px 30px #0007}
#start-button{font-size:14px;font-style:normal;font-weight:600;padding:9px 14px}#start-button span{color:var(--ink)}#start-menu{width:325px;background:#191919;gap:13px}#start-menu h2{font-size:14px;color:var(--muted);font-weight:500}#start-apps{display:grid;grid-template-columns:1fr;gap:3px}#start-apps button{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:12px 10px;background:transparent;border-color:transparent;font-size:13px;text-align:left}#start-apps button:hover{background:#262626;border-color:#505050}.menu-symbol{color:#f15b78;width:23px;text-align:center;font-size:20px}.menu-arrow{margin-left:auto;color:var(--muted)}#start-menu footer{font-size:12px}
@media(max-width:700px){.desktop-brand{inset:13px 14px auto;gap:10px}.desktop-brand img{width:90px;height:35px}.desktop-brand span{font-size:17px}.desktop-brand b{display:none}#desktop-icons{top:75px;left:10px;grid-template-columns:repeat(3,1fr);width:calc(100% - 20px);gap:3px}.desktop-icon{display:grid;justify-items:center;text-align:center;gap:7px}.app-window{left:8px!important;top:205px!important;width:calc(100vw - 16px);height:calc(100dvh - 270px);min-width:0}.app-window.maximized{inset:60px 5px 62px!important}.window-body{padding:12px}.window-body .grid2{grid-template-columns:1fr}#session-user,.connection{display:none}#taskbar{gap:7px}#start-menu{width:min(325px,calc(100% - 24px))}#start-apps{grid-template-columns:1fr}}

.acp{display:grid;gap:14px}.acp-tabs{border-bottom:1px solid var(--line);padding-bottom:10px}.acp-tabs .selected{border-color:var(--red);background:#4b192a}.member-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.member-toolbar>input{flex:1;min-width:180px}.member-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1fr);gap:16px;margin-top:12px}#member-list{max-height:350px;overflow:auto}#member-list th{position:sticky;top:0}#member-list tr[data-member]{cursor:pointer}#member-list tr[data-member]:hover{background:#242424}#member-list tr.selected{background:#482031}#member-detail{align-content:start;min-width:0}.customer-meta{margin:0;display:grid;gap:4px}.customer-meta dt{color:var(--muted);font-size:12px}.customer-meta dd{margin:0 0 7px;overflow-wrap:anywhere;font-size:13px}.online{color:var(--green)}.empty-list{padding:20px}.danger-text{color:#ff9eb2}details{border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;margin-bottom:10px}#acp-content>.group{margin-bottom:14px}@media(max-width:850px){.member-layout{grid-template-columns:1fr}}

.explorer{display:grid;gap:12px}.explorer-tools{display:flex;gap:6px;flex-wrap:wrap}.explorer-tools input{flex:1;min-width:140px}.explorer-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:12px;min-height:200px}#folder-tree{border:1px solid var(--line);background:#0c0c0c;padding:5px;overflow:auto;max-height:320px}#folder-tree button{background:transparent;border:0;text-align:left;padding:7px 4px;font-size:12px}#folder-tree button:hover{background:#303030}.tree-line{display:flex;align-items:center}.tree-label{white-space:nowrap}.tree-expand{width:22px;flex-shrink:0}#file-list{height:270px;overflow:auto;border:1px solid var(--line)}#file-list th{position:sticky;top:0}#file-list td{padding:8px}#file-list tr[data-entry]:hover{background:#242424}#folder-policy input[type=checkbox]{width:18px;height:18px;accent-color:var(--red)}@media(max-width:700px){.explorer-layout{grid-template-columns:1fr}#folder-tree{max-height:140px}}

.explorer.rights-edit{grid-template-columns:200px minmax(0,1fr);align-items:start}.rights-edit>h2,.rights-edit>.row,.rights-edit>p,.rights-edit>.explorer-tools{grid-column:1/-1}.rights-edit>.explorer-layout{grid-column:1;grid-row:6;display:block}.rights-edit>.explorer-layout>div{display:none}.rights-edit #folder-tree{max-height:355px;height:355px}.rights-edit>#folder-policy{grid-column:2;grid-row:6;margin:0;padding:12px}.rights-edit #folder-policy td,.rights-edit #folder-policy th{padding:7px}.rights-edit #folder-policy h3{overflow-wrap:anywhere}.rights-edit>#folder-status{grid-row:7}@media(max-width:700px){.explorer.rights-edit{grid-template-columns:1fr}.rights-edit>.explorer-layout{grid-column:1;grid-row:auto}.rights-edit #folder-tree{height:120px}.rights-edit>#folder-policy{grid-column:1;grid-row:auto}.rights-edit>#folder-status{grid-row:auto}}

.app-window[data-app=browser] .window-body{overflow:hidden;display:flex;flex-direction:column}.app-window[data-app=browser] .explorer{display:flex;flex-direction:column;flex:1;min-height:0}.app-window[data-app=browser] .explorer-layout{flex:1;min-height:0;grid-template-columns:230px minmax(0,1fr)}.app-window[data-app=browser] #folder-tree{max-height:none;height:100%;min-height:0}.app-window[data-app=browser] .explorer-layout>div{display:flex;flex-direction:column;min-height:0}.app-window[data-app=browser] #file-list{flex:1;min-height:0;height:auto}.download-quota{color:var(--muted);font-size:12px}.quota-wait{color:#ffc48c}@media(max-width:700px){.app-window[data-app=browser] .explorer-layout{grid-template-columns:145px minmax(0,1fr)}.app-window[data-app=browser] .explorer-tools{gap:4px}.app-window[data-app=browser] #folder-tree button{font-size:11px}}

.assistant-panel{display:grid;gap:15px}.assistant-panel progress{width:100%;accent-color:var(--red);height:12px}.assistant-filters{padding:10px;border-bottom:1px solid var(--line)}.assistant-panel .group{margin-top:8px}.assistant-panel td{vertical-align:top}

#folder-path{display:flex;align-items:center;gap:3px;flex:1;min-width:180px;overflow:auto;border:1px solid var(--line);background:#0c0c0c;border-radius:3px}#folder-path button{border:0;background:transparent;white-space:nowrap;padding:7px 8px}#folder-path button:hover{background:var(--raised)}#folder-path span{color:var(--muted)}

/* ECU Studio: black / white / red desktop identity. */
#desktop{background:radial-gradient(ellipse at 88% 0%,#430a101f,transparent 55%),linear-gradient(125deg,#080808,#131313)}
.desktop-brand{inset:18px 25px auto;gap:22px;height:48px}
.desktop-brand img{width:145px;height:45px}
.desktop-brand .studio-wordmark{font-style:normal;font-size:25px;font-weight:650;letter-spacing:.035em;line-height:1;border-left:1px solid #454545;padding-left:22px;color:#fff}
.studio-wordmark em{font-style:normal;font-weight:400;color:#f22c43}
.desktop-brand b{color:#999;font-size:10px}
.login-stage{background:radial-gradient(ellipse at 80% 5%,#5d101026,transparent 60%),#080808}
.login-box{background:#141414;border-color:#343434}
.app-window{box-shadow:0 20px 65px #000b;border-color:#444}
.window-titlebar{background:linear-gradient(#252525,#191919)}
.window-body .notice{background:#201416;color:#e7dadd}
#start-menu{background:#181818;border-color:#444}
#taskbar{background:#151515f5}
#folder-tree,#folder-path,input,select,textarea{background:#0c0c0c}
.window-body .badge{background:#252525;color:#ccc;border:1px solid #444}
.desktop-icon:hover{background:#ffffff0a;border-color:#ffffff20}
.desktop-icon .app-symbol,.menu-symbol{color:#f22c43}
@media(max-width:700px){.desktop-brand{inset:12px 14px auto;gap:12px}.desktop-brand .studio-wordmark{font-size:19px;padding-left:12px}.desktop-brand img{width:90px}}

.service-workspace{display:grid;gap:14px}.service-workspace>div:first-child p{margin-top:7px}.service-list{border:1px solid var(--line)}.service-status{display:inline-block;padding:5px 9px;background:#282828;border:1px solid #484848;border-radius:4px;white-space:nowrap;font-size:12px}.service-status.offer-ready{background:#34131b;border-color:#983247;color:#fff}.service-create{max-width:900px}.service-wishes{display:flex;gap:12px 24px;flex-wrap:wrap;border:1px solid var(--line);padding:15px}.service-wishes legend{padding:0 6px}.service-wishes label{display:flex;align-items:center;gap:8px}.service-wishes input{accent-color:var(--red);width:17px;height:17px}.service-ticket{display:grid;gap:16px}.service-overview{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px;border:1px solid var(--line);background:#151515}.service-overview h3{font-size:21px;margin:7px 0 12px}.service-original{display:grid;align-content:start;gap:8px;min-width:0}.service-original strong{overflow-wrap:anywhere}.service-original button{justify-self:start}.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.service-text{white-space:pre-wrap;overflow-wrap:anywhere}.service-price{font-size:30px;letter-spacing:-.03em}.service-history{margin:0;padding-left:18px;display:grid;gap:14px}.service-offer{border-top:2px solid var(--red)!important}.service-workspace progress{width:100%;accent-color:var(--red)}@media(max-width:750px){.service-columns,.service-overview{grid-template-columns:1fr}.service-workspace .service-list{max-width:100%;overflow:auto}}

/* Assistant: compact upload, generous identity column, one results viewport. */
.app-window[data-app=assistant] .window-body{display:flex;flex-direction:column;overflow:hidden}
.app-window[data-app=assistant] .assistant-panel{display:flex;flex-direction:column;min-height:0;flex:1;gap:14px}
.assistant-heading{flex-shrink:0}.assistant-heading p{margin-top:4px}
.assistant-upload{padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;border:1px solid #363636;background:#151515;flex-shrink:0}
.assistant-upload label{grid-column:1;display:flex;align-items:center;gap:12px;font-weight:600}.assistant-upload input{flex:1;min-width:0}
.assistant-upload progress{grid-column:1/-1}.assistant-upload #assistant-state{grid-column:1/-1;color:#bbb;font-size:12px}
#assistant-results{flex:1;min-height:0;overflow:auto}.assistant-table table{table-layout:fixed;font-size:14px}
.assistant-table th:first-child{width:57%}.assistant-table th:nth-child(2){width:23%}.assistant-table th:nth-child(3){width:8%}.assistant-table th:last-child{width:12%}
.assistant-table th{position:sticky;top:0;z-index:1}.assistant-table td{padding:18px 14px;vertical-align:middle}
.ecu-title{font-weight:600;line-height:1.6;overflow-wrap:anywhere;display:block}.assistant-kind{color:#ddd}.assistant-count{white-space:nowrap}.assistant-download{text-align:right}.assistant-download button{white-space:nowrap}
.ecu-projects{border:0;padding:0;margin-top:5px;font-size:12px}.ecu-projects summary{color:#aaa;margin-bottom:6px}.ecu-projects p{margin-bottom:8px;overflow-wrap:anywhere}
@media(max-width:1100px){.assistant-table table{min-width:780px}.assistant-table th:first-child{width:47%}.assistant-table th:nth-child(2){width:25%}.assistant-table th:nth-child(3){width:10%}.assistant-table th:last-child{width:18%}.assistant-upload{grid-template-columns:1fr}.assistant-upload label{display:grid}.assistant-upload>span{grid-column:1}}

.assistant-table table{min-width:800px}.assistant-table th:first-child{width:auto}.assistant-table th:nth-child(2){width:180px}.assistant-table th:nth-child(3){width:85px}.assistant-table th:last-child{width:155px}

.assistant-package{padding:15px 16px;margin-bottom:12px;border:1px solid #464646;background:#191919}.assistant-package p{margin-top:5px}.assistant-table th:first-child{width:auto}.assistant-table th:nth-child(2){width:220px}.assistant-table th:nth-child(3),.assistant-table th:last-child{width:95px}.assistant-package button{white-space:nowrap}.assistant-table table{min-width:650px}

/* Modern ECU Studio assistant: purpose-built upload, clear typography, restrained red. */
.app-window[data-app=assistant] .window-body{padding:26px 28px;background:radial-gradient(ellipse at 95% 0%,#e8143c05,transparent 50%),#101010}
.app-window[data-app=assistant] .assistant-panel{gap:22px;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif}
.assistant-heading{padding:3px 0 6px}.assistant-heading h2{font-size:27px;font-weight:650;letter-spacing:-.035em;line-height:1.2}
.assistant-heading p{font-size:13px;margin-top:8px;color:#999}.assistant-heading .download-quota{font-size:11px;padding:7px 10px;background:#191919;border:1px solid #ffffff0a;border-radius:7px;color:#b3b3b3}
.assistant-upload{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:20px;align-items:center;background:linear-gradient(115deg,#1d1d1d,#161616);border:1px solid #ffffff14;border-radius:14px;padding:26px 24px 17px;box-shadow:0 12px 35px #0002;transition:border-color .16s,background .16s}
.assistant-upload.dragover{border-color:#f33456;background:#25181b}.assistant-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden;clip-path:inset(50%);padding:0!important;pointer-events:none}
.assistant-file-icon{width:56px;height:62px;border:1px solid #ff365929;border-radius:12px;background:#e8143c0c;display:grid;place-items:center}
.assistant-file-icon svg{width:31px;height:36px;stroke:#fa385a;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.assistant-upload-copy{min-width:0}.assistant-upload-copy h3{font-size:17px;line-height:1.5;font-weight:600;letter-spacing:-.015em;overflow-wrap:anywhere}.assistant-upload-copy p{font-size:12px;line-height:1.6;margin-top:5px;color:#999}
#assistant-choose{border-radius:8px;padding:12px 17px;font-size:13px;box-shadow:0 4px 14px #e8143c18;white-space:nowrap;display:flex;gap:18px;align-items:center}#assistant-choose:hover{background:#fa214a}#assistant-choose span{font-size:17px;font-weight:400}
.assistant-upload-footer{grid-column:1/-1;display:flex;gap:15px;align-items:center;border-top:1px solid #ffffff0b;padding-top:14px;font-size:11px;color:#818181}
.assistant-formats{letter-spacing:.06em;color:#b4b4b4}.assistant-formats i{font-style:normal;padding:0 4px;color:#555}.assistant-status{margin-left:auto;display:flex;gap:8px;align-items:center;min-width:0}.assistant-status>i{width:5px;height:5px;background:#888;border-radius:50%;flex-shrink:0}.assistant-upload #assistant-state{color:#aaa;font-size:11px;line-height:1.5}.assistant-upload.is-busy .assistant-status>i{background:#f33456;box-shadow:0 0 0 4px #f3345612}
.assistant-upload progress{grid-column:1/-1;border:0;height:3px;border-radius:3px;margin:0}.assistant-upload progress::-webkit-progress-bar{background:#303030;border-radius:3px}.assistant-upload progress::-webkit-progress-value{background:#f33456;border-radius:3px}
.assistant-welcome{min-height:220px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#626262;font-size:12px}.assistant-welcome svg{width:34px;height:38px;stroke:#454545;stroke-width:1;stroke-linejoin:round}
.assistant-package{border-radius:12px;border-color:#ffffff12;background:#191919;padding:18px 20px}.assistant-package strong{font-size:16px;font-weight:600;letter-spacing:-.015em}.assistant-package p{font-size:11px;color:#999}.assistant-package button{border-radius:8px;font-size:12px;padding:11px 15px}
.assistant-table{border:1px solid #ffffff0d;border-radius:10px}.assistant-table th{background:#1b1b1b!important;color:#999;font-size:11px;text-transform:none;font-weight:500;letter-spacing:.015em;padding:12px 15px!important}.assistant-table td{padding:19px 16px!important;border-bottom:1px solid #ffffff09!important}.assistant-table tr:last-child td{border:0!important}.assistant-table .ecu-title{font-size:13px;font-weight:550}.assistant-kind{font-size:12px}.assistant-count{font-size:12px;color:#aaa}
@media(max-width:800px){.app-window[data-app=assistant] .window-body{padding:18px}.assistant-heading h2{font-size:23px}.assistant-upload{grid-template-columns:44px minmax(0,1fr);padding:20px 17px 15px;gap:14px}.assistant-file-icon{width:44px;height:50px;border-radius:9px}.assistant-file-icon svg{width:26px;height:30px}#assistant-choose{grid-column:1/-1;justify-content:center}.assistant-upload-footer{flex-wrap:wrap;gap:9px}.assistant-status{margin-left:0;width:100%}}

/* Original customer-supplied ECU Studio artwork, no additional wordmark. */
.desktop-brand{inset:12px 25px auto;height:56px}.desktop-brand .studio-logo{display:block;position:relative;width:410px;height:56px;overflow:hidden;border:0;padding:0;background:#000;border-radius:4px;flex-shrink:0}
.desktop-brand .studio-logo img{position:absolute;left:0;top:50%;transform:translateY(-50%);width:410px;height:auto;max-width:none;object-fit:contain}
.studio-logo.login-brand{position:relative;width:100%;height:64px;overflow:hidden;background:#000;border-radius:6px}.login-brand img{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;height:auto}
@media(max-width:700px){.desktop-brand{inset:8px 14px auto;height:46px}.desktop-brand .studio-logo{width:275px;height:46px}.desktop-brand .studio-logo img{width:275px;height:auto}}
.service-action{border-top:1px solid #343434;margin-top:22px;padding-top:20px}.service-action form{display:grid;gap:14px;margin-top:18px}.service-check{display:flex!important;align-items:flex-start;gap:10px;line-height:1.5}.service-check input{width:auto!important;margin-top:5px;flex:none}.service-output{padding:18px;border:1px solid #444;border-radius:10px;display:grid;gap:14px;background:#171717}.service-action input:not([type=checkbox]),.service-action textarea{width:100%;box-sizing:border-box}.service-reject{margin-top:20px}.service-action .service-columns{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.service-action .service-columns{grid-template-columns:1fr}}

.assistant-file-name{white-space:normal!important;overflow-wrap:anywhere;line-height:1.55}.assistant-table th:last-child{width:110px}

/* Keep the supplied PNG transparency visible in both brand areas. */
.desktop-brand .studio-logo,.studio-logo.login-brand{background:transparent;border-radius:0}.desktop-brand .studio-logo{width:535px;height:74px}.desktop-brand .studio-logo img{width:535px}.desktop-brand{height:74px}
@media(max-width:700px){.desktop-brand .studio-logo{width:275px;height:46px}.desktop-brand .studio-logo img{width:275px}.desktop-brand{height:46px}}

.livechat{height:100%;display:flex;flex-direction:column;min-height:480px}.chat-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;flex:1;min-height:0}.chat-single{grid-template-columns:1fr}.chat-inbox{overflow-y:auto;max-height:65vh;display:flex;flex-direction:column;gap:8px}.chat-inbox button{display:grid;text-align:left;gap:5px}.chat-inbox b,.chat-unread{color:#fff;background:#d90035}.chat-conversation{display:flex;flex-direction:column;min-height:0;gap:12px}.chat-messages{min-height:180px;height:36vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:14px;background:#0c0c0c;border:1px solid #333;border-radius:12px}.chat-message{border-radius:10px;padding:12px 16px;background:#242424;align-self:flex-start;max-width:88%;overflow-wrap:anywhere}.chat-message.from-admin{background:#34151d;align-self:flex-end}.chat-message header{display:flex;gap:12px;flex-wrap:wrap}.chat-message header span{font-size:12px;color:#aaa}.chat-message p{white-space:pre-wrap;margin:8px 0}.chat-message img{display:block;max-width:100%;max-height:360px;width:auto;height:auto;margin-top:10px;border-radius:6px}.chat-compose textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:70px}.chat-image-picker{display:flex;gap:10px;font-size:13px}.chat-image-picker input{width:180px}.chat-switch{display:flex;gap:10px;align-items:center}.chat-switch input{accent-color:#ed0039;width:40px;height:22px}.livechat .message:empty{display:none}#guest-chat-open{margin-top:18px;width:100%}#guest-chat-panel{position:fixed;z-index:10000;inset:8vh max(20px,calc((100vw - 950px)/2));background:#141414;border:1px solid #444;border-radius:16px;padding:22px;overflow:auto;box-shadow:0 25px 100px #000b}.sr-only{position:relative}.chat-compose label.sr-only{display:block}#chat-alert{margin-right:12px}@media(max-width:800px){.chat-layout{grid-template-columns:1fr}.chat-inbox{max-height:150px}.chat-message{max-width:95%}#guest-chat-panel{inset:15px}.chat-messages{height:30vh}}

/* Livechat: dedicated conversation workspace. */
.livechat{gap:18px;min-height:440px;font-family:Segoe UI,Arial,sans-serif}.livechat>header{gap:16px;padding-bottom:16px;border-bottom:1px solid #303030}.livechat h2{margin:0 0 6px}.livechat>header p{margin:0}.chat-layout{gap:0;border:1px solid #303030;border-radius:16px;background:#131313;overflow:hidden;grid-template-columns:250px minmax(0,1fr)}.chat-single{grid-template-columns:1fr}.chat-sidebar{background:#171717;border-right:1px solid #303030;min-height:0;display:flex;flex-direction:column}.chat-sidebar>header{padding:20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #2c2c2c}.chat-inbox{padding:10px;gap:6px;max-height:64vh;flex:1}.chat-inbox button{position:relative;border:1px solid transparent;background:transparent;border-radius:10px;padding:14px;min-height:76px}.chat-inbox button:hover{background:#222}.chat-inbox button.selected{background:#2b171c;border-color:#7a2639;box-shadow:inset 3px 0 #ef1747}.chat-inbox button span{color:#aaa;font-size:12px}.chat-inbox button b{position:absolute;right:10px;top:12px;border-radius:12px;padding:3px 7px;font-size:11px}.chat-inbox-empty{text-align:center;color:#999;padding:30px 12px;font-size:13px;line-height:1.6}.chat-inbox-empty>span{display:block;font-size:34px;color:#df2347}.chat-inbox-empty strong{color:#ddd;display:block}.chat-conversation{gap:0;min-width:0}.chat-conversation>header{padding:16px 20px;min-height:66px;border-bottom:1px solid #292929;gap:12px}.chat-conversation>header strong{font-size:14px;overflow-wrap:anywhere}.chat-conversation>header button{font-size:12px;padding:8px 12px;border-radius:8px}.chat-messages{border:0;border-radius:0;background:radial-gradient(ellipse at top right,#35101725,transparent 65%),#101010;padding:22px;gap:16px;height:clamp(200px,35vh,530px);flex:1;min-height:200px}.chat-welcome{margin:auto;text-align:center;max-width:360px;color:#999;font-size:14px;line-height:1.6}.chat-welcome>span{display:block;font-size:46px;color:#e51a45}.chat-welcome h3{color:#eee;font-size:17px;margin:12px 0}.chat-message{background:#242424;border:1px solid #333;border-radius:14px 14px 14px 3px;padding:12px 16px;max-width:82%;box-shadow:0 3px 12px #0002}.chat-message.from-admin{border-radius:14px 14px 3px 14px;background:#35141e;border-color:#632034}.chat-message header{gap:8px;align-items:baseline;justify-content:space-between}.chat-message header strong{font-size:12px}.chat-message header span{font-size:11px;color:#b6aab0}.chat-message p{font-size:14px;line-height:1.65}.chat-compose{padding:16px 20px;border-top:1px solid #2a2a2a;background:#171717;display:grid;gap:10px}.chat-text-label{display:block}.chat-compose textarea{border-radius:10px;background:#0e0e0e;border-color:#3a3a3a;min-height:74px;max-height:160px;font:14px/1.5 Segoe UI,Arial,sans-serif;padding:12px}.chat-compose textarea:focus{outline:1px solid #c52545;border-color:#c52545}.chat-compose>p{font-size:11px;margin:0;color:#aaa}.chat-compose .row{align-items:center;gap:12px}.chat-image-picker{position:relative;display:inline-flex;align-items:center;border:1px solid #3c3c3c;border-radius:8px;padding:9px 12px;cursor:pointer;color:#ddd;background:#222;font-size:12px;overflow:hidden}.chat-image-picker:hover{border-color:#888}.chat-image-picker>span{font-size:17px;color:#ed2147}.chat-image-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.chat-compose [data-send]{border-radius:9px;min-width:112px;padding:10px 18px;font-weight:600}.chat-compose [data-send] span{margin-left:10px}.chat-switch{font-size:13px;cursor:pointer;gap:10px;white-space:nowrap}.chat-switch input{appearance:none;position:relative;width:38px;height:22px;padding:0;border-radius:20px;background:#393939;border:1px solid #555;cursor:pointer;transition:background .2s}.chat-switch input:after{content:'';position:absolute;width:16px;height:16px;top:2px;left:2px;background:#eee;border-radius:50%;transition:transform .2s}.chat-switch input:checked{background:#d81740;border-color:#ee2e54}.chat-switch input:checked:after{transform:translateX(16px)}.chat-switch input:focus-visible{outline:2px solid white;outline-offset:3px}.chat-text-label .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}.app-window[data-app=chat] .window-body{display:flex;flex-direction:column}.app-window[data-app=chat] .livechat{flex:1;min-height:0}.app-window[data-app=chat] .chat-layout{min-height:0}.livechat [data-chat-status]:not(:empty){padding:10px 14px;margin:0;background:#2c171c;border-radius:9px;color:#ffd2dd}.livechat [data-image-preview]{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#242424;border-radius:8px;padding:8px 12px;font-size:12px}.livechat [data-image-preview][hidden]{display:none}@media(max-width:850px){.chat-layout{grid-template-columns:190px minmax(0,1fr)}.chat-single{grid-template-columns:1fr}.chat-conversation>header{flex-wrap:wrap}.chat-compose{padding:12px}.chat-messages{padding:14px}.chat-image-picker{font-size:11px}.livechat>header{flex-wrap:wrap}}@media(max-width:580px){.chat-layout{grid-template-columns:1fr}.chat-sidebar{border-right:0;border-bottom:1px solid #333}.chat-sidebar>header{padding:10px 14px}.chat-inbox{max-height:135px}.chat-message{max-width:95%}}
.pinout-workspace{display:flex;flex-direction:column;gap:14px;height:100%;min-height:0}.pinout-workspace h2{margin:0}.pinout-workspace>header p{margin:6px 0}.pinout-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pinout-filters label{font-size:12px;display:grid;gap:8px}.pinout-filters input,.pinout-filters select{width:100%;min-width:0}.pinout-layout{display:grid;grid-template-columns:265px minmax(0,1fr);gap:18px;flex:1;min-height:0}.pinout-layout>aside{display:flex;flex-direction:column;min-height:0}.pinout-entries{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:7px}.pinout-entries button{display:grid;text-align:left;gap:6px;padding:12px;border:1px solid #333;border-radius:9px;background:#191919}.pinout-entries button.selected{border-color:#f31c49;background:#2b161c}.pinout-entries span,.pinout-entries small{color:#aaa;font-size:12px}.pinout-detail{display:flex;flex-direction:column;min-height:0;min-width:0;background:#151515;border:1px solid #333;border-radius:12px;padding:16px}.pinout-detail h3{margin:16px 0 6px}.pinout-detail>header{gap:8px;flex-wrap:wrap}.pinout-detail>header select{max-width:100%;flex:1;min-width:180px}.pinout-detail button{padding:8px 12px}.pinout-canvas{flex:1;min-height:200px;overflow:auto;background:#fafbfc;border-radius:8px;display:block;padding:10px}.pinout-canvas>p{color:#555;margin:30px}.pinout-canvas img{display:block;height:auto;max-width:100%}.pinout-detail:fullscreen{padding:25px}.pinout-workspace .message:empty{display:none}.app-window[data-app=pinouts] .window-body{display:flex;flex-direction:column}@media(max-width:800px){.pinout-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pinout-layout{grid-template-columns:190px minmax(0,1fr)}}
#languagebar{position:fixed;z-index:9000;top:12px;right:18px;display:flex;gap:5px;padding:5px;background:#111e;border:1px solid #333;border-radius:10px;font:12px Segoe UI,Arial,sans-serif}#languagebar button{padding:6px 8px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:11px;color:#bbb;line-height:1.5}#languagebar button span{font-size:15px}#languagebar button.selected{border-color:#e91d45;background:#32121c;color:#fff}#languagebar button:hover{background:#2a2a2a}.desktop-brand b{position:fixed;top:auto;bottom:60px;right:20px}.login-stage{padding-top:70px}@media(max-width:1000px){.desktop-brand .studio-logo{width:380px!important}#languagebar{top:8px;right:10px}#languagebar button{padding:5px}.desktop-brand{top:57px!important}#desktop-icons{padding-top:60px}}@media(max-width:600px){#languagebar{right:6px;left:6px;justify-content:center}#languagebar button{flex:1}.desktop-brand .studio-logo{width:300px!important}}

#languagebar svg{width:24px;height:15px;vertical-align:middle;border-radius:2px;margin-right:3px;overflow:hidden}

.app-window[data-app=chat]>.window-status{display:none}
/* Fileservice: calm, modern order workspace with automatic synchronization. */
.service-workspace{display:flex;flex-direction:column;gap:22px;min-height:100%;font-family:Segoe UI,Arial,sans-serif}.service-heading{gap:24px;align-items:flex-start;padding:5px 0 23px;border-bottom:1px solid #2e2e2e}.service-eyebrow{display:block;color:#b7a0a5;font-size:10px;letter-spacing:.19em;margin-bottom:10px}.service-heading h2{font-size:26px;margin:0;font-weight:650;letter-spacing:-.025em}.service-heading p{font-size:13px;line-height:1.65;max-width:640px;margin:9px 0 0}.service-heading>.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.service-heading [data-service=new]{border-radius:10px;min-height:46px;padding:11px 20px;font-size:13px}.service-live{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:#a8bdb0;white-space:normal;max-width:240px;padding:9px 12px;border:1px solid #2a3930;border-radius:20px;background:#16201a66}.service-live i{display:inline-block;flex:none;width:6px;height:6px;border-radius:50%;background:#65d5a2;box-shadow:0 0 0 4px #65d5a20b}.service-live.is-offline{color:#e5c192;border-color:#58432c;background:#30231566}.service-live.is-offline i{background:#e5b16a;box-shadow:none}.service-workspace>[data-service=content]{flex:1;min-width:0}.service-workspace>.message:empty{display:none}.service-workspace>.message:not(:empty){padding:11px 16px;border:1px solid #62303c;background:#29171d;border-radius:10px;margin:0;color:#f4ccd7}.service-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}.service-summary>span{display:inline-flex;align-items:center;gap:10px;padding:10px 15px;border:1px solid #303030;border-radius:10px;background:#171717;font-size:12px;color:#b8b8b8}.service-summary b{font-size:19px;color:#f2f2f2;font-weight:650}.service-empty{min-height:300px;height:clamp(300px,42vh,460px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px 24px;border:1px solid #303030;background:radial-gradient(ellipse at 50% 0,#4e13211a,transparent 65%),#151515;border-radius:16px}.service-empty-symbol{width:66px;height:70px;display:grid;place-items:center;border:1px solid #6b2738;background:#39132044;border-radius:17px;margin-bottom:20px;color:#f12b54}.service-empty-symbol svg{width:32px;height:37px}.service-empty h3{font-size:20px;margin:0 0 10px;letter-spacing:-.02em}.service-empty>p{color:#aaa;font-size:13px;max-width:450px;line-height:1.7;margin:0}.service-process{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px;font-size:11px;color:#ad9b9e}.service-process i{font-style:normal;color:#d8244c;font-size:19px}.service-list{border:1px solid #333;border-radius:14px;background:#151515;overflow:auto}.service-list table{width:100%;border-collapse:collapse}.service-list th{background:#1d1d1d;color:#b7b7b7;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;padding:15px 18px;white-space:nowrap;border-bottom:1px solid #333}.service-list td{padding:20px 18px;border-bottom:1px solid #292929;font-size:13px;vertical-align:middle}.service-list tr:last-child td{border-bottom:0}.service-list tbody tr:hover{background:#1b1b1b}.service-ticket-number{display:block;color:#9a858b;font-size:11px;margin-bottom:7px;letter-spacing:.08em}.service-ticket-subject{display:block;min-width:150px;max-width:400px;overflow-wrap:anywhere;font-size:14px;font-weight:600}.service-work-tags{display:flex;gap:5px;flex-wrap:wrap;min-width:110px;max-width:280px}.service-work-tags>span{display:inline-block;border:1px solid #3a3033;background:#21191c;color:#d9b9c1;border-radius:5px;padding:3px 7px;font-size:10px}.service-status{padding:6px 10px;border-radius:20px;font-size:11px;white-space:normal;display:inline-flex;align-items:center;gap:7px;background:#202020;color:#c7c7c7;border:1px solid #3b3b3b}.service-status:before{content:'';width:5px;height:5px;flex:none;border-radius:50%;background:#aaa}.service-status.offer-ready{background:#361520;border-color:#843046;color:#ffc6d4}.service-status.offer-ready:before{background:#ff4970}.service-status.is-complete{border-color:#33523e;color:#a9dabb;background:#17251c}.service-status.is-complete:before{background:#71d196}.service-timestamp{font-size:11px!important;color:#aaa;line-height:1.6}.service-open{border-radius:8px;padding:9px 12px;white-space:nowrap;font-size:11px;background:#242424}.service-open>span{margin-left:9px;color:#de3055}.service-workspace .group{border:1px solid #333;border-radius:13px;background:#171717;padding:22px}.service-create{max-width:980px;margin:0 auto!important;width:100%;display:grid;gap:17px}.service-create label,.service-offer label,.service-action label{display:grid;gap:9px;font-size:12px;color:#ccc}.service-workspace input:not([type=checkbox]),.service-workspace textarea{border-radius:8px;line-height:1.5;padding:11px 13px;border-color:#424242;background:#101010}.service-workspace input[type=file]{width:100%;font-size:12px;padding:9px}.service-workspace input::file-selector-button{background:#2b2b2b;border:1px solid #4d4d4d;color:#fff;padding:8px 12px;border-radius:6px;margin-right:12px;cursor:pointer}.service-workspace textarea:focus,.service-workspace input:focus{outline:1px solid #bc2145;border-color:#bc2145}.service-workspace button{border-radius:9px}.service-create .service-wishes{border-radius:10px;border-color:#373737;background:#121212}.service-wishes label{display:flex;align-items:center;gap:9px;border:1px solid #383838;background:#202020;border-radius:8px;padding:9px 12px}.service-wishes label:has(input:checked){background:#34161f;border-color:#b62849;color:#fff}.service-overview{border-radius:14px;background:linear-gradient(120deg,#21171b,#151515);gap:26px}.service-overview h3{overflow-wrap:anywhere}.service-history{list-style:none;padding-left:0;gap:0}.service-history li{position:relative;margin-left:6px;padding:0 0 20px 20px;border-left:1px solid #443039}.service-history li:before{content:'';position:absolute;top:3px;left:-4px;width:7px;height:7px;background:#e62a50;border-radius:50%}.service-history li:last-child{border-left-color:transparent;padding-bottom:0}.service-history p{font-size:12px;line-height:1.7;margin:5px 0 0}.service-action{margin-top:23px}.service-ticket>.row>button{font-size:12px;background:transparent;border-color:#3c3c3c}.service-price{display:block;font-size:34px;font-weight:650;color:#fff;margin:10px 0}.service-output{background:#19201b;border-color:#35463a}.service-output strong{overflow-wrap:anywhere}@media(max-width:900px){.service-heading{flex-direction:column;gap:16px}.service-heading>.actions{justify-content:flex-start}.service-list th,.service-list td{padding:12px}.service-summary{gap:8px}.service-summary>span{padding:8px 10px}.service-overview{padding:18px}.service-process{gap:8px}}

.app-window.chat-active>.window-status{display:none}
.service-empty{height:auto;min-height:250px;padding:28px 22px}.service-empty-symbol{width:52px;height:56px;margin-bottom:15px;border-radius:13px}.service-empty-symbol svg{width:27px;height:31px}.service-process{margin-top:20px}.acp .service-heading .service-eyebrow,.acp .service-heading h2{display:none}.acp .service-heading{padding:0 0 18px;align-items:center;gap:15px}.acp .service-heading p{margin:0!important}.acp .service-heading>div:first-child{flex:1}

.service-columns>section.group{display:block}.service-columns>section.group>h3{margin:0 0 14px}.service-columns>section.group>p{line-height:1.7}.service-price+.muted{display:block;margin-bottom:14px}

/* Compact desktop branding; preserve the supplied transparent artwork. */
.desktop-brand{height:48px}.desktop-brand .studio-logo{width:340px!important;height:48px}.desktop-brand .studio-logo img{width:340px;height:auto}
@media(max-width:700px){.desktop-brand .studio-logo{width:270px!important;height:40px}.desktop-brand .studio-logo img{width:270px}.desktop-brand{height:40px}}
.app-window[data-app=service]>.window-status,.app-window.service-active>.window-status{display:none}
.service-tabs{display:flex;gap:8px;border-bottom:1px solid #303030;padding-bottom:12px}.service-tabs button{background:transparent;border:1px solid transparent;color:#aaa;padding:11px 22px;border-radius:9px}.service-tabs button.selected{color:#fff;background:#242424;border-color:#424242;box-shadow:inset 0 -2px #f0093e}.service-download-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:8px 0 20px}.service-download-heading h3{margin:0 0 7px}.service-download-heading p{margin:0}.service-download-list td:first-child{overflow-wrap:anywhere;min-width:200px}.service-download-list td:last-child{white-space:nowrap}.service-download-list td button{margin:4px}.service-download-list td small{display:block;margin-top:6px;color:#a4a4a4}.service-download-pager{display:flex;justify-content:space-between;align-items:center;margin-top:16px}

#ips-login .button,.stack>a.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:15px 24px;border-radius:10px;color:#fff;background:#f0093e;font-weight:700}#ips-login p{line-height:1.6;margin:18px 0 24px}

/* Supplied motorsport desktop wallpaper; dark left edge keeps tool labels readable. */
#desktop{background:linear-gradient(90deg,rgba(0,0,0,.62) 0,rgba(0,0,0,.32) 230px,rgba(0,0,0,.03) 55%),url("desktop-background.png") center center/cover no-repeat #050505}
#desktop-icons .desktop-icon{text-shadow:0 1px 4px #000}
#desktop-icons .desktop-icon:hover{background:#181818dd;border-color:#555}

.app-window[data-app=admin]>.window-status{display:none}

#ips-login .button{display:flex;width:100%;margin-top:12px}#ips-login .button:not(.primary){background:#242424;border:1px solid #414141}.stack .actions>a.button{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid #414141;border-radius:6px;color:#f5f5f5;text-decoration:none;background:#242424}.stack .actions>a.primary{background:var(--red);border-color:var(--red)}

/* Mobile tools use the available screen instead of shrinking desktop panes. */
.mobile-only{display:none!important}.window-status{display:none!important}
@media(max-width:700px){
 body:has(.app-window:not([hidden])) #languagebar{display:none}
 .app-window,.app-window.maximized{position:absolute;inset:0 0 54px!important;width:100%!important;height:calc(100dvh - 54px)!important;min-height:0;min-width:0;max-width:100%;max-height:none;border-radius:0;border-width:0;resize:none}
 .window-titlebar{min-height:46px;touch-action:auto}.window-controls button{width:44px}.window-controls [data-window-action=maximize]{display:none}
 .window-body{padding:14px;min-width:0}.window-body input,.window-body select,.window-body textarea{font-size:16px}.window-body button{min-height:42px}
 .mobile-only{display:flex!important}
 .app-window[data-app=browser] .explorer{gap:10px;min-width:0}.app-window[data-app=browser] .explorer-layout{grid-template-columns:minmax(0,1fr);position:relative;gap:0}
 .app-window[data-app=browser] #folder-tree{display:none;position:absolute;inset:0 auto 0 0;width:min(310px,100%);height:100%;z-index:3;background:#111;box-shadow:12px 0 30px #0009;border-radius:8px}
 .app-window[data-app=browser] .tree-open #folder-tree{display:block}.app-window[data-app=browser] #folder-tree button{font-size:14px}.app-window[data-app=browser] .tree-label{white-space:normal;overflow-wrap:anywhere}
 .app-window[data-app=browser] .explorer-tools{display:grid;grid-template-columns:42px 80px minmax(0,1fr) 76px;gap:7px}.app-window[data-app=browser] #folder-path{grid-column:3/5;min-width:0;padding:0 8px;overflow:auto;white-space:nowrap}.app-window[data-app=browser] #folder-path button{padding:6px 3px}
 .app-window[data-app=browser] #file-search{grid-column:1/4;width:100%;min-width:0}.app-window[data-app=browser] #file-search-go{grid-column:4}
 .app-window[data-app=browser] #file-list{overflow-x:hidden;border:0}.app-window[data-app=browser] #file-list table,.app-window[data-app=browser] #file-list tbody{display:block;width:100%;min-width:0}
 .app-window[data-app=browser] #file-list thead{display:none}.app-window[data-app=browser] #file-list tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:14px 10px;border:1px solid #303030;border-radius:9px;margin-bottom:8px;background:#141414}
 .app-window[data-app=browser] #file-list td{display:block;padding:0;border:0;min-width:0;overflow-wrap:anywhere}.app-window[data-app=browser] #file-list td:first-child{grid-column:1/-1;font-size:14px;font-weight:600;line-height:1.5}
 .app-window[data-app=browser] #file-list td:nth-child(2){grid-column:1;grid-row:2;color:#aaa;font-size:12px}.app-window[data-app=browser] #file-list td:nth-child(3){grid-column:1;grid-row:3;color:#aaa;font-size:12px}.app-window[data-app=browser] #file-list td:last-child{grid-column:2;grid-row:2/4;align-self:center}
 .app-window[data-app=browser] .file-pager{flex-wrap:nowrap;gap:8px;padding-top:8px}.file-pager #file-count{text-align:center;min-width:0}.app-window[data-app=browser] #folder-status:empty{display:none}
 .app-window[data-app=pinouts] .window-body{overflow:hidden}.pinout-workspace{gap:10px}.pinout-workspace>header p{display:none}.pinout-mobile-tabs{gap:8px}.pinout-mobile-tabs button{flex:1;border-radius:8px}.pinout-mobile-tabs button[aria-pressed=true]{border-color:#ed073c;background:#ed073c16}
 .pinout-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pinout-filters label{font-size:12px;min-width:0}.pinout-layout{display:flex;min-height:0;gap:0}.pinout-layout>aside{width:100%;gap:8px}.pinout-entries button{padding:14px}.pinout-entries strong{overflow-wrap:anywhere}.pinout-layout>aside>footer{flex-wrap:nowrap;padding-top:5px}
 .pinout-workspace[data-mobile-panel=list] .pinout-detail{display:none}.pinout-workspace[data-mobile-panel=detail] .pinout-filters,.pinout-workspace[data-mobile-panel=detail] .pinout-layout>aside{display:none}
 .pinout-detail{width:100%;min-height:0;padding:12px;gap:8px}.pinout-detail>header{display:flex;flex-direction:column;align-items:stretch}.pinout-detail>header select{width:100%;min-width:0;flex:none}.pinout-detail>header .actions{gap:6px}.pinout-detail>header button{padding:7px 10px}.pinout-detail h3{margin:3px 0;font-size:15px;overflow-wrap:anywhere}.pinout-detail>p{font-size:11px}.pinout-canvas{min-height:150px;padding:5px;touch-action:pan-x pan-y}.pinout-detail:fullscreen{padding:12px}
}


/* Guest preview uses no productive ECU data. */
.guest-preview-button{margin-top:12px;width:100%;background:transparent;border-color:#555;color:#fff}
#guest-badge{display:inline-flex;margin-left:18px;padding:7px 12px;border:1px solid #62412b;border-radius:20px;background:#281d16;color:#edc5a2;font-size:13px}
.guest-panel{max-width:1080px;margin:auto;padding:8px 0 24px}.guest-panel h2{margin:22px 0;font-size:26px}
.guest-notice{display:flex;gap:8px;flex-direction:column;padding:18px 22px;border:1px solid #4c3338;border-radius:14px;background:#201418}.guest-notice strong{color:#fff}.guest-notice span{color:#d0bcc0;line-height:1.55}
.guest-sample{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid #333;border-radius:16px;padding:24px;background:#171717}.guest-sample h3{margin:0 0 12px}.guest-sample p{overflow-wrap:anywhere}.guest-sample button{flex-shrink:0}
.guest-signin{margin-top:24px;display:inline-flex}.guest-result-title{display:flex;flex-direction:column;gap:8px;margin:28px 0 14px}.guest-file-list{border:1px solid #333;border-radius:12px;padding:18px;margin:18px 0;overflow-wrap:anywhere}.guest-file-list>div{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid #333}.guest-file-list>div:last-child{border-bottom:0}.guest-file-list small{color:#b9a4a8;flex-shrink:0}.guest-folder-actions{display:flex;gap:12px;flex-wrap:wrap}.guest-steps{line-height:2.5;padding-left:22px}.guest-menu-signin{display:block;padding:16px;color:#fff}
@media(max-width:700px){#guest-badge{margin:0 0 12px 18px}.guest-sample{align-items:stretch;flex-direction:column;padding:18px}.guest-panel{padding:0 0 20px}.guest-notice{padding:15px}.guest-file-list>div{align-items:flex-start;flex-direction:column;gap:8px}.guest-signin{width:100%;text-align:center;justify-content:center}.guest-panel h2{font-size:23px}.guest-mode .desktop-brand{max-width:100%}}

.keygen-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.keygen-layout textarea{width:100%;font:12px/1.6 Consolas,monospace;overflow-wrap:anywhere}.keygen-layout input,.keygen-layout select{width:100%;min-width:0}.keygen-layout label{display:flex;flex-direction:column;gap:8px}@media(max-width:900px){.keygen-layout{grid-template-columns:1fr}}

/* Membership suggestions remain compact and never overlay tools. */
#membership-prompt{position:absolute;right:26px;top:108px;z-index:2;max-width:min(470px,calc(100vw - 40px));}
.membership-callout{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border:1px solid #353035;border-radius:12px;background:#151315;font-size:13px;line-height:1.5;}
.membership-callout .button{padding:9px 13px;font-size:13px;white-space:normal;}
.membership-callout.subtle{background:#111;border-color:#292929;color:#bdbdbd;}
.membership-download{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.result-upgrade{margin:0 0 16px;}
@media(max-width:700px){#membership-prompt{position:relative;top:auto;right:auto;margin:12px 16px;max-width:none;} .membership-callout{align-items:flex-start;flex-wrap:wrap;}}

@media(max-width:700px){#guest-badge{position:absolute;left:0;top:44px;font-size:11px;white-space:nowrap;}}

.membership-link{display:inline-flex;align-items:center;justify-content:center;color:#ededed;text-decoration:none;border:1px solid #383838;border-radius:7px;padding:9px 13px;background:#202020;font-weight:500}.membership-link:hover{color:#fff;border-color:#e8143c}.membership-link.primary{background:#e8143c;color:white;border-color:#e8143c}

.preview-tier{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px}.guest-sample-button{font-size:12px}.assistant-table .membership-link{font-size:12px;padding:7px 10px}

.preview-results table{table-layout:fixed;width:100%;min-width:0}.preview-results th:first-child,.preview-results td:first-child{width:56%;overflow-wrap:anywhere}.preview-results th:nth-child(2),.preview-results td:nth-child(2){width:13%}.preview-results th:nth-child(3),.preview-results td:nth-child(3){width:31%;white-space:normal}.preview-results .membership-link{display:flex;width:fit-content;margin-top:8px;max-width:100%}
@media(max-width:700px){.preview-results table,.preview-results tbody,.preview-results tr,.preview-results td{display:block;width:100%!important;min-width:0!important}.preview-results thead{display:none}.preview-results tr{padding:14px;border-bottom:1px solid #303030}.preview-results td{padding:5px 0!important;border:0!important;white-space:normal!important;overflow-wrap:anywhere}.preview-results td:nth-child(2){font-size:12px;color:#aaa}.preview-results td:nth-child(3){display:flex;align-items:center;gap:12px;flex-wrap:wrap}.preview-results .membership-link{margin:0}}
