.dialog-title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dialog-title h2 { margin: 0; }

.dialog-title .icon-close {
  margin-left: auto;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: var(--pale);
  color: var(--blue);
  font-size: 1.75rem;
  line-height: 1;
}

.dialog-corner-close {
  float: right;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: var(--pale);
  color: var(--blue);
  font-size: 1.75rem;
  line-height: 1;
}

.photo-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 14px 0;
}

.photo-action {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  text-align: center;
}

.photo-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.photo-preview-image {
  display: block;
  width: 100%;
  max-height: 260px;
  object-fit: contain;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #0d1014;
}

.top-logo {
  width: 112px !important;
  height: 44px !important;
  object-fit: cover;
  object-position: center;
}
.top-logo + div { display: none; }

.login-logo,
.splash img {
  width: 260px;
  height: 110px;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 420px) {
  .photo-actions { grid-template-columns: 1fr; }
}

.nav button[data-tab="tasks"].active {
  background: #fff0e0 !important;
  color: var(--blue) !important;
}

/* V17: funktionsforside uden at ændre de eksisterende farvetemaer. */
.home-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.home-menu-button{min-height:142px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.home-menu-button b{font-size:2rem;line-height:1;color:var(--orange)}
.home-menu-button strong{font-size:1.05rem}
.home-menu-button span{display:block;margin-top:5px;color:var(--muted);font-size:.82rem;font-weight:500}
.login-link{display:block;width:100%;border:0;background:transparent;color:var(--muted);font-weight:750;text-align:center;margin-top:14px;padding:8px;text-decoration:underline;text-underline-offset:3px}
.admin-reset{margin-left:6px}
@media(max-width:520px){.home-menu{grid-template-columns:1fr 1fr;gap:10px}.home-menu-button{min-height:126px;padding:14px}.nav button{width:20%;font-size:.64rem}}

/* V18: fælles Cockpit-forside inspireret af Sales. */
.top-logo{display:block!important}
#logout.logout-ready{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-width:102px;padding:10px 15px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 16px rgba(20,38,63,.08);font-size:.88rem;font-weight:800}
#logout.logout-ready::before{content:none}
#logout.logout-ready:hover{border-color:var(--orange)}
.logout-icon{font-size:1.22rem;line-height:1}
.employee-home-page main{max-width:820px}
.home-dashboard{padding-bottom:8px}
.home-date{margin:2px 2px 16px;color:var(--muted);font-size:.92rem;text-transform:capitalize}
.home-dashboard .home-menu{gap:10px;margin-top:0}
.home-dashboard .home-menu-button{position:relative;isolation:isolate;overflow:hidden;min-height:150px;padding:22px 16px;border:0;border-radius:18px;color:#fff;text-align:center;align-items:center;justify-content:center;gap:13px;box-shadow:0 8px 20px rgba(20,38,63,.12)}
.home-dashboard .home-menu-button::after{content:"";position:absolute;z-index:-1;width:150px;height:150px;right:-55px;bottom:-82px;border-radius:50%;background:rgba(255,255,255,.09)}
.home-dashboard .home-menu-button:hover{transform:translateY(-1px);filter:brightness(1.03)}
.home-dashboard .home-menu-button:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.home-dashboard .home-menu-button b{color:#fff;font-size:2.1rem;font-weight:500}
.home-dashboard .home-menu-button strong{color:#fff!important;font-size:1.08rem;letter-spacing:.01em}
.home-dashboard .home-menu-button span{color:rgba(255,255,255,.94);font-size:.79rem;font-weight:600}
.tone-orange{background:#ff8200}.tone-pink{background:#ff4f6a}.tone-blue{background:#1688db}.tone-green{background:#18b94b}.tone-purple{background:#8d42d9}.tone-teal{background:#087d87}
@media(max-width:700px){#logout.logout-ready{flex:0 0 auto!important;min-width:92px;padding:9px 12px}.top-logo{width:102px!important;height:40px!important}.employee-home-page main{padding-top:18px}.home-dashboard .home-menu-button{min-height:140px;padding:18px 10px}.home-dashboard .home-menu-button strong{font-size:1rem}.home-dashboard .home-menu-button span{font-size:.73rem}}

/* V19: medarbejderstatistik. */
.empty-home-tile{background:transparent!important;border:2px dashed var(--line)!important;box-shadow:none!important;opacity:.45}
.employee-page-actions{display:flex;gap:9px;align-items:center}
.header-icon-button{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:13px;background:var(--white);color:var(--ink);box-shadow:0 5px 16px rgba(20,38,63,.08);font-size:1.55rem;font-weight:800;line-height:1}
.header-icon-button:hover{border-color:var(--orange)}
.header-icon-button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.header-icon-button:disabled{opacity:.45}
.employee-subpage .top-inner{min-height:48px}
.statistics-heading{align-items:center}
.statistics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.statistics-card{display:flex;flex-direction:column;gap:7px}
.statistics-card>span{color:var(--muted);font-size:.85rem;font-weight:700}
.statistics-card>strong{font-size:1.9rem;color:var(--ink)}
.statistics-card>small{min-height:20px;color:var(--muted);text-transform:capitalize}
.statistics-card>i{display:block;height:7px;margin-top:5px;overflow:hidden;border-radius:99px;background:var(--pale)}
.statistics-card>i>b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#ff4f6a)}
.statistics-summary h2{margin-top:0}
.statistics-summary-row{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--line)}
.statistics-summary-row span{color:var(--muted)}
.statistics-summary-row strong{text-align:right}
@media(max-width:700px){.statistics-grid{grid-template-columns:1fr}.statistics-card{min-height:126px}.statistics-card>strong{font-size:1.75rem}.nav button{width:16.666%;font-size:.58rem}.nav button b{font-size:1.1rem}.header-icon-button{width:42px;height:42px}}

/* V26: indbygget brugermanual. */
.manual-page{max-width:820px;margin:0 auto;padding-bottom:28px}
.manual-intro{padding:6px 2px 4px}
.manual-kicker{display:block;margin-bottom:5px;color:var(--orange);font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.manual-intro h1{margin:0 0 8px;font-size:clamp(1.8rem,6vw,2.5rem)}
.manual-intro p{max-width:640px;margin:0;color:var(--muted);line-height:1.55}
.manual-shortcuts{display:flex;gap:8px;overflow-x:auto;margin:20px 0 14px;padding:2px 1px 8px;scrollbar-width:thin}
.manual-shortcuts a{flex:0 0 auto;padding:9px 13px;border:1px solid var(--line);border-radius:99px;background:var(--white);color:var(--ink);font-size:.8rem;font-weight:800;text-decoration:none}
.manual-shortcuts a:hover,.manual-shortcuts a:focus-visible{border-color:var(--orange);outline:none}
.manual-sections{display:grid;gap:10px}
.manual-section{scroll-margin-top:80px;border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:0 5px 16px rgba(20,38,63,.06);overflow:hidden}
.manual-section summary{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;list-style:none}
.manual-section summary::-webkit-details-marker{display:none}
.manual-section summary::after{content:'+';margin-left:auto;color:var(--orange);font-size:1.55rem;font-weight:500}
.manual-section[open] summary::after{content:'−'}
.manual-section summary:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.manual-section summary strong,.manual-section summary small{display:block}
.manual-section summary strong{color:var(--ink);font-size:.98rem}
.manual-section summary small{margin-top:3px;color:var(--muted);font-size:.76rem}
.manual-number{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--pale);color:var(--orange);font-weight:900}
.manual-content{padding:0 18px 18px 64px;border-top:1px solid var(--line);color:var(--ink);line-height:1.55}
.manual-content h3{margin:18px 0 6px;font-size:.93rem}
.manual-content p{margin:14px 0 0}
.manual-content ol{margin:14px 0 0;padding-left:20px}
.manual-content li+li{margin-top:7px}
.manual-tip{padding:12px 14px;border-radius:12px;background:var(--pale)}
.manual-help{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:17px 18px;border:1px solid var(--line);border-radius:16px;background:var(--pale);line-height:1.45}
.manual-help a{color:var(--blue);font-weight:900}
@media(max-width:520px){.manual-content{padding:0 15px 16px}.manual-section summary{padding:14px}.manual-number{flex-basis:32px;width:32px;height:32px}.manual-help{font-size:.9rem}}

/* V27: centrerede popups og tidsberegner. */
dialog[open]{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;max-height:calc(100dvh - 32px);overflow:auto}
.modal{height:100dvh!important;min-height:100dvh!important;align-items:center!important;padding:16px!important}
.sheet{width:min(720px,100%)!important;height:auto!important;max-height:calc(100dvh - 32px)!important;border-radius:20px!important;box-shadow:var(--shadow)}
.popup-cancel{margin-top:10px}
.time-input-wrap{position:relative}
.time-input-wrap .input{padding-right:58px}
.time-calculator-button{position:absolute;top:5px;right:5px;display:grid;width:39px;height:39px;place-items:center;border:0;border-radius:9px;background:var(--pale);color:var(--blue);font-size:1.55rem;line-height:1}
.time-calculator-button:hover{background:#fff0e0;color:var(--orange)}
.time-calculator-button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.time-calculator-form .dialog-title p{margin:4px 0 0}
.time-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;margin-top:10px}
.time-range>span{padding-bottom:14px;color:var(--muted);font-size:1.4rem}
.time-result{display:flex;flex-direction:column;gap:4px;margin-top:16px;padding:14px;border-radius:12px;background:var(--pale);color:var(--ink)}
.time-result strong{font-size:1.12rem}
.time-result span{color:var(--muted);font-size:.82rem}
@media(max-width:520px){dialog[open]{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.modal{padding:12px!important}.sheet{max-height:calc(100dvh - 24px)!important}.time-range{gap:8px}}
.demo-badge{display:inline-block;margin-top:6px;background:#fff0e0;color:#9b4d00;white-space:nowrap}
/* V30: Adminmenu og statistik */
.admin-nav button{width:50%!important;max-width:220px;font-size:.72rem!important}
.admin-statistics-header{margin-bottom:18px}
.admin-statistics-header h1{margin:.15rem 0 .35rem}
.admin-statistics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.admin-statistic-card{min-height:116px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.admin-statistic-card span{color:var(--muted);font-size:.84rem;font-weight:700}
.admin-statistic-card strong{font-size:2rem;line-height:1;color:var(--ink)}
.admin-company-statistics{overflow:hidden}
.admin-statistics-table-wrap{overflow-x:auto}
.admin-statistics-table{width:100%}
.admin-statistics-table th:not(:first-child),.admin-statistics-table td:not(:first-child){text-align:center}
.admin-statistics-table td:last-child{text-align:right}
@media(max-width:760px){
  .admin-statistics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-statistics-table thead{display:none}
  .admin-statistics-table,.admin-statistics-table tbody,.admin-statistics-table tr,.admin-statistics-table td{display:block;width:100%}
  .admin-statistics-table tr{padding:14px 0;border-bottom:1px solid var(--line)}
  .admin-statistics-table tr:last-child{border-bottom:0}
  .admin-statistics-table td{padding:5px 0!important;text-align:right!important}
  .admin-statistics-table td[data-label]::before{content:attr(data-label);float:left;color:var(--muted);font-weight:700}
  .admin-statistics-table td:last-child{padding-top:10px!important}
}
/* V32: Oversigten ligger direkte over firmakortene med fast, tydelig kontrast. */
.admin-nav{display:none!important}
.admin-summary{margin-bottom:28px}
.admin-summary-heading{margin-bottom:12px}
.admin-summary-heading h1{margin:.15rem 0 0;color:var(--ink)}
.admin-statistic-card{border-color:rgba(13,27,42,.12);box-shadow:0 8px 24px rgba(13,27,42,.09)}
.admin-statistic-card span,.admin-statistic-card strong{color:#102033!important}
.admin-statistic-card span{opacity:.78}
.summary-tone-blue{background:#eaf2ff!important}
.summary-tone-green{background:#e7f7ee!important}
.summary-tone-orange{background:#fff0df!important}
.summary-tone-purple{background:#f1ebff!important}
@media(max-width:480px){.admin-statistics-grid{grid-template-columns:1fr 1fr}.admin-statistic-card{min-height:104px;padding:15px}.admin-statistic-card strong{font-size:1.75rem}}
/* V33: Kompakt stregkodescanner uden beskæring af kamerabilledet. */
.scanner-modal .sheet{height:auto!important}
.scanner-frame{position:relative;width:100%;height:clamp(140px,42vw,180px);overflow:hidden;border-radius:13px;background:#14263f}
.scanner-frame .camera{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:fill;object-position:center;background:#14263f}
.scanner-line{position:absolute;left:10%;right:10%;top:50%;height:2px;transform:translateY(-50%);border-radius:99px;background:rgba(255,116,43,.9);box-shadow:0 0 0 1px rgba(255,255,255,.45),0 0 12px rgba(255,116,43,.8);pointer-events:none}
.scanner-frame+.muted{margin:10px 0 0}

/* V36: Butiksscanner med tydeligt vandret sigtefelt og hurtig feedback. */
.scanner-retail{padding:0!important;align-items:stretch!important;background:rgba(3,10,18,.88)!important}
.scanner-retail .scanner-sheet{position:relative;width:100%;height:100dvh!important;max-height:none!important;border-radius:0!important;background:#05090d;display:flex;flex-direction:column;overflow:hidden}
.scanner-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:max(18px,env(safe-area-inset-top)) 20px 16px;background:linear-gradient(to bottom,rgba(3,10,18,.82),rgba(3,10,18,0));border:0}
.scanner-head h2{margin:2px 0 0;color:#fff;font-size:24px;line-height:1.15;text-shadow:0 1px 4px rgba(0,0,0,.45)}
.scanner-kicker{display:block;color:#f26a2e;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.scanner-close{width:44px;height:44px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(3,10,18,.38);color:#fff;font-size:29px;line-height:1;cursor:pointer;backdrop-filter:blur(8px)}
.scanner-viewport{position:absolute;z-index:0;inset:0;width:100%;height:100%;overflow:hidden;background:#05090d}
.scanner-viewport .camera{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#05090d}
.scanner-retail.scanner-android .scanner-viewport .camera{object-fit:contain}
.scanner-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.3),transparent 30%,transparent 64%,rgba(0,0,0,.66));pointer-events:none}
.scanner-target{position:absolute;left:50%;top:50%;width:min(80%,380px);height:126px;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 8px rgba(0,0,0,.35));pointer-events:none}
.scanner-corner{position:absolute;width:34px;height:34px;border-color:#fff;border-style:solid}
.scanner-corner.top-left{left:0;top:0;border-width:4px 0 0 4px;border-radius:13px 0 0 0}
.scanner-corner.top-right{right:0;top:0;border-width:4px 4px 0 0;border-radius:0 13px 0 0}
.scanner-corner.bottom-left{left:0;bottom:0;border-width:0 0 4px 4px;border-radius:0 0 0 13px}
.scanner-corner.bottom-right{right:0;bottom:0;border-width:0 4px 4px 0;border-radius:0 0 13px 0}
.scanner-beam{position:absolute;left:6%;right:6%;top:50%;height:2px;transform:translateY(-50%);border-radius:99px;background:#ff762f;box-shadow:0 0 12px rgba(255,118,47,.95);animation:scanner-sweep 1.8s ease-in-out infinite alternate}
@keyframes scanner-sweep{from{top:24%}to{top:76%}}
.scanner-panel{position:relative;z-index:2;margin-top:auto;flex:none;padding:58px max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom));background:linear-gradient(to bottom,transparent,rgba(3,10,18,.86) 42%);text-align:center}
.scanner-status{display:block;color:#fff;font-size:18px;line-height:1.3;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.scanner-help{display:block;margin-top:6px;color:rgba(255,255,255,.82);font-size:14px;line-height:1.4}
.scanner-actions{display:flex;justify-content:center;gap:10px;margin-top:17px}
.scanner-actions .btn{min-height:44px}
.scanner-actions .scanner-manual{flex:1;max-width:330px}
.scanner-retail.scan-success .scanner-corner{border-color:#25a56a}
.scanner-retail.scan-success .scanner-beam{background:#25a56a;box-shadow:0 0 12px rgba(37,165,106,.95);animation:none}
.scanner-retail.scan-success .scanner-status{color:#178252}
.scanner-retail.scan-error .scanner-corner{border-color:#ff762f}
.scanner-retail.scan-error .scanner-status{color:#c94c18}
@media (min-width:700px){.scanner-retail{padding:16px!important;align-items:center!important}.scanner-retail .scanner-sheet{width:min(720px,100%);height:min(760px,calc(100dvh - 32px))!important;border-radius:24px!important}}
@media (prefers-reduced-motion:reduce){.scanner-beam{animation:none}}
