.admin-toast{z-index:60;background:var(--ink);max-width:min(520px,100vw - 32px);color:var(--white);opacity:0;pointer-events:none;border-radius:10px;padding:10px 16px;font-size:13.5px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);box-shadow:0 12px 32px #0f172a40}.admin-toast.is-visible{opacity:1;transform:translate(-50%)}.admin-toast:empty{padding:0}.shell-mobile .admin-toast{bottom:88px}.section-title{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.section-title h3{font-size:16px}.admin-col{flex-direction:column;gap:16px;min-width:0;display:flex}.shell-mobile .admin-intro .page-intro{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start}.shell-mobile .admin-intro .page-intro h2{font-size:21px}.shell-mobile .admin-intro .page-intro p{font-size:13.5px}.period-select select{border:1px solid var(--border);background:var(--white);border-radius:8px;padding:6px 10px;font-weight:600}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat-row.cols-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.shell-tablet .stat-row,.shell-tablet .stat-row.cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}.shell-tablet .stat-row.cols-2t{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-mobile .stat-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-tile{align-items:center;gap:12px;min-width:0;padding:12px 14px;display:flex}.stat-tile-value{white-space:nowrap;font-size:18px;font-weight:700;line-height:1.2}.stat-tile-label{color:var(--muted);font-size:12px}.stat-tile-delta{white-space:nowrap;align-self:center;font-size:12px;font-weight:700}.stat-tile-delta.tone-ok{color:var(--ok-fg)}.stat-tile-delta.tone-ko{color:var(--ko-fg)}.stat-tile-delta.tone-maint{color:var(--maint-fg)}.stat-tile-delta.tone-info{color:var(--info-fg)}.stat-tile-delta.tone-chant{color:var(--chant-fg)}.shell-mobile .stat-tile{gap:8px;padding:10px}.shell-mobile .stat-tile-value{white-space:normal;font-size:14px}.kpi-lg .kpi-label+.kpi-detail{margin-top:8px}.donut-big{color:var(--ink);font-size:26px;line-height:1.1;display:block}.alert-list,.alert-cards,.pointing-list,.plain-list{margin:0;padding:0;list-style:none}.alert-list{flex-direction:column;gap:12px;display:flex}.alert-row{align-items:center;gap:12px;display:flex}.alert-cards{flex-direction:column;gap:10px;display:flex}.alert-card{border:1px solid var(--border);background:var(--white);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.alert-card:hover{border-color:#93c5fd}.pointing-list{flex-direction:column;gap:12px;display:flex}.pointing-list li{align-items:center;gap:10px;display:flex}.pointing-name{flex:none;width:76px}.pointing-list li>.grow{padding-left:24px;padding-right:12px}.user-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.shell-mobile .user-grid{grid-template-columns:1fr}.user-card{flex-direction:column;gap:12px;height:100%;padding:14px;display:flex}.user-mail{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.bpu-head{flex-wrap:wrap;padding:12px 16px 8px}.bpu-code{color:var(--primary)}.bpu-clients{flex-wrap:wrap;gap:6px;display:flex}.bpu-client{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:6px 10px}.bpu-client.is-active{border-color:var(--border);background:var(--white);box-shadow:0 1px 3px #0f172a14}.shell-mobile .bpu-client{padding:0}.shell-mobile .bpu-client.is-active .client-tag{outline-offset:1px;outline:2px solid}.bpu-mobile{flex-direction:column;gap:12px;padding:14px;display:flex}.bpu-mobile .plain-list{flex-direction:column;gap:10px;display:flex}.bpu-mobile li strong.block{font-size:14px}.quote-list{flex-direction:column;gap:10px;display:flex}.quote{border:1px solid var(--border);background:var(--white);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.quote.is-selected{background:var(--info-bg);border-color:#93c5fd}.quote-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.quote-note{border-top:1px solid var(--border);padding-top:12px}.report-filters{gap:10px}.filter-select{border:1px solid var(--border);background:var(--white);color:var(--muted);border-radius:8px;align-items:center;gap:4px;padding:0 4px 0 12px;font-size:14px;display:inline-flex}.filter-select select{color:var(--ink);background:0 0;border:0;max-width:96px;padding:8px 4px;font-weight:600}.filter-select:focus-within{outline:2px solid var(--cyan);outline-offset:1px}.filter-select select:focus-visible{outline:none}.filter-select.is-pill{border-radius:999px;padding-left:10px;font-size:13px}.filter-select.is-pill select{max-width:76px;padding:4px 2px;font-weight:500}.report-compare{margin-left:auto}.text-ko{color:var(--ko);flex:none}.text-info{color:var(--info);flex:none}.doc-pill{white-space:nowrap;border-radius:6px;align-items:center;gap:5px;min-width:96px;padding:3px 9px;font-size:12.5px;font-weight:600;display:inline-flex}.doc-ok{background:var(--ok-bg);color:var(--ok-fg)}.doc-soon{background:var(--maint-bg);color:var(--maint-fg)}.doc-expired{color:var(--ko-fg)}.doc-na{background:var(--bg);color:var(--muted)}.doc-pills{flex-wrap:wrap;gap:6px;display:flex}.doc-pills .doc-pill{min-width:0}.blocked-label{color:var(--ko-fg);align-items:center;gap:4px;margin-left:10px;font-size:12px;font-weight:600;display:inline-flex}.company-card .blocked-label{margin:0}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.shell-mobile .company-grid{grid-template-columns:1fr}.company-card{flex-direction:column;gap:10px;height:100%;padding:14px;display:flex}.company-card.is-blocked{background:var(--ko-bg);border-color:#f87171}.worker-list{flex-direction:column;gap:12px;display:flex}.worker-list li{align-items:center;gap:10px;display:flex}.ts-layout{grid-template-columns:minmax(0,5fr) minmax(0,3fr);align-items:stretch;gap:20px;display:grid}.ts-layout>.panel,.ts-layout .ts-detail{height:100%}.ts-detail-anchor{scroll-margin-top:16px}.ts-list{flex-direction:column;gap:10px;display:flex}.ts-item{border:1px solid var(--border);background:var(--white);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.ts-item.is-selected{background:var(--info-bg);border-color:#93c5fd}.ts-item.is-ko{background:var(--ko-bg);border-color:#f87171}.ts-item.is-ko.is-selected{box-shadow:inset 0 0 0 1px #f87171}.ts-ref{color:var(--primary)}.ts-item.is-ko .ts-ref{color:var(--ko-fg)}.ts-ko{color:var(--ko-fg);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.ts-warning{color:var(--ko-fg);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.ts-total{background:var(--chant-bg);border-radius:10px;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:600;display:flex}.ts-total strong{color:var(--chant-fg);font-size:19px}.ts-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;display:grid}.ts-detail .panel-body{flex:1}.shell-mobile .ts-actions .btn{padding-left:8px;padding-right:8px;font-size:14px}.shell-mobile .ts-item .quote-right{text-align:right;max-width:45%}.shell-mobile .ts-ko{white-space:normal}.forms-layout{grid-template-columns:minmax(0,260px) minmax(0,1fr) minmax(0,270px);align-items:start;gap:20px;display:grid}.forms-list .panel-body{padding-top:14px}.forms-list-title{font-weight:600}.form-item{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.form-item>svg{color:var(--muted);flex:none}.form-item:hover{background:var(--bg2)}.form-item.is-selected{background:var(--info-bg);color:var(--info-fg)}.form-item.is-selected>svg{color:var(--info)}.form-new{background:var(--info-bg);color:var(--info-fg);border-color:#0000;font-weight:600}.forms-mobile{padding:6px}.field-list{flex-direction:column;gap:10px;display:flex}.field-row{border:1px solid var(--border);background:var(--white);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.field-row strong{font-size:14.5px}.field-move{flex-direction:column;display:flex}.field-move .icon-btn{width:22px;height:18px;color:var(--subtle);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.field-move .icon-btn:disabled{opacity:.35;cursor:default}.field-required .toggle{color:var(--muted);gap:6px;font-size:12.5px}.editor-actions{flex-wrap:wrap}.type-photo,.type-signature{background:var(--chant-bg);color:var(--chant-fg)}.type-signature{color:#c2410c;background:#ffedd5}.type-fichier{background:var(--info-bg);color:var(--info-fg)}.type-liste{background:var(--maint-bg);color:var(--maint-fg)}.type-nombre{background:var(--ok-bg);color:var(--ok-fg)}.type-ouinon,.type-texte{background:var(--bg);color:var(--muted)}.preview-title{text-align:center;margin-bottom:8px;font-weight:600}.preview-phone{border:1px solid var(--border);background:var(--bg2);border-radius:18px;flex-direction:column;gap:12px;padding:14px;display:flex}.preview-field{flex-direction:column;gap:5px;display:flex}.preview-label{font-size:12.5px;font-weight:600}.preview-input,.preview-drop,.preview-yesno span{border:1px solid var(--border);background:var(--white);color:var(--subtle);border-radius:8px;padding:8px 10px;font-size:13px}.preview-drop{border-style:dashed;justify-content:center;align-items:center;gap:6px;display:flex}.preview-yesno{text-align:center;grid-template-columns:1fr 1fr;gap:8px;display:grid}.quick-btn{background:var(--primary);min-width:140px;color:var(--white);text-align:center;border-radius:10px;flex:none;padding:8px 12px;font-weight:600}.gel-row{border-bottom:1px solid var(--border);flex-wrap:wrap;padding:8px 0}.shell-mobile .field-row{padding:10px 12px}.text-ok{color:var(--ok);flex:none}.text-maint{color:var(--maint);flex:none}.rgpd-table .table tr.tone-ok,.rgpd-table .card-list-item.tone-ok{background:var(--ok-bg)}.rgpd-table .card-list-item.tone-ok{border-color:#86efac}.rgpd-table .table td{padding-top:10px;padding-bottom:10px}.rgpd-heading{font-size:16px}.rgpd-card-top,.rgpd-request{align-items:flex-start}.processors{grid-template-columns:max-content minmax(0,1fr) auto;align-items:center;gap:8px 12px;margin:0;display:grid}.processor-row{display:contents}.processor-row dt{font-size:13.5px;font-weight:600}.processor-row dd{margin:0}.shell-mobile .processor-row .pill{padding:2px 6px;font-size:11px}.admin-page .icon-btn{color:var(--muted)}.admin-page .icon-btn:hover{color:var(--ink);background:var(--bg)}.admin-page .table th,.admin-page .table td{padding:10px 12px}.admin-page .table th{white-space:nowrap;font-size:11.5px}.admin-page .user-cell strong{white-space:nowrap}.stat-row.cols-6 .stat-tile{gap:10px;padding:10px 12px}.stat-row.cols-6 .stat-tile-label{line-height:1.25}.admin-intro .segmented button{padding:5px 10px}.admin-intro .page-intro-actions .btn{padding:8px 14px}.ts-actions .btn{white-space:nowrap;padding-left:10px;padding-right:10px}.shell-mobile .ts-detail .photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shell-mobile .ts-ko{display:inline}.shell-mobile .ts-ko svg{vertical-align:-2px;margin-right:3px}.forms-layout{grid-template-columns:minmax(0,250px) minmax(0,1fr) minmax(0,240px)}.editor-actions .btn{padding-left:12px;padding-right:12px}.report-filters .segmented button{padding:6px 10px}.form-new{white-space:nowrap}.role-legend{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.role-legend-item{align-items:center;gap:10px;padding:10px 12px;display:flex}.shell-tablet .role-legend{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-select{border:1px solid var(--border);background:var(--white);color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding-left:12px;display:inline-flex}.inline-select select{color:var(--ink);border:0;font-weight:600}.user-menu{position:relative}.user-menu-pop{z-index:10;border:1px solid var(--border);background:var(--white);border-radius:10px;flex-direction:column;gap:10px;width:220px;padding:12px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 12px 32px #0f172a26}.escalation-row{padding:4px 0}.minutes{border:1px solid var(--border);border-radius:8px;align-items:center;gap:4px;padding:0 10px;display:inline-flex}.minutes input[type=number]{text-align:right;border:0;width:48px;min-height:36px;padding:0;font-weight:700}.audit-row{border-bottom:1px solid var(--border);padding:8px 0}.cl-h1{font-size:22px;line-height:1.2}.cl-label{font-size:13.5px;font-weight:600}.cl-btn-sm{padding:5px 10px;font-size:13px}.cl-btn-lg{padding:13px 18px;font-size:16px}.cl-gap{gap:20px}.cl-mobile-sub{margin-top:-12px}.cl-kpi .kpi-value{align-items:baseline;gap:8px;display:flex}.cl-tabs-row{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.cl-tabs-row .tabs{border-bottom:0;flex:1}.cl-status-filter select{min-height:34px;padding:5px 10px;font-size:13.5px}.cl-row{position:relative}.cl-row:hover{border-color:var(--border2)}.cl-row-link{color:var(--subtle);border-radius:6px;place-items:center;display:grid}.cl-row-link:after{content:"";border-radius:14px;position:absolute;inset:0}.cl-row-link:focus-visible{outline:none}.cl-row-link:focus-visible:after{outline:2px solid var(--cyan);outline-offset:2px}.cl-row-mobile{flex-direction:column;gap:3px;display:flex}.cl-row .ticket-row-status{text-align:right}.cl-go-card{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:14px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.cl-go-card h3{color:var(--chant-fg);font-size:16px}.cl-go-card.is-compact{gap:10px;padding:14px 16px}.cl-go-card.is-compact .cl-go-check{background:0 0;border:0;width:auto;height:auto}.cl-go-check{background:var(--white);width:36px;height:36px;color:var(--chant);border:1px solid #ddd6fe;border-radius:9px;flex:none;place-items:center;display:grid}.cl-go-amount strong{font-size:22px}.cl-live{flex-direction:column;display:flex;overflow:hidden}.cl-live .map{border-radius:0}.cl-live .map-controls{display:none}.cl-live-body{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.cl-live-link{color:inherit;text-decoration:none}.cl-live-avatar{display:inline-flex;position:relative}.cl-live-avatar i{border:2px solid var(--white);background:var(--maint);border-radius:50%;width:11px;height:11px;position:absolute;bottom:-1px;right:-1px}.cl-live-avatar i.is-online{background:var(--ok)}.cl-tablet-duo{align-items:start}.cl-gtr-pill{padding:5px 10px;font-size:13px}.cl-gtr-end{font-weight:500}.cl-detail-head{align-items:center;gap:16px;display:flex}.cl-detail-head .tile{border-radius:12px;width:50px;height:50px}.cl-detail-head h2{flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:22px;display:flex}.cl-detail-card{flex-direction:column;gap:6px;padding:16px;display:flex}.cl-detail-card h2{font-size:19px}.cl-detail-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr) minmax(0,1.05fr);align-items:stretch}.cl-detail-grid>.panel{min-height:560px}.cl-progress .vstep.is-current{background:var(--info-bg);border-radius:8px;margin:-6px -8px 10px;padding:6px 8px}.cl-progress .vstep.is-current:before{display:none}.cl-progress .vstep.is-current .vstep-mark{background:var(--info);color:var(--white);box-shadow:none}.cl-progress .vstep.is-current .vstep-title{color:var(--ink)}.cl-progress .vstep.is-current .vstep-meta{color:var(--info)}.cl-chat-panel .panel-body{flex:1}.cl-chat{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.cl-chat-body{flex-direction:column;flex:1;gap:10px;max-height:420px;display:flex;overflow-y:auto}.cl-bubble{align-items:flex-start;gap:8px;max-width:92%;display:flex}.cl-bubble:not(.is-mine){flex-direction:row-reverse;align-self:flex-end}.cl-bubble-box{background:var(--bg);border-radius:10px;padding:8px 12px;font-size:13.5px}.cl-bubble:not(.is-mine) .cl-bubble-box{background:var(--info-bg)}.cl-bubble-meta{color:var(--muted);font-size:12px;font-weight:600}.cl-chat-form{gap:8px;margin-top:auto;display:flex}.cl-chat-form input{flex:1;min-width:0}.cl-chat-form .send-btn{border-radius:10px}.cl-quote{overflow:hidden}.cl-quote-table th:nth-child(n+2),.cl-quote-table td:nth-child(n+2){white-space:nowrap}.cl-quote-foot th,.cl-quote-foot td{background:var(--chant-bg);text-transform:none;letter-spacing:0;color:var(--ink);border-bottom:0;font-size:15px}.cl-total-value{color:var(--chant-fg);font-size:20px}.cl-quote-list{padding:14px 14px 12px}.cl-quote-list ul{flex-direction:column;gap:12px;margin:0;padding:0 0 4px;list-style:none;display:flex}.cl-quote-total{background:var(--chant-bg);border-radius:10px;margin-top:10px;padding:10px 12px}.cl-decision .panel-body{gap:14px}.cl-tight{gap:12px}.cl-code-row{align-items:flex-start;gap:8px;display:flex}.cl-code-row .field{flex:1;min-width:0}.cl-code-row>.btn{white-space:nowrap;margin-top:26px}.cl-decision-actions{flex-direction:column;gap:6px;margin-top:8px;display:flex}.cl-validate{padding:12px 18px;font-size:16px}.cl-refuse-btn{color:var(--ink)}.cl-refuse{background:var(--ko-bg);border-radius:10px;padding:12px}.cl-sticky-stack{flex-direction:column;gap:4px;width:100%;display:flex}.cl-confirm{text-align:center;flex-direction:column;align-self:center;align-items:center;gap:10px;width:min(560px,100%);padding:32px 24px;display:flex}.cl-confirm h2{font-size:22px}.cl-confirm-icon.is-ok{color:var(--ok)}.cl-confirm-icon.is-ko{color:var(--ko)}.cl-confirm-actions{justify-content:center;margin-top:8px}.cl-confirm .badge{white-space:normal}.cl-sign{flex-direction:column;gap:4px;display:flex}.cl-sign-box{border:1.5px dashed var(--subtle);background:var(--bg2);border-radius:10px;height:96px;position:relative}.cl-sign-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.cl-sign-caption{border-top:1px solid var(--border);color:var(--subtle);pointer-events:none;padding-top:2px;font-size:11px;position:absolute;bottom:6px;left:18px;right:18px}.cl-sign-hint{color:var(--subtle);pointer-events:none;place-items:center;font-size:13px;display:grid;position:absolute;inset:0 0 24px}.cl-main-aside{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.cl-nature .choice-grid{flex-wrap:wrap;gap:8px;display:flex}.cl-nature .choice{border-radius:8px;padding:6px 12px;font-size:14px}.cl-nature .choice strong{font-weight:500}.cl-nature .choice.is-selected{color:var(--primary)}.cl-nature .choice.is-selected strong{font-weight:700}.cl-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.cl-contact-grid.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cl-files{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cl-files li{border:1px solid var(--border);background:var(--white);border-radius:8px;align-items:center;gap:6px;padding:3px 4px 3px 10px;font-size:13px;display:inline-flex}.cl-files .icon-btn{width:26px;height:26px}.cl-files .is-pdf{color:var(--ko)}.cl-files .is-doc{color:var(--info)}.cl-files li.cl-file-add{border:1.5px dashed #93c5fd;padding:0}.cl-file-add button{color:var(--info);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:6px 12px;font-weight:600;display:inline-flex}.cl-form-foot{margin-top:12px}.cl-next .vstep:not(:last-child):before{display:none}.cl-next .vstep-mark{background:var(--info-bg);color:var(--primary);border:0}.cl-next .vstep-title{color:var(--ink)!important;font-weight:600!important}.cl-head-progress{text-align:right;flex-direction:column;gap:6px;width:220px;display:flex}.cl-pct-lg{color:var(--chant);font-size:26px}.cl-pct{color:var(--chant);white-space:nowrap}.cl-progress-row{align-items:center;gap:10px;display:flex}.cl-progress-row .progress{flex:1}.cl-plan-head{flex-wrap:wrap;align-items:center}.cl-floor-tabs{flex-wrap:wrap;gap:6px;display:flex}.cl-floor-tabs button{border:1px solid var(--border);background:var(--bg);min-width:40px;color:var(--ink);cursor:pointer;border-radius:7px;padding:5px 10px;font-size:13px;font-weight:600}.cl-floor-tabs button.is-active{background:var(--chant);border-color:var(--chant);color:var(--white)}.cl-readonly{background:var(--bg);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12.5px;display:inline-flex}.cl-floor-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.cl-floor-list button{width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:12px;padding:7px 8px;display:flex}.cl-floor-list button.is-active{background:#f5f3ff;border-color:#ddd6fe}.cl-floor-tag{background:var(--bg);text-align:center;border-radius:7px;flex:none;min-width:44px;padding:4px 8px;font-size:13px;font-weight:700}.is-active>.cl-floor-tag{background:var(--chant);color:var(--white)}.cl-floor-dots{flex-wrap:wrap;flex:1;gap:3px;display:flex}.cl-floor-dots i{border:1px solid var(--border);background:var(--white);border-radius:3px;width:12px;height:12px}.cl-floor-dots i.is-done{background:var(--ok);border-color:var(--ok)}.cl-floor-dots i.is-progress{background:var(--info);border-color:var(--info)}.cl-floor-dots i.is-reserve{background:var(--ko);border-color:var(--ko)}.cl-floor-dots i.is-confirm{background:var(--maint);border-color:var(--maint)}.cl-floor-list strong.is-complete{color:var(--ok)}.cl-alert-banner{background:var(--ko-bg);color:var(--ko-fg);border-radius:10px;align-items:center;gap:8px;padding:12px 14px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.cl-alea{scroll-margin-top:16px}.cl-alea .photo-grid{grid-template-columns:repeat(2,minmax(0,140px))}.cl-report-tools{flex-wrap:nowrap}.cl-report-tools .grow-search{flex:0 300px}.cl-report-tools input[type=search]{border:0;flex:1;min-width:0}.cl-report-tools input[type=search]:focus-visible{outline:none}.cl-report-tools .search-input:focus-within{outline:2px solid var(--cyan)}.cl-chips{min-width:0}.cl-chips .chips{border:0;padding:0}.cl-zip{white-space:nowrap;margin-left:auto}.cl-report-grid{grid-template-columns:minmax(0,1fr) 360px}.cl-doc-cell{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.cl-doc-cell svg,.cl-dl{color:var(--info)}.cl-dl{cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.cl-dl:hover{background:var(--info-bg)}.cl-doc-cards{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.cl-doc-cards>li{align-items:center;gap:4px;padding-right:8px;display:flex}.cl-doc-cards>li.is-selected{background:#f8fbff;border-color:#93c5fd}.cl-doc-card{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:12px 14px;display:flex}span.cl-doc-card{cursor:default}.cl-doc-tile{width:38px;height:38px}.cl-preview{position:sticky;top:16px}.cl-sheet{border:1px solid var(--border);background:var(--white);border-radius:8px;flex-direction:column;gap:10px;min-height:360px;padding:14px;font-size:13px;display:flex;box-shadow:0 4px 16px #0f172a0f}.cl-sheet .logo-text{letter-spacing:0;font-size:14px}.cl-sheet-kind{color:var(--primary);font-size:12px}.cl-sheet-photos{grid-template-columns:1fr 1fr;gap:10px;display:grid}.cl-sheet-photos figure{flex-direction:column;gap:4px;margin:0;display:flex}.cl-sheet-photos .photo-img{aspect-ratio:16/7;background:linear-gradient(135deg, #475569, var(--ink2))}.cl-skel{background:var(--bg);border-radius:4px;height:6px;display:block}.cl-skel-box{background:var(--bg);border-radius:4px;width:96px;height:26px}.cl-sheet-sign{margin-top:6px}.cl-preview-btn .btn{width:100%}.cl-dispatch{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.cl-online{color:var(--ok-fg)}.cl-urgent{background:var(--ko-bg);color:var(--ko-fg);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-weight:600;text-decoration:none;display:flex}.cl-contact:not(.is-desktop) .messages .dispatch-card{display:none}.cl-contact:not(.is-desktop) .messages{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:auto}.cl-contact:not(.is-desktop) .conv-list{border-right:0;border-bottom:1px solid var(--border);gap:6px;padding:10px;display:flex;overflow-x:auto}.cl-contact:not(.is-desktop) .conv{border:1px solid var(--border);border-radius:999px;flex:none;width:auto;max-width:80%;padding:6px 10px}.cl-contact:not(.is-desktop) .conv .tile,.cl-contact:not(.is-desktop) .conv .avatar,.cl-contact:not(.is-desktop) .conv-bottom,.cl-contact:not(.is-desktop) .conv-top small{display:none}.cl-contact:not(.is-desktop) .thread-body{min-height:360px;max-height:60dvh}.cl-contact.is-mobile .msg{max-width:88%}.cl-text{color:var(--ink2);font-size:13.5px}.cl-rights{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.cl-rights li{border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.cl-right-icon{background:var(--info-bg);width:30px;height:30px;color:var(--info);border-radius:8px;flex:none;place-items:center;display:grid}.cl-rights-actions{gap:10px}.cl-mentions{flex-direction:column;gap:10px;margin:0;display:flex}.cl-mentions dt{letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:700}.cl-mentions dd{margin:2px 0 0}.cl-mentions a{color:inherit}.cl-docs{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cl-docs li{align-items:center;gap:8px;display:flex}.cl-docs svg{color:var(--info)}.cl-accepted{color:var(--ok-fg);align-items:center;gap:6px;font-size:12.5px;display:flex}.cl-legal .toggle .grow>span:first-child{font-weight:600}.shell-tablet .cl-detail-head h2{font-size:21px}.shell-tablet .cl-report-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.shell-tablet .cl-report-tools .grow-search{flex:300px}.shell-tablet .cl-preview{gap:14px}.shell-tablet .cl-sheet{min-height:0;padding-bottom:40px}.shell-mobile .cl-page{padding-bottom:24px}.shell-mobile .cl-row{align-items:flex-start;padding:14px}.shell-mobile .cl-row .tile{width:36px;height:36px}.shell-mobile .cl-row .cl-row-link{width:0}.shell-mobile .cl-row .cl-row-link svg{display:none}.shell-mobile .cl-contact-grid{grid-template-columns:1fr}.shell-mobile .cl-rights{gap:8px}.shell-mobile .cl-rights li{flex-direction:column;align-items:flex-start;gap:6px;padding:10px}.shell-mobile .cl-report-tools{flex-wrap:wrap}.shell-mobile .cl-report-tools .grow-search{flex:100%}.shell-mobile .cl-code-row{flex-direction:column;align-items:stretch}.shell-mobile .cl-code-row>.btn{margin-top:0}.shell-mobile .cl-validate,.shell-mobile .sticky-actions .cl-sticky-stack .btn{width:100%}.shell-mobile .cl-main-aside{grid-template-columns:1fr}.shell-mobile .cl-tabs-row{flex-wrap:wrap}.shell-mobile .cl-live-body{padding:12px 14px}.cl-kpi .kpi-label.dot-ok:before{background:var(--ok)}.cl-kpi .kpi-label.dot-maint:before{background:var(--maint)}.cl-kpi .kpi-label.dot-chant:before{background:var(--chant)}.cl-kpi .kpi-label.dot-info:before{background:var(--info)}.cl-detail-head .cl-gtr-pill{padding:7px 12px;font-size:14px}.cl-page .cl-go-grid{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:20px;display:grid}.cl-quote-table .cl-quote-foot th{text-transform:none;letter-spacing:0;color:var(--ink);font-size:15px}.cl-page .photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,150px))}.cl-head-progress .progress{background:var(--border)}.cl-page .cl-report-grid{grid-template-columns:minmax(0,1fr) 320px}.cl-report-grid .table{font-size:13px}.cl-report-grid .table th,.cl-report-grid .table td{white-space:nowrap;padding:10px 6px}.cl-report-grid .table td:last-child{padding-right:10px}.cl-report-grid .table th:first-child,.cl-report-grid .table td:first-child{padding-left:16px}.toolbar-row.cl-report-tools .grow-search{flex:0 300px}.cl-contact:not(.is-desktop) .thread-body{min-height:360px}.shell-tablet .cl-contact .thread-body{min-height:520px}.shell-mobile .cl-page.has-sticky{padding-bottom:150px}.shell-tablet .cl-page .cl-report-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.shell-tablet .toolbar-row.cl-report-tools .grow-search{flex:300px}.shell-mobile .toolbar-row.cl-report-tools .grow-search{flex:100%}.dc-ref{color:var(--primary);white-space:nowrap;font-size:13px;font-weight:700}.dc-cell-title{font-size:13.5px;display:block}.dc-card-title{margin:4px 0 2px}.dc-link-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.dc-mobile-sub{margin-top:-10px}.dc-search{min-height:40px}.dc-search input{min-height:38px}.dc-icon-btn{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid}.dc-icon-btn:hover{background:var(--bg);color:var(--ink)}.dc-sub-title{border-top:1px solid var(--border);margin-top:8px;padding-top:12px;font-size:16px}.dc-ico-ok{color:var(--ok)}.dc-ico-ko{color:var(--ko)}.dc-ico-info{color:var(--info)}.dc-ico-maint{color:var(--maint)}.dc-ico-chant{color:var(--chant)}.dc-toast{z-index:60;background:var(--ink);max-width:calc(100vw - 32px);color:var(--white);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0f172a40}.shell-mobile .dc-toast{bottom:88px}.dc-pipeline{grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;display:grid}.dc-pipe{border:1px solid var(--border);background:var(--white);font:inherit;text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:10px 12px;display:flex}.dc-pipe strong{font-size:19px;line-height:1.1}.dc-pipe span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;overflow:hidden}.dc-pipe.is-attention{background:var(--chant-bg);border-color:#ddd6fe}.dc-pipe.is-selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.dc-ftth-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.dc-ftth-table{height:100%;overflow:hidden}.dc-ftth-toolbar{padding:12px}.card .dc-ftth-toolbar{padding:12px 12px 8px}.dc-ftth-table .dc-search{max-width:260px}.dc-ftth-table .toolbar-row{justify-content:space-between}.dc-ftth-table .table th{letter-spacing:.5px;text-transform:uppercase;font-size:11.5px}.dc-ftth-list{flex-direction:column;gap:12px;min-width:0;display:flex}.card-list-item.dc-is-picked{background:var(--chant-bg);border-color:#c4b5fd}.dc-decl .panel-body{flex:1}.dc-lines{border-collapse:collapse;width:100%;font-size:13.5px}.dc-lines th,.dc-lines td{text-align:left;vertical-align:middle;padding:6px 0}.dc-lines th{width:72px;font-size:12px}.dc-qty{white-space:nowrap;text-align:right!important}.dc-qty input{text-align:right;width:80px;min-height:32px;padding:4px 8px}.dc-amount{background:var(--bg2);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.dc-amount strong{margin-left:auto}.dc-photos{grid-template-columns:repeat(3,minmax(0,110px));gap:10px;display:grid}.dc-photos .photo-img{background:linear-gradient(160deg,#475569,#1e293b)}.dc-decl-actions{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:12px;display:grid}.shell-tablet .dc-pipeline{grid-template-columns:repeat(4,minmax(0,1fr))}.shell-tablet .dc-ftth-grid,.shell-mobile .dc-ftth-grid{grid-template-columns:1fr}.shell-tablet .dc-ftth-toolbar{padding:0}.shell-mobile .dc-photos{grid-template-columns:repeat(3,minmax(0,1fr))}.dc-mission{align-items:flex-start;gap:14px;display:flex}.dc-mission.card{padding:16px}.dc-mission .tile{width:50px;height:50px}.dc-mission-title{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:4px;font-size:22px;display:flex}.shell-tablet .dc-mission-title,.shell-mobile .dc-mission-title{font-size:19px}.dc-mission-title .client-tag{padding:3px 8px;font-size:13px}.shell-tablet .dc-mission-title>.badge,.shell-mobile .dc-mission-title>.badge:first-of-type{margin-left:auto}.dc-racco-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,.9fr);align-items:stretch;gap:20px;display:grid}.dc-route .vstep{border-radius:8px;align-items:center;margin-bottom:4px;padding:8px 10px}.dc-route .vstep:before{display:none}.dc-route .vstep.is-current{background:var(--info-bg)}.dc-route .vstep.is-current .vstep-mark{background:var(--info);color:var(--info);box-shadow:inset 0 0 0 5px var(--info), inset 0 0 0 9px var(--white)}.dc-route .vstep.is-current .vstep-title{color:var(--ink)}.dc-route .vstep.is-current .vstep-meta{color:var(--info)}.dc-route .vstep-mark{border-width:1.5px;width:24px;height:24px;font-size:11px}.dc-route .vstep-title{font-size:14px}.dc-route .vstep .muted.small{font-size:11.5px}.dc-kv-panel .kv-row,.dc-racco-grid .kv-row{border-bottom:0;padding:5px 0}.dc-kv-panel .kv dt{color:var(--ink)}.dc-kv-panel .kv:last-child dt,.shell-tablet .dc-kv-panel .kv dt,.shell-mobile .dc-kv-panel .kv dt{color:var(--muted);font-size:13px}.dc-doc-list{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;margin:0;padding:0 0 10px;font-size:13.5px;list-style:none;display:flex}.dc-doc-list li{align-items:center;gap:8px;min-height:30px;display:flex}.dc-docs .dc-sub-title{border-top:0;padding-top:0}.dc-access{margin:0}.dc-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.dc-stat{flex-direction:column;padding:12px 14px;display:flex}.dc-stat strong{font-size:20px;line-height:1.2}.dc-stat span{color:var(--muted);font-size:12px}.dc-stat.tone-chant>strong,.dc-pct.tone-chant{color:var(--chant)}.dc-stat.tone-ko>strong,.dc-pct.tone-ko{color:var(--ko)}.dc-stat.tone-info>strong,.dc-pct.tone-info{color:var(--info)}.dc-stat.tone-maint>strong{color:var(--maint-fg)}.dc-pct.tone-ok{color:var(--ok)}.dc-search-chantier{width:min(300px,100%)}.shell-tablet .dc-search-chantier{flex:1;width:auto}.dc-chantier-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.shell-tablet .dc-chantier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-mobile .dc-chantier-grid{grid-template-columns:1fr}.dc-chantier{height:100%;color:inherit;flex-direction:column;gap:14px;padding:14px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.dc-chantier:hover{border-color:#c4b5fd;box-shadow:0 6px 20px #0f172a12}.dc-chantier-head{align-items:flex-start;gap:12px;display:flex}.dc-chantier-head strong{font-size:14.5px}.dc-chantier-progress{align-items:center;gap:10px;display:flex}.dc-chantier-progress .progress{height:7px}.dc-pct{white-space:nowrap;font-size:13.5px}.dc-chantier-note{text-align:right;flex-wrap:nowrap;font-size:12px}.dc-stepper{padding:16px 22px}.dc-stepper.is-compact{border-radius:12px;padding:10px 14px}.dc-stepper .stepper-text strong{font-size:14.5px}.dc-stepper .stepper-item.is-current .stepper-text strong{color:var(--chant)}.dc-stepper.is-compact .stepper-mark{width:26px;height:26px;font-size:12.5px}.dc-stepper.is-compact .stepper-text strong{color:var(--muted);font-size:13px;font-weight:500}.dc-stepper.is-compact .stepper-item.is-done .stepper-text strong,.dc-stepper.is-compact .stepper-item.is-current .stepper-text strong{color:var(--ink);font-weight:600}.dc-stepper .stepper-item:last-child{flex:none}.dc-wizard .choice.is-selected{border-color:var(--chant);background:var(--chant-bg);box-shadow:inset 0 0 0 1px var(--chant)}.dc-wizard .choice.is-selected strong,.dc-wizard .choice.is-selected svg{color:var(--chant-fg)}.dc-wizard .choice{align-items:flex-start;padding:8px 12px}.dc-wizard .choice svg{flex:none;margin-top:3px}.dc-wizard .choice small{font-size:11.5px}.dc-wizard .choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shell-tablet .dc-wizard .choice-grid,.shell-mobile .dc-wizard .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-wizard .field label,.dc-wizard .field legend{font-weight:500}.dc-wizard .field label span[aria-hidden],.dc-wizard .field legend span[aria-hidden]{color:var(--ko)}.dc-wizard .sticky-actions{margin-top:auto}.shell-mobile .dc-wizard{padding-bottom:96px}.dc-saved{text-align:right}.dc-draft-btn{color:var(--ink)}.dc-btn-sm{align-self:flex-start;padding:6px 12px;font-size:13.5px}.dc-step1{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.shell-tablet .dc-step1,.shell-mobile .dc-step1{grid-template-columns:1fr}.dc-step1-side{gap:16px}.dc-form{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px 12px;display:grid}.dc-span-2{grid-column:span 2}.dc-span-3{grid-column:span 3}.dc-span-6{grid-column:1/-1}.shell-tablet .dc-form{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-tablet .dc-form>div,.shell-tablet .dc-form>fieldset{grid-column:span 1}.shell-tablet .dc-form>.dc-span-t2,.shell-tablet .dc-form>.dc-span-6{grid-column:1/-1}.shell-mobile .dc-form{grid-template-columns:1fr}.shell-mobile .dc-form>*{grid-column:1/-1}fieldset.dc-zones{border:0;min-width:0;margin:0;padding:0}.dc-zone-list{flex-wrap:wrap;gap:6px;display:flex}.dc-zone{background:var(--bg);color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:4px 10px;font-size:12.5px}.dc-zone:hover{text-decoration:line-through}.dc-zone:last-child:hover,.dc-zone-add .dc-zone:hover{background:var(--border);text-decoration:none}.dc-zone.is-chant{background:var(--chant-bg);color:var(--chant-fg)}.dc-zone-add{gap:6px;display:inline-flex}.dc-zone-add input{width:110px;min-height:30px;padding:3px 8px;font-size:12.5px}.dc-ico-orange,.dc-tile-orange{color:#ea580c}.dc-tile-orange{background:#ffedd5}.dc-constraints{flex-direction:column;gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.dc-constraints li{align-items:center;gap:10px;display:flex}.dc-constraints svg{color:var(--muted)}.dc-step1 .kv-row{border:0;padding:4px 0;font-size:13px}.dc-step2{grid-template-columns:minmax(0,.95fr) minmax(0,1.8fr) minmax(0,1.15fr);align-items:start;gap:20px;display:grid}.dc-plan-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dc-plan-item{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:7px 8px;font-size:13.5px;display:flex;position:relative}.dc-plan-item:hover{background:var(--bg2)}.dc-plan-item.is-active{background:var(--chant-bg);border-color:#ddd6fe}.dc-plan-item .small{font-size:11.5px}.dc-plan-badge{padding:1px 6px;font-size:10.5px;position:absolute;top:12px;right:8px}.dc-floor-tag{background:var(--bg);border-radius:7px;flex:none;place-items:center;min-width:46px;height:30px;padding:0 8px;font-size:12.5px;font-weight:700;display:inline-grid}.is-active>.dc-floor-tag,.is-active .dc-floor-tag{background:var(--chant);color:var(--white)}.dc-dropzone{color:var(--chant);font:inherit;cursor:pointer;background:#faf5ff;border:1.5px dashed #c4b5fd;border-radius:10px;flex-direction:column;align-items:center;gap:4px;margin-top:8px;padding:16px;display:flex}.dc-dropzone strong{color:var(--ink);font-size:13.5px}.dc-editor{flex-direction:column;display:flex;overflow:hidden}.dc-editor.is-bare{padding:12px}.dc-editor-bar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.dc-tools,.dc-zoom-ctl{align-items:center;gap:4px;display:flex}.dc-zoom-ctl span{text-align:center;min-width:48px;font-size:13px}.dc-tool{min-width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:600;display:inline-flex}.dc-tool:hover{background:var(--bg)}.dc-tool.is-active{color:var(--chant)}.dc-tool.has-label.is-active{background:var(--chant);color:var(--white);padding:0 12px}.dc-tool.is-boxed{border-color:var(--border)}.dc-editor-hint{background:var(--chant-bg);color:var(--chant-fg);padding:8px 14px;font-size:12.5px}.dc-zoom{padding:12px;overflow:auto}.dc-zoom .floorplan{border-radius:6px}.dc-editor .dc-legend{margin:0;padding:8px 14px 12px}.dc-editor.is-bare .dc-legend,.dc-editor.is-bare .dc-zoom{padding:0}.dc-legend{gap:6px 14px}.dc-empty-plan{text-align:center;min-height:320px;color:var(--chant);justify-content:center;align-items:center;gap:8px;padding:24px}.dc-empty-plan strong{color:var(--ink)}.dc-plan-side .panel-body{gap:14px;padding-top:18px}.dc-plan-side h3{font-size:17px}.dc-eyebrow{letter-spacing:.6px;text-transform:uppercase;color:var(--subtle);font-size:11.5px;font-weight:600}.dc-file{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding-bottom:12px;display:flex}.dc-counts.card{border:0;border-radius:0}.dc-plan-side .dc-counts .panel-body{padding:0}.shell-tablet .dc-counts.card,.shell-mobile .dc-counts.card{border:1px solid var(--border);border-radius:14px}.dc-count-list{flex-direction:column;gap:8px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.dc-count-list li{align-items:center;gap:8px;display:flex}.dc-count-list strong{margin-left:auto}.sq{border-radius:2px;flex:none;width:11px;height:11px}.sq.ok{background:var(--ok)}.sq.vert{background:#facc15}.sq.cyan{background:var(--cyan)}.dc-confirm{background:var(--maint-bg);color:#78350f;border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.dc-confirm-title{color:#b45309;align-items:center;gap:6px;font-weight:700;display:flex}.dc-confirm .btn{background:var(--white)}.dc-floor-row{flex-wrap:wrap}.dc-floor-pills{flex-wrap:wrap;gap:6px;display:flex}.dc-floor-pill{border:1px solid var(--border);background:var(--white);min-width:42px;font:inherit;cursor:pointer;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:600}.dc-floor-pill.is-active{background:var(--chant);border-color:var(--chant);color:var(--white)}.shell-mobile .dc-floor-pills{scrollbar-width:none;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.shell-mobile .dc-floor-pill{flex:none}.dc-gap{gap:16px}.dc-step3{grid-template-columns:minmax(0,2.6fr) minmax(0,1.1fr);align-items:start;gap:20px;display:grid}.dc-steps-table th,.dc-steps-table td{padding-top:8px;padding-bottom:8px;font-size:13.5px}.dc-steps-table thead th{letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-size:11.5px}.dc-steps-table tbody th{text-align:left;font-weight:600}.dc-steps-table td{color:var(--muted)}.dc-steps-table input{width:100%;min-height:32px;padding:4px 8px}.dc-proof{color:var(--ink);align-items:center;gap:6px;display:inline-flex}.dc-proof svg{color:var(--chant)}.dc-optional .dc-proof{color:var(--muted)}.dc-cell-action{width:44px}.dc-info-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.dc-info-card{align-items:flex-start;gap:8px;padding:12px 14px;font-size:12.5px;display:flex}.dc-info-card svg{color:var(--chant);flex:none;margin-top:2px}.dc-team-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dc-team-item{cursor:pointer;align-items:center;gap:10px;font-size:13.5px;display:flex}.dc-team-item input{width:18px;height:18px;accent-color:var(--info)}.dc-team .small{font-size:11.5px}.dc-team .kv{border-top:1px solid var(--border);padding-top:6px}.dc-team .kv-row{border:0;padding:4px 0;font-size:13px}.dc-steps-head h3{font-size:16px}.dc-flush-card{overflow:hidden}.dc-step-list{flex-direction:column;gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.dc-step-list li{align-items:flex-start;gap:12px;display:flex}.dc-step-num{background:var(--chant-bg);width:24px;height:24px;color:var(--chant-fg);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.dc-step-list .small{align-items:center;gap:4px;font-size:12px;display:inline-flex}.dc-site-head{align-items:flex-start;gap:14px;display:flex}.dc-site-head.card{padding:16px}.dc-site-head .tile{width:50px;height:50px}.dc-site-head .dc-chantier-progress{margin-top:10px}.dc-site-progress{text-align:right;flex-direction:column;flex:none;gap:6px;width:220px;display:flex}.dc-site-progress strong{font-size:22px}.dc-tag-chant{background:var(--chant-bg);color:var(--chant-fg)}.dc-tag-chant i{background:var(--chant)}.dc-detail-grid{grid-template-columns:minmax(0,.95fr) minmax(0,2fr) minmax(0,1.2fr);align-items:start;gap:20px;display:grid}.dc-floor-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dc-floor-mid{gap:6px}.dc-floor-mid .progress{height:5px}.dc-ratio{text-align:right;min-width:38px;font-size:13px}.dc-ratio.is-ok{color:var(--ok);font-weight:700}.dc-plan-card{overflow:hidden}.dc-plan-card.dc-pad{padding:16px}.dc-plan-card.is-bare{padding:10px}.dc-plan-card .dc-legend{padding:4px 14px 14px}.dc-pad .dc-legend{padding:8px 0 0}.dc-plan-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.dc-plan-head h3{font-size:16px}.dc-plan-body{padding:12px 14px}.dc-issues{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.dc-issues>li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.dc-issue{align-items:flex-start;gap:10px;display:flex}.dc-issue .small{font-size:12px}.dc-doe .kv-row{border:0;padding:4px 0;font-size:13.5px}.dc-doe-tab{max-width:520px}.dc-section-title{font-size:17px}.dc-plan-intro{align-items:flex-start;gap:16px;display:flex}.dc-plan-intro h2{flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:24px;display:flex}.shell-tablet .dc-plan-intro h2,.shell-mobile .dc-plan-intro h2{font-size:21px}.dc-indice{font-weight:500}.dc-plan-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.shell-tablet .dc-plan-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-mobile .dc-plan-kpis{flex-wrap:wrap;gap:8px;display:flex}.dc-plan-kpi{align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.dc-plan-kpi strong{font-size:15px}.dc-plan-kpi .small{font-size:11.5px}.shell-mobile .dc-plan-kpi{flex:auto;padding:8px 10px}.dc-plan-grid{grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);align-items:start;gap:20px;display:grid}.dc-pad{padding:16px}.dc-section h3{font-size:16px}.dc-section-list{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.dc-section-row{width:100%;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:5px 8px;display:flex}.dc-section-row:hover{background:var(--bg2)}.dc-section-row.is-active{background:var(--chant-bg);border-color:#ddd6fe}.dc-squares{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.dc-squares i{border:1px solid var(--border2);border-radius:2px;width:12px;height:12px}.dc-squares i[style*=white]{border-color:var(--border2)}.dc-team-today{border-top:1px solid var(--border);padding-top:12px}.dc-team-today .dc-team-list{margin-top:8px}.dc-team-btn{width:100%;font:inherit;text-align:left;background:0 0;border:0;padding:4px 0}.dc-team-btn .small{font-size:11.5px}.dc-layers{flex-wrap:wrap;gap:6px;display:flex}.dc-check-pill{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.dc-check-pill input{width:15px;height:15px;accent-color:var(--info);margin:0}.dc-check-pill:has(input:focus-visible){outline:2px solid var(--cyan)}.dc-alea-pin{background:var(--maint);color:var(--white);white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11.5px;font-weight:700;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.dc-popover{flex-direction:column;gap:8px;min-width:0;display:flex}.dc-plan-card .map-popover{width:min(320px,80vw)}.dc-popover-head{align-items:flex-start;gap:8px;display:flex}.dc-popover-head .badge{flex:none}.dc-popover-head .small{font-size:11.5px}.dc-popover-actions{flex-wrap:wrap;gap:6px;display:flex}.dc-popover-actions .btn-ghost{color:var(--ink)}.dc-row-icon{align-items:center;gap:6px;display:flex}.shell-mobile .dc-plan-card .map-popover{width:230px}.dc-import{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;display:grid}.shell-tablet .dc-import,.shell-mobile .dc-import{grid-template-columns:1fr}.dc-import-left,.dc-import-right{flex-direction:column;gap:12px;min-width:0;display:flex}.dc-import-file{border:0;padding:0}.dc-preview-wrap{background:var(--bg2);border-radius:12px;padding:10px}.dc-preview{width:100%;height:auto;display:block}.dc-pages{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dc-page{background:var(--bg);font:inherit;cursor:pointer;border:0;border-radius:6px;padding:4px 10px;font-size:12.5px;font-weight:600}.dc-page.is-active{background:var(--chant);color:var(--white)}.dc-cartouche .kv-row{border:0;padding:4px 0;font-size:13.5px}.dc-cartouche dd{align-items:center;gap:6px;display:inline-flex}.dc-import-selects{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:12px;display:grid}.shell-mobile .dc-import-selects{grid-template-columns:1fr}.dc-label{font-size:13.5px;font-weight:500}.dc-check{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;display:flex}.dc-check input{width:18px;height:18px;accent-color:var(--info);flex:none;margin:2px 0 0}.dc-check small{font-size:12px}.dc-modal-note{align-items:center;gap:6px;display:flex}.dc-carto-intro{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.dc-carto-intro h2{font-size:22px}.dc-access-toggle{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.dc-access-toggle .toggle{flex-direction:row-reverse;gap:10px}.dc-carto-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) minmax(0,1.2fr);align-items:stretch;gap:20px;display:grid}.dc-tree-panel{flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.dc-op-chips{flex-wrap:wrap}.dc-op{font:inherit;cursor:pointer;border:0;font-size:11.5px;font-weight:600}.dc-op-eurofiber{color:#0f766e;background:#ccfbf1}.dc-op-eurofiber i{background:#0f766e}.dc-op-orange{color:#c2410c;background:#ffedd5}.dc-op-orange i{background:#ea580c}.dc-op.is-off{background:var(--bg);color:var(--subtle);text-decoration:line-through}.dc-op.is-off i{background:var(--subtle)}.dc-tree,.dc-tree-sub{margin:0;padding:0;list-style:none}.dc-tree-row{border-radius:8px;align-items:center;gap:2px;display:flex}.dc-tree-row.is-selected{background:var(--info-bg)}.dc-tree-toggle{width:22px;height:30px;color:var(--subtle);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.dc-tree-label{min-width:0;min-height:32px;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:2px 6px;font-size:13.5px;display:flex}.dc-tree-label svg{color:var(--primary);flex:none}.dc-tree-label.kind-operator,.dc-tree-label.kind-pop{font-weight:600}.dc-tree-label.kind-chamber svg,.dc-tree-label.kind-client svg{color:var(--muted)}.dc-map-card{min-width:0}.dc-carto .map{aspect-ratio:5/3;border:1px solid var(--border);border-radius:14px 14px 0 0;height:auto!important}.dc-map-legend{border:1px solid var(--border);background:var(--white);border-top:0;border-radius:0 0 14px 14px;margin:0;padding:10px 14px}.map-legend i.is-ring{border:2px solid var(--ink);background:var(--white)!important}.dc-map-col{flex-direction:column;gap:16px;min-width:0;display:flex}.dc-path h3{margin-bottom:8px;font-size:15px}.dc-path-list{counter-reset:hop;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.dc-path-list button{width:100%;min-height:32px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:4px 8px;font-size:13.5px;display:flex}.dc-path-list button:before{counter-increment:hop;content:counter(hop);background:var(--bg);width:20px;height:20px;color:var(--muted);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:inline-grid}.dc-path-list button:hover{background:var(--bg2)}.dc-path-list button.is-active{background:var(--info-bg)}.dc-carto .map-bpe{border-color:var(--white);background:currentColor;border-width:2px;width:20px;height:20px;box-shadow:0 1px 3px #0f172a40}.dc-carto .map-chamber{border-color:var(--ink);background:var(--white)}.dc-carto .map-site{border-color:var(--white);border-radius:50%;width:22px;height:22px;box-shadow:0 1px 3px #0f172a40}.dc-carto .map-pop{border-radius:6px;width:26px;height:26px}.dc-box{flex-direction:column;gap:14px;min-width:0;padding:18px;display:flex}.dc-box-head{align-items:flex-start}.dc-box-head h2{font-size:19px}.dc-box-photos .photo-grid{grid-template-columns:repeat(2,minmax(0,140px))}.dc-box-photos .photo-img{background:linear-gradient(160deg,#475569,#1e293b)}.dc-box-info{flex-direction:column;gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.dc-box-info li{align-items:flex-start;gap:10px;display:flex}.dc-box-info svg{color:var(--muted);flex:none;margin-top:3px}.dc-box-info .small{font-size:11.5px}.dc-box-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;display:grid}.dc-box-actions .btn{white-space:nowrap;padding-left:8px;padding-right:8px;font-size:14px}.dc-carto-tools{flex-wrap:nowrap}.shell-mobile .dc-carto-tools .dc-search{min-width:0}.shell-mobile .dc-op-chips{flex-wrap:nowrap}.dc-plan-overlay{pointer-events:none;position:absolute}.dc-plan-rel{position:relative}.dc-plan-rel>.dc-plan-overlay{inset:0}.dc-plan-popover{z-index:6;background:var(--white);pointer-events:auto;border-radius:12px;width:min(340px,95%);padding:12px;font-size:13px;position:absolute;box-shadow:0 12px 32px #0f172a33}.dc-popover-card{padding:14px}.dc-ftth-table .table td{padding-top:10px;padding-bottom:10px;font-size:13.5px}.dc-ftth-table .dc-cell-title{white-space:nowrap}.dc-ftth-table .cell-sub{white-space:nowrap;text-overflow:ellipsis;max-width:240px;font-size:12px;overflow:hidden}.dc-ftth-table .table td:nth-child(4){white-space:nowrap}.dc-route .vstep.is-current .vstep-mark{font-size:0}.dc-route .vstep.is-todo .vstep-title{color:var(--ink);font-weight:600}.dc-plan-item>.grow{min-width:0;padding-right:4px}.dc-plan-item>.grow .small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.dc-steps-table tbody th{text-transform:none;letter-spacing:0;color:var(--ink);font-size:13.5px}.dc-steps-table th,.dc-steps-table td{padding-top:7px;padding-bottom:7px}.shell-mobile .dc-wizard .sticky-actions .btn{white-space:nowrap;padding-left:10px;padding-right:10px}.dc-ftth-table .table th,.dc-ftth-table .table td{padding-left:12px;padding-right:8px}.dc-ftth-table .cell-sub{max-width:190px}.dc-steps-table .dc-icon-btn{width:26px;height:26px}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary:#1e3a8a;--cyan:#06b6d4;--ink:#0f172a;--muted:#64748b;--subtle:#94a3b8;--border:#e2e8f0;--bg:#f1f5f9;--white:#fff;--sidebar:#0b1530;--sidebar-w:248px;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg);font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2,h3,p{margin:0}a{color:inherit}button,input,select{font:inherit}code{background:var(--bg);border-radius:4px;padding:1px 5px;font-size:.9em}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.small{font-size:12.5px}.block{display:block}.grow{flex:1;min-width:0}.pad{padding:16px}.row{align-items:center;display:flex}.gap{gap:12px}.gap-sm{flex-wrap:wrap;gap:8px}.logo{align-items:center;gap:10px;display:inline-flex}.logo-text{letter-spacing:-1px;font-size:20px;font-weight:800}.logo-text em{color:var(--cyan);font-style:normal}.tile{border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid}.tile-ko{background:var(--ko-bg);color:var(--ko)}.tile-info{background:var(--info-bg);color:var(--info)}.tile-chant{background:var(--chant-bg);color:var(--chant)}.card{background:var(--white);border:1px solid var(--border);border-radius:14px}.card-head{justify-content:space-between;align-items:flex-start;padding:18px 16px 10px;display:flex}.card-head.sub{align-items:center;padding-top:8px}.card h3{font-size:17px}.btn{border:1px solid var(--border);background:var(--white);color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--white)}.btn-danger{background:var(--ko);border-color:var(--ko);color:var(--white)}.btn-chant{background:var(--chant);border-color:var(--chant);color:var(--white)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-block{width:100%}.link{color:var(--info);font-size:13px;font-weight:600;text-decoration:none}.badge{white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.dot:before,.chip.dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.chip{align-items:center;gap:6px;display:inline-flex}.badge-ok{background:var(--ok-bg);color:var(--ok-fg)}.badge-ko{background:var(--ko-bg);color:var(--ko-fg)}.badge-maint{background:var(--maint-bg);color:var(--maint-fg)}.badge-info{background:var(--info-bg);color:var(--info-fg)}.badge-chant{background:var(--chant-bg);color:var(--chant-fg)}.badge-neutral{background:var(--bg);color:var(--muted)}.chip{border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500}.chip-ko{background:var(--ko-bg);color:var(--ko-fg)}.chip-maint{background:var(--maint-bg);color:var(--maint-fg)}.count{border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:12.5px;font-weight:600;display:inline-grid}.count-ko{background:var(--ko-bg);color:var(--ko-fg)}.client-tag{border-radius:5px;align-items:center;gap:5px;padding:1px 7px;font-size:11.5px;font-weight:600;display:inline-flex}.client-tag i{border-radius:1px;width:6px;height:6px}.field{flex-direction:column;gap:6px;font-weight:500;display:flex}input:not([type=checkbox]),select{border:1px solid var(--border);background:var(--white);color:var(--ink);border-radius:8px;min-height:40px;padding:9px 12px}.check{align-items:center;gap:10px;display:flex}.form-error{color:var(--ko-fg);background:var(--ko-bg);border-radius:8px;padding:8px 12px}.toolbar{flex-wrap:wrap;gap:12px;display:flex}.search{border:1px solid var(--border);background:var(--white);color:var(--subtle);border-radius:8px;align-items:center;gap:8px;padding-left:12px;display:flex}.search input[placeholder]{border:0;min-width:240px}.auth-page{background:linear-gradient(160deg, var(--sidebar), var(--primary));place-items:center;min-height:100vh;padding:16px;display:grid}.auth-card{background:var(--white);border-radius:16px;flex-direction:column;gap:16px;width:min(400px,100%);padding:32px;display:flex}.auth-card.wide{width:min(520px,100%)}.auth-card .logo-text{color:var(--ink)}.auth-card h1{font-size:22px}.greeting{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.greeting h2{font-size:24px}.greeting p:first-letter{text-transform:uppercase}.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.ticket-list,.rows,.ticket-rows{flex-direction:column;gap:8px;margin:0;padding:0 12px 12px;list-style:none;display:flex}.ticket{border:1px solid var(--border);border-left:4px solid var(--maint);border-radius:10px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.ticket.is-critical{border:1px solid #fca5a5;border-left:4px solid var(--ko);background:#fef2f2}.ticket-top{justify-content:space-between;gap:8px;display:flex}.ticket-title{font-weight:600}.assign select{width:100%;margin-top:6px}.row-item{white-space:nowrap;background:var(--bg2);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.grid-2:has(>.shortcut){align-items:stretch}.shortcut{align-items:center;gap:16px;padding:18px;display:flex}.shortcut .btn{white-space:nowrap}.shortcut h3{flex-wrap:wrap;align-items:center;gap:8px;font-size:16px;display:flex}.shortcut-tags{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:12.5px;display:flex}.shortcut-tags span{align-items:center;gap:4px;display:inline-flex}.kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.kpi{padding:16px 18px}.kpi-label[class*=dot-]:before{content:"";background:var(--subtle);border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.kpi-label.dot-ok:before{background:var(--ok)}.kpi-label.dot-maint:before{background:var(--maint)}.kpi-value{font-size:28px;font-weight:700}.kpi-value small{color:var(--subtle);font-size:12.5px;font-weight:500}.ticket-rows{padding:0}.ticket-row{align-items:center;gap:14px;padding:14px 16px;display:flex}.ticket-row.is-live{background:#f8fbff;border-color:#93c5fd}.ticket-row-status{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.grid-main{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.stack{flex-direction:column;gap:12px;display:flex}.tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px;font-weight:500}.tab.is-active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.tab-count{margin-left:4px;font-size:12px}.live{flex-direction:column;gap:12px;padding:16px;display:flex}.live-head{letter-spacing:.5px;text-transform:uppercase;color:var(--info);justify-content:space-between;font-size:12px;font-weight:700;display:flex}.kpi-label.dot-chant:before{background:var(--chant)}.kpi-label.dot-info:before{background:var(--info)}.note{color:var(--muted);align-items:flex-start;gap:8px;font-size:12.5px;display:flex}.segmented{background:var(--white);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-weight:500}.segmented button.is-active{background:var(--info-bg);color:var(--info-fg);font-weight:600}.user-cell{align-items:center;gap:10px;display:flex}.modal-backdrop{z-index:50;background:#0f172a8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--white);border-radius:16px;flex-direction:column;width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;box-shadow:0 24px 64px #0f172a40}.modal-head,.modal-foot{align-items:center;gap:14px;padding:18px 22px;display:flex}.modal-head{border-bottom:1px solid var(--border)}.modal-head h2{font-size:18px}.modal-body{flex-direction:column;gap:14px;padding:18px 22px;display:flex;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);justify-content:space-between}.cgu-text{border:1px solid var(--border);background:var(--bg2);border-radius:10px;max-height:200px;padding:14px 16px;font-size:13.5px;overflow-y:auto}.cgu-text h3{margin-top:8px;font-size:13.5px}.cgu-text section:first-child h3{margin-top:0}.check-row{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.check-row input{width:20px;height:20px;accent-color:var(--info);margin-top:2px}.check-row span{flex-direction:column;display:flex}.check-row small{color:var(--muted)}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:12px 16px}.table th{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-size:12px}.table td .avatar{margin-right:8px}.messages{grid-template-columns:320px 1fr;height:max(520px,100vh - 230px);display:grid;overflow:hidden}.conv-list{border-right:1px solid var(--border);overflow-y:auto}.chips{flex-wrap:wrap;gap:6px;display:flex}.messages .chips{border-bottom:1px solid var(--border);padding:12px}.chip-btn{border:1px solid var(--border);background:var(--white);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:13px;font-weight:500;display:inline-flex}.chip-btn.is-active{background:var(--primary);border-color:var(--primary);color:var(--white)}.chip-btn.is-internal{color:#854d0e;background:#fef9c3;border-color:#fde047}.dispatch-card{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:16px;display:flex}.conv{border:0;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.conv:hover{background:var(--bg2)}.conv.is-active{background:var(--info-bg)}.conv-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.conv-top,.conv-bottom{justify-content:space-between;align-items:center;gap:8px;display:flex}.conv-top strong,.conv-preview{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.thread{flex-direction:column;min-width:0;min-height:0;display:flex}.thread-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 18px;display:flex}.thread-body{background:var(--bg2);flex-direction:column;flex:1;gap:12px;padding:18px;display:flex;overflow-y:auto}.msg{align-items:flex-end;gap:10px;max-width:75%;display:flex}.msg.is-mine{align-self:flex-end}.msg-bubble{border:1px solid var(--border);background:var(--white);border-radius:14px;padding:10px 14px}.msg.is-mine .msg-bubble{border-color:var(--primary);background:var(--primary);color:var(--white);border-bottom-right-radius:4px}.msg:not(.is-mine) .msg-bubble{border-bottom-left-radius:4px}.msg.is-internal .msg-bubble{color:var(--ink);background:#fef9c3;border-color:#fde047}.msg-author{margin-bottom:2px;font-size:12.5px;font-weight:700}.msg-internal{color:#854d0e;font-size:11.5px;font-weight:600}.msg-time{opacity:.7;text-align:right;margin-top:4px;font-size:11px;display:block}.composer{border-top:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.composer.is-internal{background:#fefce8}.composer input:not([type=checkbox]){border-radius:999px;flex:1;padding-left:16px}.send-btn{background:var(--primary);width:42px;height:42px;color:var(--white);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.send-btn:disabled{opacity:.5;cursor:not-allowed}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--sidebar);height:100vh;color:var(--white);flex-direction:column;gap:8px;padding:20px 16px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{justify-content:space-between;align-items:center;padding:0 4px 12px;display:flex}.space-badge{color:#a5f3fc;background:#0e749033;border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:500}.sidebar-nav{flex:1}.nav-section+.nav-section{margin-top:14px}.nav-title{letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding:6px 0;font-size:11px;font-weight:600}.nav-title.dark{color:var(--muted)}.nav-item{color:var(--border);border-radius:8px;align-items:center;gap:12px;margin:2px 0;padding:10px 12px;font-size:13.5px;text-decoration:none;display:flex}.nav-item svg{color:#a5b4cb;flex:none}.nav-item:hover{background:#ffffff0f}.nav-item.is-active{background:var(--info);color:var(--white);font-weight:600}.nav-item.is-active svg{color:var(--white)}.is-rail .nav-item{justify-content:center;padding:10px}.sidebar-user{background:#ffffff0a;border-radius:10px;align-items:center;gap:10px;padding:12px 10px;display:flex}.sidebar-user-text{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-user-text strong,.sidebar-user-text small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-text small{color:var(--subtle)}.icon-btn{color:var(--subtle);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px}.icon-btn:hover{color:var(--white);background:#ffffff14}.collapse-btn{color:var(--subtle);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:flex}.avatar{background:var(--primary);width:36px;height:36px;color:var(--white);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:inline-grid}.avatar.sm{width:30px;height:30px;font-size:11.5px}.avatar.lg{width:46px;height:46px;font-size:15px}.avatar-gap{width:30px}.main{flex-direction:column;min-width:0;display:flex}.page-header{background:var(--white);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 28px;display:flex}.crumbs{color:var(--subtle);font-size:12.5px;display:flex}.crumbs span{align-items:center;gap:4px;display:inline-flex}.crumbs span+span{margin-left:4px}.page-title{margin-right:auto}.topbar-search{border:1px solid var(--border);background:var(--bg2);width:min(380px,40vw);height:38px;color:var(--subtle);border-radius:8px;align-items:center;gap:8px;padding:0 10px 0 14px;display:flex}.topbar-search input[name]{background:0 0;border:0;flex:1;min-width:0;min-height:40px;padding:0}.topbar-search input:focus-visible{outline:none}.topbar-search:focus-within{outline:2px solid var(--cyan);outline-offset:1px}kbd{font:inherit;background:var(--bg);color:var(--muted);border-radius:5px;padding:1px 6px;font-size:11px}.page-header h1{font-size:21px}.page{flex-direction:column;flex:1;gap:20px;padding:28px;display:flex}.footer{border-top:1px solid var(--border);background:var(--white);min-height:36px;color:var(--subtle);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:8px 28px;font-size:12px;display:flex}.footer nav{flex-wrap:wrap;gap:16px;margin-left:auto;display:flex}.footer a{color:var(--muted);text-decoration:none}.footer-host{align-items:center;gap:4px;display:inline-flex}.nav-count{min-width:28px;height:20px;color:var(--border);background:#ffffff1f;border-radius:999px;flex:none;place-items:center;padding:0 6px;font-size:12px;font-weight:600;display:inline-grid}.nav-count.is-alert{background:var(--ko);color:var(--white)}.nav-item.is-active .nav-count{background:var(--white);color:var(--primary)}.conv .nav-count{background:var(--ko);color:var(--white)}.is-rail .nav-item{position:relative}.is-rail .nav-count{min-width:18px;height:16px;padding:0 4px;font-size:10px;position:absolute;top:2px;right:2px}.space-switch{background:#ffffff0f;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:6px;padding:4px;display:grid}.space-switch a{color:var(--subtle);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:6px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.shell.is-rail{--sidebar-w:76px}.sidebar-rail{align-items:center;padding:16px 10px 12px}.sidebar-rail .sidebar-head{padding:0 0 8px}.sidebar-rail .nav-item{border-radius:10px;justify-content:center;width:44px;height:44px;padding:0;position:relative}.sidebar-rail .nav-section+.nav-section{border-top:1px solid #ffffff14;margin-top:8px;padding-top:8px}.shell-tablet .sidebar-rail .nav-item.is-active{background:var(--sidebar2);box-shadow:inset 0 0 0 1px #ffffff26}.rail-tip{z-index:60;background:var(--ink);color:var(--white);white-space:nowrap;pointer-events:none;border-radius:6px;padding:5px 9px;font-size:12.5px;font-weight:500;position:fixed;transform:translateY(-50%);box-shadow:0 4px 12px #0f172a40}.sidebar-rail .sidebar-user{background:0 0;padding:6px}.sidebar-rail .collapse-btn{width:36px;padding:6px}.nav-dot{background:var(--ko);width:8px;height:8px;box-shadow:0 0 0 2px var(--sidebar);border-radius:50%;position:absolute;top:8px;right:10px}.space-switch.is-rail{grid-template-columns:1fr;width:48px}.space-switch.is-rail a{place-items:center;padding:8px 0;display:grid}.space-switch a.is-active{background:var(--chant);color:var(--white)}.menu-overlay{z-index:40;display:flex;position:fixed;inset:0}.menu-backdrop{cursor:pointer;background:#0f172a8c;border:0;position:absolute;inset:0}.menu-overlay .sidebar{z-index:1;width:var(--sidebar-open,248px);height:100dvh;position:relative;box-shadow:8px 0 32px #0f172a40}.sidebar-drawer{width:min(300px,78vw)!important}.icon-btn-boxed{border:1px solid #ffffff2b;border-radius:10px;padding:8px}.icon-btn-dark{color:var(--ink)}.icon-btn-dark:hover{background:var(--bg);color:var(--ink)}.appbar{z-index:20;background:var(--white);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;display:flex;position:sticky;top:0}.appbar-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:17px;overflow:hidden}.mobile-title{flex-direction:column;gap:6px;padding:16px 16px 0;display:flex}.mobile-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-title h1{font-size:22px}.back-link{color:var(--info);align-items:center;gap:2px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.bottom-nav{z-index:30;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav a,.bottom-nav button{min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11.5px;font-weight:500;text-decoration:none;display:flex}.bottom-nav .is-active{color:var(--info);font-weight:600}.btn-icon{width:40px;height:40px;padding:0}.shell-tablet .page,.shell-tablet .page-header,.shell-tablet .footer{padding-left:24px;padding-right:24px}.shell-mobile{display:block}.shell-mobile .main{min-height:100dvh;padding-bottom:72px}.shell-mobile .page{gap:16px;padding:16px}.shell-mobile .footer{text-align:center;border-top:0;flex-direction:column;padding:20px 16px}.shell-mobile .footer nav{justify-content:center;gap:12px;margin:0}.shell-tablet .footer nav{margin-left:auto}.panel{flex-direction:column;min-width:0;display:flex}.panel-head{align-items:flex-start;gap:12px;padding:16px 18px 10px;display:flex}.panel-head h3{font-size:16px}.panel-body{flex-direction:column;gap:12px;padding:4px 18px 18px;display:flex}.panel-body.flush{padding:0 0 8px}.page-intro{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.page-intro h2{font-size:22px}.page-intro-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px;display:grid}.grid-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.grid-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start;gap:20px;display:grid}.grid-1-2-1{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.stack-sm{flex-direction:column;gap:8px;display:flex}.toolbar-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar-row .grow-search{flex:1;min-width:200px}.search-input{border:1px solid var(--border);background:var(--white);color:var(--subtle);border-radius:8px;align-items:center;gap:8px;padding-left:12px;display:flex}.search-input input[type]{border:0;flex:1;min-width:0}.badge-cyan{color:#0e7490;background:#cffafe}.callout{border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13.5px;display:flex}.callout-info{background:var(--info-bg);color:var(--info-fg)}.callout-ko{background:var(--ko-bg);color:var(--ko-fg)}.callout-maint{background:var(--maint-bg);color:var(--maint-fg)}.callout-ok{background:var(--ok-bg);color:var(--ok-fg)}.callout-chant{background:var(--chant-bg);color:var(--chant-fg)}.callout-neutral{background:var(--bg);color:var(--muted)}.tile-sm{border-radius:9px;width:34px;height:34px}.tile-ok{background:var(--ok-bg);color:var(--ok)}.tile-maint{background:var(--maint-bg);color:var(--maint)}.tile-neutral{background:var(--bg);color:var(--muted)}.tile-cyan{color:#0e7490;background:#cffafe}.kpi-grid{gap:16px;display:grid}.kpi-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.kpi-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi{flex-direction:column;gap:4px;display:flex}.kpi-top{justify-content:space-between;align-items:center;min-height:20px;display:flex}.kpi-dot{background:var(--subtle);border-radius:50%;width:8px;height:8px}.kpi-dot.dot-ok{background:var(--ok)}.kpi-dot.dot-ko{background:var(--ko)}.kpi-dot.dot-maint{background:var(--maint)}.kpi-dot.dot-info{background:var(--info)}.kpi-dot.dot-chant{background:var(--chant)}.kpi .kpi-value{font-size:26px;font-weight:700;line-height:1.15}.kpi .kpi-label{color:var(--muted);font-weight:500}.kpi-lg .kpi-value{font-size:32px}.kpi-sm{padding:12px 14px}.kpi-sm .kpi-value{font-size:20px}.chip-count{opacity:.8;margin-left:6px;font-size:11.5px}.table-wrap{overflow-x:auto}.table tr.is-clickable{cursor:pointer}.table tr.is-clickable:hover{background:var(--bg2)}.table tr.is-selected{background:var(--info-bg)}.table tr.tone-ko{background:#fef2f2}.table td{vertical-align:middle}.cell-chevron{width:32px;color:var(--subtle)}.cell-sub{color:var(--muted);font-size:12.5px;display:block}.card-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.card-list-item{border:1px solid var(--border);background:var(--white);border-radius:12px;padding:12px 14px}.card-list-item.is-selected{background:#f8fbff;border-color:#93c5fd}.card-list-item.tone-ko{background:#fef2f2;border-color:#fca5a5}.card-list-item:has(.card-list-btn){padding:0}.card-list-btn{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:12px 14px;display:block}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.vsteps{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.vstep{gap:12px;padding:0 0 16px;display:flex;position:relative}.vstep:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:28px;bottom:2px;left:13px}.vstep.is-done:not(:last-child):before{background:var(--ok)}.vstep-mark{border:2px solid var(--border);background:var(--white);width:28px;height:28px;color:var(--subtle);border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:700;display:grid}.vstep.is-done .vstep-mark{background:var(--ok);border-color:var(--ok);color:var(--white)}.vstep.is-current .vstep-mark{border-color:var(--info);color:var(--info);box-shadow:0 0 0 4px var(--info-bg)}.vstep-title{font-weight:600}.vstep.is-todo .vstep-title{color:var(--muted);font-weight:500}.vstep.is-current .vstep-title{color:var(--info)}.vstep-meta{color:var(--muted);white-space:nowrap;font-size:12.5px}.stepper{gap:12px;margin:0;padding:0;list-style:none;display:flex}.stepper-item{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.stepper-item:not(:last-child):after{content:"";background:var(--border);flex:1;min-width:16px;height:2px}.stepper-item.is-done:not(:last-child):after{background:var(--chant)}.stepper-mark{border:2px solid var(--border);width:30px;height:30px;color:var(--muted);background:var(--white);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.stepper-item.is-done .stepper-mark,.stepper-item.is-current .stepper-mark{border-color:var(--chant);background:var(--chant);color:var(--white)}.stepper-text{flex-direction:column;min-width:0;display:flex}.stepper-text small{color:var(--muted)}.timeline{margin:0;padding:0;list-style:none}.timeline-item{gap:12px;padding-bottom:14px;display:flex;position:relative}.timeline-item:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:16px;bottom:0;left:5px}.timeline-dot{background:var(--info);border-radius:50%;flex:none;width:12px;height:12px;margin-top:4px}.timeline-item.tone-ok .timeline-dot{background:var(--ok)}.timeline-item.tone-maint .timeline-dot{background:var(--maint)}.timeline-item.tone-ko .timeline-dot{background:var(--ko)}.timeline-item.tone-neutral .timeline-dot{background:var(--subtle)}.timeline-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:flex}.timeline-meta strong{color:var(--ink)}.chart{margin:0}.chart svg{width:100%;display:block}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis{fill:var(--muted);font-size:11px}.chart-legend,.map-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:12.5px;display:flex}.chart-legend span,.map-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i,.map-legend i{border-radius:50%;width:10px;height:10px}.map-legend i.is-square,.chart-legend i.is-square{border-radius:2px}.map-legend i.is-line{border-radius:2px;width:16px;height:3px}.donut{align-items:center;gap:18px;margin:0;display:flex}.donut-svg{flex:none;width:150px;position:relative}.donut-svg svg{width:100%;display:block}.donut-center{text-align:center;color:var(--muted);place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.donut-legend{flex-direction:column;flex:1;gap:6px;font-size:13px;display:flex}.donut-legend>span{align-items:center;gap:8px;display:flex}.donut-legend i{border-radius:3px;width:10px;height:10px}.progress{background:var(--bg);border-radius:999px;height:8px;overflow:hidden}.progress>span{border-radius:999px;height:100%;display:block}.target-bar{flex-direction:column;gap:6px;display:flex}.target-bar-top{justify-content:space-between;display:flex}.chrono{flex-direction:column;gap:4px;padding:14px 16px;display:flex}.chrono-label{letter-spacing:.6px;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:700}.chrono-value{font-size:26px;font-weight:700}.chrono.tone-maint .chrono-value{color:var(--maint-fg)}.chrono.tone-ko .chrono-value{color:var(--ko)}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;display:grid}.photo-tile{flex-direction:column;gap:4px;margin:0;font-size:12.5px;display:flex}.photo-img{aspect-ratio:4/3;background:linear-gradient(135deg, var(--border2), var(--subtle));color:#fffc;border-radius:8px;place-items:center;display:grid;position:relative;overflow:hidden}.photo-stamp{color:var(--white);white-space:nowrap;text-overflow:ellipsis;background:#0f172a99;border-radius:4px;padding:1px 4px;font-size:9.5px;position:absolute;bottom:4px;left:4px;right:4px;overflow:hidden}.photo-ok{background:var(--ok);width:20px;height:20px;color:var(--white);border-radius:50%;place-items:center;display:grid;position:absolute;top:5px;right:5px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.form-grid .is-wide{grid-column:1/-1}.field label,.field legend{font-size:13.5px;font-weight:600}.field legend{margin-bottom:6px;padding:0}fieldset.field{border:0;margin:0;padding:0}.input-wrap{border:1px solid var(--border);background:var(--white);color:var(--subtle);border-radius:8px;align-items:center;gap:8px;padding-left:12px;display:flex}.input-wrap:focus-within{outline:2px solid var(--cyan);outline-offset:1px}.input-wrap input[id]{border:0;flex:1;min-width:0;padding-left:0}.input-wrap input[id]:focus-visible{outline:none}.input-suffix{color:var(--muted);padding:0 12px}.field select,.field textarea{width:100%}textarea{font:inherit;border:1px solid var(--border);resize:vertical;border-radius:8px;padding:9px 12px}.field-error{color:var(--ko-fg)}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.choice{border:1px solid var(--border);background:var(--white);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.choice.is-selected{border-color:var(--primary);background:var(--info-bg);box-shadow:inset 0 0 0 1px var(--primary)}.choice:has(input:focus-visible){outline:2px solid var(--cyan)}.toggle{cursor:pointer;align-items:center;gap:12px;display:flex}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{background:var(--border);border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.toggle-track:after{content:"";background:var(--white);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-track{background:var(--ok)}.toggle input:checked+.toggle-track:after{transform:translate(16px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--cyan);outline-offset:2px}.toggle input:disabled+.toggle-track{opacity:.6}.kv{flex-direction:column;margin:0;display:flex}.kv-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.kv-row:last-child{border-bottom:0}.kv dt{color:var(--muted);align-items:center;gap:6px;display:flex}.kv dd{text-align:right;margin:0;font-weight:600}.modal-lg{width:min(880px,100%)}.modal-xl{width:min(1100px,100%)}.sticky-actions{z-index:15;border:1px solid var(--border);background:var(--white);border-radius:12px;justify-content:flex-end;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px #0f172a14}.map,.floorplan{background:#eef2f6;border-radius:12px;position:relative;overflow:hidden}.map-canvas{transform-origin:50%;transition:transform .2s;position:absolute;inset:0}.map-bg,.floorplan-bg{width:100%;height:100%;position:absolute;inset:0}.map-node{cursor:pointer;font:inherit;border:0;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.map-tech{border:3px solid var(--white);width:36px;height:36px;color:var(--white);border-radius:50%;font-size:12px;font-weight:700;box-shadow:0 2px 8px #0f172a33}.map-ticket,.map-bpe,.map-site,.map-pop,.map-chamber{background:var(--white);border:3px solid;border-radius:4px;width:18px;height:18px}.map-chamber{border-radius:50%}.map-pop{background:var(--ink);border-color:var(--ink)}.map-site{background:currentColor}.map-node.is-selected{outline:3px solid var(--info);outline-offset:3px}.map-node-label{white-space:nowrap;color:var(--ink);background:var(--white);border-radius:5px;padding:1px 6px;font-size:11.5px;font-weight:700;position:absolute;left:22px;box-shadow:0 1px 3px #0f172a26}.map-popover{z-index:5;background:var(--white);border-radius:12px;width:min(260px,70vw);padding:12px;font-size:13px;position:absolute;transform:translate(-50%,calc(-100% - 22px));box-shadow:0 12px 32px #0f172a33}.map-controls{flex-direction:column;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.map-controls button{border:1px solid var(--border);background:var(--white);cursor:pointer;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.map+.map-legend,.map .map-legend{position:static}.map .map-legend{background:#ffffffe6;border-radius:8px;margin:0;padding:6px 10px;position:absolute;bottom:12px;left:12px}.floorplan{background:var(--white);border:1px solid var(--border)}.floorplan.is-placing{cursor:crosshair}.fp-text{fill:var(--muted);font-size:18px}.fp-bold{fill:var(--ink);font-weight:700}.fp-el{width:22px;height:22px;box-shadow:0 0 0 5px color-mix(in srgb, currentColor 22%, transparent), 0 0 0 10px color-mix(in srgb, currentColor 10%, transparent);cursor:pointer;background:currentColor;border:0;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.fp-confirm{background:var(--white);border:3px dashed}.fp-todo{background:var(--white);border:3px solid}.fp-el.is-selected{outline:3px solid var(--ink);outline-offset:6px}.fp-el-label{color:var(--ink);white-space:nowrap;font-size:10.5px;font-weight:700;position:absolute;top:26px;left:50%;transform:translate(-50%)}.fp-tech{border:2px solid var(--white);width:30px;height:30px;color:var(--white);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-130%);box-shadow:0 2px 6px #0f172a40}.shell-tablet .grid-3,.shell-tablet .grid-1-2-1{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-tablet .grid-2-1,.shell-tablet .grid-1-2{grid-template-columns:1fr}.shell-tablet .kpi-tablet-2{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-tablet .kpi-tablet-3{grid-template-columns:repeat(3,minmax(0,1fr))}.shell-tablet .hide-tablet{display:none!important}.shell-mobile .grid-2,.shell-mobile .grid-3,.shell-mobile .grid-2-1,.shell-mobile .grid-1-2,.shell-mobile .grid-1-2-1,.shell-mobile .grid-main,.shell-mobile .form-grid{grid-template-columns:1fr}.shell-mobile .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shell-mobile .kpi .kpi-value{font-size:22px}.shell-mobile .hide-mobile,.shell-mobile .hide-tablet{display:none!important}.shell-mobile .chips,.shell-mobile .tabs{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.shell-mobile .tab,.shell-mobile .chip-btn{flex:none}.shell-mobile .stepper-item:not(.is-current) .stepper-text{display:none}.shell-mobile .sticky-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:0;position:fixed;inset:auto 0 0}.shell-mobile .sticky-actions>.btn{flex:1}.shell-mobile .modal-backdrop{align-items:end;padding:8px}.shell-mobile .modal{max-height:calc(100dvh - 16px)}.shell-mobile .modal-foot{flex-direction:column-reverse;align-items:stretch}.shell-mobile .donut{flex-direction:column}.shell-mobile .page-intro{align-items:stretch}.only-mobile{display:none}.shell-mobile .only-mobile{display:revert}.btn-secondary{background:var(--white);border-color:var(--border);color:var(--ink)}.btn-sm{padding:5px 12px;font-size:13px}.btn-lg{padding:12px 22px;font-size:16px}.main .icon-btn,.modal .icon-btn{color:var(--muted)}.main .icon-btn:hover,.modal .icon-btn:hover{color:var(--ink);background:var(--bg)}.modal-sheet{width:min(640px,100%)}.shell-mobile .modal-sheet{width:100%;max-height:calc(100dvh - 12px)}.shell-mobile .sticky-actions.is-stacked{flex-direction:column;align-items:stretch}.shell-tablet .grid-aside{grid-template-columns:minmax(0,1fr) 300px}.grid-aside{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.shell-mobile .grid-aside{grid-template-columns:1fr}.chart-plot{gap:6px;display:flex}.chart-y{color:var(--muted);text-align:right;flex-direction:column;justify-content:space-between;padding-bottom:20px;font-size:11px;line-height:1;display:flex;transform:translateY(-5px)}.chart-area{flex:1;min-width:0}.chart-area svg{width:100%;display:block}.chart-x{align-items:flex-end;height:20px;display:flex}.chart-x span{text-align:center;color:var(--muted);white-space:nowrap;flex:1;font-size:11px}.chart-x .is-current{color:var(--ink);font-weight:700}.choice-cards.tone-chant .choice.is-selected{border-color:var(--chant);background:var(--chant-bg);box-shadow:inset 0 0 0 1px var(--chant)}.messages.has-context{grid-template-columns:300px minmax(0,1fr) 260px}.shell-tablet .messages{grid-template-columns:260px minmax(0,1fr);height:max(520px,100dvh - 210px)}.messages.is-mobile{flex-direction:column;height:calc(100dvh - 190px);min-height:420px;display:flex}.messages.is-mobile .conv-list{border-right:0;flex:1}.messages.is-mobile .thread{flex:1;min-height:0}.conv-list-head{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:12px;display:flex}.conv-list-head .chips{border:0;padding:0}.thread-title{min-width:0}.thread-title strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.thread-empty{place-items:center;display:grid}.thread-readonly{border-top:1px solid var(--border);color:var(--muted);align-items:center;gap:8px;padding:12px 16px;font-size:13px;display:flex}.quick-replies{scrollbar-width:none;gap:6px;padding:8px 16px 0;display:flex;overflow-x:auto}.quick-replies .chip-btn{flex:none}.composer input:not([type=checkbox]){min-width:0}.composer>.chip-btn,.composer .send-btn{white-space:nowrap;flex:none}.shell-mobile .composer-internal span,.shell-tablet .composer-internal span{display:none}.conv-context{border-left:1px solid var(--border);flex-direction:column;gap:18px;padding:16px;display:flex;overflow-y:auto}.conv-context section,.people-pick{flex-direction:column;gap:8px;display:flex}.people-pick .check-row{align-items:center}.people-pick .check-row small{color:var(--muted)}.messages.admin-thread{height:max(480px,100dvh - 380px);display:flex}.messages.admin-thread .thread{flex:1}.shell-mobile .modal-backdrop:has(.modal-lg,.modal-xl){padding:0}.shell-mobile .modal-lg,.shell-mobile .modal-xl{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.shell-mobile .modal-lg .modal-body,.shell-mobile .modal-xl .modal-body{flex:1}.shell-tablet .table th,.shell-tablet .table td{padding:10px}.admin-conv-filters{padding:0 16px 12px}
