.empty{padding:40px 20px;text-align:center}.empty h2{margin-bottom:12px}.empty p{margin-bottom:20px;color:var(--muted)}.form-error{color:#a32222;margin:12px 0;font-size:14px}.field textarea{min-height:100px}.card+.card{margin-top:22px}.stage-controls{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.pending-list{display:grid;gap:16px}.pending-list article{padding:20px;border:1px solid var(--line);border-radius:12px}.pending-list article p{margin:10px 0;color:var(--muted)}.dialog-wide{width:min(600px,95vw)}.table-wrap a{white-space:nowrap}dialog{max-height:90vh;overflow:auto}button[disabled]{opacity:.65;cursor:wait}.form-grid .full{grid-column:1/-1}#main .notice{margin-bottom:22px}.toolbar input{max-width:450px}a:focus-visible,button:focus-visible{outline:3px solid #005baa;outline-offset:3px}@media(max-width:650px){.page-head .actions{width:100%}.form-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap}.header-right .demo-label{display:none}}
.quote-line{border:1px solid var(--line);border-radius:8px;padding:18px;margin:18px 0}.quote-line legend{font-weight:bold;font-size:14px}.quote-summary{border-bottom:1px solid var(--line);padding:18px 0}.quote-summary:last-of-type{border-bottom:0}.quote-summary .row{margin-bottom:12px}.quote-summary .text-link{display:inline-block;margin-top:14px}small{overflow-wrap:anywhere}

.report-download-form{border-top:1px solid #d3dce6;padding-top:18px;margin-top:18px}
.report-download-form details{margin-bottom:16px}
.report-download-form .field>span{display:flex;align-items:flex-start;gap:8px;font-weight:normal}
.report-download-form .field input[type=checkbox]{width:18px;min-height:18px;height:18px;padding:0;margin:0;flex:none}

.motive-choice{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:14px}
.motive-choice input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:0;padding:0;flex:none}

.guide-context{border:1px solid #d4dde5;border-radius:8px;background:#fff;margin:0 0 22px;padding:12px 16px;font-size:14px}.guide-context summary{cursor:pointer;font-weight:bold;color:var(--blue)}.guide-context[open] summary{margin-bottom:12px}.guide-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:14px}.guide-links a,.guide-card h2 a{color:var(--blue)}.guide-links a:hover,.guide-card a:hover{text-decoration:underline}.guide-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:20px 0}.guides-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}.guide-card{border:1px solid var(--line);border-radius:9px;background:white;padding:20px}.guide-card h2{margin:8px 0 12px}.guide-detail{padding:24px;max-width:900px}.guide-detail ol{padding-left:24px}.guide-detail li{margin-bottom:14px}.guide-progress{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.setup-steps .text-link{display:inline-block;margin-top:8px;font-size:13px}@media(max-width:800px){.guide-filters{grid-template-columns:1fr}.guide-detail{padding:18px}.guide-detail .btn{white-space:normal}}

.planning-week-scroll{overflow:auto;max-height:760px;border:1px solid var(--line);border-radius:7px}.planning-week{display:grid;grid-template-columns:56px repeat(7,minmax(145px,1fr));min-width:1080px}.planning-hours-heading,.planning-day-heading{position:sticky;top:0;z-index:5;background:#f7f9fc;padding:10px 6px;border-bottom:1px solid var(--line);text-align:center;font-size:12px}.planning-day-heading strong,.planning-day-heading button{display:block;margin:auto}.planning-day-heading button{background:transparent;border:0;padding:3px}.planning-hours,.planning-day{height:1440px;position:relative;border-right:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#e4e9ee 59px,#e4e9ee 60px)}.planning-hours span{position:absolute;right:5px;font-size:10px;transform:translateY(-50%);background:white}.planning-hours span:first-child{transform:none}.planning-slot{position:absolute;overflow:hidden;text-align:left;padding:4px;background:#eaf2fa;color:#004b8c;border:1px solid #bed3e5;border-left:3px solid #005baa;border-radius:5px;min-width:0;font-size:11px;line-height:1.25;z-index:2}.planning-slot span,.planning-slot strong{display:block;overflow-wrap:anywhere}.planning-slot.conflict{background:#fbebea;color:#933832;border-color:#d99d99}.planning-slot.pending{border-style:dashed}.planning-slot:focus{z-index:4;min-height:85px;overflow:visible;outline:3px solid var(--blue)}.planning-slot:hover{z-index:3}.planning-day-empty{display:block;text-align:center;color:var(--muted);font-size:12px;margin-top:20px}.planning-event-details{margin:18px 0}.planning-event-details>summary{font-weight:bold;cursor:pointer;margin-bottom:16px}.planning-layout{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}.planning-layout [aria-pressed=true]{background:var(--pale);color:var(--blue);border-color:var(--blue)}@media(max-width:650px){.planning-calendar{padding:14px}.planning-week-scroll{max-height:620px}.planning-slot{font-size:12px}}
.block-button{width:100%;text-align:left;background:transparent;min-height:44px}.subnavigation{position:fixed;left:252px;top:0;bottom:0;width:218px;background:#f8fafc;border-right:1px solid var(--line);padding:28px 12px;overflow-y:auto}.subnavigation h2{font-size:18px;padding:0 10px}.subnavigation>p{font-size:14px;padding:0 10px;overflow-wrap:anywhere}.subnavigation .nav-link{white-space:normal;overflow-wrap:anywhere}#workspace{margin-left:470px}.dossier-context{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px;background:var(--pale);border:1px solid #c5dbef;border-radius:8px;margin-bottom:24px}.dossier-context strong,.dossier-context span{display:block}.dossier-section-title{font-size:20px;font-weight:bold;color:var(--blue);margin:20px 0}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:22px;align-items:start}.dashboard-layout .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-alerts{min-width:0;max-height:80vh;overflow:auto}.dashboard-alert{padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.dashboard-alert p{margin:4px 0;font-size:14px}.dashboard-alert small,.dashboard-alert a{display:block;margin-top:8px}@media(max-width:1250px){.dashboard-layout{grid-template-columns:1fr}.dashboard-alerts{max-height:none}}@media(max-width:1100px){.subnavigation{left:220px;width:190px}#workspace{margin-left:410px}}@media(max-width:850px){#sidebar{transform:translateX(-100%);width:min(92vw,360px);overflow-y:auto}.menu-open #sidebar{transform:translateX(0)}#navigation{overflow:visible;flex:none}.subnavigation{position:static;width:100%;border:0;border-top:1px solid var(--line);padding:18px 0;margin-top:16px}#workspace{margin-left:0}.menu-button{display:block}.menu-open .menu-button{margin-left:0}.dossier-context .btn{white-space:normal}.dashboard-layout{grid-template-columns:1fr}}
.alert-filters{display:grid;gap:10px;margin:16px 0;padding-bottom:12px;border-bottom:1px solid var(--line)}.alert-filters label{display:grid;gap:5px;font-size:14px}.alert-filters select{width:100%;min-height:44px}.dashboard-alert[hidden]{display:none}.alert-filters p{margin:0;font-size:13px}

.signout-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--blue);font-size:13px;white-space:nowrap;flex-shrink:0}.signout-link:hover{background:var(--pale)}.signout-link svg{flex-shrink:0}.header-right{min-width:0}.header-right .user{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:850px){.signout-link span{display:none}.signout-link{padding:8px}.header-right{gap:10px}}

.settings-fields{border:0;padding:0;margin:0;min-width:0}.settings-fields:disabled input,.settings-fields:disabled select{opacity:1;color:inherit;background:#f1f5f9;-webkit-text-fill-color:currentColor}

/* The mobile navigation owns focus and scroll only while explicitly open. */
.drawer-backdrop[hidden],.drawer-close[hidden]{display:none}
.drawer-backdrop{position:fixed;inset:0;z-index:9;background:#15273e66;padding:0;touch-action:manipulation}
.drawer-close{flex-shrink:0;align-self:flex-end;margin:8px 12px 0;color:var(--blue);font-weight:bold}
.skip-content{position:fixed;top:8px;left:8px;z-index:40;transform:translateY(-180%);padding:12px 16px;background:white;border:2px solid var(--blue);border-radius:6px}
.skip-content:focus{transform:none}
#main:focus{outline:2px solid var(--blue);outline-offset:-4px}
@media(max-width:850px){
  #sidebar{visibility:hidden;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom);max-height:100dvh}
  .menu-open #sidebar{visibility:visible}
  body.menu-open{overflow:hidden}
  #sidebar .logo{margin-top:8px}
  .subnavigation .nav-link{min-height:44px}
  header{min-width:0}
  #breadcrumb{min-width:0;overflow-wrap:anywhere}
  .header-right{gap:8px;flex-shrink:0}
}

.reference-code{overflow-wrap:anywhere;font-family:monospace;font-size:.875rem}.table-wrap:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.form-error:focus{outline:2px solid #a4423e;outline-offset:4px}.field{min-width:0}.field input,.field select,.field textarea{max-width:100%;min-height:44px}.btn,.ghost{min-height:44px}dialog[aria-busy="true"]{cursor:progress}dialog .actions{position:sticky;bottom:0;background:white;padding-top:12px}dialog textarea{min-height:96px;resize:vertical}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}details>summary{min-height:44px;padding:10px 0;cursor:pointer}form[data-console-month],form[data-console-incident-filter],form[data-console-economics-filter],form[data-console-connector-filter],form[data-console-archive]{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}form[data-console-archive] input{width:100%}@media(max-width:650px){main{padding:20px 14px}.card{padding:16px}.card .actions>.btn{white-space:normal}.table-wrap{max-width:100%}.field{width:100%}dialog{max-width:calc(100vw - 20px);width:100%;max-height:calc(100dvh - 20px);margin:auto}form[data-console-archive] .btn{width:100%}.reference-code{font-size:.8rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
