/* TOPdesk branches and rooms in the workspace (customer-branches.js). Uses the portal's theme variables. */
.customer-tile{position:relative}
.cb-more{position:absolute;top:10px;right:10px;width:34px;height:34px;padding:0;border-radius:10px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--text);font-size:18px;line-height:1;cursor:pointer;backdrop-filter:blur(6px)}
.cb-more:hover,.cb-more:focus-visible{background:var(--raised)}
.cb-badge{display:inline-flex;align-items:center;gap:6px;margin:4px 0 8px;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--text);font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}
.cb-menu .cb-menu-branch{display:block;padding:0 12px 6px;color:var(--muted);font-size:12px}
.cb-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.cb-strip .cb-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cb-strip .spacer,.cb-rooms-card .spacer,.cb-dialog .spacer{flex:1}
.cb-strip button,.cb-rooms-card button{padding:6px 12px;font-size:13px}
.muted{color:var(--muted)}
.cb-dialog{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text)}
.cb-dialog>form,.cb-dialog.cb-queue{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.cb-head{display:flex;align-items:flex-start;gap:12px}.cb-head>div{flex:1}.cb-head h2{margin:0 0 4px}.cb-sub{margin:0;color:var(--muted);font-size:13px}
.cb-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) 1fr 1fr auto auto;gap:10px;align-items:end}
.cb-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.cb-filters input[type=search],.cb-filters select{width:100%;min-height:38px}
.cb-filters .cb-check,.cb-check{flex-direction:row;align-items:center;gap:6px;font-size:13px;color:var(--text);white-space:nowrap}
.cb-state{margin:0;font-size:12.5px;color:var(--muted)}.cb-state.warn,.cb-error{color:var(--danger)}
.cb-list{border:1px solid var(--border);border-radius:12px;overflow:auto;max-height:min(52vh,480px);min-height:160px;background:var(--bg);outline:none}
.cb-list:focus-visible{box-shadow:0 0 0 2px var(--accent)}
.cb-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.8fr) minmax(0,1.6fr) auto;gap:12px;align-items:center;padding:9px 14px;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent);cursor:pointer;font-size:13.5px}
.cb-row:hover{background:var(--raised)}
.cb-row.active{outline:2px solid var(--accent);outline-offset:-2px}
.cb-row.chosen{background:color-mix(in srgb,var(--accent) 18%,transparent)}
.cb-row.archived{opacity:.65}
.cb-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-name em{margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-style:normal;font-size:11px;font-weight:600}
.cb-name em.muted{background:var(--raised);color:var(--muted)}
.cb-ref,.cb-city,.cb-rooms{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-rooms{font-variant-numeric:tabular-nums}
.cb-empty{padding:18px;margin:0;color:var(--muted)}
.cb-dialog .actions{display:flex;align-items:center;gap:10px}
.cb-count{font-size:12.5px;color:var(--muted)}
.cb-table{overflow:auto;max-height:60vh}
.cb-table table{width:100%;border-collapse:collapse;font-size:13px}
.cb-table th,.cb-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.cb-table small{display:block;margin-top:3px}
.cb-actions{white-space:nowrap}.cb-actions button{padding:4px 10px;font-size:12px;margin-left:4px}
.cb-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11.5px;background:var(--raised);color:var(--muted);white-space:nowrap}
.cb-pill.linked,.cb-pill.done,.cb-pill.exists{background:color-mix(in srgb,#35c47a 22%,transparent);color:var(--text)}
.cb-pill.queued,.cb-pill.sent,.cb-pill.sending{background:color-mix(in srgb,#f0b43c 24%,transparent);color:var(--text)}
.cb-pill.blocked,.cb-pill.gone{background:color-mix(in srgb,var(--danger) 26%,transparent);color:var(--text)}
.cb-rooms-card{padding:16px 18px;margin-bottom:18px}
.cb-rooms-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cb-rooms-head h3{margin:0}
.cb-summary{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.cb-details summary{cursor:pointer;color:var(--muted);font-size:13px}
.cb-details h4{margin:14px 0 6px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.cb-room-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:4px 16px;margin-top:8px}
.cb-room{display:grid;grid-template-columns:44px 1fr auto auto;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 45%,transparent);font-size:13px}
.cb-room small{color:var(--muted)}.cb-num{color:var(--muted);font-variant-numeric:tabular-nums}
.small{font-size:12px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:720px){.cb-filters{grid-template-columns:1fr 1fr}.cb-filters .cb-search{grid-column:1/-1}.cb-row{grid-template-columns:1fr auto}.cb-ref,.cb-city{display:none}}
/* The portal styles form inputs full width; checkboxes here stay checkboxes. */
.cb-dialog input[type=checkbox],.cb-rooms-card input[type=checkbox]{width:18px;height:18px;min-width:0;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--accent)}
.cb-rooms-head .cb-check{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px}
.cb-table td small.cb-project{color:var(--muted)}
.cb-table .cb-when{white-space:nowrap;color:var(--muted)}
@media (max-width:720px){.cb-filters .cb-check{justify-content:flex-start}}

.cb-create{width:min(620px,calc(100vw - 32px));max-height:90vh;overflow:auto}.cb-create-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cb-create-fields label:first-child{grid-column:1/-1}.cb-create small[data-step]{color:var(--accent);letter-spacing:.1em;font-size:11px}.cb-create dl>div{display:grid;grid-template-columns:1fr 2fr;gap:16px;padding:8px 0;border-bottom:1px solid var(--border)}.cb-create dt{color:var(--muted);font-size:13px}.cb-create dd{margin:0;overflow-wrap:anywhere}.cb-create .actions{position:sticky;bottom:0;background:var(--panel,var(--bg));padding-top:16px;display:flex;align-items:center;gap:8px}.cb-create [data-state]{line-height:1.6}.cb-dialog [data-create]{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:520px){.cb-create-fields{grid-template-columns:1fr}}

/* Compact branch/contact wizard, using the plotter setup guide's step rail. */
.cb-create{width:min(700px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}
.cb-create>form{padding:22px;gap:18px;min-height:340px;box-sizing:border-box}
.cb-wizard-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cb-wizard-title h2{margin:0;font-size:20px}.cb-wizard-title>span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.cb-wizard-guide{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:center;padding:13px 16px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;background:var(--bg)}
.cb-wizard-guide strong{font-size:13px}.cb-wizard-guide p{margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}
.cb-wizard-progress>span{display:flex;gap:4px;margin-top:9px}.cb-wizard-progress i{height:3px;width:28px;border-radius:3px;background:var(--border)}.cb-wizard-progress i.active{background:var(--accent)}
.cb-identity-pair,.cb-review-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cb-identity-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;min-width:0;margin:0!important}
.cb-card-heading{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;margin-bottom:5px}.cb-create svg{width:19px;height:19px;flex:none;color:var(--muted)}
.cb-card-heading em{margin-left:auto;font-style:normal;font-size:10px;font-weight:400;color:var(--muted);border:1px solid var(--border);border-radius:5px;padding:2px 5px}
.cb-field-label,.cb-create-fields label{font-size:12px;color:var(--muted)}.cb-identity-card small{font-size:11px;line-height:1.5;color:var(--muted);font-weight:400}
.cb-create input{width:100%;min-width:0;box-sizing:border-box;min-height:38px;padding:8px 10px;border-radius:8px;font-size:13px}
.cb-auto-contact{background:var(--bg)}.cb-auto-contact input{color:var(--muted);background:var(--surface);border-style:dashed;cursor:default}
.cb-optional{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.cb-optional summary{cursor:pointer;font-size:12px;font-weight:500}.cb-optional summary span{color:var(--muted);font-size:11px;margin-left:6px}.cb-optional p{color:var(--muted);font-size:11px}
.cb-create .cb-create-fields{gap:10px 12px}.cb-create .cb-create-fields label{display:grid;gap:4px}.cb-create .cb-create-fields label:first-child{grid-column:auto}
.cb-review-pair>div{display:flex;gap:10px;align-items:center;padding:15px;border:1px solid var(--border);border-radius:10px;background:var(--bg);min-width:0}.cb-review-pair span{min-width:0}.cb-review-pair small{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}.cb-review-pair strong{font-size:15px;overflow-wrap:anywhere}
.cb-background-note{font-size:12px;color:var(--muted);line-height:1.6;margin:16px 0 0}.cb-create [data-state]:empty{display:none}.cb-create [data-state]{margin:0;font-size:12px}
.cb-create .actions{position:static;margin-top:auto;padding:14px 0 0;border-top:1px solid var(--border);background:var(--surface)}.cb-create .actions button{min-height:36px;padding:8px 13px;font-size:12px;border-radius:8px}.cb-create [hidden]{display:none!important}
@media(max-width:540px){.cb-create>form{padding:16px;gap:14px}.cb-identity-pair,.cb-review-pair{grid-template-columns:1fr}.cb-wizard-guide{grid-template-columns:65px minmax(0,1fr);gap:10px;padding:10px}.cb-create .cb-create-fields{grid-template-columns:1fr 1fr}}

.cb-create .cb-wizard-title{min-height:0;height:auto;padding:0;margin:0;border:0;background:none;box-shadow:none}
.cb-create .cb-field-label{display:block;margin:0;padding:0;font-weight:400;line-height:18px}
.cb-create .cb-card-heading{min-height:26px;margin:0 0 5px;line-height:20px}
.cb-create .cb-identity-card input{margin:0;height:38px}

.project-yard-strip{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}.project-yard-strip>.branch-context-card{min-width:0}.project-yard-strip>#project-yard{grid-column:1/-1}@media(max-width:600px){.project-yard-strip{grid-template-columns:minmax(0,1fr)}}

.branch-context-card{display:flex;align-items:center;gap:12px;min-width:0}.context-symbol{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center}.context-symbol svg{width:20px;height:20px;max-width:20px;max-height:20px}.context-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
