.checkbox-row{display:flex;align-items:center;gap:10px;margin:0 0 10px;color:var(--ink)!important;cursor:pointer}.login-panel .checkbox-row input{width:18px;height:18px;margin:0;accent-color:var(--accent)}#request-activation-form{margin:18px 0;padding:18px;border:1px solid var(--border);border-radius:12px}
.project-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.projects-panel .panel-heading-split{flex-wrap:wrap}.create-project-form{display:grid;gap:10px;margin:0 0 22px;padding:18px;border:1px solid var(--border);border-radius:12px;background:#0c1723}.create-project-form h3{margin:0 0 4px;font-size:16px}.create-project-form label{font-size:12px;color:var(--muted)}.create-project-form input{width:100%;min-height:42px;border:1px solid var(--border);border-radius:9px;background:#06111b;color:var(--ink);padding:9px 12px}.create-project-form .hint{margin:0 0 6px}.create-project-form .button-primary{min-height:42px}.create-project-form .project-actions{margin-top:4px}
.account-form.profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.account-form.profile-fields .profile-field{display:grid;gap:7px;min-width:0}.account-form.profile-fields label{grid-column:auto}.account-form.profile-fields input,.account-form.profile-fields select{width:100%;min-height:46px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 12px}.account-form.profile-fields .hint{grid-column:1/-1;margin:0}.account-form.profile-fields .button{grid-column:1/-1;justify-self:start;justify-content:center}@media(max-width:1100px){.app-shell>.topbar{height:auto;min-height:82px;padding:16px 22px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.app-shell .topbar-actions{justify-content:flex-start;gap:8px;min-width:0}.app-shell .brand{min-width:0}}@media(max-width:700px){.account-form.profile-fields{grid-template-columns:1fr}.account-form.profile-fields .hint,.account-form.profile-fields .button{grid-column:1}}
.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.account-panel{max-width:1080px;margin:0 auto}.account-panel h3{font-size:16px;margin:28px 0 14px}.account-form,.staff-form{display:grid;gap:10px;margin-top:22px;align-items:end}.account-form{grid-template-columns:minmax(200px,1fr) auto}.account-form label{grid-column:1/-1}.staff-form{grid-template-columns:minmax(200px,1fr) minmax(150px,200px) auto}.staff-form label{grid-column:1/-1}.account-form label,.staff-form label{font-size:12px;color:var(--muted)}.account-form input,.staff-form input,.staff-form select,.access-form input,.access-form select{min-height:42px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 12px}.staff-list,.activity-list,.access-list{display:grid;gap:8px}.staff-row,.activity-row,.access-row{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:#0c1723;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:9px}.staff-row strong,.activity-row strong{display:block;font-size:13px}.staff-row small,.activity-row small,.access-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.staff-actions{display:flex;flex-wrap:wrap;gap:7px}.staff-actions .button,.access-row .button{min-height:32px;padding:5px 11px}.admin-activity-heading{justify-content:space-between;border-top:1px solid var(--border);padding-top:24px;margin-top:24px}.access-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.access-panel h3{font-size:15px;margin:0 0 12px}.access-form{display:grid;grid-template-columns:1fr 135px auto;gap:8px;margin:12px 0}.access-row{font-size:12px}.access-row .staff-actions{margin-left:auto}@media(max-width:700px){.account-form,.staff-form,.access-form{grid-template-columns:1fr}.account-form label,.staff-form label{grid-column:1}.topbar{align-items:flex-start}.topbar-actions .button{padding:8px 10px;font-size:10px}}
@font-face{font-family:"Montserrat Variable";src:url("montserrat-cyrillic.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Montserrat Variable";src:url("montserrat-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{color-scheme:dark;--ink:#f5f8fc;--muted:#b8c5d3;--accent:#01c7ff;--focus:#7de4ff;--surface:#060d13d9;--surface-strong:#050c13;--border:#a6e0ff33;--footer:#091424;--font:"Montserrat Variable",Montserrat,"Segoe UI",sans-serif}
[hidden]{display:none!important}
.technical-preview{margin-top:26px;padding-top:20px;border-top:1px solid var(--border)}.technical-preview h3{font-size:15px;margin:0;font-weight:650}.technical-preview h4{font-size:12px;margin:22px 0 10px;color:var(--muted);font-weight:600}.technical-preview .hint{margin:9px 0 18px}.technical-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.technical-metrics>div{padding:12px;border:1px solid var(--border);border-radius:10px;background:#0c1723}.technical-metrics strong{display:block;font-size:20px;color:var(--accent);font-weight:650}.technical-metrics span{font-size:10px;color:var(--muted)}.dali-circuits{list-style:none;margin:0;padding:0;display:grid;gap:6px}.dali-circuits li{font-size:11px;color:var(--ink);border:1px solid var(--border);border-radius:8px;padding:9px 11px}.dali-circuits li.over-limit{color:#ffb4a9;border-color:#ffb4a966}.project-row[aria-pressed=true]{border-color:var(--accent);background:#113047}
.technical-warning{margin:16px 0 0;border:1px solid #ffb4a966;border-radius:9px;padding:10px 12px;color:#ffb4a9;font-size:11px;line-height:1.5}
.technical-advice{margin:12px 0 0;border:1px solid #eab76566;border-radius:9px;padding:10px 12px;color:#eab765;font-size:11px;line-height:1.5}
.led-assignment-plan{margin:18px 0 0;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:#0c1723}.led-assignment-plan summary{cursor:pointer;color:var(--accent);font-size:12px;font-weight:650}.led-assignment-plan .hint{margin:9px 0}.led-assignment-plan .dali-circuits li{overflow-wrap:anywhere}
*{box-sizing:border-box}html{min-width:320px}body{margin:0;background:radial-gradient(circle at 70% 4%,#1c3a57 0,transparent 34%),linear-gradient(145deg,#091424,#03080d 68%);color:var(--ink);font-family:var(--font);min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,.project-row:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{height:82px;padding:0 clamp(20px,4vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border);background:#04090e85;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:16px}.brand-mark{display:block;width:46px;height:46px;flex:none;background:var(--accent);mask:url(logo.svg) center/contain no-repeat}.brand-company{display:block;font-size:10px;letter-spacing:.23em;color:var(--muted);margin-bottom:5px}.brand strong{font-size:21px;font-weight:650;letter-spacing:.01em}.brand strong span{color:var(--accent);font-size:12px;letter-spacing:.18em;margin-left:4px}.topbar-actions{display:flex;align-items:center;gap:18px}.environment-label{border:1px solid var(--border);border-radius:100px;padding:10px 14px;color:var(--muted);font-size:10px;letter-spacing:.15em}.user-name{font-size:13px}.main{width:min(1320px,calc(100% - 44px));margin:0 auto;flex:1;padding:64px 0 44px}.intro{max-width:760px;margin-bottom:42px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:.18em;color:var(--accent);margin:0 0 18px}.eyebrow-line{display:inline-block;height:24px;width:3px;background:var(--accent);vertical-align:middle;margin-right:16px}.intro h1{font-size:clamp(32px,4.1vw,57px);line-height:1.12;font-weight:650;letter-spacing:.005em;margin:0 0 22px}.intro>p:last-child{color:var(--muted);line-height:1.65;font-size:14px;max-width:640px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:0 28px 70px #0004;backdrop-filter:blur(14px);padding:30px}.login-panel{width:min(470px,100%)}.panel-heading{display:flex;align-items:center;gap:20px;margin-bottom:24px}.panel-heading h2{font-size:21px;line-height:1.25;margin:0;font-weight:650}.panel-heading .eyebrow{margin:0 0 7px}.section-number{width:42px;height:42px;flex:none;display:grid;place-items:center;color:var(--accent);font-size:11px;border:1px solid var(--border);border-radius:50%}.login-panel form{display:grid;gap:12px}.login-panel label{color:var(--muted);font-size:12px}.login-panel input{width:100%;height:46px;border:1px solid var(--border);border-radius:10px;background:#0c1723;color:var(--ink);padding:0 13px;margin-bottom:10px}.button{border:1px solid transparent;border-radius:100px;padding:11px 20px;min-height:42px;transition:background .2s,border-color .2s,transform .2s}.button:hover{transform:translateY(-1px)}.button-primary{display:flex;align-items:center;justify-content:space-between;min-height:48px;background:var(--accent);color:#05111a;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.button-primary:hover{background:#63daff}.button-primary span{font-size:19px}.button-outline{background:transparent;border-color:var(--accent);color:var(--accent);font-size:12px}.button-outline:hover{background:#01c7ff1d}.button-ghost{background:#fff1;border-color:var(--border);color:var(--ink);font-size:12px}.hint,.preview-note{color:var(--muted);font-size:12px;line-height:1.6}.hint{margin:20px 0 0}.preview-note{margin:28px 0 0;color:#a7b2be}.notice{min-height:22px;font-size:13px;color:var(--accent)}.notice.error{color:#ffb4a9}.workspace{display:grid;grid-template-columns:minmax(320px,1fr) minmax(360px,1.2fr);gap:20px}.panel-heading-split{justify-content:space-between}.project-list{display:grid;gap:10px}.project-row{width:100%;text-align:left;background:#0d1925;border:1px solid #ffffff20;border-radius:12px;color:var(--ink);padding:16px;display:grid;grid-template-columns:1fr auto;gap:4px 15px}.project-row:hover,.project-row[aria-selected=true]{border-color:var(--accent);background:#113047}.project-code{font-size:11px;letter-spacing:.06em;color:var(--accent)}.project-name{font-size:14px;font-weight:650;grid-column:1}.project-role{color:var(--muted);font-size:11px;grid-column:2;grid-row:1/3;align-self:center}.empty-state{color:var(--muted);font-size:13px;line-height:1.6}.detail-grid{display:grid;grid-template-columns:minmax(105px,35%) 1fr;gap:13px;border-top:1px solid var(--border);padding-top:18px;margin:0}.detail-grid dt{color:var(--muted);font-size:12px}.detail-grid dd{margin:0;font-size:13px;overflow-wrap:anywhere}.detail-block{margin-top:24px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#0c1723;color:var(--muted);font-size:12px;line-height:1.55}.footer{border-top:1px solid var(--border);padding:24px clamp(20px,4vw,72px);display:flex;justify-content:space-between;color:#8292a3;font-size:10px;letter-spacing:.18em}
@media(max-width:800px){.topbar{height:auto;min-height:74px;padding:16px 22px}.environment-label{display:none}.main{padding-top:38px}.workspace{grid-template-columns:1fr}.intro{margin-bottom:30px}}@media(max-width:480px){.topbar-actions{gap:8px}.brand-company{font-size:8px}.brand strong{font-size:17px}.brand-mark{width:34px;height:34px}.main{width:calc(100% - 28px)}.panel{padding:22px;border-radius:18px}.user-name{display:none}.footer{gap:10px;font-size:8px}}
.staff-detail{margin-top:24px;padding:22px;border:1px solid var(--border);border-radius:14px;background:#0b1520}.staff-detail>.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.staff-detail h3{margin:0;font-size:18px}.staff-detail .account-form{margin-top:18px}.staff-projects{display:grid;gap:8px}.staff-project-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:#0c1723}.staff-project-row strong,.staff-project-row small{display:block}.staff-project-row small{color:var(--muted);font-size:11px;margin-top:5px}@media(max-width:700px){.staff-project-row{align-items:flex-start;flex-direction:column}.staff-detail{padding:15px}}
.project-chat{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.chat-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px}.chat-heading h3{font-size:17px;margin:0}.chat-heading .hint{margin:0}.chat-messages{display:grid;gap:10px;max-height:450px;overflow-y:auto;margin:16px 0;padding:4px;scrollbar-color:#46718c #0b1520}.chat-message{max-width:90%;background:#0c1723;border:1px solid var(--border);border-radius:12px;padding:10px 12px;overflow-wrap:anywhere;scroll-margin:18px}.chat-message-own{justify-self:end;background:#102b3c;border-color:#1d6a8c}.chat-message-target{outline:2px solid var(--accent);outline-offset:2px}.chat-message-deleted{opacity:.72}.chat-message-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px}.chat-message-heading time{color:var(--muted);font-size:11px}.chat-message-body{margin:8px 0 0;font-size:13px;line-height:1.5;white-space:pre-wrap}.chat-message-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.chat-message-action{border:0;background:transparent;color:var(--muted);padding:3px 0;font-size:11px}.chat-message-action:hover{color:var(--accent)}.chat-reply-context{display:block;width:100%;border:0;border-left:3px solid var(--accent);border-radius:5px;background:#ffffff08;color:var(--muted);padding:7px 9px;text-align:left;font-size:11px;line-height:1.4}.chat-reply-context strong{display:block;color:var(--ink)}.chat-attachment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:7px}.chat-attachment{padding:5px 0;border:0;background:transparent;color:var(--accent);font-size:12px;text-align:left;overflow-wrap:anywhere}.chat-attachment:hover{text-decoration:underline}.chat-form{display:grid;gap:10px}.chat-form textarea,.chat-form input[type=file],.chat-form select{width:100%;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:10px 12px;font:inherit}.chat-form textarea{resize:vertical;min-height:78px}.chat-form .button{justify-self:start}.chat-compose-row{display:grid;grid-template-columns:1fr auto;gap:8px}.chat-compose-row .button{align-self:stretch}.chat-compose-context{border:1px solid var(--border);border-radius:9px;background:#0c1723;padding:9px 11px;font-size:11px;color:var(--muted)}.chat-compose-context button{float:right;border:0;background:transparent;color:var(--accent)}.chat-error{min-height:18px;margin:0;color:#ffb4a9;font-size:12px}.chat-mention{color:var(--accent);font-weight:650}.unread-badge{grid-column:1/-1;justify-self:start;border-radius:100px;background:#123f55;color:var(--accent);padding:3px 9px;font-size:10px}.unread-chat-button{background:#123f55;border:1px solid #2d7898;color:var(--accent);white-space:nowrap}.push-settings{margin-top:28px;padding-top:12px;border-top:1px solid var(--border)}.push-settings .button{margin-top:12px}@media(max-width:700px){.chat-message{max-width:100%}.chat-messages{max-height:360px}.chat-compose-row{grid-template-columns:1fr}.topbar-actions{gap:7px}.unread-chat-button{padding:8px 10px}}
.project-files{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.project-files h3{font-size:17px;margin:0}.project-file-form,.project-file-edit{display:grid;gap:9px;margin:16px 0}.project-file-form input,.project-file-form textarea,.project-file-edit input,.project-file-edit textarea{width:100%;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:10px 12px;font:inherit}.project-file-form textarea,.project-file-edit textarea{resize:vertical}.project-file-form .button,.project-file-edit .button{justify-self:start}.project-file-list{display:grid;gap:10px;margin-top:16px}.project-file-row{border:1px solid var(--border);border-radius:12px;padding:13px;background:#0c1723;overflow-wrap:anywhere}.project-file-row strong,.project-file-row small{display:block}.project-file-row small{font-size:11px;color:var(--muted);margin-top:5px}.project-file-row p{font-size:12px;white-space:pre-wrap;line-height:1.5}.project-file-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.project-file-actions .button{min-height:33px;padding:6px 11px}.file-preview-dialog{width:min(1100px,95vw);height:min(850px,94vh);padding:12px;border:1px solid var(--border);border-radius:14px;background:#08131e;color:var(--ink)}.file-preview-dialog::backdrop{background:#000b}.file-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.file-preview-heading strong{overflow-wrap:anywhere}.file-preview-content{display:block;width:100%;height:calc(100% - 54px);object-fit:contain;border:0;background:#fff}
.chat-inline-preview{width:min(560px,100%);margin-top:9px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#07111b;color:var(--muted);font-size:11px}.chat-inline-image-button{display:block;width:100%;padding:0;border:0;background:#07111b}.chat-inline-image{display:block;width:100%;max-height:340px;object-fit:contain;background:#050a0f}.chat-inline-document{display:block;width:100%;height:360px;border:0;background:#fff}.chat-inline-text{max-height:260px;margin:0;padding:12px;overflow:auto;white-space:pre-wrap;color:var(--ink);font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.chat-inline-preview:not(:has(img)):not(:has(iframe)):not(:has(pre)){padding:10px 12px}@media(max-width:700px){.chat-inline-document{height:300px}.chat-inline-image{max-height:280px}}
.project-pdf-dialog{display:flex;flex-direction:column}.project-pdf-dialog:not([open]){display:none}.project-pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 9px}.project-pdf-toolbar[hidden]{display:none}.project-pdf-toolbar .button{min-height:34px;padding:6px 12px}.project-pdf-toolbar span{font-size:12px;color:var(--muted);white-space:nowrap}.project-pdf-status{font-size:13px;color:var(--accent);margin:12px 0}.project-pdf-status[hidden]{display:none}.project-pdf-scroll{flex:1;min-height:0;overflow:auto;background:#38444e;border-radius:7px;text-align:center;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.project-pdf-scroll canvas{display:block;max-width:none;margin:12px auto;background:#fff;box-shadow:0 3px 20px #0006}@media(max-width:700px){.project-pdf-dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0}.project-pdf-toolbar{gap:5px}.project-pdf-toolbar .button{padding:6px 8px;font-size:10px}}
.chat-launcher{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:70;display:flex;align-items:center;gap:9px;min-height:56px;padding:0 18px;border:1px solid #6ce1ff80;border-radius:100px;background:var(--accent);color:#05111a;box-shadow:0 14px 38px #0009;font:700 12px/1 var(--font);letter-spacing:.08em;text-transform:uppercase}.chat-launcher[hidden]{display:none}.chat-launcher:hover{background:#63daff;transform:translateY(-2px)}.chat-launcher-icon{font-size:22px;filter:saturate(.75)}.chat-launcher-badge{position:absolute;top:-7px;right:-5px;display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:2px solid #08131e;border-radius:100px;background:#ff6b5e;color:#fff;font-size:10px;letter-spacing:0}.chat-launcher-badge[hidden]{display:none}.chat-drawer{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column;width:min(540px,calc(100vw - 44px));height:min(760px,calc(100dvh - 44px));border:1px solid #39718c;border-radius:22px;background:#08131ef5;color:var(--ink);box-shadow:0 28px 90px #000c;backdrop-filter:blur(18px);overflow:hidden}.chat-drawer[hidden]{display:none}.chat-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid var(--border)}.chat-drawer-header>div{min-width:0}.chat-drawer-eyebrow{display:block;margin-bottom:6px;color:var(--accent);font-size:9px;font-weight:700;letter-spacing:.18em}.chat-drawer-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.chat-drawer-close{flex:none;min-height:36px;padding:7px 12px}.chat-project-picker{padding:12px 20px;border-bottom:1px solid var(--border);background:#ffffff05}.chat-project-picker label{display:block;margin-bottom:6px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.chat-project-picker select{width:100%;height:42px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:0 34px 0 11px;font:12px var(--font)}.chat-project-picker select:focus-visible,.chat-drawer textarea:focus-visible,.chat-drawer button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.chat-drawer-content{flex:1;min-height:0;overflow:auto;padding:0 20px 20px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.chat-drawer .project-chat{display:flex;flex-direction:column;min-height:100%;margin:0;padding-top:16px;border-top:0}.chat-drawer .chat-heading{flex:none}.chat-drawer .chat-messages{flex:1;min-height:180px;max-height:none}.chat-drawer .chat-form{flex:none;padding-bottom:max(0px,env(safe-area-inset-bottom))}.chat-drawer .chat-inline-document{height:300px}@media(max-width:700px){body.chat-drawer-open{overflow:hidden}.chat-launcher{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));min-width:56px;padding:0 15px}.chat-launcher-label{display:none}.chat-drawer{inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}.chat-drawer-header{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 12px max(14px,env(safe-area-inset-left))}.chat-project-picker{padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left))}.chat-drawer-content{padding:0 max(14px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.chat-drawer .project-chat{padding-top:12px}.chat-drawer .chat-messages{min-height:150px}.chat-drawer .chat-inline-document{height:260px}}
.chat-mention-picker select{width:100%;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:10px 12px;font:inherit}.chat-mention-chips{display:flex;flex-wrap:wrap;gap:7px}.chat-mention-chips[hidden]{display:none}.chat-mention-chip{min-height:30px;padding:5px 10px;border:1px solid #2d7898;border-radius:100px;background:#123f55;color:var(--accent);font:650 11px var(--font)}.chat-mention-chip:hover{background:#18516c}.chat-message-body .chat-mention{display:inline;border-radius:4px;background:#01c7ff1f;color:var(--accent);font-weight:700;padding:1px 3px}
.chat-drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:none}.chat-drawer-actions .button{min-height:34px;padding:6px 10px;font-size:10px}.team-chat-dialog{width:min(560px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 32px));padding:0;border:1px solid #39718c;border-radius:20px;background:#08131e;color:var(--ink);box-shadow:0 28px 90px #000d}.team-chat-dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}.team-chat-form{display:grid;gap:13px;padding:22px}.team-chat-form>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:4px}.team-chat-form h2{margin:0;font-size:20px}.team-chat-form>label,.team-chat-form legend{color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.team-chat-form>input{width:100%;height:44px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:0 12px;font:inherit}.team-chat-form fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--border);border-radius:12px}.team-chat-form fieldset .hint{margin:5px 0 10px}.team-chat-members{display:grid;gap:7px;max-height:320px;overflow:auto}.team-chat-member{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:#0c1723;cursor:pointer}.team-chat-member:has(input:checked){border-color:#2d7898;background:#123f55}.team-chat-member input{width:18px;height:18px;accent-color:var(--accent)}.team-chat-member strong,.team-chat-member small{display:block}.team-chat-member strong{font-size:12px}.team-chat-member small{margin-top:3px;color:var(--muted);font-size:10px}@media(max-width:700px){.chat-drawer-header{align-items:flex-start}.chat-drawer-actions{flex-wrap:wrap}.chat-drawer-actions .button{padding:6px 8px}.team-chat-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}.team-chat-form{padding:max(16px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.team-chat-members{max-height:calc(100dvh - 330px)}}
.direct-chat-user{display:grid;gap:4px;width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:10px;background:#0c1723;color:var(--ink);text-align:left;font:inherit;cursor:pointer}.direct-chat-user:hover,.direct-chat-user:focus-visible{border-color:var(--accent);background:#123447;outline:none}.direct-chat-user strong{font-size:13px}.direct-chat-user small{color:var(--muted);font-size:10px;overflow-wrap:anywhere}
.chat-unread-divider{display:flex;align-items:center;gap:10px;margin:8px 0;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;scroll-margin-top:6px}.chat-unread-divider::before,.chat-unread-divider::after{content:"";height:1px;flex:1;background:#2d7898}
.chat-like-button{min-width:31px;padding:3px 7px;border:1px solid transparent;border-radius:100px}.chat-like-button:hover{border-color:#2d7898;background:#123f55}.chat-like-button-active{color:var(--accent);border-color:#2d7898;background:#123f55}.chat-like-button:disabled{opacity:.6}
.chat-read-receipts{margin-top:5px;color:var(--muted);font-size:10px}.chat-read-receipts summary{width:max-content;max-width:100%;cursor:pointer;color:#82a0b2;list-style-position:inside}.chat-read-receipts[open] summary{color:var(--accent)}.chat-read-receipts ul{display:grid;gap:4px;margin:6px 0 0;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:#07121c;list-style:none}.chat-read-receipts li{display:flex;justify-content:space-between;gap:14px}.chat-read-receipts strong{color:var(--ink);font-weight:600}.chat-read-receipts time{white-space:nowrap}
.chat-message-system{justify-self:stretch;max-width:100%;border-color:#d9a44180;background:linear-gradient(135deg,#2a2112,#13202a)}.chat-message-system .chat-message-heading strong{color:#ffd184}.chat-message-system .chat-message-body{color:#f0e4c7}
.chat-quick-replies{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.chat-quick-reply{min-height:34px;padding:7px 12px;border:1px solid #d9a44199;border-radius:100px;background:#3b2c14;color:#ffe0a0;font:650 12px var(--font);text-align:left}.chat-quick-reply:hover{background:#513b19;border-color:#f2bd52}.chat-quick-reply:disabled{opacity:.55;cursor:wait}@media(max-width:700px){.chat-quick-reply{flex:1 1 auto;justify-content:center;text-align:center}}
.topbar{position:sticky;top:0;z-index:75;background:#04090ef2}.topbar .chat-launcher{position:relative;right:auto;bottom:auto;z-index:auto;flex:none;min-height:42px;padding:0 14px;border-color:#6ce1ff80;box-shadow:none}.topbar .chat-launcher-icon{font-size:18px}.topbar .chat-launcher-badge{top:-8px;right:-7px}@media(max-width:700px){.topbar .chat-launcher{right:auto;bottom:auto;min-width:42px;width:42px;min-height:42px;padding:0;justify-content:center}.topbar .chat-launcher-label{display:none}}
.project-works{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.project-works h3{font-size:18px;margin:0}.project-works .hint{margin:10px 0}.work-summary{display:grid;gap:6px;margin:17px 0}.work-summary-item{display:flex;justify-content:space-between;gap:15px;border:1px solid var(--border);border-radius:9px;padding:10px 12px;background:#0c1723;font-size:12px}.work-summary-item strong{white-space:nowrap}.work-card{margin-top:18px}.work-card h4{font-size:15px;margin:0 0 8px}.work-table-scroll{width:100%;overflow-x:auto}.work-table{border-collapse:collapse;min-width:720px;width:100%;font-size:12px}.work-table th,.work-table td{border-bottom:1px solid var(--border);padding:8px 6px;text-align:left}.work-table th{color:var(--muted);font-weight:600}.work-table td:first-child{min-width:200px}.work-table td:last-child{white-space:nowrap}.work-table input,.work-field input{width:100%;min-width:70px;min-height:32px;border:1px solid var(--border);border-radius:7px;background:#0c1723;color:var(--ink);padding:4px 7px;font:inherit}.work-table input:disabled,.work-field input:disabled{opacity:.7}.work-partial td:first-child{color:#ffd184}.work-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.work-field{display:grid;gap:6px;font-size:11px;color:var(--muted)}.work-notes{margin:16px 0;font-size:12px}.work-notes li{margin:4px 0}.project-works .button{margin-top:7px}@media(max-width:700px){.work-fields{grid-template-columns:1fr}.work-summary-item{flex-direction:column;gap:4px}.work-summary-item strong{white-space:normal}}

/* The project chooser and the project editor are separate workspaces. */
.main:has(.workspace:not([hidden])){width:min(1800px,calc(100% - 32px));padding-top:28px}
.main:has(.workspace:not([hidden])) .intro{display:none}
.workspace:not(.project-open){display:block}
.workspace:not(.project-open) .detail-panel{display:none}
.workspace:not(.project-open) .projects-panel{max-width:1100px;margin-inline:auto}
.project-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start}
.project-list-card{min-width:0;display:grid;gap:8px;border:1px solid var(--border);border-radius:14px;padding:10px;background:#0c1723}
.project-list-card .project-row{border:0;background:transparent}
.project-access-button{justify-self:start;min-height:34px;padding:6px 12px}
#selection-access{margin-top:24px}
.workspace.project-open{grid-template-columns:minmax(190px,220px) minmax(0,1fr);align-items:start;gap:16px}
.workspace.project-open .projects-panel{position:sticky;top:12px;padding:14px;border-radius:16px}
.workspace.project-open .projects-panel>:not(#project-nav){display:none}
.workspace.project-open .detail-panel{min-width:0;padding:22px;border-radius:16px}
.workspace.project-open .detail-panel .panel-heading{margin-bottom:20px}
.project-nav{display:grid;gap:7px}
.project-nav-code{font-size:11px;color:var(--accent);overflow-wrap:anywhere;padding:8px 8px 0}
.project-nav-name{font-size:14px;font-weight:650;line-height:1.4;overflow-wrap:anywhere;padding:0 8px 10px;border-bottom:1px solid var(--border)}
.project-nav .project-back,.project-nav-item{display:block;width:100%;min-height:40px;text-align:left;padding:9px 11px;border-radius:9px}
.project-nav-item{border:1px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:12px;line-height:1.35}
.project-nav-item:hover,.project-nav-item[aria-current=page]{background:#123a50;color:var(--ink);border-color:#39718c}
.workspace.project-open .project-files{margin-top:24px}
.workspace.project-open .technical-preview,.workspace.project-open .project-works{margin-top:0;padding-top:0;border-top:0}
.chat-install-guide{grid-template-columns:64px 1fr;gap:14px;align-items:start}.chat-install-guide img{border-radius:14px}.chat-app-mode .chat-install-guide{display:grid}@media(max-width:430px){.chat-install-guide{grid-template-columns:48px 1fr}.chat-install-guide img{width:48px;height:48px}}
.self-registration{display:none;margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.chat-app-mode .self-registration{display:block}.self-registration summary{cursor:pointer;color:var(--accent);font-size:13px;font-weight:650}.self-registration form{display:grid;gap:9px;margin-top:16px}.self-registration label{color:var(--muted);font-size:11px}.self-registration input{width:100%;min-height:44px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 12px}.self-registration .button{justify-self:start;margin-top:4px}.registration-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.auth-result,.registration-result{margin:10px 0 0;padding:12px 14px;border:1px solid #31b9e366;border-radius:10px;background:#062536;color:var(--ink);font-size:12px;line-height:1.5}.auth-result[data-kind="error"],.registration-result[data-kind="error"]{border-color:#ff766f88;background:#35191d;color:#ffd0cb}.auth-result[data-kind="info"],.registration-result[data-kind="info"]{border-color:#31b9e366;background:#062536;color:#bcefff}.auth-result[data-kind="success"],.registration-result[data-kind="success"]{border-color:#43d49a77;background:#0b3027;color:#a8f4d5}
.technical-block-summary{margin:12px 0 18px;padding:12px;border:1px solid #b8844d;border-radius:10px;background:rgba(184,132,77,.1)}.technical-block-summary .technical-warning{margin:0 0 10px}.technical-block-summary .button{margin-top:2px}
@media(max-width:850px){
 .workspace.project-open{grid-template-columns:1fr;gap:10px}
 .workspace.project-open .projects-panel{position:static;padding:10px}
 .workspace.project-open .detail-panel{padding:18px}
 .project-nav{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
 .project-nav-code,.project-nav-name{padding:5px;border:0}
 .project-nav .project-back,.project-nav-item{width:auto;min-height:36px}
 .project-nav-item{border-color:var(--border)}
 .work-table-scroll{overflow:visible}
 .work-table{min-width:0}
 .work-table th,.work-table td{padding:7px 4px;font-size:10px}
 .work-table td:first-child{min-width:0}
 .work-table input{min-width:48px}
}
@media(max-width:560px){
 .main:has(.workspace:not([hidden])){width:calc(100% - 16px);padding-top:12px}
 .project-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .project-nav-code,.project-nav-name{grid-column:1/-1}
 .project-nav .project-back{grid-column:1/-1}
 .project-nav-item{width:100%}
 .work-table,.work-table tbody,.work-table tr,.work-table td{display:block;width:100%}
 .work-table thead{display:none}
 .work-table tr{border:1px solid var(--border);border-radius:10px;padding:8px;margin:8px 0}
 .work-table td{border:0;padding:5px;font-size:12px}
 .work-table td:first-child{font-weight:650}
 .work-table td:not(:first-child)::before{display:inline-block;width:115px;vertical-align:middle;color:var(--muted);font-size:10px}
 .work-table td:nth-child(2)::before{content:'Авто'}
 .work-table td:nth-child(3)::before{content:'Дополнительно'}
 .work-table td:nth-child(4)::before{content:'Ставка, ₽'}
 .work-table td:nth-child(5)::before{content:'Сумма, ₽'}
 .work-table input{display:inline-block;width:calc(100% - 120px)}
}

.project-card-form{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}

/* Employee training and knowledge checks */
.training-panel{max-width:1120px;margin-inline:auto}.training-panel>.hint{margin:-8px 0 24px}.training-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}.training-card{display:grid;align-content:start;gap:15px;min-width:0;padding:18px;border:1px solid var(--border);border-radius:14px;background:#0c1723}.training-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.training-card h3,.training-course-heading h3{margin:0;font-size:17px}.training-card p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.training-badge{flex:none;border:1px solid var(--border);border-radius:100px;padding:5px 9px;color:var(--muted);font-size:10px}.training-status-passed{border-color:#42d99a66}.training-status-passed .training-badge{border-color:#42d99a88;color:#7ce7b8}.training-status-not_passed{border-color:#ff8f8666}.training-status-not_passed .training-badge{border-color:#ff8f8688;color:#ffaaa4}.training-meta{display:flex;flex-wrap:wrap;gap:7px}.training-meta span{border-radius:7px;background:#ffffff08;padding:6px 8px;color:var(--muted);font-size:10px}.training-card .button{justify-self:start}.training-admin{margin:24px 0 30px;padding:20px;border:1px solid var(--border);border-radius:14px;background:#08131e}.training-admin>h3{margin:0 0 16px;font-size:16px}.training-assign-form{display:grid;grid-template-columns:1fr minmax(190px,260px);gap:14px}.training-assign-form>label{display:grid;gap:7px;color:var(--muted);font-size:11px}.training-assign-form select,.training-assign-form input[type=date]{width:100%;min-height:42px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:8px 11px}.training-assign-form fieldset{grid-column:1/-1;min-width:0;margin:0;padding:13px;border:1px solid var(--border);border-radius:11px}.training-assign-form legend{padding:0 7px;color:var(--muted);font-size:11px}.training-assign-form>.button{grid-column:1/-1;justify-self:start}.training-employees{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.training-employee{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:9px;background:#0c1723;cursor:pointer}.training-employee:has(input:checked){border-color:#2d7898;background:#123f55}.training-employee input{width:18px;height:18px;accent-color:var(--accent)}.training-employee strong,.training-employee small{display:block}.training-employee strong{font-size:12px}.training-employee small{margin-top:3px;color:var(--muted);font-size:10px}.training-results{display:grid;gap:7px}.training-result-row{padding:11px 13px;border:1px solid var(--border);border-radius:9px;background:#0c1723}.training-result-row strong,.training-result-row small{display:block}.training-result-row strong{font-size:12px}.training-result-row small{margin-top:5px;color:var(--muted);font-size:10px}.training-detail{display:grid;gap:14px}.training-course-heading{padding-bottom:8px;border-bottom:1px solid var(--border)}.training-lesson{padding:17px;border:1px solid var(--border);border-radius:12px;background:#0c1723}.training-lesson h4,.training-test>h4,.training-attempts>h4{margin:0 0 10px;font-size:14px;color:var(--accent)}.training-lesson p{margin:0;color:var(--ink);font-size:13px;line-height:1.65}.training-lesson ul,.training-attempts ul{margin:12px 0 0;padding-left:20px;color:var(--muted);font-size:12px;line-height:1.6}.training-test{display:grid;gap:12px;margin-top:8px}.training-test fieldset{display:grid;gap:7px;margin:0;padding:14px;border:1px solid var(--border);border-radius:11px;background:#08131e}.training-test legend{padding:0 7px;color:var(--ink);font-size:12px;font-weight:650;line-height:1.45}.training-test fieldset label{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:#ffffff05;font-size:12px;line-height:1.45;cursor:pointer}.training-test fieldset label:has(input:checked){border-color:#2d7898;background:#123f55}.training-test input{width:17px;height:17px;flex:none;accent-color:var(--accent)}.training-test>.button{justify-self:start}.training-attempts details{margin:7px 0;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#0c1723}.training-attempts summary{cursor:pointer;font-size:12px}.training-correct{color:#7ce7b8}.training-wrong{color:#ffaaa4}.training-result{padding:13px;border-radius:10px;font-size:13px}.training-result-pass{border:1px solid #42d99a88;background:#15372d;color:#7ce7b8}.training-result-fail{border:1px solid #ff8f8688;background:#351d22;color:#ffaaa4}@media(max-width:700px){.training-assign-form{grid-template-columns:1fr}.training-assign-form fieldset,.training-assign-form>.button{grid-column:1}.training-card-heading{display:grid}.training-badge{justify-self:start}.training-panel{padding:20px 14px}.training-lesson{padding:14px}.training-test fieldset{padding:11px}}
.project-card-form h3{font-size:17px;margin:0 0 16px}
.project-card-form h4{font-size:13px;margin:26px 0 12px;color:var(--accent);letter-spacing:.04em}
.project-card-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.project-card-field{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:11px}
.project-card-field input,.project-card-field select,.project-card-field textarea{width:100%;min-height:42px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 11px;font:12px var(--font)}
.project-card-field textarea{min-height:86px;resize:vertical}
.project-card-field input:disabled,.project-card-field select:disabled,.project-card-field textarea:disabled{opacity:.76}
.project-feature-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.project-feature-flag{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 13px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);font-size:12px;cursor:pointer}
.project-feature-flag input{width:17px;height:17px;flex:none;accent-color:var(--blue,#03c4f4)}
.project-area-status{margin:0 0 14px!important}
.project-area-warning{color:#ff9898!important}
.project-rooms{display:grid;gap:10px;margin-bottom:12px}
.project-room-card{border:1px solid var(--border);border-radius:11px;background:#0c1723;padding:12px}
.project-room-fields{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 2fr 34px;gap:9px;align-items:end}
.project-room-remove{width:34px;height:42px;border:1px solid var(--border);border-radius:8px;background:#281b23;color:#ffaaa4;font-size:20px;line-height:1}.project-room-remove:hover{background:#49212d;border-color:#ffaaa4}
.project-field-warning{color:#ffaaa4}.project-place-hint{color:var(--muted);font-size:10px;line-height:1.4}.project-add-city{align-self:end;justify-self:start;min-height:38px;padding:7px 13px}
.project-room-card .button{margin-top:10px;min-height:32px;padding:5px 11px}
.project-card-form>.project-actions{margin-top:24px}
@media(max-width:1000px){.project-room-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.project-room-remove{justify-self:end}}
@media(max-width:650px){.project-card-fields,.project-room-fields,.project-feature-flags{grid-template-columns:1fr}}

.project-files{margin-top:26px!important;padding-top:20px!important;border-top:1px solid var(--border)!important}.project-files h3{font-size:13px!important;color:var(--accent);letter-spacing:.04em}.project-files>.hint{margin:8px 0 14px}.project-file-form,.project-file-edit{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-file-form input[type=file],.project-file-edit input{min-height:42px}.project-file-form textarea,.project-file-edit textarea{min-height:42px;resize:vertical}.project-file-form textarea,.project-file-edit textarea,.project-file-form .button,.project-file-edit .button{grid-column:1/-1}.project-file-row{background:#0c1723;border-radius:11px}.project-file-actions .button{min-height:33px}@media(max-width:650px){.project-file-form,.project-file-edit{grid-template-columns:1fr}}

.project-lighting,.project-leakage{margin:0}.lighting-form h3,.leakage-form h3{font-size:18px;margin:0 0 8px}.lighting-form>.hint,.leakage-form>.hint{margin:0 0 20px}.lighting-panel{border:1px solid var(--border);border-radius:13px;background:#0b1520;margin:14px 0;padding:16px}.lighting-heading,.lighting-row-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.lighting-heading h4{margin:0;font-size:15px}.lighting-summary{color:var(--accent);font-size:11px}.lighting-controls{display:flex;align-items:end;gap:10px;margin:14px 0}.lighting-controls .lighting-field{max-width:210px}.lighting-controls .button,.lighting-row-heading .button{min-height:33px;padding:5px 12px}.lighting-rows{display:grid;gap:10px}.lighting-row{border:1px solid var(--border);border-radius:10px;background:#0c1723;padding:12px}.lighting-row-heading{margin-bottom:10px}.lighting-row-heading strong{font-size:12px}.lighting-row-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.lighting-field{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:11px}.lighting-field input,.lighting-field select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:#0c1723;color:var(--ink);padding:7px 9px;font:12px var(--font)}.lighting-result{display:flex;align-items:end;padding:0 4px 8px;color:var(--accent);font-size:12px}.lighting-form>.button,.leakage-form>.button{margin-top:12px}
@media(max-width:800px){.lighting-row-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.lighting-row-fields{grid-template-columns:1fr}.lighting-heading{align-items:flex-start;flex-direction:column;gap:5px}}
.project-eui-points{display:grid;gap:10px;margin:14px 0}.project-eui-point{border:1px solid var(--border);border-radius:11px;background:#0c1723;padding:12px}.project-eui-point .lighting-row-heading{margin-bottom:12px}.project-eui-override{display:flex;align-items:center;gap:9px;min-height:42px}.project-eui-override input{width:18px;height:18px;flex:none}.project-eui-selection{margin:12px 0 0;color:var(--accent);font-size:12px;line-height:1.5}
.catalog-panel{max-width:1200px;margin-inline:auto}.catalog-toolbar{display:grid;grid-template-columns:minmax(180px,320px) minmax(250px,1fr);gap:12px;margin:20px 0}.catalog-toolbar label{display:grid;gap:7px;color:var(--muted);font-size:12px}.catalog-toolbar input,.catalog-toolbar select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 11px;font:inherit}.catalog-list{display:grid;gap:7px;min-height:120px}.catalog-row{width:100%;display:grid;grid-template-columns:minmax(120px,170px) minmax(190px,1.5fr) minmax(140px,1fr) minmax(110px,140px);align-items:center;gap:10px;text-align:left;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:11px 13px;font:inherit;font-size:12px;cursor:pointer}.catalog-row:hover,.catalog-row:focus-visible{border-color:var(--accent);background:#123447}.catalog-row strong{overflow-wrap:anywhere}.catalog-row-status{color:var(--muted)}.catalog-row-price{text-align:right;white-space:nowrap}.catalog-pages{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}.catalog-dialog{width:min(1000px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--border);border-radius:14px;background:#091424;color:var(--ink);padding:22px}.catalog-dialog::backdrop{background:#000b}.catalog-dialog-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.catalog-dialog-header h2{margin:0;font-size:21px}.catalog-warning{color:#ffd184;font-size:12px}.catalog-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.catalog-fact{border:1px solid var(--border);border-radius:8px;padding:9px 11px;min-width:0}.catalog-fact dt{color:var(--muted);font-size:11px}.catalog-fact dd{margin:5px 0 0;overflow-wrap:anywhere;white-space:pre-wrap;font-size:12px}.catalog-fact a{color:var(--accent)}.catalog-technical pre{max-height:300px;overflow:auto;white-space:pre-wrap}.catalog-technical summary{cursor:pointer;color:var(--accent)}@media(max-width:700px){.catalog-toolbar,.catalog-facts{grid-template-columns:1fr}.catalog-row{grid-template-columns:1fr 1fr}.catalog-row span:nth-child(2){grid-column:1/-1;grid-row:2}.catalog-row-price{text-align:left}}
.training-result-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.training-result-row .button{min-height:32px;padding:5px 10px}
.knowledge-filters{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.knowledge-list{display:grid;gap:13px}.knowledge-card{display:grid;gap:10px;padding:15px;border:1px solid var(--border);border-radius:12px;background:#0c1723}.knowledge-card label{display:grid;gap:5px;color:var(--muted);font-size:11px}.knowledge-card input,.knowledge-card textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:#08131e;color:var(--ink);padding:9px 10px;font:inherit;line-height:1.45;resize:vertical}.knowledge-meta{margin:0;color:var(--muted);font-size:10px}.knowledge-actions{margin-top:3px}@media(max-width:700px){.knowledge-card{padding:12px}.knowledge-actions .button{flex:1 1 120px}}
.chat-install-guide{display:none;margin-top:20px;padding:16px;border:1px solid #31b9e366;border-radius:12px;background:#062536;color:var(--ink)}.chat-install-guide strong{display:block;margin-bottom:10px;color:var(--accent);font-size:14px}.chat-install-guide ol{display:grid;gap:7px;margin:0;padding-left:20px;font-size:12px;line-height:1.5}.chat-install-guide p{margin:11px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.chat-app-mode .chat-install-guide{display:block}.chat-app-mode #chat-drawer-close{display:none}.chat-app-mode #chat-drawer{inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}.chat-app-mode body.chat-drawer-open{overflow:hidden}.chat-app-mode .chat-drawer-header{padding-top:max(14px,env(safe-area-inset-top));padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.chat-app-mode .chat-drawer-content{padding-bottom:max(12px,env(safe-area-inset-bottom))}.chat-app-mode .chat-drawer-actions{flex-wrap:wrap}.chat-app-mode #chat-push-toggle,.chat-app-mode #chat-mobile-logout{white-space:nowrap}@media(max-width:430px){.chat-app-mode .chat-drawer-header{gap:8px}.chat-app-mode .chat-drawer-header>div{max-width:34%}.chat-app-mode .chat-drawer-actions{gap:4px}.chat-app-mode .chat-drawer-actions .button{min-height:32px;padding:5px 7px;font-size:9px}.chat-app-mode #direct-chat-new,.chat-app-mode #team-chat-new,.chat-app-mode #team-chat-settings{font-size:0}.chat-app-mode #direct-chat-new::after{content:"Лично";font-size:9px}.chat-app-mode #team-chat-new::after{content:"+";font-size:16px}.chat-app-mode #team-chat-settings::after{content:"Люди";font-size:9px}}
.kostik-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.kostik-metric{display:grid;gap:5px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:11px;background:#0c1723}.kostik-metric span,.kostik-metric small{color:var(--muted);font-size:10px;line-height:1.4}.kostik-metric strong{font-size:16px;overflow-wrap:anywhere}.kostik-state-good{color:#68e4b2}.kostik-state-warn{color:#ffd184}.kostik-state-bad{color:#ff8a8a}.kostik-control-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;padding:16px;border:1px solid var(--border);border-radius:12px;background:#08131e}.kostik-switch{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.kostik-switch input{width:19px;height:19px;margin:1px 0 0;accent-color:var(--accent);flex:none}.kostik-switch span{display:grid;gap:4px}.kostik-switch strong{font-size:12px}.kostik-switch small{color:var(--muted);font-size:10px;line-height:1.45}.kostik-budget{display:grid;gap:6px;color:var(--muted);font-size:11px}.kostik-budget input{min-height:42px;border:1px solid var(--border);border-radius:9px;background:#0c1723;color:var(--ink);padding:9px 12px}.kostik-control-form>.staff-actions{align-self:end}.kostik-key-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.kostik-key-grid .staff-form{grid-template-columns:minmax(180px,1fr) auto;margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:11px;background:#0c1723}.kostik-key-grid .hint{grid-column:1/-1;margin:0}@media(max-width:850px){.kostik-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.kostik-control-form,.kostik-key-grid{grid-template-columns:1fr}}@media(max-width:500px){.kostik-metrics{grid-template-columns:1fr}.kostik-key-grid .staff-form{grid-template-columns:1fr}.kostik-key-grid .staff-form label{grid-column:1}}

/* One-row header with an accessible side drawer, keeping the workspace full-width. */
.app-shell>.topbar{display:block;height:auto;min-height:76px;padding:0 clamp(20px,4vw,72px)}
.topbar-main{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.topbar-leading,.topbar-shortcuts{display:flex;align-items:center;gap:12px;min-width:0}
.topbar-leading .brand{min-width:0}
.menu-launcher{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid #39718c;border-radius:11px;background:#0d2433;color:var(--accent)}
.menu-launcher:hover,.menu-launcher[aria-expanded="true"]{border-color:var(--accent);background:#123d55}
.menu-launcher svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.topbar-shortcuts{justify-content:flex-end;gap:9px}
.topbar-shortcuts .button{min-height:40px;padding:8px 17px;white-space:nowrap}
.topbar-shortcuts .button[aria-current="page"]{border-color:#39718c;background:#123447;color:var(--accent)}
.topbar-shortcuts .chat-launcher{min-height:40px;padding:0 15px}
.menu-launcher[hidden],.topbar-shortcuts>[hidden],.site-menu[hidden],.site-menu-backdrop[hidden],.site-menu-link[hidden]{display:none!important}
body.site-menu-open{overflow:hidden}
.site-menu-backdrop{position:fixed;inset:0;z-index:95;background:#02070bba;backdrop-filter:blur(3px)}
.site-menu{position:fixed;top:0;bottom:0;left:0;z-index:96;width:min(368px,calc(100vw - 24px));overflow-y:auto;padding:calc(24px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));border-right:1px solid #39718c;background:linear-gradient(165deg,#0c2638 0,#081724 38%,#06111b 100%);box-shadow:24px 0 70px #000a;animation:site-menu-enter .18s ease-out}
@keyframes site-menu-enter{from{transform:translateX(-14px)}to{transform:translateX(0)}}
.site-menu-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:4px 5px 19px;border-bottom:1px solid #ffffff25}
.site-menu-eyebrow{color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.15em}
.site-menu-header h2{margin:6px 0 0;font-size:24px;font-weight:650}
.site-menu-close{width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:#ffffff0c;color:var(--ink);font:26px/1 var(--font)}
.site-menu-close:hover{border-color:var(--accent);color:var(--accent)}
.site-menu-links{display:grid;gap:5px;padding-top:8px}
.site-menu-group{padding:19px 12px 7px;color:#79a8c1;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.site-menu-link{display:grid;gap:3px;width:100%;min-height:58px;padding:10px 14px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink);text-align:left;text-decoration:none;cursor:pointer}
.site-menu-link:hover,.site-menu-link:focus-visible,.site-menu-link[aria-current="page"]{border-color:#39718c;background:#0f354a}
.site-menu-link[aria-current="page"]{box-shadow:inset 3px 0 0 var(--accent)}
.site-menu-link strong{font:650 14px var(--font)}
.site-menu-link small{color:#91a6b5;font:11px/1.35 var(--font)}
.site-menu-logout{margin-top:10px;border-top-color:#ffffff25}
.menu-launcher:focus-visible,.site-menu-close:focus-visible,.site-menu-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media(max-width:1100px){.app-shell>.topbar{display:block;padding:0 22px}}
@media(max-width:620px){.topbar-main{min-height:68px;gap:7px}.topbar-leading{gap:8px}.topbar-leading .brand{gap:8px}.topbar-leading .brand-company{display:none}.topbar-leading .brand-mark{width:32px;height:32px}.topbar-leading .brand strong{font-size:16px;white-space:nowrap}.topbar-leading .brand strong span{font-size:9px;margin-left:2px}.menu-launcher{width:38px;height:38px}.topbar-shortcuts{gap:5px}.topbar-shortcuts .button{min-height:38px;padding:7px 10px;font-size:11px}.topbar-shortcuts .chat-launcher{min-width:38px;width:38px;min-height:38px;padding:0}}
@media(max-width:350px){.topbar-leading .brand strong span{display:none}.topbar-leading .brand strong{font-size:15px}.topbar-shortcuts .button{padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.site-menu{animation:none}}
.preliminary-equipment{display:grid;gap:12px;margin-top:20px;padding:20px;border:1px solid var(--border);border-radius:12px}
.preliminary-equipment>input,.preliminary-equipment>select{width:100%;min-height:42px}
.preliminary-lines{display:grid;gap:8px}
.preliminary-line{display:grid;grid-template-columns:minmax(150px,1fr) 75px minmax(180px,auto) auto;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:8px}
.preliminary-line input{width:100%;min-height:38px}
.preliminary-confirm{display:flex;align-items:center;gap:8px}
.preliminary-total{font-weight:700}
@media(max-width:620px){.preliminary-equipment{padding:14px}.preliminary-line{grid-template-columns:minmax(0,1fr) 75px}.preliminary-line span:first-child{grid-column:1/-1}}

/* Messenger workspace: familiar chat list + focused conversation. */
.chat-drawer{width:min(1040px,calc(100vw - 44px));height:min(780px,calc(100dvh - 44px));border-color:#25485d;border-radius:20px;background:#07121b;box-shadow:0 28px 100px #000d;backdrop-filter:none}
.messenger-shell{display:grid;grid-template-columns:330px minmax(0,1fr);width:100%;height:100%;min-height:0}
.chat-sidebar{display:flex;min-width:0;min-height:0;flex-direction:column;border-right:1px solid #203746;background:linear-gradient(180deg,#0b1d29 0,#08141e 100%)}
.chat-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:74px;padding:14px 16px;border-bottom:1px solid #203746}
.chat-product{display:flex;align-items:center;gap:10px;min-width:0}.chat-product-mark{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#00c9ff,#087fa9);color:#03111a;font-size:13px;font-weight:850;letter-spacing:-.04em;box-shadow:0 8px 22px #00bde733}.chat-product div{display:grid;min-width:0}.chat-product div>span{color:#7894a5;font-size:8px;font-weight:750;letter-spacing:.12em;white-space:nowrap}.chat-product strong{margin-top:2px;font-size:18px;font-weight:700}
.chat-sidebar-actions,.chat-drawer-actions{display:flex;align-items:center;gap:7px}.chat-icon-button{display:grid;place-items:center;flex:none;width:38px;height:38px;padding:0;border:1px solid #2b4a5c;border-radius:11px;background:#102633;color:#b8ceda;font:22px/1 var(--font);cursor:pointer}.chat-icon-button:hover,.chat-icon-button:focus-visible{border-color:#42c9ef;background:#13394c;color:#62dcff;outline:none}.chat-icon-button[hidden]{display:none}
.chat-workspace-link{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;margin:12px 12px 6px;padding:10px 12px;border:1px solid #24556c;border-radius:13px;background:#0c2b3c;color:var(--ink);text-decoration:none}.chat-workspace-link:hover,.chat-workspace-link:focus-visible{border-color:#42c9ef;background:#10384d;outline:2px solid transparent}.chat-workspace-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#0a9dcc2b;color:#63dcff;font-size:20px}.chat-workspace-link>span:nth-child(2){display:grid;gap:2px}.chat-workspace-link strong{font-size:12px}.chat-workspace-link small{color:#81a0b2;font-size:9px}
.chat-search{display:flex;align-items:center;gap:8px;margin:8px 12px;padding:0 12px;border:1px solid #203c4d;border-radius:12px;background:#06111a;color:#7191a4}.chat-search:focus-within{border-color:#38bde5;box-shadow:0 0 0 3px #12bde51a}.chat-search input{width:100%;height:42px;border:0;outline:0;background:transparent;color:var(--ink);font:12px var(--font)}.chat-search input::placeholder{color:#688394}
.chat-filters{display:flex;gap:5px;padding:2px 12px 10px;overflow-x:auto}.chat-filter{flex:none;min-height:30px;padding:5px 10px;border:1px solid transparent;border-radius:100px;background:transparent;color:#7894a5;font:650 10px var(--font);cursor:pointer}.chat-filter:hover{color:#bcd0db}.chat-filter.is-active{border-color:#2f6e89;background:#10384d;color:#63dcff}
.chat-list{flex:1;min-height:0;overflow-y:auto;padding:0 8px 10px;scrollbar-width:thin;scrollbar-color:#31566a transparent}.chat-list-item{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:67px;padding:8px 10px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.chat-list-item:hover{background:#ffffff08}.chat-list-item.is-active{border-color:#225b73;background:#0f3041}.chat-list-avatar,.chat-conversation-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:15px;background:linear-gradient(145deg,#175d79,#0d3548);color:#bcefff;font-size:13px;font-weight:750}.chat-list-item-direct .chat-list-avatar{background:linear-gradient(145deg,#256985,#174258)}.chat-list-item-project .chat-list-avatar{background:linear-gradient(145deg,#755e29,#41371e);color:#ffe4a8}.chat-list-item-team .chat-list-avatar{background:linear-gradient(145deg,#525aa2,#292f68);color:#dce1ff}.chat-list-copy,.chat-list-top,.chat-list-bottom{display:flex;min-width:0}.chat-list-copy{flex-direction:column;gap:5px}.chat-list-top,.chat-list-bottom{align-items:center;justify-content:space-between;gap:8px}.chat-list-top strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.chat-list-top time{flex:none;color:#6d899a;font-size:9px}.chat-list-bottom>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7894a5;font-size:10px}.chat-list-unread{display:grid;place-items:center;flex:none;min-width:20px;height:20px;padding:0 6px;border-radius:100px;background:#16b8e5;color:#03131b;font-size:9px}.chat-list-empty{padding:32px 18px;color:#6f8b9b;text-align:center;font-size:11px;line-height:1.5}
.chat-sidebar-footer{display:flex;gap:6px;padding:max(9px,env(safe-area-inset-bottom)) 12px 10px;border-top:1px solid #203746}.chat-footer-button{flex:1;min-height:36px;border:1px solid transparent;border-radius:10px;background:transparent;color:#7894a5;font:600 10px var(--font)}.chat-footer-button:hover{background:#ffffff08;color:#bcd0db}.chat-footer-button[hidden]{display:none}.chat-project-select-fallback{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.chat-conversation{display:flex;min-width:0;min-height:0;flex-direction:column;background:radial-gradient(circle at 80% 0,#0f2b3a 0,transparent 34%),#07121b}.chat-drawer-header{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:74px;padding:12px 18px;border-bottom:1px solid #203746;background:#091824e8;backdrop-filter:blur(14px)}.chat-mobile-back{display:none}.chat-conversation-avatar{width:42px;height:42px;border-radius:14px}.chat-conversation-heading{display:grid;gap:3px;min-width:0}.chat-conversation-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.chat-conversation-heading span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7894a5;font-size:10px}.chat-drawer-close{font-size:24px}.chat-drawer-content{display:flex;flex:1;min-height:0;overflow:hidden;padding:0}.chat-empty-welcome{display:grid;place-items:center;align-content:center;gap:10px;width:100%;padding:30px;color:#7894a5;text-align:center}.chat-empty-welcome>span{display:grid;place-items:center;width:74px;height:74px;border:1px solid #285367;border-radius:24px;background:#0d2a3a;font-size:30px}.chat-empty-welcome strong{color:var(--ink);font-size:17px}.chat-empty-welcome p{max-width:320px;margin:0;font-size:11px;line-height:1.5}
.chat-drawer .project-chat{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;min-height:0;padding:0}.chat-drawer .chat-heading{display:none}.chat-drawer #chat-older{grid-row:1;justify-self:center;margin:10px 0 0;min-height:30px;padding:4px 10px;font-size:9px}.chat-drawer .chat-messages{grid-row:2;display:flex;min-height:0;max-height:none;flex-direction:column;gap:6px;margin:0;padding:18px clamp(14px,3vw,36px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#31566a transparent}.chat-drawer .chat-message{max-width:min(78%,640px);padding:8px 11px;border-color:#1e3a49;border-radius:7px 16px 16px 16px;background:#102330;box-shadow:0 3px 10px #0002}.chat-drawer .chat-message-own{border-color:#1a607d;border-radius:16px 7px 16px 16px;background:#0e3b50}.chat-drawer .chat-message-system{align-self:center;max-width:min(88%,720px);border-color:#80662f;background:#2a2417}.chat-message-heading{align-items:center}.chat-message-heading strong{font-size:10px}.chat-message-heading time{font-size:9px}.chat-message-body{margin-top:5px;font-size:12px;line-height:1.45}.chat-message-actions{margin-top:4px;opacity:.78}.chat-message-action{font-size:9px}.chat-read-receipts{font-size:9px}
.chat-drawer .chat-form{grid-row:3;display:grid;gap:7px;padding:10px 14px max(12px,env(safe-area-inset-bottom));border-top:1px solid #203746;background:#091824}.chat-compose-context{margin:0;border-color:#285367;background:#0d2a3a}.chat-mention-picker select{min-height:34px;padding:6px 10px;border-color:#203c4d;border-radius:10px;background:#07131d;color:#8ca8b8;font-size:10px}.chat-selected-files{overflow:hidden;padding:5px 9px;border-radius:8px;background:#133243;color:#9eddf2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.chat-form>input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.chat-compose-main{display:grid;grid-template-columns:38px minmax(0,1fr) 40px;align-items:end;gap:7px;padding:6px;border:1px solid #25485d;border-radius:17px;background:#06111a}.chat-compose-main:focus-within{border-color:#3abde4;box-shadow:0 0 0 3px #12bde514}.chat-attach-button,.chat-send-button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:12px;cursor:pointer}.chat-attach-button{background:#112b39;color:#86a9ba;font-size:23px}.chat-attach-button:hover{background:#17394a;color:#67dcff}.chat-send-button{background:linear-gradient(145deg,#17c1ed,#078db6);color:#03131b;font-size:17px}.chat-send-button:hover{filter:brightness(1.08)}.chat-send-button:disabled{opacity:.5}.chat-compose-main textarea{width:100%;min-height:38px;max-height:144px;padding:9px 4px;border:0;background:transparent;color:var(--ink);font:12px/1.45 var(--font);resize:none;outline:0}.chat-compose-main textarea::placeholder{color:#688394}.chat-error{min-height:0;margin:0;font-size:9px}.chat-error:empty{display:none}
@media(max-width:900px){.chat-drawer{inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}.messenger-shell{position:relative;display:block;overflow:hidden}.chat-sidebar,.chat-conversation{position:absolute;inset:0;width:100%;height:100%;border:0;transition:transform .2s ease}.chat-sidebar{transform:translateX(0)}.chat-conversation{transform:translateX(100%)}.chat-drawer.chat-conversation-open .chat-sidebar{transform:translateX(-100%)}.chat-drawer.chat-conversation-open .chat-conversation{transform:translateX(0)}.chat-sidebar-header{min-height:70px;padding-top:max(12px,env(safe-area-inset-top))}.chat-drawer-header{grid-template-columns:auto auto minmax(0,1fr) auto;min-height:70px;padding:max(10px,env(safe-area-inset-top)) 12px 10px}.chat-mobile-back{display:grid}.chat-app-mode #chat-drawer-close{display:none}.chat-drawer .chat-messages{padding:14px 10px}.chat-drawer .chat-message{max-width:88%}.chat-drawer .chat-message-system{max-width:96%}.chat-drawer .chat-form{padding:8px 9px max(9px,env(safe-area-inset-bottom))}.chat-mention-picker select{font-size:9px}.chat-product div>span{display:none}}
@media(max-width:380px){.chat-product-mark{width:38px;height:38px}.chat-product strong{font-size:16px}.chat-sidebar-header{padding-inline:11px}.chat-workspace-link,.chat-search{margin-inline:9px}.chat-filters{padding-inline:9px}.chat-list{padding-inline:5px}.chat-list-item{grid-template-columns:42px minmax(0,1fr);padding-inline:8px}.chat-list-avatar{width:40px;height:40px}.chat-conversation-avatar{display:none}.chat-drawer-header{grid-template-columns:auto minmax(0,1fr) auto}}
@media(prefers-reduced-motion:reduce){.chat-sidebar,.chat-conversation{transition:none}}
.chat-drawer .chat-message{align-self:flex-start}.chat-drawer .chat-message-own{align-self:flex-end}.chat-drawer .chat-message-system{align-self:center}

/* Messenger polish v2: clearer icons, calmer surfaces, and touch-first controls. */
.chat-drawer{--chat-surface:#07141d;--chat-panel:#0a1a24;--chat-raised:#102530;--chat-line:#1d3542;--chat-muted:#8299a6;--chat-accent:#20bce6;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;border-color:var(--chat-line);background:var(--chat-surface)}
.chat-ui-icon{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-sidebar{border-color:var(--chat-line);background:linear-gradient(180deg,#0b1d27,#08151e)}
.chat-sidebar-header{min-height:72px;border-color:var(--chat-line);padding:13px 15px}.chat-product-mark{border-radius:13px;box-shadow:none}.chat-product strong{font-size:19px;letter-spacing:-.02em}.chat-product div>span{font-size:7px;color:#79909c}
.chat-icon-button{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:#9cb1bc}.chat-icon-button:hover,.chat-icon-button:focus-visible{border:0;background:#17313d;color:#63dcff}.chat-icon-button .chat-ui-icon{width:21px;height:21px}
.chat-workspace-link{margin:10px 10px 5px;padding:9px 10px;border-color:transparent;border-radius:14px;background:#0d2633}.chat-workspace-link:hover,.chat-workspace-link:focus-visible{border-color:transparent;background:#123343}.chat-workspace-icon{background:#173d4d;color:#63dcff}.chat-workspace-icon .chat-ui-icon{width:17px;height:17px}.chat-workspace-arrow{width:17px;height:17px;color:#6d8997}
.chat-search{margin:7px 10px;padding:0 12px;border-color:transparent;border-radius:13px;background:#061018}.chat-search .chat-ui-icon{width:17px;height:17px}.chat-search input{height:44px;font-size:13px}.chat-search:focus-within{border-color:transparent;background:#0a1c26;box-shadow:0 0 0 2px #20bce633}
.chat-filters{gap:4px;padding:3px 10px 9px}.chat-filter{min-height:32px;padding:6px 11px;font-size:11px}.chat-filter.is-active{border-color:transparent;background:#164052;color:#72dcf8}
.chat-list{padding:0 6px 8px}.chat-list-item{position:relative;min-height:70px;padding:9px 10px;border:0;border-radius:14px}.chat-list-item:hover{background:#ffffff07}.chat-list-item.is-active{border:0;background:#102935}.chat-list-item.is-active::before{position:absolute;inset:14px auto 14px 0;width:3px;border-radius:0 3px 3px 0;background:var(--chat-accent);content:""}.chat-list-avatar,.chat-conversation-avatar{border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff0d}.chat-list-top strong{font-size:13px}.chat-list-top time{font-size:10px}.chat-list-bottom>span{font-size:11px}.chat-list-unread{min-width:21px;height:21px;background:var(--chat-accent);font-size:10px}
.chat-sidebar-footer{padding:8px 10px max(9px,env(safe-area-inset-bottom));border-color:var(--chat-line)}.chat-footer-button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border-radius:12px;font-size:11px}.chat-footer-button .chat-ui-icon{width:17px;height:17px}
.chat-conversation{background:radial-gradient(circle at 78% 5%,#0c2733 0,transparent 32%),var(--chat-surface)}.chat-drawer-header{min-height:72px;border-color:var(--chat-line);background:#091821ed}.chat-conversation-heading strong{font-size:15px}.chat-conversation-heading span{font-size:11px;color:var(--chat-muted)}
.chat-empty-welcome>span{width:68px;height:68px;border:0;border-radius:50%;background:#102b37;color:#54cfee}.chat-empty-welcome>span .chat-ui-icon{width:31px;height:31px}.chat-empty-welcome p{font-size:12px}
.chat-drawer .chat-messages{gap:7px;padding:20px clamp(14px,3vw,40px)}.chat-drawer .chat-message{max-width:min(76%,660px);padding:9px 12px;border:0;border-radius:7px 17px 17px;background:#122833;box-shadow:0 2px 8px #0002}.chat-drawer .chat-message-own{border:0;border-radius:17px 7px 17px 17px;background:#0f4155}.chat-message-body{font-size:13px;line-height:1.5}.chat-message-heading strong{font-size:11px}.chat-message-actions{opacity:.72}
.chat-drawer .chat-form{gap:6px;padding:9px 12px max(11px,env(safe-area-inset-bottom));border-color:var(--chat-line);background:#091821}.chat-mention-picker{padding:0 3px}.chat-mention-picker select{min-height:42px;border:0;border-radius:12px;background:#102630;font-size:12px}.chat-mention-picker[hidden]{display:none}.chat-compose-main{grid-template-columns:42px 42px minmax(0,1fr) 44px;gap:3px;padding:5px;border-color:transparent;border-radius:20px;background:#061018}.chat-compose-main:focus-within{border-color:transparent;box-shadow:0 0 0 2px #20bce62e}.chat-attach-button,.chat-mention-toggle,.chat-send-button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:14px;cursor:pointer}.chat-attach-button,.chat-mention-toggle{background:transparent;color:#89a2af}.chat-attach-button:hover,.chat-mention-toggle:hover{background:#132d39;color:#62dcff}.chat-mention-toggle{font:700 19px/1 var(--font)}.chat-mention-toggle[aria-expanded="true"]{background:#173b4a;color:#62dcff}.chat-send-button{width:44px;height:44px;border-radius:50%;background:linear-gradient(145deg,#20c5ec,#0792ba);color:#03131b}.chat-send-button .chat-ui-icon{width:20px;height:20px}.chat-compose-main textarea{min-height:42px;padding:11px 6px;font:14px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}.chat-compose-main textarea::placeholder{color:#718895}
@media(max-width:900px){.chat-sidebar-header,.chat-drawer-header{min-height:68px}.chat-drawer .chat-message{max-width:88%}.chat-drawer .chat-messages{padding:14px 10px}.chat-compose-main{grid-template-columns:40px minmax(0,1fr) 42px}.chat-attach-button{width:40px;height:40px}.chat-send-button{width:42px;height:42px}.chat-workspace-link{margin-top:8px}}

/* @ mention dialog: type @ in the message instead of opening a separate picker. */
.chat-drawer .chat-form{position:relative}.chat-compose-main{grid-template-columns:42px minmax(0,1fr) 44px}.chat-mention-suggestions{position:absolute;z-index:5;left:12px;bottom:calc(max(11px,env(safe-area-inset-bottom)) + 66px);display:grid;width:min(380px,calc(100% - 24px));max-height:240px;overflow:auto;padding:6px;border:1px solid #264754;border-radius:15px;background:#0d202a;box-shadow:0 14px 34px #0008}.chat-mention-suggestions[hidden]{display:none}.chat-mention-option{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;width:100%;padding:7px 9px;border:0;border-radius:11px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.chat-mention-option:hover,.chat-mention-option:focus-visible{background:#173642;outline:none}.chat-mention-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#1c5368;color:#c8f2ff;font-size:11px;font-weight:750}.chat-mention-copy{display:grid;gap:2px;min-width:0}.chat-mention-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.chat-mention-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8199a5;font-size:10px}
@media(max-width:900px){.chat-compose-main{grid-template-columns:40px minmax(0,1fr) 42px}.chat-mention-suggestions{left:9px;bottom:calc(max(9px,env(safe-area-inset-bottom)) + 63px);width:min(360px,calc(100% - 18px));max-height:210px}}

/* Branded Petrovich sticker set. Tokens stay plain text in storage. */
.tb-emoji{display:inline-grid;place-items:center;width:1.9em;height:1.9em;margin:-.35em .08em;vertical-align:middle}.tb-emoji svg{width:100%;height:100%;overflow:visible;fill:#20bee8}.tb-emoji-cut{fill:#092030}.tb-emoji-line{fill:none;stroke:#20bee8;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.tb-emoji-line-cut{stroke:#092030}.tb-emoji-alert svg{fill:#f5b946}.tb-emoji-petrovich svg{fill:#28c3e9}
.chat-compose-main{grid-template-columns:42px 42px minmax(0,1fr) 44px}.chat-emoji-toggle{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:14px;background:transparent;color:#89a2af;cursor:pointer}.chat-emoji-toggle:hover,.chat-emoji-toggle:focus-visible,.chat-emoji-toggle[aria-expanded="true"]{background:#173b4a;color:#62dcff;outline:none}.chat-emoji-toggle .chat-ui-icon{width:21px;height:21px}
.chat-emoji-picker{position:absolute;z-index:6;left:12px;bottom:calc(max(11px,env(safe-area-inset-bottom)) + 66px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:min(460px,calc(100% - 24px));padding:9px;border:1px solid #24485b;border-radius:15px;background:#07151f;box-shadow:0 14px 34px #0008}.chat-emoji-picker[hidden]{display:none}.chat-emoji-option{display:flex;min-width:0;align-items:center;gap:6px;padding:7px;border:0;border-radius:11px;background:#102630;color:#bdd0da;font:600 10px/1.2 var(--font);cursor:pointer;text-align:left}.chat-emoji-option:hover,.chat-emoji-option:focus-visible{background:#164156;color:#e9faff;outline:2px solid #20bee866}.chat-emoji-option .tb-emoji{flex:none;width:30px;height:30px;margin:0}
@media(max-width:900px){.chat-compose-main{grid-template-columns:40px 40px minmax(0,1fr) 42px}.chat-emoji-toggle{width:40px;height:40px}.chat-emoji-picker{left:9px;bottom:calc(max(9px,env(safe-area-inset-bottom)) + 63px);grid-template-columns:repeat(2,minmax(0,1fr));width:min(360px,calc(100% - 18px))}}

.tb-emoji.tb-sticker{position:relative;display:inline-block;width:4em;height:4em;margin:-1.42em .12em;vertical-align:middle}.tb-sticker-art{display:block;width:100%;height:100%;object-fit:contain}.tb-sticker-helmet-logo{position:absolute;left:var(--tb-logo-x);top:var(--tb-logo-y);width:var(--tb-logo-size);aspect-ratio:1;background:#102c48;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);transform:rotate(var(--tb-logo-rotate));transform-origin:center;mask:url("logo.svg") center/contain no-repeat;-webkit-mask:url("logo.svg") center/contain no-repeat;pointer-events:none}.chat-sticker-only{margin:7px 0 2px;line-height:1}.chat-sticker-only .tb-sticker{width:128px;height:128px;margin:0}.chat-emoji-picker{grid-template-columns:repeat(4,minmax(0,1fr));width:min(620px,calc(100% - 24px));max-height:min(570px,calc(100dvh - 150px));overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#275364 #07151f}.chat-emoji-option{min-height:100px;flex-direction:column;justify-content:center;gap:2px;padding:5px;text-align:center}.chat-emoji-option .tb-emoji.tb-sticker{width:76px;height:76px;margin:0}.chat-emoji-option>span:last-child{font-size:10px;line-height:1.2}
@media(max-width:900px){.chat-emoji-picker{grid-template-columns:repeat(3,minmax(0,1fr));width:min(420px,calc(100% - 18px));max-height:min(520px,calc(100dvh - 138px))}.chat-emoji-option{min-height:94px}.chat-emoji-option .tb-emoji.tb-sticker{width:70px;height:70px}.chat-sticker-only .tb-sticker{width:120px;height:120px}}

/* Sticker categories, exact captions and vehicle branding. */
.chat-emoji-picker{display:flex;flex-direction:column;overflow:hidden}.chat-sticker-tabs{display:flex;flex:none;gap:5px;overflow-x:auto;padding:0 0 7px;scrollbar-width:none}.chat-sticker-tabs::-webkit-scrollbar{display:none}.chat-sticker-tab{flex:0 0 auto;min-height:30px;padding:5px 10px;border:1px solid #294b5b;border-radius:999px;background:#0d222d;color:#91aab5;font:700 10px/1 var(--font);cursor:pointer}.chat-sticker-tab:hover,.chat-sticker-tab:focus-visible{border-color:#20bee8;color:#dff8ff;outline:none}.chat-sticker-tab.active{border-color:#20bee8;background:#164156;color:#fff;box-shadow:inset 0 0 0 1px #20bee833}.chat-sticker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#275364 #07151f}.chat-emoji-option[hidden]{display:none}.tb-sticker-vehicle-logo{position:absolute;left:var(--tb-mark-x);top:var(--tb-mark-y);width:var(--tb-mark-size);aspect-ratio:1;background:#102c48;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);transform:rotate(var(--tb-mark-rotate));transform-origin:center;mask:url("logo.svg") center/contain no-repeat;-webkit-mask:url("logo.svg") center/contain no-repeat;pointer-events:none}.tb-sticker-caption{position:absolute;z-index:2;left:50%;bottom:1px;max-width:94%;overflow:hidden;padding:3px 5px;border:1px solid #fff9;border-radius:999px;background:#071a25dd;box-shadow:0 1px 4px #0009;color:#fff;font:900 7px/1 var(--font);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;transform:translateX(-50%);pointer-events:none}.chat-emoji-option .tb-sticker-caption{padding:2px 3px;font-size:6px}.chat-sticker-only .tb-sticker-caption{bottom:3px;padding:4px 7px;font-size:12px}.chat-sticker-only .tb-sticker-helmet-logo,.chat-sticker-only .tb-sticker-vehicle-logo{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 2px #fff)}
@media(max-width:900px){.chat-sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-sticker-tab{min-height:29px;padding:5px 9px;font-size:9px}.chat-sticker-only .tb-sticker-caption{font-size:11px}}

/* Installation guidance must explain the iOS in-app-browser limitation before login. */
.chat-app-mode .login-panel>.chat-install-guide{margin:0 0 24px}.chat-install-guide[hidden]{display:none!important}.chat-install-browser-status{margin:0 0 10px!important;padding:9px 11px;border-radius:9px;background:#0b3447;color:#c9effb!important;font-size:11px!important}.chat-install-browser-status[data-kind="warning"]{border:1px solid #f1b64b66;background:#342b16;color:#ffe2a2!important}.chat-install-browser-status[data-kind="ready"]{border:1px solid #43d49a55;background:#0b3027;color:#a8f4d5!important}.chat-install-actions{margin-top:12px}.chat-install-actions .button{width:100%;min-height:40px;padding:8px 13px;font-size:10px}.chat-copy-install-result{min-height:0;margin:8px 0 0!important;color:#9fe6fb!important;font-size:10px!important}.chat-copy-install-result:empty{display:none}.chat-app-mode #login-title{font-size:22px}.chat-app-mode .intro>p:last-child{max-width:560px}
