/* Shared planner workspace skin. Dialogs and the accepted Ressursplan timeline
   keep their own styles, geometry and event handlers. Print is unchanged. */
@media screen {
  .project-color-control {display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:5px;max-width:330px}
  .project-color-control select[hidden],.project-color-options[hidden] {display:none}
  .project-color-picker {position:relative;width:220px;max-width:100%;flex:0 1 220px}
  .project-color-trigger {display:flex;align-items:center;gap:9px;width:100%;min-height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:12px;text-align:left;cursor:pointer}
  .project-color-trigger:hover:not(:disabled) {border-color:var(--ink3);background:var(--board)}
  .project-color-trigger:disabled {cursor:default;opacity:.65}
  .project-color-chip {display:inline-block;width:17px;height:17px;flex:0 0 17px;border-radius:3px;box-shadow:inset 0 0 0 1px #0002}
  .project-color-chevron {margin-left:auto;color:var(--ink2)}
  .project-color-options {position:absolute;top:calc(100% + 5px);left:0;z-index:40;box-sizing:border-box;width:100%;max-height:min(250px,35vh);overflow:auto;padding:4px;border:1px solid var(--line);border-radius:7px;background:var(--card);box-shadow:0 6px 18px #0002;overscroll-behavior:contain}
  .project-color-options button {display:flex;align-items:center;gap:9px;width:100%;min-height:33px;padding:6px 7px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:12px;text-align:left;cursor:pointer}
  .project-color-options button:hover,.project-color-options button:focus {background:var(--soft);outline:0}
  .project-color-options button[aria-selected=true] {font-weight:650;background:var(--board)}
  .project-color-check {margin-left:auto;color:var(--ink2)}
  .project-color-trigger:focus-visible {outline:2px solid var(--hivis);outline-offset:2px}
  .sheet.wide:has(.project-color-field) {max-width:calc(100vw - 32px)}
  .project-second-customer {margin:0 0 14px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}
  .project-second-customer summary {cursor:pointer;font-size:12px;font-weight:600;color:var(--ink2)}
  .project-second-customer[open] summary {margin-bottom:10px}
  .project-second-customer .fl:last-child {margin-bottom:0}
  .project-second-customer .g2 {margin-bottom:0}
  .project-color-preview {display:inline-flex;align-items:center;min-height:34px;padding:5px 16px;border:1px solid var(--project-preview-border);border-left:3px solid var(--project-preview);border-radius:6px;background:var(--project-preview-light);color:var(--ink);font-size:12px;font-weight:600}
  :root[data-theme=dark] .project-color-preview {background:color-mix(in srgb,var(--project-preview-dark) 80%,#fff);color:#dde6ef}
}
@media screen and (prefers-color-scheme:dark) {
  :root:not([data-theme=light]) .project-color-preview {background:color-mix(in srgb,var(--project-preview-dark) 80%,#fff);color:#dde6ef}
}
@media screen {
  body[data-session=app]:has(#stage>:is(.aw-view,#v-project).on) {background:var(--ui-ground)}
  .aw-view {
    --ground:var(--ui-ground);--card:var(--ui-card);--board:var(--ui-board);--soft:var(--ui-soft);
    --line:var(--ui-line);--ink:var(--ui-ink);--ink2:var(--ui-ink2);--ink3:var(--ui-ink3);--muted:var(--ui-ink2);
    --red:var(--ui-red);--reds:var(--ui-reds);--green:var(--ui-green);--greens:var(--ui-greens);
    --hivis:var(--ui-accent);--budget-over:var(--ui-red);--budget-missing:var(--ui-red);
    --inbox-accent:var(--ui-petrol);--inbox-warn:var(--ui-warning);
    --sh:0 1px 2px #15233808;
    min-width:0;color:var(--ink);font:13px/1.5 Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  }
  .aw-view>.head {margin-bottom:16px;gap:12px}
  .aw-view h1,.aw-view .orders-workspace h1 {font-size:23px;font-weight:650;letter-spacing:-.45px;line-height:1.35;margin:0}
  .aw-view>.head .muted,.aw-view .orders-workspace>p {font-size:12px;color:var(--ink2);line-height:1.7;margin:4px 0 0}
  .aw-view .muted {color:var(--ink2);font-size:12px}
  .aw-view .btn:not(.g):not(.d):hover:not(:disabled) {background:var(--ui-accent-hover);border-color:var(--ui-accent-border)}
  .aw-view :is(.btn,.rowbtn) {font-family:inherit;line-height:1.4;font-weight:550;border-radius:6px;cursor:pointer;transition:background .12s,border-color .12s}
  .aw-view .btn {display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 11px;font-size:12px;background:var(--hivis);color:var(--ui-accent-ink);border:1px solid var(--hivis);text-decoration:none}
  .aw-view :is(.btn.g,.rowbtn) {background:var(--card);border:1px solid var(--line);color:var(--ink)}
  .aw-view .rowbtn {min-height:28px;padding:5px 8px;font-size:11px}
  .aw-view :is(.btn,.rowbtn):hover:not(:disabled) {filter:none;border-color:var(--ink3);box-shadow:none}
  .aw-view :is(.btn.g,.rowbtn):hover:not(:disabled) {background:var(--soft)}
  .aw-view :is(.btn,.rowbtn):active:not(:disabled) {box-shadow:inset 0 1px 3px #15233825}
  .aw-view :is(.btn,.rowbtn):disabled {opacity:.5;cursor:default}
  .aw-view :is(.btn.d,.rowbtn.d) {color:var(--red);border-color:transparent;background:transparent}
  .aw-view :is(.btn.d,.rowbtn.d):hover:not(:disabled) {background:var(--reds);border-color:var(--red)}
  .aw-view :is(button,input,select,textarea,summary,a):focus-visible {outline:2px solid var(--hivis);outline-offset:2px}
  .aw-view :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select) {min-height:32px;font-family:inherit;font-size:12px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:6px 9px;max-width:100%}
  .aw-view input[type=checkbox] {accent-color:var(--ui-petrol)}
  .aw-view input::placeholder {color:var(--ink3)}
  .aw-view .pill {font-size:10px;font-weight:550;letter-spacing:0;border-radius:5px;padding:3px 7px;line-height:1.5}
  .aw-view .pill.warn,.aw-view .pill.lead {background:var(--ui-warnings);color:var(--ui-warning);border-color:transparent}
  .aw-view .pill.project-state.planlagt {color:var(--ui-petrol);background:var(--ui-head)}
  .aw-view :is(.pros-switch,.zoom) {border:1px solid var(--line);border-radius:6px;background:var(--board);padding:2px;gap:3px}
  .aw-view :is(.pros-switch,.zoom) button {min-height:28px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink2);padding:5px 9px;font-size:12px;font-weight:550;cursor:pointer}
  .aw-view :is(.pros-switch,.zoom) button.on {background:var(--card);color:var(--ink);border-color:var(--line);box-shadow:0 1px 2px #15233810}
  .aw-view .zoom label {display:inline-flex;gap:6px;align-items:center;font-size:11px;color:var(--ink2)}
  .aw-view .ws-tabs {gap:2px;padding:0 10px;background:var(--card)}
  .aw-view .ws-tabs button {font-size:12px;font-weight:600;color:var(--ink2);padding:10px 12px}
  .aw-view .ws-tabs button.on {background:var(--ui-accent-soft);color:var(--ui-accent-text);border-bottom-color:var(--ui-accent-border)}
  .aw-view .ws-tabs button:hover {background:var(--ui-accent-soft);color:var(--ui-accent-text)}
  .aw-view .ws-body {padding:16px;background:var(--card);box-shadow:var(--sh);border-radius:0 0 9px 9px;min-width:0}
  .aw-view .ux-filters {padding:12px;background:var(--card);border:1px solid var(--line);border-radius:9px;margin:12px 0 16px;gap:12px}
  .aw-view .ux-filters label {font-size:11px;gap:5px;min-width:min(165px,100%)}
  .aw-view .ux-filters input,.aw-view .ux-filters select {min-height:32px}
  #v-smalljobs .sj-overdue td {background:color-mix(in srgb,var(--ui-red) 6%,var(--ui-card))}
  #v-smalljobs .sj-overdue td:first-child {box-shadow:inset 3px 0 0 var(--ui-red)}
  #v-smalljobs .sj-late-date {color:var(--ui-red);font-weight:700}
  #v-smalljobs .sj-overdue .pill {white-space:nowrap;margin-top:5px}
  #v-smalljobs .sj-row-actions {display:flex;gap:6px;align-items:center;flex-wrap:wrap}
  #v-smalljobs .sj-mark-done {border-color:var(--ui-petrol);color:var(--ui-petrol);font-weight:650;white-space:nowrap}
  #v-smalljobs .sj-mark-done:hover {background:var(--ui-soft)}
  #v-smalljobs .sj-overdue-summary {display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:10px 12px;margin:12px 0 0;border:1px solid color-mix(in srgb,var(--ui-red) 45%,var(--ui-line));border-radius:7px;background:var(--ui-reds);color:var(--ui-red);font:inherit;font-size:12px;cursor:pointer;text-align:left}
  #v-smalljobs .sj-overdue-summary span {margin-left:10px;text-decoration:underline;text-underline-offset:3px}
  .sheet.sj-completion-sheet {--card:var(--ui-card);--board:var(--ui-board);--line:var(--ui-line);--ink:var(--ui-ink);--ink2:var(--ui-ink2);--ink3:var(--ui-ink3);background:var(--card);color:var(--ink);color-scheme:var(--ui-color-scheme);border:1px solid var(--line);overflow:hidden}
  .sj-completion-sheet .sh,.sj-completion-sheet .sf {background:var(--board)}
  .sj-completion-sheet .note.warn {margin:12px 0;background:var(--ui-warnings);color:var(--ui-warning)}
  .sj-completion-sheet .hint {font-size:12px;line-height:1.6;color:var(--ink2)}
  .sj-completion-sheet textarea {width:100%;resize:vertical;min-height:85px;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:13px}
  .sj-completion-sheet .sj-complete-error {font-size:12px;color:var(--ui-red);white-space:pre-wrap}
  .sj-completion-sheet button:disabled {opacity:.6;cursor:wait}
  .aw-view .info {border-color:var(--line);background:var(--card);border-radius:9px;padding:13px 14px;box-shadow:var(--sh)}
  .aw-view .info .l {font-size:10px;font-weight:600;letter-spacing:.035em;color:var(--ink2)}
  .aw-view .info .v {font-weight:600;font-variant-numeric:tabular-nums}
  .aw-view :is(.sh2>h3,.sect>h3) {font-size:13px;font-weight:650;letter-spacing:.01em;color:var(--ink)}
  .aw-view .aw-table-scroll {max-width:100%;min-width:0;overflow:auto;border:1px solid var(--line);border-radius:9px;background:var(--card);overscroll-behavior-x:contain}
  .aw-view .aw-table-scroll:focus-visible {outline:2px solid var(--hivis);outline-offset:2px}
  .aw-view .aw-table-scroll table.t {min-width:680px}
  .aw-view :is(.ux-table-scroll,.contractor-table-scroll) {border:1px solid var(--line);border-radius:9px;background:var(--card)}
  .aw-view :is(.ux-table-scroll,.contractor-table-scroll) table.t {min-width:680px}
  .aw-view table.t {font-size:12px;background:var(--card)}
  .aw-view table.t th {padding:11px 12px;background:var(--ui-head);color:var(--ui-head-ink);border-bottom:2px solid var(--ui-period);font-size:10px;letter-spacing:.045em;font-weight:650;white-space:nowrap}
  .aw-view table.t td {padding:11px 12px;border-bottom:1px solid var(--line);line-height:1.6;vertical-align:top}
  .aw-view table.t td>small {color:var(--ink2);font-size:10.5px;line-height:1.6}
  .aw-view table.t tbody tr:nth-child(even)>td {background:var(--board)}
  .aw-view table.t tr:hover>td {background:var(--soft)}
  .aw-view table.t tbody tr:last-child>td {border-bottom:0}
  .aw-view table.t b {font-weight:600}
  .aw-view .empty {font-size:12px;color:var(--ink2)}
  /* Project list and portfolio retain their columns, warnings and timeline bars. */
  #v-prosjekter .project-list-tools {border-radius:9px;padding:12px;box-shadow:var(--sh)}
  #v-prosjekter .project-search {border-radius:6px;background:var(--board)}
  #v-prosjekter .project-search input {background:transparent;border:0;padding:7px 0}
  #v-prosjekter .filter-chips button {border-radius:5px;color:var(--ink2);font-weight:550;font-size:10.5px}
  #v-prosjekter .filter-chips button.on {background:var(--ui-petrol);border-color:var(--ui-petrol);color:var(--card)}
  #v-prosjekter .pcard {border-radius:9px;box-shadow:var(--sh)}
  #v-prosjekter .pcard h3 {font-size:14px;font-weight:600}
  #v-prosjekter .project-color-mark {display:inline-block;width:9px;height:9px;margin-right:8px;border-radius:2px;vertical-align:1px;background:var(--project-color)}
  #v-prosjekter .pcard:hover {background:var(--board)}
  #v-prosjekter :is(.project-over-note,.project-missing-note) {font-weight:600;border-radius:5px}
  #v-prosjekter .project-group-head {color:var(--ink2);letter-spacing:.08em;font-weight:600}
  #v-prosjekter .project-group-head.lead {color:var(--ui-warning)}
  #v-prosjekter :is(.overview-levels,.contractor-gantt,.contractor-body) {border-color:var(--line);box-shadow:var(--sh)}
  #v-prosjekter .overview-hub-head p {color:var(--ink2)}
  #v-prosjekter :is(.contractor-gantt-head,.contractor-gantt-head .contractor-gantt-label) {background:var(--ui-head);color:var(--ui-head-ink)}
  #v-prosjekter .ov-project-card {background:var(--card);color:var(--ink);border-color:var(--line);border-radius:9px;box-shadow:var(--sh)}
  #v-prosjekter .ov-project-heading {background:var(--board);border-color:var(--line);padding:11px 12px}
  #v-prosjekter .ov-project-heading b {font-size:13px;font-weight:650}
  #v-prosjekter .ov-project-heading small {color:var(--ink2);font-size:10.5px}
  #v-prosjekter .ov-project-status {font-size:10px;border-radius:5px;font-weight:550;background:var(--soft);color:var(--ink2);border-color:var(--line)}
  #v-prosjekter .ov-project-status.aktiv {background:var(--greens);color:var(--green);border-color:transparent}
  #v-prosjekter .ov-project-status.planlagt {background:var(--ui-head);color:var(--ui-petrol);border-color:transparent}
  #v-prosjekter .ov-project-status.lead {background:var(--ui-warnings);color:var(--ui-warning);border-color:transparent}
  #v-prosjekter .ov-table {font-family:inherit;font-size:12px;color:var(--ink)}
  #v-prosjekter .ov-table th {background:var(--ui-head);color:var(--ui-head-ink);padding:10px 12px;border-bottom:2px solid var(--ui-period);font-size:10px;font-weight:650;letter-spacing:.025em}
  #v-prosjekter .ov-table td {padding:9px 12px;border-color:var(--line)}
  #v-prosjekter .ov-table .ov-fag-row>td {background:var(--card)}
  #v-prosjekter .ov-table .ov-fag-row:nth-child(even)>td {background:var(--board)}
  #v-prosjekter .ov-table .ov-fag-row:hover>td {background:var(--soft)}
  #v-prosjekter :is(.ov-firm-name,.ov-week,.ov-note,.ov-progress span) {color:var(--ink2);font-size:10.5px}
  #v-prosjekter .ov-progress-track {background:var(--soft);height:4px}
  #v-prosjekter .ov-progress-track i {background:var(--ui-petrol)}
  /* Register: the existing add action sits on the same header line. */
  #v-register .ws-body>.sh2 {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;flex-wrap:wrap}
  #v-register .ws-body>.sh2 h3 {margin:0}
  #v-register .sh2>.btn.g {background:var(--hivis);border-color:var(--hivis);color:var(--ui-accent-ink)}
  #v-register .register-resource-filters {gap:5px;margin-bottom:16px}
  #v-register .register-resource-filters button {min-height:32px;border-radius:5px;padding:6px 10px;font-size:11px;font-weight:550}
  #v-register .register-resource-filters button[aria-pressed=true] {background:var(--ui-petrol);border-color:var(--ui-petrol);color:var(--card)}
  #v-register .firm-search {display:grid;grid-template-columns:minmax(0,460px) 32px;gap:6px 8px;margin:0 0 14px}
  #v-register .firm-search label {grid-column:1/-1;font-size:12px;font-weight:600}
  #v-register .firm-search input {width:100%;min-width:0}
  #v-register .firm-search button {min-height:32px;padding:0}
  #v-register #firm-search-count {grid-column:1/-1;font-size:11px;color:var(--ink2)}
  #v-register #firm-search-count:empty {display:none}
  #v-register .ws-body>h3 {margin:0 0 6px;font-size:13px;line-height:1.5;font-weight:650;letter-spacing:.01em}
  #v-register .ws-body>p {margin:0 0 14px;color:var(--ink2);font-size:12px}
  #v-register .cols {gap:12px;align-items:start}
  #v-register .cols>.info {min-width:0;overflow-wrap:anywhere}
  #v-register .cols>.info>.l {margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line);color:var(--ui-petrol)}
  #v-register .info h3 {font-size:13px;font-weight:650;line-height:1.5;margin:0 0 8px}
  #v-register .info p {font-size:12px;line-height:1.65;margin:8px 0;color:var(--ink2)}
  #v-register .info p b {font-weight:600;color:var(--ink)}
  #v-register .info .v {font-size:13px;line-height:1.6}
  #v-register .info .fl {margin:12px 0}
  #v-register .fl>label {font-size:11px;font-weight:600;color:var(--ink2);margin-bottom:5px}
  #v-register :is(.hint,.dagmulkt-admin-head p,.dagmulkt-default-card p) {font-size:11.5px;line-height:1.6;color:var(--ink2);margin:6px 0 0}
  #v-register input[readonly] {background:var(--board)}
  #v-register :is(input,select) {color-scheme:var(--ui-color-scheme)}
  #v-register input[type=file] {max-width:100%;min-width:0;font-family:inherit;font-size:11px;line-height:1.5;color:var(--ink2)}
  #v-register input[type=file]::file-selector-button {margin-right:8px;padding:5px 8px;border:1px solid var(--line);border-radius:5px;background:var(--card);color:var(--ink);font-family:inherit;font-size:11px;font-weight:550;cursor:pointer}
  #v-register input[type=file]::file-selector-button:hover {background:var(--soft)}
  #v-register label:has(>input[type=file]) {display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:100%;padding:10px;background:var(--board);white-space:normal}
  #v-register .company-backup>.btn {margin:4px 0 10px}
  #v-register .company-backup>.rowbtn {margin-bottom:8px}
  #v-register .register-audit {padding:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}
  #v-register .register-audit>summary {padding:12px 14px;background:var(--board);color:var(--ink);font-size:12px;font-weight:650;cursor:pointer}
  #v-register .register-audit>summary:hover {background:var(--soft)}
  #v-register .register-audit>summary .pill {margin-left:8px;font-weight:500}
  #v-register .register-audit[open]>summary {border-bottom:1px solid var(--line)}
  #v-register .register-audit-body {padding:12px}
  #v-register:has([onclick="setRegTab('system')"].on) table.t td:nth-child(3) .pill {background:var(--soft);color:var(--ui-petrol)}
  #v-register :is(.dagmulkt-admin-grid,.holiday-admin-grid) {gap:12px}
  #v-register :is(.dagmulkt-add-card,.dagmulkt-default-card,.dagmulkt-list-card,.holiday-list-card) {padding:14px;border-radius:9px;background:var(--board);border-color:var(--line);box-shadow:none;min-width:0}
  #v-register :is(.dagmulkt-add-card,.dagmulkt-default-card) h4 {font-size:11px;letter-spacing:.025em;font-weight:650;color:var(--ui-petrol);margin:0 0 12px}
  #v-register .dagmulkt-default-card .rowbtn {margin-top:12px}
  #v-register .dagmulkt-admin-head h3 {font-size:13px;letter-spacing:.01em;font-weight:650;line-height:1.5}
  #v-register :is(.holiday-list-card,.dagmulkt-list-card) {margin-top:12px}
  #v-register :is(.holiday-year-nav,.dagmulkt-date-list section h4) {background:var(--ui-head);color:var(--ui-head-ink);border-bottom:1px solid var(--ui-period)}
  #v-register .holiday-year-nav {margin:-14px -14px 0;padding:10px 14px;border-radius:8px 8px 0 0;flex-wrap:wrap}
  #v-register .holiday-year-nav b {font-size:14px;font-weight:650}
  #v-register .holiday-year-nav span {font-size:11px;color:var(--ui-head-ink)}
  #v-register .holiday-year-nav button {border-radius:6px;min-height:30px}
  #v-register .holiday-year-nav button:hover {background:var(--soft);border-color:var(--ink3)}
  #v-register .holiday-row {padding:10px 12px;border-color:var(--line)}
  #v-register :is(.holiday-row,.dagmulkt-date-row):nth-child(even) {background:var(--board)}
  #v-register :is(.holiday-row,.dagmulkt-date-row):hover {background:var(--soft)}
  #v-register .holiday-date b {font-size:12px;font-weight:600}
  #v-register .holiday-date small {font-size:11px;color:var(--ink2)}
  #v-register :is(.holiday-row>button,.dagmulkt-date-row>button) {display:grid;place-items:center;width:28px;min-height:28px;flex-shrink:0;border:1px solid transparent;border-radius:5px;font-size:17px;color:var(--ink2)}
  #v-register :is(.holiday-row>button,.dagmulkt-date-row>button):hover {background:var(--reds);border-color:var(--red);color:var(--red)}
  #v-register .dagmulkt-list-tools .project-search {width:min(100%,500px);min-width:0;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--card)}
  #v-register .dagmulkt-list-tools .project-search input {min-width:0;width:100%;border:0;background:transparent;padding-left:0}
  #v-register .dagmulkt-date-count {font-size:11px;color:var(--ink2);padding:0 0 8px}
  #v-register .dagmulkt-date-list {border:1px solid var(--line);border-radius:7px}
  #v-register .dagmulkt-date-list section h4 {font-size:10.5px;font-weight:650;letter-spacing:.035em;padding:8px 12px}
  #v-register .dagmulkt-date-row {padding:7px 12px;border-color:var(--line);background:var(--card)}
  #v-register .dagmulkt-date-row>span {flex-wrap:wrap;gap:4px 8px}
  #v-register .dagmulkt-date-row b {font-size:12px;font-weight:600}
  #v-register .dagmulkt-date-row small {font-size:11px;color:var(--ink2)}
  #v-register .dagmulkt-date-empty {font-size:12px;color:var(--ink2)}
  #v-register #pending-invites {padding:14px;background:var(--card);border:1px solid var(--line);border-radius:9px}
  #v-register #pending-invites button {padding:5px 8px;font-family:inherit;font-weight:550;font-size:11px;line-height:1.4;border:1px solid var(--line);border-radius:6px;background:var(--board);color:var(--ink);cursor:pointer}
  #v-register #pending-invites h3 {margin:0 0 10px;font-size:12px;font-weight:650;color:var(--ui-petrol);letter-spacing:.025em}
  #v-register #pending-invites p {font-size:12px;line-height:1.6;color:var(--ink2);overflow-wrap:anywhere}
  #v-register #pending-invites button:hover:not(:disabled) {border-color:var(--red);background:var(--reds);color:var(--red)}
  /* Purchasing and files follow the same compact project surfaces. */
  #v-orders .orders-workspace {max-width:none;margin:0;padding:0}
  #v-orders .orders-workspace>p {margin-bottom:16px}
  #v-orders .order-list {gap:12px;margin:14px 0;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr))}
  #v-orders .order-card {padding:14px;background:var(--card);color:var(--ink);border-color:var(--line);border-radius:9px;box-shadow:var(--sh)}
  #v-orders .order-card.late {border-left-color:var(--red)}
  #v-orders .order-card h3 {font-size:13px;font-weight:650;letter-spacing:0}
  #v-orders .order-card :is(p,small) {font-size:11px;color:var(--ink2);line-height:1.7}
  #v-orders .order-card .order-error {color:var(--red);font-weight:600}
  #v-orders .order-pill {font-size:10px;font-weight:550;border-radius:5px;padding:3px 7px;background:var(--soft);color:var(--ui-petrol)}
  #v-orders .order-card.late .order-pill {color:var(--red);background:var(--reds)}
  #v-orders .orders-workspace>div>details>summary {font-size:12px;color:var(--ink2);border-top:1px solid var(--line)}
  /* Inbox already uses the shared component shape; inherit the same palette. */
  #v-meldinger #comms {--inbox-accent:var(--ui-petrol);--inbox-warn:var(--ui-warning)}
  #v-meldinger #comms .comms-header h2 {font-size:23px;letter-spacing:-.45px}
}
@media screen and (max-width:760px) {
  .aw-view>.head {align-items:flex-start}
  .aw-view .ws-body {padding:12px}
  .aw-view .ws-tabs {padding:0 4px}
  .aw-view .ws-tabs button {padding:10px;flex-shrink:0}
  .aw-view .ux-filters {gap:8px;padding:10px}
  .aw-view .ux-filters label {flex:1 1 140px;min-width:0}
  .aw-view .head>.zoom {display:flex;flex-wrap:wrap;gap:3px}
  .aw-view .head>.zoom label {flex-basis:100%;padding:4px}
  #v-arbeid .cols {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  #v-arbeid .info {padding:11px}
  #v-register :is(.dagmulkt-admin-grid,.holiday-admin-grid) {grid-template-columns:minmax(0,1fr)}
  #v-prosjekter .project-search {min-width:0;flex-basis:100%}
  #v-prosjekter .project-list-tools {padding:10px}
}
@media (prefers-reduced-motion:reduce) {
  .aw-view :is(.btn,.rowbtn) {transition:none}
}

/* Portfolio project bands are screen-only; exported Gantt and tables stay intact. */
@media screen {
 #v-prosjekter .overview-compact .ov-gantt-project {
  width:100%;min-height:44px;padding:0;text-align:left;font:inherit;cursor:pointer;
  border:0;border-top:2px solid color-mix(in srgb,var(--ink2) 42%,var(--line));border-bottom:1px solid var(--line);
  background:var(--ui-head);color:var(--ink);position:relative;z-index:5;
 }
 #v-prosjekter .overview-compact .ov-gantt-project .contractor-gantt-label {
  flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;padding:7px 10px;
  border-left:3px solid var(--ui-petrol);background:var(--ui-head);line-height:1.4;
 }
 #v-prosjekter .ov-project-copy {min-width:0;display:block}
 #v-prosjekter .ov-project-copy b {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}
 #v-prosjekter .ov-project-copy small {display:block;margin-top:2px;font-size:10px;font-weight:500;color:var(--ink2)}
 #v-prosjekter .ov-project-chevron {flex:none;display:inline-block;font-size:22px;line-height:1;color:var(--ui-petrol);transform:rotate(90deg)}
 #v-prosjekter [aria-expanded=false]>.ov-project-chevron,
 #v-prosjekter [aria-expanded=false]>.contractor-gantt-label>.ov-project-chevron {transform:none}
 #v-prosjekter .ov-project-band {display:flex;align-items:center;gap:16px;padding:7px 12px;background:var(--ui-head);color:var(--ink2);font-size:11px;white-space:nowrap}
 #v-prosjekter .overview-compact .contractor-gantt-row:not(.ov-gantt-project) .contractor-gantt-label small {font-size:11px;color:var(--ink2);line-height:1.4;padding-left:17px}
 #v-prosjekter .overview-compact .ov-project-card {background:var(--card);border:1px solid var(--line);border-top:2px solid color-mix(in srgb,var(--ink2) 42%,var(--line));color:var(--ink);border-radius:7px}
 #v-prosjekter .overview-compact .ov-project-heading.ov-project-toggle {
  width:100%;display:flex;align-items:center;justify-content:flex-start;gap:9px;padding:9px 12px;
  border:0;border-left:3px solid var(--ui-petrol);border-bottom:1px solid var(--line);background:var(--ui-head);color:var(--ink);font:inherit;text-align:left;cursor:pointer;
 }
 #v-prosjekter .ov-project-hint {margin-left:auto;font-size:11px;color:var(--ink2);white-space:nowrap}
 #v-prosjekter .overview-compact :is(.ov-gantt-project,.ov-project-toggle):hover,
 #v-prosjekter .overview-compact .ov-gantt-project:hover :is(.contractor-gantt-label,.ov-project-band) {background:color-mix(in srgb,var(--ui-petrol) 9%,var(--ui-head))}
 #v-prosjekter .overview-compact :is(.ov-gantt-project,.ov-project-toggle):focus-visible {outline:2px solid var(--hivis);outline-offset:-3px}
 #v-prosjekter .ov-fold-actions {display:flex;gap:6px;margin-left:auto;align-items:center;padding:4px 0}
 #v-prosjekter .contractor-tabs .ov-fold-actions button {border:1px solid var(--line);border-radius:5px;padding:5px 9px;background:var(--card);color:var(--ink2);font-size:11px;min-height:29px}
 #v-prosjekter .contractor-tabs .ov-fold-actions button:hover {background:var(--soft);color:var(--ink)}
 #v-prosjekter .contractor-tabs .ov-fold-actions button:focus-visible {outline:2px solid var(--hivis);outline-offset:2px}
}

/* The authorized user table stays intact inside a collapsible, searchable section. */
@media screen {
 #v-register .register-users{padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0 0 14px}
 #v-register .register-users>summary{padding:13px 14px;background:var(--board);color:var(--ink);font-size:13px;font-weight:650;cursor:pointer}
 #v-register .register-users>summary:hover{background:var(--soft)}#v-register .register-users>summary .pill{margin-left:8px;font-weight:500}
 #v-register .register-users>summary>small{font-size:11px;font-weight:400;color:var(--ink2);margin-left:12px}
 #v-register .register-users[open]>summary{border-bottom:1px solid var(--line)}#v-register .register-users-body{padding:14px;min-width:0}
 #v-register .register-users-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
 #v-register .register-users-toolbar .firm-search{flex:1 1 280px;max-width:540px;margin:0}#v-register .register-users-toolbar>.btn{min-height:38px;white-space:nowrap}
 #v-register #register-users-count{margin:10px 0;font-size:11px;color:var(--ink2)}#v-register #register-users-list tr[hidden]{display:none}
 #v-register #register-users-empty td{padding:20px 12px;color:var(--ink2);text-align:center}
}
@media screen and (max-width:760px){#v-register .register-users-body{padding:10px}#v-register .register-users-toolbar .firm-search{max-width:none}#v-register .register-users-toolbar :is(input,button){min-height:44px}}
