/* Personal productivity layer. Strong controls and quiet, dense table rules. */
.rw-enhanced { --rwe-blue:#93c5fd; --rwe-panel:#132235; }
.rw-enhanced .rw-heading>div { flex:1; min-width:0; }
.rw-enhanced .rw-heading { flex-wrap:wrap; gap:7px; }
.rw-enhanced .rw-summary { gap:6px; margin-bottom:5px; }
.rw-enhanced .rw-identity,.rw-enhanced .rw-metric { padding:7px 10px; }
.rw-enhanced .rw-metric strong { font-size:18px; margin-top:3px; }
.rw-enhanced .rw-toolbar { margin-bottom:7px; }
.rwe-compare { color:#bfd0e5; font-size:10px!important; }
.rwe-progress { display:flex; align-items:center; flex-wrap:wrap; gap:5px 18px; min-height:29px; margin-bottom:7px; padding:3px 1px; color:#93a8c2; font-size:10px; }
.rwe-progress>span { display:flex; align-items:center; gap:7px; }
.rwe-progress b { color:#cfdded; font-variant-numeric:tabular-nums; }
.rwe-progress .rwe-progress-note { margin-left:auto; }
.rwe-progress .rw-button { padding:3px 7px; font-size:10px; }
.rwe-progress meter,.rwe-invoice-state meter { width:70px; height:7px; appearance:none; border:0; background:#233951; border-radius:9px; overflow:hidden; }
.rwe-progress meter::-webkit-meter-bar,.rwe-invoice-state meter::-webkit-meter-bar { background:#233951; border:0; height:7px; }
.rwe-progress meter::-webkit-meter-optimum-value,.rwe-invoice-state meter::-webkit-meter-optimum-value { background:linear-gradient(90deg,#4d8eca,#63c3b0); border-radius:9px; transition:width .2s; }
.rwe-summary-hidden .rw-summary { display:none; }
.rwe-controls { position:relative; z-index:5; margin-bottom:7px; }
.rwe-tools { display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding:7px; border:1.5px solid var(--rw-strong); border-radius:9px; background:linear-gradient(125deg,#172a40,#142034); }
.rwe-tools input,.rwe-tools select { color:#dce7f5; background:#101e30; border:1px solid #3d526c; border-radius:6px; padding:5px 7px; min-width:0; color-scheme:dark; }
.rwe-tools select { max-width:195px; font-size:11px; height:29px; }
.rwe-tools .compact-select-wrap { width:180px; flex:0 1 180px; max-width:100%; }
.rwe-tools>.compact-select-wrap:nth-of-type(2) { width:174px; flex-basis:174px; }
.rwe-search { display:flex; align-items:center; gap:7px; flex:1 1 185px; min-width:160px; margin:0; border:1px solid #496580; border-radius:6px; padding:0 8px; background:#0e1b2c; }
.rwe-search input { width:100%; min-width:0; height:29px; border:0; padding:5px 0; background:transparent; }
.rwe-search:focus-within { border-color:#92c5f5; box-shadow:0 0 0 2px #70b9fa15; }
.rwe-search input:focus { outline:none; }
.rwe-search input::placeholder { color:#8196b0; }
.rwe-search i { color:#8ca9c9; }
.rwe-search kbd { font:10px inherit; padding:1px 4px; border:1px solid #354960; border-radius:3px; color:#7892b0; background:transparent; }
.rwe-check { display:flex!important; align-items:center; gap:5px; font-size:10px; white-space:nowrap; margin:0; }
.rwe-check input,.rwe-pick { width:12px; height:12px; accent-color:#70b9fa; flex:0 0 12px; padding:0; margin:0; }
.rwe-menu { position:relative; font-size:11px; }
.rwe-menu>summary { list-style:none; cursor:pointer; color:#bfcede; padding:6px 8px; border:1px solid #3d526c; border-radius:6px; white-space:nowrap; }
.rwe-menu>summary::-webkit-details-marker { display:none; }
.rwe-menu>summary:hover,.rwe-menu[open]>summary { border-color:#739ac1; background:#7eb8f014; color:#ecf5ff; }
.rwe-menu-panel { position:absolute; top:calc(100% + 6px); right:0; width:245px; padding:11px; display:grid; gap:9px; z-index:20; background:#15253a; border:1.5px solid #4e6681; border-radius:9px; box-shadow:0 15px 35px #0007; animation:rwe-pop .13s ease-out; }
.rwe-menu-panel label { margin:0; display:grid; gap:5px; color:#9db1ca; font-size:11px; }
.rwe-menu-panel input,.rwe-menu-panel select { width:100%; max-width:none; }
.rwe-menu-panel input[type=checkbox] { width:12px; }
.rwe-menu-panel .compact-select-wrap { width:100%; }
.rwe-menu-panel .rw-button { width:100%; justify-content:flex-start; }
.rwe-menu-panel form { display:grid; gap:8px; }
.rwe-menu-panel small { color:#7892ae; font-size:10px; }
.rwe-preset { display:flex; border-top:1px solid #2b405a; padding-top:6px; gap:5px; }
.rwe-preset button { color:#b8d5f1; border:0; background:transparent; text-align:left; padding:5px; overflow-wrap:anywhere; }
.rwe-preset button:first-child { flex:1; }.rwe-preset button:last-child { color:#93a9c1; }
.rwe-chips { display:flex; flex-wrap:wrap; gap:5px; }
.rwe-chips:not(:empty) { margin-top:6px; }
.rwe-chips button { display:flex; align-items:center; gap:8px; border:1px solid #44658c; border-radius:5px; padding:3px 6px; color:#b6d4f2; background:#233d5c; font-size:10px; max-width:100%; overflow-wrap:anywhere; }
.rwe-chips button span { color:#8eaccb; }
.rwe-result { display:flex; flex-wrap:wrap; gap:6px 12px; align-items:center; justify-content:space-between; margin:0 0 7px; padding:6px 8px; border:1px solid #2b415d; border-radius:7px; color:#9fb1c7; background:#112238; font-size:10px; font-variant-numeric:tabular-nums; }
.rwe-result b { color:#d4e5f7; font-weight:550; }
.rwe-result>div { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.rwe-result small { color:#7d97b4; font-size:10px; }
.rwe-result .rw-button { padding:3px 7px; font-size:10px; }
.rw-enhanced .rw-block { margin-bottom:8px; border-radius:8px; }
.rw-enhanced .rw-block-head { padding:6px 8px; gap:6px; }
.rw-enhanced .rw-block-head h3 { display:flex; align-items:center; gap:2px; }
.rwe-group-toggle { border:0; color:#94b6d9; width:24px; height:23px; background:transparent; padding:0; margin-right:3px; flex:0 0 24px; border-radius:4px; }
.rwe-group-toggle:hover { background:#8dc6ff15; }
.rwe-group-toggle i { display:block; transition:transform .16s; }
.rwe-group-toggle[aria-expanded=false] i { transform:rotate(-90deg); }
.rwe-collapsed .rw-block-head { border-bottom:0; }
.rw .rwe-collapsed>table,.rwe-collapsed>.rwe-invoice-state { display:none!important; }
.rw-enhanced .rw-block td { padding:4px 6px; }
.rw-enhanced .rw-block th { padding:5px 6px; }
.rw-enhanced .rw-block .rw-cell-title { gap:4px; }
.rwe-inspect { width:22px; height:22px; padding:1px; flex:0 0 22px; color:#89a8c9; border:1px solid transparent; border-radius:4px; background:transparent; opacity:.65; transition:opacity .13s,background .13s; }
.rw-enhanced tr:hover .rwe-inspect,.rwe-inspect:focus-visible { opacity:1; border-color:#345374; background:#234263; }
.rw-enhanced .rwe-late>td:first-child { box-shadow:inset 2px 0 #e4948b; }
.rw-enhanced .rwe-soon>td:first-child { box-shadow:inset 2px 0 #d9b674; }
.rw-enhanced .rwe-late .rw-date small { color:#e5a098; }.rw-enhanced .rwe-soon .rw-date small { color:#d8bd86; }
.rwe-risk { display:inline-flex; align-items:center; justify-content:center; width:14px; height:14px; flex:0 0 14px; color:#edc887; background:#d7a34a17; border:1px solid #b98b454a; border-radius:50%; font-size:10px; font-weight:bold; cursor:help; }
.rwe-invoice-state { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; padding:5px 10px; color:#99b6cb; font-size:10px; border-bottom:1px solid var(--rw-line); background:#16314360; }
.rwe-invoice-diff { margin-left:auto; color:#d1bc92; border-bottom:1px dotted #78664a; cursor:help; }
.rwe-comfortable .rw-block td { padding:9px 8px; }.rwe-comfortable .rw-table { font-size:13px; }
.rwe-wrap .rw-cell-action>span { white-space:normal; overflow:visible; text-overflow:clip; }
.rwe-empty-result { display:grid; justify-items:center; gap:10px; padding:30px 15px; border:1px dashed #3a5575; border-radius:9px; color:#88a0be; text-align:center; font-size:12px; }
.rwe-empty-result>i { color:#86add4; font-size:21px; }.rwe-empty-result strong { color:#c5d7eb; }
.rwe-help-list { display:grid; grid-template-columns:150px 1fr; gap:8px; }.rwe-help-list dt { color:#a8c9ed; }.rwe-help-list dd { margin:0; }
.rwe-jump-target { animation:rwe-target 1.3s ease-out!important; }
@keyframes rwe-pop { from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)} }
@keyframes rwe-target { 0%,35%{background:#60a5fa32}100%{background:transparent} }
@media(max-width:1100px){.rwe-tools{gap:5px}.rwe-tools .compact-select-wrap{flex-basis:170px}.rwe-result small{display:none}}
@media(max-width:650px){.rwe-progress{gap:5px 10px}.rwe-progress meter{width:35px}.rwe-progress .rwe-progress-note{margin-left:0}.rwe-tools>.compact-select-wrap{flex:1 1 140px}.rwe-tools>.rwe-search{flex-basis:100%}.rwe-menu-panel{position:fixed;top:auto;right:12px;left:12px;width:auto;max-height:65vh;overflow:auto}.rw-enhanced .rw-block td{padding:4px 3px}.rwe-inspect{width:19px;flex-basis:19px}.rw-enhanced .rw-heading h2{font-size:16px}.rwe-help-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rw-enhanced *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print {
  @page { size:landscape; margin:10mm; }
  html:has(body.realization-workspace-mode .rw-enhanced) { background:#fff!important; color-scheme:light; }
  body.realization-workspace-mode { background:white!important; color:#111!important; }
  body.realization-workspace-mode>* { visibility:hidden; }
  body.realization-workspace-mode #systemsContainer,body.realization-workspace-mode #systemsContainer * { visibility:visible; }
  body.realization-workspace-mode #systemsContainer { position:absolute; top:0; left:0; width:100%; margin:0; padding:0; }
  body.realization-workspace-mode #systemsContainer>.rw { padding:0!important; color:#111; font-size:9pt; }
  .rw-enhanced .rw-heading button,.rw-enhanced .rw-toolbar,.rw-enhanced .rw-filters,.rwe-controls,.rwe-result>div,.rwe-progress-note,.rw-enhanced .rw-block-head button,.rw-enhanced .rw-block-head select,.rw-enhanced .compact-select-wrap,.rw-enhanced .realization-highlight-marker,.rwe-inspect,.rw-enhanced input,.rwe-group-toggle,.ri-inspector { display:none!important; }
  .rw-enhanced .rw-summary { display:grid!important; }.rw-enhanced * { color:#111!important; box-shadow:none!important; text-shadow:none!important; animation:none!important; }
  .rw-enhanced .rw-block,.rw-enhanced td,.rw-enhanced th,.rw-enhanced .rw-block-head,.rw-enhanced .rw-metric,.rw-enhanced .rw-identity,.rwe-result { background:white!important; border-color:#bbb!important; }
  .rw-enhanced .rw-table { font-size:8pt; }.rw-enhanced td,.rw-enhanced th { padding:4px!important; }
  .rw-enhanced .rw-cell-action>span { white-space:normal!important; overflow:visible; }
  .rw-enhanced thead { display:table-header-group; }.rw-enhanced tr { break-inside:avoid; }
  .rw-enhanced .rw-block-head { break-after:avoid; }.rw-enhanced .rw-block { overflow:visible; }
  .rw-enhanced .rw-status::before { border:1px solid #555; }
}
