:root{--nav:#122536;--nav2:#18364a;--accent:#35a9b4;--accent2:#3d8fb6;--green:#2e9b78;--amber:#d59b42;--red:#bd5961;--bg:#f2f5f7;--card:#fff;--text:#162733;--muted:#6d7b84;--border:#dfe6ea;--shadow:0 8px 25px rgba(16,38,54,.08);--radius:14px;font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}.hidden{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr;grid-template-rows:78px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:linear-gradient(180deg,var(--nav),#0e202e);color:white;padding:18px 13px;z-index:30;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:4px 7px 22px}.brand strong,.brand span{display:block}.brand strong{font-size:16px}.brand span{font-size:11px;letter-spacing:2px;color:#8fc9d1;margin-top:2px}.brand-mark{width:50px;height:50px;border-radius:15px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:white;font-weight:800;font-size:20px;box-shadow:0 8px 18px #0003}.brand-mark.small{width:39px;height:39px;border-radius:11px;font-size:16px}.sidebar nav{display:flex;flex-direction:column;gap:4px;overflow:auto}.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#7792a2;padding:17px 12px 6px}.nav-item{border:0;background:transparent;color:#c7d3da;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:9px;text-align:left;width:100%;transition:.15s}.nav-item:hover,.nav-item.active{background:#ffffff13;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--accent);background:#ffffff18}.nav-item .ico{width:22px;text-align:center;font-size:16px}.sidebar-bottom{margin-top:auto}.sidebar-bottom small{display:block;color:#64808f;padding:14px 12px 0}.topbar{position:fixed;left:245px;right:0;top:0;height:78px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 25px;z-index:20}.topbar h1{font-size:20px;margin:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.user-chip{display:flex;align-items:center;gap:9px;border-left:1px solid var(--border);padding-left:14px}.user-chip>span{width:34px;height:34px;border-radius:50%;background:#dceef1;color:#177984;display:grid;place-items:center;font-weight:800}.user-chip strong,.user-chip small{display:block}.user-chip small{color:var(--muted);font-size:10px}.icon-btn{display:none;border:0;background:none;font-size:23px}.content{grid-column:2;grid-row:2;padding:24px;min-width:0}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.kpi,.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.kpi{padding:17px;position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;background:#35a9b410;right:-20px;top:-20px}.kpi label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.kpi strong{display:block;font-size:25px;margin-top:8px}.kpi small{color:var(--muted)}.card{padding:18px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.card-header h2{font-size:15px;margin:0}.two-col{grid-template-columns:1.35fr .85fr;margin-top:16px}.btn{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:9px;padding:9px 13px;font-weight:650}.btn:hover{background:#f7f9fa}.btn.primary{background:var(--accent2);border-color:var(--accent2);color:white}.btn.danger{color:var(--red);border-color:#efc5c8}.btn.small{padding:6px 9px;font-size:12px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.toolbar input,.toolbar select{max-width:260px}.spacer{flex:1}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:11px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid #e9edef;white-space:nowrap}th{background:#f7f9fa;font-size:10px;text-transform:uppercase;letter-spacing:.55px;color:#66757d;position:sticky;top:0}tr:last-child td{border-bottom:0}tr.clickable:hover{background:#f4fafb;cursor:pointer}.pill{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:11px;font-weight:700;background:#e9eff2}.pill.green{background:#ddf3eb;color:#227659}.pill.red{background:#f7e4e6;color:#9a3e46}.pill.amber{background:#f8ecd7;color:#95661e}.money{font-variant-numeric:tabular-nums;font-weight:700}.muted{color:var(--muted)}.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:12px;overflow-x:auto;padding-bottom:12px}.kanban-col{background:#e9eef1;border-radius:13px;padding:10px;min-height:520px}.kanban-head{display:flex;justify-content:space-between;align-items:center;padding:5px 4px 12px}.kanban-head strong{font-size:13px}.kanban-count{background:#fff;padding:3px 7px;border-radius:20px;color:var(--muted);font-size:11px}.deal-card{background:#fff;border:1px solid #dfe6e9;border-radius:11px;padding:12px;margin-bottom:9px;box-shadow:0 3px 10px #1730460a}.deal-card:hover{border-color:#9ec9cf}.deal-card h3{font-size:13px;margin:0 0 6px}.deal-card p{margin:0 0 9px;color:var(--muted);font-size:11px}.deal-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px}.deal-card.dragging{opacity:.5}.drop-target{outline:2px dashed var(--accent)}form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}label{display:block;font-size:11px;color:#53646e;font-weight:700}input,select,textarea{width:100%;border:1px solid #ccd7dd;border-radius:8px;padding:10px;margin-top:5px;background:#fff;color:var(--text)}textarea{min-height:85px;resize:vertical}.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.modal{position:fixed;inset:0;background:#10253699;z-index:100;display:grid;place-items:center;padding:18px}.modal-card{background:#fff;border-radius:16px;width:min(760px,100%);max-height:92vh;overflow:auto;padding:24px;position:relative;box-shadow:0 24px 80px #0005}.modal-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:25px;color:#75848c}.modal h2{margin:0 0 18px}.toast{position:fixed;right:20px;bottom:20px;background:#16364a;color:#fff;border-radius:10px;padding:12px 16px;z-index:150;transform:translateY(100px);opacity:0;transition:.25s}.toast.show{transform:none;opacity:1}.toast.error{background:#9a3f47}.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#28576e,#0f2230 55%);padding:20px}.login-card{width:min(390px,100%);background:#fff;border-radius:18px;padding:32px;box-shadow:0 25px 80px #0006}.login-card .brand-mark{margin:0 auto 18px}.login-card h1{text-align:center;margin:0}.login-card p{text-align:center;color:var(--muted);margin:7px 0 23px}.login-card label{margin-top:13px}.login-card .btn{width:100%;margin-top:20px}.error{color:var(--red);margin-top:10px;font-size:12px}.bar-row{display:grid;grid-template-columns:120px 1fr 90px;align-items:center;gap:10px;margin:11px 0}.bar{height:9px;background:#e9eef1;border-radius:20px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));border-radius:20px}.timeline{border-left:2px solid #dce5e9;margin-left:7px;padding-left:17px}.timeline-item{position:relative;padding-bottom:17px}.timeline-item:before{content:"";position:absolute;left:-23px;top:2px;width:10px;height:10px;background:var(--accent);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #bfcdd3}.empty{text-align:center;padding:45px 15px;color:var(--muted)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:15px}.tab{border:0;background:none;padding:10px 12px;color:var(--muted);font-weight:700;border-bottom:2px solid transparent}.tab.active{color:var(--accent2);border-color:var(--accent2)}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}.two-col{grid-template-columns:1fr}}
@media(max-width:760px){.app{display:block}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.topbar{left:0;height:67px;padding:0 13px}.icon-btn{display:block;margin-right:8px}.topbar p,.user-chip div,.top-actions .btn{display:none}.content{padding:82px 12px 18px}.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:13px}.kpi strong{font-size:20px}.card{padding:13px}form .form-grid{grid-template-columns:1fr}.full{grid-column:auto}.bar-row{grid-template-columns:90px 1fr 65px}.modal{padding:8px}.modal-card{padding:20px 14px}.topbar h1{font-size:17px}}
.section-title{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#486274;margin:20px 0 10px;padding-top:12px;border-top:1px solid #e2e9ee}.section-title:first-of-type{margin-top:4px;border-top:0}.section-title.split{display:flex;align-items:center;justify-content:space-between;gap:12px}.contact-list{display:grid;gap:8px}.contact-card{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #dfe7ec;border-radius:10px;background:#f8fafb}.contact-card small{display:block;margin-top:3px;color:#6d7d88}.deal-item{border:1px solid #dbe5eb;border-radius:12px;padding:12px;margin-bottom:10px;background:#f8fafb}.deal-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.form-grid.compact{grid-template-columns:repeat(4,minmax(120px,1fr))}.deal-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.deal-totals>div{padding:14px;border-radius:10px;background:#eef4f6;border:1px solid #dbe6ea}.deal-totals small,.deal-totals strong{display:block}.deal-totals strong{font-size:18px;margin-top:4px}.quick-create-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(max-width:800px){.form-grid.compact,.deal-totals,.quick-create-grid{grid-template-columns:1fr}.section-title.split{align-items:flex-start;flex-direction:column}}

.global-search{position:relative;width:min(420px,34vw)}.global-search input{margin:0;padding:9px 12px}.search-results{position:absolute;top:44px;left:0;right:0;background:#fff;border:1px solid var(--border);border-radius:11px;box-shadow:0 18px 45px #1025362b;max-height:420px;overflow:auto;z-index:80}.search-result{display:block;width:100%;border:0;border-bottom:1px solid #edf1f3;background:#fff;text-align:left;padding:10px 12px}.search-result:hover{background:#f2f8f9}.search-result strong,.search-result small{display:block}.search-result small{color:var(--muted);margin-top:3px}.search-type{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent2);font-weight:800}.history-detail{white-space:normal;min-width:340px}.owner-transfer{display:flex;gap:7px;align-items:end}.owner-transfer select{margin-top:5px}@media(max-width:900px){.global-search{width:240px}}@media(max-width:760px){.global-search{position:fixed;left:12px;right:12px;top:70px;width:auto}.global-search input{background:#fff}.search-results{top:42px}.content{padding-top:126px}}
.credit-box{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f8fafc;margin-bottom:18px}.credit-score{display:flex;align-items:center;justify-content:center;min-height:74px;border-radius:12px;font-size:22px;font-weight:800;background:#eef2f6}.credit-score.green{background:#e7f6ef;color:#187153}.credit-score.amber{background:#fff3d8;color:#92600b}.credit-score.red{background:#fdebec;color:#a13c45}.credit-box small{display:block;margin-top:5px}.credit-explanation{white-space:pre-wrap;font-family:inherit;font-size:12px;line-height:1.55;background:white;border:1px solid var(--border);border-radius:8px;padding:10px;margin:10px 0 0}
/* v1.07 dashboard og forecast */
.dashboard-section{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;margin:16px 0}.goal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.goal-card{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:13px;padding:14px;background:#fafcfd}.goal-card h3{font-size:12px;margin:0 0 5px}.goal-card>div:last-child>strong,.goal-card>div:last-child>small{display:block}.goal-card small{color:var(--muted)}.goal-ring{--p:0;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--p)*1%),#e6edf0 0);position:relative;flex:none}.goal-ring:after{content:"";position:absolute;inset:8px;background:#fff;border-radius:50%}.goal-ring>div{z-index:1;text-align:center}.goal-ring strong,.goal-ring small{display:block}.goal-ring strong{font-size:17px}.goal-ring small{font-size:9px}.forecast-line{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr)) 34px;gap:8px;align-items:end;padding:10px;margin-bottom:8px;border:1px solid var(--border);border-radius:11px;background:#f8fafb}.hour-line{grid-template-columns:1.3fr .7fr .8fr 1fr 1.5fr 34px}.forecast-line .grow{min-width:160px}.remove-forecast{height:38px;border:0;border-radius:8px;background:#f7e4e6;color:#9a3e46;font-size:20px}.capacity-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--border)}.capacity-row:last-child{border-bottom:0}.capacity-row small{display:block;color:var(--muted);margin-top:4px}@media(max-width:1250px){.goal-grid{grid-template-columns:repeat(2,1fr)}.forecast-line,.hour-line{grid-template-columns:repeat(3,1fr) 34px}}@media(max-width:760px){.goal-grid{grid-template-columns:1fr}.forecast-line,.hour-line{grid-template-columns:1fr}.remove-forecast{width:100%}}
.clickable{cursor:pointer}.clickable:hover{background:rgba(39,117,194,.06)}
.audit-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(130px,1fr)) auto auto;gap:10px;padding:14px 0;align-items:center}.audit-filters input,.audit-filters select{width:100%}.severity{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.severity.info{background:#e7f6ec;color:#256c3b}.severity.warning{background:#fff2cc;color:#805b00}.severity.critical{background:#fee2e2;color:#a51818}.audit-critical{background:#fff9f9}.audit-critical td:first-child{box-shadow:inset 3px 0 0 rgba(217,45,32,.22)}.audit-warning td:first-child{box-shadow:inset 3px 0 0 rgba(214,158,0,.20)}.language-control{width:auto;min-width:105px;height:38px}
@media(max-width:980px){.audit-filters{grid-template-columns:1fr 1fr}.audit-filters input{grid-column:1/-1}}
@media(max-width:600px){.audit-filters{grid-template-columns:1fr}.audit-filters input{grid-column:auto}}

/* v1.08.01 – aligned language selector */
.language-control{width:108px;min-width:108px;height:40px;margin:0;padding:0 32px 0 12px;border:1px solid #ccd7dd;border-radius:9px;background-color:#fff;line-height:40px;align-self:center;vertical-align:middle}
.top-actions>.language-control{margin-top:0;margin-bottom:0}
@media(max-width:760px){.language-control{width:96px;min-width:96px;height:38px;line-height:38px;padding-left:10px}.top-actions{gap:7px}}

/* v1.10 tilbud */
.quote-item{position:relative;border:1px solid var(--line,#dce5ea);border-radius:12px;padding:14px 42px 14px 14px;margin-bottom:10px;background:#f9fbfc}.remove-quote-item{position:absolute;right:10px;top:10px;border:0;background:#eef2f4;border-radius:50%;width:26px;height:26px;cursor:pointer;font-size:18px}.quote-line-grid{grid-template-columns:2fr repeat(4,minmax(120px,1fr))}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.quote-item textarea{min-height:70px}@media(max-width:1000px){.quote-line-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.quote-line-grid{grid-template-columns:1fr}.row-actions{min-width:140px}}
/* v1.10.01 tilbudsejerskab, soft delete og logo */
.soft-deleted{opacity:.68;background:#fff5f5}.logo-admin{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f8fafb}.logo-preview{height:110px;border:1px dashed #bdcbd3;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden;color:var(--muted)}.logo-preview img{max-width:90%;max-height:90%;object-fit:contain}.quote-filter{display:flex;align-items:center;gap:7px;font-size:12px}.quote-filter input{margin:0}@media(max-width:700px){.logo-admin{grid-template-columns:1fr}}

/* v1.11 tilbudsbygger */
.quote-resource{position:relative;border:1px solid #d7e2e8;border-radius:12px;padding:14px 42px 14px 14px;margin:10px 0;background:#f8fbfc}.remove-quote-resource{position:absolute;right:10px;top:10px;border:0;background:#fff;color:#a33;border-radius:50%;width:26px;height:26px;font-size:18px;cursor:pointer}.resource-line-grid{grid-template-columns:repeat(5,minmax(120px,1fr))}.quote-line-grid{grid-template-columns:repeat(5,minmax(130px,1fr))}@media(max-width:900px){.resource-line-grid,.quote-line-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.resource-line-grid,.quote-line-grid{grid-template-columns:1fr}}

/* v1.12 budgetoverblik og valuta */
.money-input{display:grid;grid-template-columns:1fr auto;align-items:stretch}.money-input input{border-radius:9px 0 0 9px;margin:0}.money-input span{display:grid;place-items:center;min-width:58px;padding:0 10px;border:1px solid var(--border);border-left:0;border-radius:0 9px 9px 0;background:#edf3f5;color:#334d5d;font-weight:800}.budget-month-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:12px;margin-top:16px}.budget-month-card{border:1px solid var(--border);border-radius:13px;background:#fff;padding:15px;text-align:left;cursor:pointer;transition:.15s}.budget-month-card:hover{border-color:#15607f;box-shadow:0 8px 24px #10253616;transform:translateY(-1px)}.budget-month-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.budget-month-head span{font-size:12px;color:var(--muted)}.budget-progress{height:10px;background:#e6edf0;border-radius:999px;overflow:hidden;margin:12px 0 5px}.budget-progress i{display:block;height:100%;background:linear-gradient(90deg,#15607f,#0f7a86);border-radius:999px}.budget-month-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.budget-month-stats span{padding:9px;background:#f5f8f9;border-radius:9px}.budget-month-stats small,.budget-month-stats b{display:block}.budget-month-stats small{color:var(--muted);font-size:10px;margin-bottom:4px}.budget-month-stats b{font-size:12px}.budget-editor{margin-top:16px}@media(max-width:1100px){.budget-month-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.budget-month-grid{grid-template-columns:1fr}.budget-month-stats{grid-template-columns:1fr}}

/* v1.13 servicekatalog og intelligente tilbud */
.service-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px;margin:10px 0 18px}
.service-choice{display:grid;grid-template-columns:auto 1fr 150px;gap:10px;align-items:start;border:1px solid var(--border,#dbe4e9);border-radius:12px;padding:12px;background:#fff;cursor:pointer}
.service-choice.suggested{border-color:#0f7a86;box-shadow:0 0 0 2px rgba(15,122,134,.08)}
.service-choice input{width:auto;margin-top:4px}.service-choice strong{display:block;color:#10273d}.service-choice small{display:block;color:#55636c;margin-top:4px;line-height:1.4}.service-choice select{min-width:0}
.service-version{display:block;font-size:11px;color:#0f7a86;margin-top:6px}
.inline-upload{display:grid;grid-template-columns:1fr 180px auto;gap:10px;align-items:end;margin:14px 0}
.service-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.service-admin-card{border:1px solid #dbe4e9;border-radius:12px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:8px}
.service-admin-card strong,.service-admin-card small{display:block;margin-top:6px}.service-admin-card p{color:#55636c;line-height:1.45;flex:1}
@media(max-width:760px){.service-choice{grid-template-columns:auto 1fr}.service-choice select{grid-column:2}.inline-upload{grid-template-columns:1fr}.service-choice-grid{grid-template-columns:1fr}}
/* v1.14 brugerprofiler */
.user-chip{border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;border-left:1px solid var(--border);padding:3px 0 3px 14px}
.user-chip:hover{background:#f3f7f8;border-radius:10px}
.profile-summary{display:flex;align-items:center;gap:12px;padding:12px 0 18px}
.profile-summary strong,.profile-summary small{display:block}.profile-summary small{color:var(--muted);margin-top:4px}
.profile-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#dceef1;color:#177984;font-size:18px;font-weight:800}
.check-label{display:flex;align-items:center;gap:8px;margin-top:20px}.check-label input{margin:0}

/* v1.15 – unified priced capacity lines */
.resource-info{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:12px 14px;border:1px solid #b8d5dc;border-radius:12px;background:#eef7f8;color:#24485a}.resource-info span{font-size:13px;color:#55636c}.checkbox-row{display:flex!important;align-items:center;gap:8px;min-height:42px}.checkbox-row input{width:auto!important;margin:0}.deal-item .form-grid.compact{grid-template-columns:repeat(4,minmax(145px,1fr))}@media(max-width:900px){.deal-item .form-grid.compact{grid-template-columns:1fr 1fr}}@media(max-width:560px){.deal-item .form-grid.compact{grid-template-columns:1fr}}

/* v1.16 tilbud, rettigheder og professionel modal */
.modal-card.modal-wide{width:min(1180px,96vw);max-height:94vh;padding:28px 30px}.modal-card.modal-quote-list{width:min(1040px,94vw);overflow:visible}.quote-builder-head,.quote-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-right:42px;margin-bottom:20px}.quote-builder-head h2,.quote-list-head h2{margin:0 0 5px}.quote-builder-head p,.quote-list-head p{margin:0;color:var(--muted)}.modal-close{right:18px;top:15px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;line-height:1;z-index:5}.modal-close:hover{background:#eef3f5;color:var(--text)}.sticky-actions{position:sticky;bottom:-28px;background:#fff;border-top:1px solid var(--border);padding:16px 0 8px;z-index:4}.internal-total{background:#f7f9fa!important}.internal-total em{display:block;font-size:10px;color:var(--muted);font-style:normal;margin-top:4px}.quote-list{display:grid;gap:12px;max-height:64vh;overflow:auto;padding-right:4px}.quote-list-card{border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:grid;grid-template-columns:1.05fr 2fr 1fr auto;gap:16px;align-items:center;background:#fff}.quote-list-card.is-deleted{background:#fff7f7;border-color:#edcfd2}.quote-main{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.quote-main strong{font-size:14px}.quote-main>span:not(.pill){font-size:11px;color:var(--muted)}.quote-meta{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px}.quote-meta span,.quote-values span{font-size:12px}.quote-meta b,.quote-values b{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.45px;margin-bottom:4px}.quote-values{display:grid;grid-template-columns:1fr;gap:8px}.quote-values span{font-weight:700}.quote-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.quote-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}.quote-overview-card{border:1px solid var(--border);border-radius:13px;padding:16px;background:#fff}.quote-overview-card.is-deleted{background:#fff7f7}.quote-overview-top{display:flex;justify-content:space-between;gap:10px}.quote-overview-top strong,.quote-overview-top small{display:block}.quote-overview-top small{color:var(--muted);margin-top:4px}.quote-overview-card h3{margin:17px 0 4px}.quote-overview-card p{margin:0 0 15px;color:var(--muted)}.quote-overview-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.quote-overview-values span{background:#f2f6f7;border-radius:9px;padding:10px}.quote-overview-values small,.quote-overview-values b{display:block}.quote-overview-values small{color:var(--muted);margin-bottom:5px}.permissions-panel{border:1px solid var(--border);border-radius:11px;padding:15px;background:#f8fafb}.permissions-panel>strong{font-size:13px}.permissions-panel p{margin:5px 0 12px}.permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.permission-check{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:9px 10px;font-weight:600}.permission-check input{width:auto;margin:0}.empty-state{text-align:center;padding:42px 20px;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}.empty-state strong{display:block;color:var(--text);font-size:15px;margin-bottom:6px}
@media(max-width:950px){.quote-list-card{grid-template-columns:1fr}.quote-meta{grid-template-columns:1fr 1fr}.quote-values{grid-template-columns:1fr 1fr}.quote-actions{justify-content:flex-start}.modal-card.modal-wide,.modal-card.modal-quote-list{width:98vw;padding:22px 16px}.permissions-grid{grid-template-columns:1fr}}

/* v1.17 professional quote editor */
.quote-builder-head{position:sticky;top:-24px;z-index:5;background:#fff;padding:6px 0 14px;border-bottom:1px solid var(--line,#d9e3e8);margin-bottom:14px}
.modal-wide .modal-card{width:min(1180px,96vw);max-height:94vh}
.quote-item,.quote-resource{background:#f8fbfc;border:1px solid #d5e1e7;border-radius:14px;padding:16px;margin-bottom:12px;position:relative}
.quote-line-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.quote-line-grid .full{grid-column:1/-1}
.sticky-actions{position:sticky;bottom:-24px;background:#fff;border-top:1px solid #d9e3e8;padding:14px 0 4px;z-index:4}
textarea[name=solution_text]{min-height:240px;line-height:1.5}
@media(max-width:900px){.quote-line-grid{grid-template-columns:1fr 1fr}.modal-wide .modal-card{width:100vw;max-height:100vh;border-radius:0}.sticky-actions{bottom:0}}

.required-mark{color:#b4232f;font-weight:800}.field-error{border-color:#b4232f!important;box-shadow:0 0 0 3px rgba(180,35,47,.12)!important}.just-saved{animation:savedPulse 2.2s ease}@keyframes savedPulse{0%,100%{background:transparent}20%,75%{background:#dff5f1}}.row-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.modal-card input,.modal-card textarea,.modal-card select{user-select:text;-webkit-user-select:text}.modal-card{touch-action:pan-y}.deal-item{scroll-margin-top:18px}

/* v1.17.08 – formularjusteringer */
#quoteSettingsForm [name="company_address"],
#quoteSettingsForm [name="company_name"],
#quoteSettingsForm [name="company_cvr"],
#quoteSettingsForm [name="company_zipcity"],
#quoteSettingsForm [name="company_phone"],
#quoteSettingsForm [name="company_email"]{text-align:left!important}
.field-error{border-color:#bd5961!important;box-shadow:0 0 0 3px rgba(189,89,97,.12)!important}
.just-saved{animation:dealSavedPulse 2.2s ease}
@keyframes dealSavedPulse{0%,100%{background:#fff}25%,70%{background:#e7f7f3}}


/* v1.18 – kategoriadministration */
.catalog-admin-list{display:grid;gap:8px}.catalog-admin-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--line,#d9e2e8);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.catalog-admin-row i{width:12px;height:42px;border-radius:8px}.catalog-admin-row span{display:grid;gap:4px}.catalog-admin-row small{color:#6d7d88}.permissions-panel{background:#f7fafb;border:1px solid #dce6eb;border-radius:12px;padding:14px}


/* v1.19.00 – professionel tilbudsredigering */
.quote-custom-section{border:1px solid var(--border);border-radius:12px;padding:14px;margin:10px 0;background:#f9fbfc}.quote-custom-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.quote-custom-section label+label{margin-top:10px}.quote-custom-section textarea{min-height:125px}


/* v1.20.00: formularmarkering og routingstabilitet */
html,body{overscroll-behavior-x:none;max-width:100%;}
body{overflow-x:hidden;}
#app,.content,.modal,.modal-card{overscroll-behavior-x:none;}
input,textarea,select,[contenteditable="true"]{-webkit-user-select:text;user-select:text;}
input,select,[contenteditable="true"]{touch-action:manipulation;}
textarea,.modal-card{touch-action:pan-y;}
@media (pointer:coarse){.sidebar,.content{touch-action:pan-y;}}

/* v1.22 existing solution import */
.solution-upload-grid{align-items:start}.info-box{background:#eef7f8;border:1px solid #c9e5e8;border-radius:10px;padding:12px;line-height:1.5}.workflow-list{margin:0;padding-left:22px;line-height:2}.table-subline{display:block;color:var(--muted);margin-top:4px}.solution-review-modal{width:min(1320px,98vw)!important}.solution-review-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.solution-lines{display:grid;gap:13px}.solution-line-card{border:1px solid var(--border);border-radius:13px;padding:14px;background:#f9fbfc}.solution-line-head{display:flex;align-items:center;gap:12px;margin-bottom:9px}.solution-line-head small{color:var(--muted);margin-left:auto}.solution-line-head .check-label,.remember-map{display:flex;align-items:center;gap:8px}.solution-line-head input,.remember-map input{width:auto;margin:0}.original-line{background:#fff;border-left:3px solid var(--accent);padding:9px 11px;border-radius:6px;margin-bottom:12px;color:#41535e}.solution-line-grid{display:grid;grid-template-columns:1.1fr 1.1fr 1.7fr 1fr .75fr .8fr .9fr;gap:10px;align-items:end}.solution-line-grid .wide{grid-column:auto}.remember-map{grid-column:1/-1;background:#fff;border:1px solid var(--border);border-radius:8px;padding:9px}.source-price-note{margin-top:10px;color:var(--muted);font-size:12px}.copy-solution-box{display:grid;grid-template-columns:1fr minmax(240px,360px) auto;gap:12px;align-items:center;background:#edf5f7;border:1px solid #cbdfe4;border-radius:12px;padding:14px;margin-top:18px}.copy-solution-box strong,.copy-solution-box small{display:block}.copy-solution-box small{color:var(--muted);margin-top:4px}.legacy-import summary{cursor:pointer}.legacy-import h3{margin-top:0}
@media(max-width:1050px){.solution-line-grid{grid-template-columns:1fr 1fr 1fr}.copy-solution-box{grid-template-columns:1fr}.solution-line-grid .wide{grid-column:auto}}
@media(max-width:650px){.solution-line-grid{grid-template-columns:1fr}.solution-line-head{align-items:flex-start;flex-wrap:wrap}.solution-line-head small{width:100%;margin-left:0}}

.masked-filename{filter:blur(4px);user-select:none;transition:filter .15s}.masked-filename:hover{filter:blur(6px)}
th.sortable{cursor:pointer;user-select:none;white-space:nowrap}th.sortable:after{content:' ↕';opacity:.35;font-size:.85em}th.sortable[data-dir="asc"]:after{content:' ↑';opacity:1}th.sortable[data-dir="desc"]:after{content:' ↓';opacity:1}

/* v1.23.2 – løbende gemning og stabil åbning af salgssager */
.deal-save-toolbar{position:sticky;top:-24px;z-index:12;margin:-24px -24px 18px;padding:14px 24px;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}
.deal-save-toolbar strong,.deal-save-toolbar small{display:block}.deal-save-toolbar small{color:var(--muted);margin-top:3px}.deal-save-toolbar .save-error{color:var(--red)}
@media(max-width:760px){.deal-save-toolbar{top:-20px;margin:-20px -14px 16px;padding:12px 14px}}
.budget-month-card{cursor:pointer}.budget-card-actions{margin-top:14px;justify-content:flex-end}.is-deleted{opacity:.68}

/* v1.23.07 */
.deal-item-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.deal-item-head .remove-item{color:#b4232e;background:#fff1f2;border:1px solid #fecdd3;border-radius:50%;width:32px;height:32px;font-size:22px;line-height:28px;display:grid;place-items:center}.deal-item-head .remove-item:hover{background:#ffe4e6}.quote-line-grid{grid-template-columns:1.1fr 1.15fr 1.6fr .8fr .9fr .9fr!important}
@media(max-width:1050px){.quote-line-grid{grid-template-columns:1fr 1fr!important}}


/* v1.24 kontraktfornyelser og konfetti */
.renewal-card .table-subline{display:block;margin-top:3px;color:#6b7b86;font-size:12px}.renewal-setting{display:flex;align-items:center;gap:8px;font-weight:700}.renewal-setting select,.renewal-status{width:auto;min-width:135px;padding:8px 30px 8px 10px}.confetti-layer{position:fixed;inset:0;z-index:10000;pointer-events:none;overflow:hidden}.confetti-layer>i{position:absolute;left:var(--x);top:-20px;width:9px;height:16px;border-radius:2px;background:hsl(var(--h) 75% 55%);transform:rotate(var(--r));animation:confettiFall var(--t) cubic-bezier(.2,.7,.3,1) var(--d) forwards}.win-celebration{position:absolute;left:50%;top:18%;transform:translate(-50%,-20px);min-width:340px;max-width:680px;padding:22px 30px;border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 20px 60px rgba(9,34,49,.28);text-align:center;animation:winPop .35s ease-out forwards}.win-celebration strong{display:block;font-size:24px;color:#102b3b}.win-celebration span,.win-celebration small{display:block;margin-top:6px;color:#526875}@keyframes confettiFall{to{transform:translateY(110vh) rotate(calc(var(--r) + 720deg));opacity:.95}}@keyframes winPop{to{transform:translate(-50%,0)}}@media(max-width:800px){.renewal-card table{min-width:900px}.win-celebration{min-width:0;width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){.confetti-layer{display:none}}


/* v1.24.01 – create or select deal from an existing solution */
.solution-deal-actions{display:block!important;padding:18px!important}
.solution-deal-intro{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.solution-deal-choice{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:stretch}
.solution-deal-option{border:1px solid var(--line,#d7e2e8);border-radius:14px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:10px;min-width:0}
.solution-deal-option .row-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.solution-deal-option select,.solution-deal-option input{width:100%;min-width:0}
.solution-deal-divider{display:flex;align-items:center;justify-content:center;color:#71808a;font-weight:700}
.solution-deal-divider span{background:#eef3f5;border-radius:999px;padding:6px 9px}
@media(max-width:900px){.solution-deal-choice{grid-template-columns:1fr}.solution-deal-divider{min-height:20px}.solution-deal-option .row-actions{grid-template-columns:1fr}.solution-deal-option .btn{width:100%}}


/* v1.26.02 – sikker mobiltilpasning og produktkopiering */
.product-select,#selectAllProducts{width:18px;height:18px;margin:0;accent-color:var(--accent2)}
.select-cell{width:42px;text-align:center}.product-actions{width:90px}.btn:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:760px){
  body{font-size:14px}.sidebar{width:min(86vw,310px);box-shadow:18px 0 50px rgba(0,0,0,.28)}
  .topbar{height:64px}.content{padding:78px 10px calc(18px + env(safe-area-inset-bottom))}
  .top-actions{gap:6px}.user-chip{border-left:0;padding-left:0}.user-chip>span{width:36px;height:36px}
  .toolbar{align-items:stretch}.toolbar .btn,.toolbar input,.toolbar select{max-width:none;min-height:44px}
  .product-toolbar{display:grid;grid-template-columns:1fr 1fr}.product-toolbar #productSearch,.product-toolbar #productCount{grid-column:1/-1}.product-toolbar .spacer{display:none}
  .form-actions{position:sticky;bottom:-20px;z-index:6;background:#fff;border-top:1px solid var(--border);margin:18px -14px -20px;padding:12px 14px calc(12px + env(safe-area-inset-bottom))}.form-actions .btn{min-height:44px;flex:1}
  input,select,textarea{font-size:16px;min-height:44px}.modal{padding:0;place-items:stretch}.modal-card{width:100vw;max-width:none;height:100dvh;max-height:100dvh;border-radius:0;padding:20px 14px calc(20px + env(safe-area-inset-bottom))}.modal-close{position:sticky;float:right;top:0;background:#fff;border-radius:50%;z-index:9}
  .two-col,.quick-create-grid,.deal-totals{grid-template-columns:1fr!important}.card-header{align-items:flex-start;flex-wrap:wrap}.card-header .btn{width:100%}
  .kanban{grid-auto-columns:86vw;scroll-snap-type:x mandatory}.kanban-col{scroll-snap-align:start;min-height:420px}
  .table-wrap{max-width:100%;-webkit-overflow-scrolling:touch}.table-wrap table{min-width:720px}
  .product-table-wrap{border:0;overflow:visible}.product-table{min-width:0!important}.product-table thead{display:none}.product-table,.product-table tbody,.product-table tr,.product-table td{display:block;width:100%}.product-table tr{position:relative;margin-bottom:12px;padding:12px 12px 10px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(16,38,54,.06)}.product-table td{border:0;padding:6px 4px 6px 42%;white-space:normal;min-height:30px}.product-table td:before{content:attr(data-label);position:absolute;left:16px;width:36%;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.product-table .select-cell{position:absolute;right:8px;top:8px;width:auto;padding:4px;z-index:2}.product-table .select-cell:before{display:none}.product-table .product-actions{padding-left:4px;margin-top:5px}.product-table .product-actions:before{display:none}.product-table .product-actions .btn{width:100%;min-height:42px}
  .row-actions{justify-content:stretch}.row-actions .btn{flex:1;min-height:42px}.deal-item{padding:12px 10px}
}
@media(max-width:430px){.product-toolbar{grid-template-columns:1fr}.product-toolbar>*{grid-column:1!important}.kpis{grid-template-columns:1fr}.topbar h1{max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* v1.26.03 – stabilt interaktivt salgscockpit */
.cockpit-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;border-radius:20px;background:linear-gradient(120deg,#0e2b3d,#15556b 58%,#1ca1af);color:#fff;box-shadow:0 16px 35px rgba(14,43,61,.18);margin-bottom:16px}.cockpit-hero .eyebrow{font-size:11px;font-weight:900;letter-spacing:1.7px;opacity:.75}.cockpit-hero h2{font-size:28px;margin:6px 0 4px}.cockpit-hero p{margin:0;opacity:.82}.cockpit-goal{min-width:220px;padding:16px 18px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.11);border-radius:15px}.cockpit-goal small,.cockpit-goal span{display:block;opacity:.78}.cockpit-goal strong{display:block;font-size:25px;margin:5px 0}.cockpit-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.cockpit-tile{position:relative;overflow:hidden;text-align:left;border:1px solid #dce7ec;background:#fff;border-radius:15px;padding:16px;min-height:112px;cursor:pointer;box-shadow:0 6px 18px rgba(21,48,64,.06);transition:.18s}.cockpit-tile:after{content:"";position:absolute;right:-24px;top:-28px;width:78px;height:78px;border-radius:50%;background:var(--tile);opacity:.12}.cockpit-tile:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(21,48,64,.12)}.cockpit-tile small,.cockpit-tile span{display:block}.cockpit-tile small{text-transform:uppercase;letter-spacing:.55px;font-size:10px;font-weight:900;color:#607683}.cockpit-tile strong{display:block;font-size:23px;margin:8px 0 4px;color:#142b3a}.cockpit-tile span{font-size:12px;color:#71828c}.cockpit-tile.blue{--tile:#2587be}.cockpit-tile.teal{--tile:#14a3a8}.cockpit-tile.purple{--tile:#7b61d1}.cockpit-tile.green{--tile:#2aa66f}.cockpit-tile.orange{--tile:#ee8c32}.cockpit-tile.red{--tile:#d95757}.cockpit-tile{border-top:4px solid var(--tile)}.cockpit-grid{display:grid;gap:16px;margin-bottom:16px}.cockpit-grid-2{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)}.cockpit-card{min-width:0}.cockpit-bars{display:grid;gap:11px}.cockpit-bars button{display:grid;grid-template-columns:minmax(115px,.7fr) minmax(150px,1.7fr) auto;gap:12px;align-items:center;width:100%;border:0;background:none;padding:3px 0;cursor:pointer;text-align:left}.cockpit-bars i{height:10px;border-radius:999px;background:#e7eef1;overflow:hidden}.cockpit-bars b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#3497c1,#20aaa8)}.cockpit-bars strong{font-size:12px}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:32px;min-height:220px}.donut{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#3299c5 0 calc(var(--open)/var(--total)*100%),#2eaf77 0 calc((var(--open) + var(--won))/var(--total)*100%),#d75d64 0);position:relative}.donut:before{content:"";position:absolute;inset:24px;background:#fff;border-radius:50%}.donut>div{position:relative;text-align:center}.donut strong,.donut small{display:block}.donut strong{font-size:30px}.legend{display:grid;gap:10px}.legend button{display:grid;grid-template-columns:12px 1fr auto;gap:9px;align-items:center;border:0;background:none;cursor:pointer;text-align:left}.legend i{width:10px;height:10px;border-radius:50%}.l-open{background:#3299c5}.l-won{background:#2eaf77}.l-lost{background:#d75d64}.opportunity-list,.closed-list{display:grid;gap:8px}.opportunity,.closed-list button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;width:100%;padding:11px 12px;border:1px solid #e2eaee;border-radius:11px;background:#fff;text-align:left;cursor:pointer}.opportunity:hover,.closed-list button:hover{background:#f7fbfc;border-color:#acd4dd}.opportunity span strong,.opportunity span small,.closed-list span strong,.closed-list span small{display:block}.opportunity span small,.closed-list span small{color:#70818b;margin-top:3px}.opportunity em,.closed-list em{font-style:normal;font-size:11px;color:#71828c}.closed-list b{padding:4px 8px;border-radius:999px;font-size:10px}.closed-list b.won{background:#e2f7ec;color:#147a4a}.closed-list b.lost{background:#fde8e9;color:#a92f38}.month-chart{height:220px;display:flex;align-items:flex-end;gap:14px;padding:20px 8px 4px}.month-chart>div{flex:1;display:grid;grid-template-rows:1fr auto;gap:8px;height:100%;text-align:center}.month-chart i{display:flex;align-items:flex-end;justify-content:center;gap:4px;border-bottom:1px solid #dae4e8}.month-chart b{width:15px;min-height:2px;border-radius:4px 4px 0 0}.month-chart .won{background:#23a86d}.month-chart .forecast{background:#6a86d9}.month-chart span{font-size:10px;color:#6c7d87}.timeline-item{padding:10px 0;border-bottom:1px solid #edf1f3}.timeline-item:last-child{border-bottom:0}
@media(max-width:1250px){.cockpit-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.cockpit-grid-2{grid-template-columns:1fr}.cockpit-hero{align-items:flex-start}.cockpit-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.cockpit-hero{display:block;padding:20px}.cockpit-goal{min-width:0;margin-top:16px}.cockpit-kpis{grid-template-columns:1fr}.cockpit-bars button{grid-template-columns:1fr auto}.cockpit-bars i{grid-column:1/-1}.donut-wrap{flex-direction:column}.opportunity,.closed-list button{grid-template-columns:1fr auto}.opportunity em,.closed-list em{grid-column:1/-1}}

/* v1.26.05 – Mine sager på salgscockpittet */
.my-deals-card{margin-bottom:16px}.my-deals-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.my-deal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;align-items:center;width:100%;padding:12px 14px;border:1px solid #e0e9ed;border-radius:12px;background:#fff;text-align:left;cursor:pointer;transition:.16s}.my-deal:hover{background:#f5fbfc;border-color:#9ed0da;transform:translateY(-1px)}.my-deal span strong,.my-deal span small{display:block}.my-deal span small{margin-top:4px;color:#70818b}.my-deal b{color:#173446}.my-deal em{grid-column:1/-1;font-style:normal;font-size:11px;color:#73858f}@media(max-width:800px){.my-deals-list{grid-template-columns:1fr}}

/* v1.26.07 – WIKI */
.wiki-hero{position:relative;overflow:hidden;border-radius:20px;padding:34px;background:linear-gradient(135deg,#102a3a 0%,#174d63 55%,#2598ad 100%);color:#fff;box-shadow:0 14px 34px rgba(15,42,58,.16);margin-bottom:18px}
.wiki-hero:after{content:"?";position:absolute;right:34px;top:-42px;font-size:210px;font-weight:800;line-height:1;color:rgba(255,255,255,.07)}
.wiki-hero>div{position:relative;z-index:1;max-width:900px}.wiki-kicker{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:#aee8f0}.wiki-hero h1{font-size:34px;margin:6px 0}.wiki-hero p{margin:0 0 20px;color:#d9edf2;font-size:15px}.wiki-search{display:flex;align-items:center;gap:10px;background:#fff;border-radius:12px;padding:8px 9px 8px 15px;box-shadow:0 10px 28px rgba(0,0,0,.18)}.wiki-search span{color:#5d7480;font-size:23px}.wiki-search input{border:0;outline:0;box-shadow:none;flex:1;min-width:0;font-size:16px;padding:8px;color:#132b38}.wiki-search .btn{white-space:nowrap}.wiki-hero small{display:block;margin-top:10px;color:#d3e9ee}.wiki-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}.wiki-toc{position:sticky;top:14px;padding:14px}.wiki-toc strong{display:block;padding:6px 8px 10px}.wiki-toc button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:10px;border-radius:8px;color:var(--text);cursor:pointer}.wiki-toc button:hover{background:#edf6f8;color:#137f98}.wiki-results{display:grid;gap:14px}.wiki-article{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(20,48,61,.05)}.wiki-article-head{padding:18px 22px 14px;border-bottom:1px solid #edf1f3}.wiki-article-head span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#248ca3;font-weight:800}.wiki-article-head h2{margin:4px 0 0;font-size:20px}.wiki-article-body{padding:18px 22px;line-height:1.65;color:#334b57}.wiki-article-body p:first-child{margin-top:0}.wiki-article-body ol,.wiki-article-body ul{padding-left:22px}.wiki-article-body li{margin:5px 0}.wiki-article-body h4{margin:16px 0 4px;color:#183541}.wiki-tip,.wiki-warning{margin-top:14px;border-radius:10px;padding:12px 14px}.wiki-tip{background:#eaf8f4;border-left:4px solid #2c9c7a}.wiki-warning{background:#fff6df;border-left:4px solid #d59a22}
@media(max-width:760px){.wiki-hero{padding:24px 18px;border-radius:14px}.wiki-hero h1{font-size:27px}.wiki-hero:after{display:none}.wiki-search{flex-wrap:wrap}.wiki-search input{width:calc(100% - 40px)}.wiki-search .btn{width:100%}.wiki-layout{grid-template-columns:1fr}.wiki-toc{position:static;display:flex;gap:6px;overflow-x:auto;padding:10px}.wiki-toc strong{display:none}.wiki-toc button{width:auto;white-space:nowrap;background:#f3f7f8}.wiki-article-head,.wiki-article-body{padding-left:16px;padding-right:16px}}
/* v1.26.8 – rettighedsstyret cockpit */
.dashboard-tabs{display:flex;gap:6px;padding:6px;background:#e7edf1;border:1px solid var(--border);border-radius:12px;margin-bottom:12px;flex-wrap:wrap}.dashboard-tab{border:0;background:transparent;padding:9px 15px;border-radius:8px;color:var(--muted);font-weight:600}.dashboard-tab.active{background:#fff;color:var(--text);box-shadow:0 2px 8px rgba(16,38,54,.08)}.dashboard-toolbar{display:flex;gap:10px;margin-bottom:14px;justify-content:flex-end}.dashboard-toolbar label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.dashboard-toolbar select{height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 9px}.dashboard-hero{background:linear-gradient(125deg,#122536,#1b5368);color:#fff;border-radius:15px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;box-shadow:var(--shadow)}.dashboard-hero.management{background:linear-gradient(125deg,#18364a,#27677d)}.dashboard-hero.modular{background:linear-gradient(125deg,#26394a,#4777a8)}.dashboard-hero span{font-size:10px;letter-spacing:1.6px;color:#8fd3da;font-weight:700}.dashboard-hero h2{margin:5px 0 4px;font-size:22px}.dashboard-hero p{margin:0;color:#c7d8df}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.dashboard-kpi{border:1px solid var(--border);background:#fff;border-radius:14px;text-align:left;padding:15px 16px;box-shadow:var(--shadow);transition:.15s}.dashboard-kpi:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(16,38,54,.12)}.dashboard-kpi small,.dashboard-kpi span{display:block;color:var(--muted)}.dashboard-kpi strong{display:block;font-size:23px;margin:6px 0}.dashboard-kpi.teal{border-top:4px solid #35a9b4}.dashboard-kpi.blue{border-top:4px solid #3d8fb6}.dashboard-kpi.green{border-top:4px solid #2e9b78}.dashboard-kpi.red{border-top:4px solid #bd5961}.dashboard-kpi.purple{border-top:4px solid #8667ae}.dashboard-grid{display:grid;gap:14px;margin-bottom:14px}.dashboard-grid.two{grid-template-columns:1.2fr 1fr}.action-row,.deal-mini{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid var(--border);background:#fff;padding:11px 0;text-align:left}.action-row:last-child,.deal-mini:last-child{border-bottom:0}.action-row:hover,.deal-mini:hover{background:#f7fafb;margin:0 -10px;padding-left:10px;padding-right:10px}.action-row span,.deal-mini span{min-width:0}.action-row strong,.deal-mini strong{display:block}.action-row small,.deal-mini small{display:block;color:var(--muted);margin-top:3px}.action-row em{font-style:normal;font-size:11px;padding:4px 9px;border-radius:20px}.action-row.critical em{background:#fbecee;color:#96343d}.action-row.warning em{background:#fbf1e2;color:#8a6115}.goal-row{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:14px}.goal-row div strong,.goal-row div span{display:block}.goal-row div span{color:var(--muted);font-size:11px}.goal-row em{font-style:normal;font-weight:700}.goal-row>i{grid-column:1/-1;height:8px;background:#edf2f4;border-radius:5px;overflow:hidden}.goal-row>i b{display:block;height:100%;background:linear-gradient(90deg,#3d8fb6,#35a9b4);border-radius:5px}.funnel-row{display:grid;grid-template-columns:115px 1fr 105px;gap:10px;align-items:center;margin:8px 0}.funnel-row>i{height:20px;background:#edf2f4;border-radius:5px;overflow:hidden}.funnel-row>i b{display:block;height:100%;background:#3d8fb6}.funnel-row>strong{text-align:right;font-size:12px}.trend-chart{display:flex;align-items:flex-end;height:210px;gap:8px;padding-top:10px}.trend-chart>div{flex:1;text-align:center;height:100%;display:flex;flex-direction:column;justify-content:flex-end}.trend-chart i{display:flex;align-items:flex-end;justify-content:center;gap:2px;height:175px}.trend-chart b{width:9px;min-height:2px;border-radius:3px 3px 0 0}.trend-chart b.won{background:#2e9b78}.trend-chart b.forecast{background:#3d8fb6}.trend-chart span{font-size:10px;color:var(--muted);margin-top:5px}.chart-legend{display:flex;gap:15px;color:var(--muted);font-size:11px}.chart-legend i{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:2px}.chart-legend i.won{background:#2e9b78}.chart-legend i.forecast{background:#3d8fb6}.mix-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--border)}.mix-row:last-child{border-bottom:0}.capacity-summary{text-align:center;padding:24px}.capacity-summary strong{font-size:18px}.capacity-summary p{color:var(--muted)}.modular-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dashboard-tile{background:#fff;border:1px solid var(--border);border-radius:14px;padding:15px;box-shadow:var(--shadow);min-height:150px}.dashboard-tile header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.dashboard-tile h3{margin:0;font-size:13px;color:var(--muted)}.dashboard-tile .tile-big{display:block;font-size:26px;margin-bottom:6px}.modular-grid.editing .dashboard-tile{border-style:dashed;cursor:grab}.tile-remove{border:1px solid var(--border);background:#fff;color:#bd5961;border-radius:50%;width:25px;height:25px}.tile-catalog{margin-top:14px}.tile-catalog .btn{margin:5px}.dashboard-tile .goal-row{margin-bottom:0}@media(max-width:1100px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid.two{grid-template-columns:1fr}.modular-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.dashboard-tabs{display:grid;grid-template-columns:1fr}.dashboard-toolbar{justify-content:stretch}.dashboard-toolbar label{flex:1;display:grid}.dashboard-toolbar select{width:100%}.dashboard-hero{align-items:flex-start;gap:15px;flex-direction:column}.dashboard-kpis,.modular-grid{grid-template-columns:1fr}.funnel-row{grid-template-columns:90px 1fr}.funnel-row>strong{grid-column:2;text-align:left}}


/* v1.26.09 – teknisk kapacitet og integrationer */
.technical-capacity-hero,.integration-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#102b3d,#17475a);color:#fff;margin-bottom:16px}.technical-capacity-hero p,.integration-intro p{color:#c8d9e1;max-width:820px}.capacity-rule{min-width:150px;text-align:center;background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;padding:16px}.capacity-rule strong{display:block;font-size:30px}.capacity-rule span{font-size:12px;color:#c8d9e1}.clickable{cursor:pointer}.clickable:hover{background:#f3f9fa}.integration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.integration-card{display:flex;flex-direction:column;gap:16px}.integration-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.integration-head>div{display:flex;align-items:center;gap:12px}.integration-icon{width:48px;height:48px;border-radius:12px;background:#dff1f3;color:#177984;display:grid;place-items:center;font-weight:800}.integration-head h2{margin:0;font-size:17px}.integration-head p{margin:3px 0 0;color:var(--muted)}.integration-card dl{display:grid;grid-template-columns:110px 1fr;gap:9px 12px;margin:0}.integration-card dt{color:var(--muted)}.integration-card dd{margin:0}.integration-card .btn{align-self:flex-start}.integration-message{font-size:12px;color:var(--muted);min-height:16px}
@media(max-width:700px){.technical-capacity-hero,.integration-intro{align-items:flex-start;flex-direction:column}.capacity-rule{width:100%}.integration-grid{grid-template-columns:1fr}.integration-card dl{grid-template-columns:1fr}.integration-card dt{font-weight:600;margin-top:6px}}

/* v1.26.12 – fleksibel CRM-import */
.import-wizard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.import-sheet{margin:12px 0;box-shadow:none}.import-sheet .card-header{align-items:flex-end;flex-wrap:wrap}.import-sheet .card-header label{min-width:180px}.import-sheet .import-mapping{margin-top:12px}.import-row-picker{margin-top:14px}.import-row-picker summary{cursor:pointer;font-weight:600}.info-box.success{border-color:#b7dfd0;background:#edf8f4}@media(max-width:760px){.import-sheet .card-header{align-items:stretch}.import-sheet .card-header label{min-width:100%;width:100%}.import-sheet .card-header select{width:100%}}


/* v1.26.14 – webCRM one-time migration */
.webcrm-migration-card{margin-top:16px}.webcrm-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.webcrm-head h2{margin:4px 0}.webcrm-head p{margin:0;color:var(--muted);max-width:850px}.webcrm-form{margin:18px 0 12px}.webcrm-form label{font-weight:600;font-size:12px}.webcrm-form input{display:block;width:100%;margin-top:6px;height:40px;border:1px solid var(--border);border-radius:9px;padding:0 12px}.webcrm-types{display:flex;gap:18px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.webcrm-types label,.webcrm-commit label{display:flex;gap:7px;align-items:center}.webcrm-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.webcrm-summary>div{background:#f5f8fa;border:1px solid var(--border);border-radius:10px;padding:12px}.webcrm-summary strong{display:block;font-size:22px}.webcrm-summary span,.webcrm-summary small{display:block}.webcrm-summary small{color:var(--muted);margin-top:3px}.webcrm-commit{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#e7f4f5;border:1px solid #bcdfe2;border-radius:10px;padding:12px;margin-top:12px}.btn.danger{color:#a63740;border-color:#efc7ca;background:#fff}.btn.danger:hover{background:#fff4f4}@media(max-width:800px){.webcrm-summary{grid-template-columns:repeat(2,1fr)}.webcrm-head,.webcrm-commit{align-items:stretch;flex-direction:column}}


/* v1.26.18: tvungen 2-faktor for administratorer */
.two-factor-setup{text-align:center;margin:10px 0 14px;padding:12px;border:1px solid var(--border);border-radius:12px;background:#f7fafb}
.two-factor-setup img{display:block;max-width:220px;width:100%;margin:0 auto 10px;border-radius:8px}
.two-factor-setup code{font-size:13px;word-break:break-all;user-select:all}
.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:#f7fafb}
.recovery-codes code{padding:7px;border-radius:7px;background:#fff;border:1px solid var(--border);text-align:center;font-weight:700;user-select:all}
@media(max-width:520px){.recovery-codes{grid-template-columns:1fr}}

/* v1.26.19: compact contact list */
.contacts-card{padding:14px}.contacts-card .toolbar{margin-bottom:10px}.contacts-table th,.contacts-table td{padding:8px 10px}.contacts-table td{height:42px}.contacts-table .btn.small{padding:5px 8px}.contacts-table small{line-height:1.15}.contacts-table-wrap{border-radius:10px}


/* v1.27.00 rettighedsmatrix og Slettet */
.rights-matrix{padding:16px}.rights-head,.permission-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.permission-group{border-top:1px solid var(--border);padding-top:14px;margin-top:14px}.permission-group-head label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.permission-check{display:flex!important;align-items:flex-start!important;gap:9px;padding:10px!important}.permission-check input{width:auto!important;margin-top:2px}.permission-check span{display:block}.permission-check b{display:block;font-size:12px}.permission-check small{display:block;color:var(--muted);font-weight:400;line-height:1.3;margin-top:2px}.rights-summary{margin-top:14px;padding:10px 12px;border-radius:9px;background:#eef5f7;display:flex;justify-content:space-between;gap:12px;font-size:12px}.rights-summary span{color:var(--muted)}
@media(max-width:760px){.rights-head,.permission-group-head,.rights-summary{align-items:flex-start;flex-direction:column}.permissions-grid{grid-template-columns:1fr!important}}


/* v1.27.02: kontaktpersoner samme kompakte rækkehøjde som kunder */
@media (min-width:761px){
  .contacts-card{padding:14px}
  .contacts-table th,.contacts-table td{padding:6px 10px!important;line-height:1.2!important;height:auto!important;min-height:0!important;vertical-align:middle}
  .contacts-table tr{height:auto!important;min-height:0!important}
  .contacts-table .btn.small{height:30px!important;min-height:30px!important;padding:4px 9px!important;line-height:1!important}
  .contacts-table small{margin-top:2px!important;line-height:1.1!important}
}

/* v1.27.3 – cockpit efter godkendt prototype */
.dashboard-updated{font-size:11px;color:#6d7b84;margin-right:auto}.dashboard-toolbar{justify-content:flex-end}.dashboard-toolbar label{display:flex;align-items:center;gap:6px}.dashboard-kpi{min-height:112px;text-align:left}.dashboard-kpi .dash-spark{height:22px;margin-top:6px}.dash-spark{display:block;width:100%}.mb{margin-bottom:14px}.pill{font-size:11px;padding:3px 10px;border-radius:20px}.pill.red{background:#fbecee;color:#96343d}.action-row{grid-template-columns:auto minmax(0,1fr) auto auto}.action-row>em{font-style:normal;font-size:11px;padding:3px 9px;border-radius:20px;background:#eef2f4;color:#5b6b75}.action-row.critical>em{background:#fbecee;color:#96343d}.action-row.warning>em{background:#fbf1e2;color:#8a6115}.action-row>b{font-size:12px}.funnel-row{width:100%;border:0;background:transparent;cursor:pointer}.funnel-meta{margin:0 0 8px 114px;font-size:11px;color:#6d7b84}.proto-trend{display:grid;grid-template-columns:repeat(12,minmax(24px,1fr));gap:8px;height:270px;align-items:end}.proto-trend.compact{height:220px}.proto-trend>div{height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center}.proto-trend i{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:3px;height:100%;border-bottom:1px solid #dfe6ea}.proto-trend b.won,.proto-trend b.forecast{width:8px;min-height:0;border-radius:4px 4px 0 0}.proto-trend b.won{background:#3d8fb6}.proto-trend b.forecast{background:#2e9b78}.proto-trend b.budget{position:absolute;left:0;right:0;height:0;border-top:2px dashed #8fa3ae}.proto-trend span{font-size:10px;color:#6d7b84}.chart-legend{display:flex;gap:16px;margin-top:10px;font-size:11px;color:#6d7b84}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:10px;height:10px;border-radius:2px}.chart-legend i.won{background:#3d8fb6}.chart-legend i.forecast{background:#2e9b78}.chart-legend i.budget{height:0;border-top:2px dashed #8fa3ae;border-radius:0}.mix-bar{display:flex;height:25px;border-radius:7px;overflow:hidden;margin-bottom:12px}.mix-bar i{display:block}.mix-dot{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:7px}.mix-c0{background:#3d8fb6}.mix-c1{background:#d5763a}.mix-c2{background:#2e9b78}.mix-c3{background:#d59b42}.mix-c4{background:#a86ba3}.mix-c5{background:#35a9b4}.capacity-heat{display:grid;gap:5px}.heat-head,.heat-row{display:grid;grid-template-columns:1.5fr repeat(3,.75fr) .6fr;gap:8px;align-items:center;padding:9px 11px;border-radius:8px}.heat-head{font-size:10px;text-transform:uppercase;color:#6d7b84;background:#f4f7f8}.heat-row{border:0;background:#fff;text-align:left}.heat-row:hover{background:#f7fafb}.heat-row em{font-style:normal;text-align:center;padding:5px;border-radius:7px;font-size:11px}.heat-row em.green{background:#e6f4ef;color:#1d6f56}.heat-row em.amber{background:#fbf1e2;color:#8a6115}.heat-row em.red{background:#fbecee;color:#96343d}
/* Kontaktpersoner skal have samme kompakte rækkehøjde som Kunder */
.contacts-table th,.contacts-table td{padding:7px 10px!important;height:38px!important;min-height:0!important;line-height:1.15!important;vertical-align:middle!important}.contacts-table tr{height:38px!important;min-height:0!important}.contacts-table .btn.small{height:28px!important;min-height:28px!important;padding:3px 8px!important}
@media(max-width:800px){.proto-trend{grid-template-columns:repeat(12,42px);overflow-x:auto}.heat-head,.heat-row{grid-template-columns:1.3fr .8fr .8fr .8fr}.heat-head span:last-child,.heat-row em{display:none}.dashboard-updated{display:none}.contacts-table tr,.contacts-table td{height:auto!important}}
/* v1.27.9 – interaktiv månedsgraf */
.trend-wrap{position:relative}.trend-month{border:0;background:transparent;padding:0;margin:0;height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center;min-width:0;color:inherit}.trend-month>i{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:3px;height:100%;border-bottom:1px solid #dfe6ea}.trend-month:hover>i,.trend-month:focus-visible>i{background:#f2f8fa;box-shadow:inset 0 0 0 1px #b8dce1;border-radius:7px 7px 0 0}.trend-month:focus-visible{outline:2px solid #35a9b4;outline-offset:2px;border-radius:7px}.trend-month>span{font-size:10px;color:#6d7b84}.trend-tooltip{position:absolute;z-index:15;min-width:240px;background:#122536;color:#fff;border-radius:10px;padding:11px 13px;box-shadow:0 12px 30px rgba(12,30,42,.28);pointer-events:none;opacity:0;transform:translateY(5px);transition:opacity .12s,transform .12s}.trend-tooltip.show{opacity:1;transform:translateY(0)}.trend-tooltip strong{display:block;margin-bottom:7px;text-transform:capitalize}.trend-tooltip span{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;padding:3px 0;font-size:12px;color:#d9e5ea}.trend-tooltip span i{width:9px;height:9px;border-radius:2px}.trend-tooltip span i.won{background:#3d8fb6}.trend-tooltip span i.forecast{background:#2e9b78}.trend-tooltip span i.budget{height:0;border-top:2px dashed #c2cfd6;border-radius:0}.trend-tooltip span b{color:#fff;font-variant-numeric:tabular-nums}.trend-tooltip em{display:block;margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.16);font-size:11px;font-style:normal}.trend-tooltip em.positive{color:#8ee0bd}.trend-tooltip em.negative{color:#ffb1b6}.chart-legend small{margin-left:auto;color:#87959e}
@media(max-width:800px){.trend-tooltip{position:fixed;left:12px!important;right:12px;top:auto!important;bottom:14px;min-width:0}.chart-legend small{display:none}}

/* v1.27.13 – kontraktskabeloner uden vandret scroll */
.modal-card.modal-contract-templates{width:min(1040px,96vw)}
.contract-template-table-wrap{overflow-x:hidden;overflow-y:auto;max-height:58vh}
.contract-template-table{width:100%;min-width:0;table-layout:fixed}
.contract-template-table .ct-type{width:9%}
.contract-template-table .ct-title{width:31%}
.contract-template-table .ct-version{width:10%}
.contract-template-table .ct-file{width:29%}
.contract-template-table .ct-status{width:11%}
.contract-template-table .ct-action{width:10%}
.contract-template-table th,.contract-template-table td{white-space:normal;overflow-wrap:anywhere;word-break:break-word;vertical-align:middle}
.contract-template-table td:nth-child(3),.contract-template-table td:nth-child(5),.contract-template-table td:nth-child(6){white-space:nowrap}
.contract-template-file{font-size:12px;color:#425762}
@media(max-width:760px){
  .modal-card.modal-contract-templates{width:100vw}
  .contract-template-table-wrap{border:0;overflow:visible;max-height:none}
  .contract-template-table,.contract-template-table tbody,.contract-template-table tr,.contract-template-table td{display:block;width:100%}
  .contract-template-table colgroup,.contract-template-table thead{display:none}
  .contract-template-table tr{margin-bottom:10px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:#fff}
  .contract-template-table td{position:relative;border:0;padding:5px 4px 5px 36%;min-height:28px;white-space:normal!important}
  .contract-template-table td:before{content:attr(data-label);position:absolute;left:4px;width:30%;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}
}
.contract-package-status{display:flex;justify-content:space-between;gap:18px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;margin:12px 0;background:#f7fafc}.contract-package-status.is-complete{background:#eefaf5;border-color:#bfe7d5}.contract-package-status.is-incomplete{background:#fff8e8;border-color:#ead49a}.contract-template-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:14px 0}.contract-template-tools label{min-width:180px}.tag-list{display:flex;gap:8px;flex-wrap:wrap}.contract-template-table th,.contract-template-table td{vertical-align:top}@media(max-width:760px){.contract-package-status{flex-direction:column}.contract-template-tools>*{width:100%}}


/* v1.27.16 – overskuelig kontraktskabelonoversigt */
.modal-card.modal-contract-templates{width:min(1180px,97vw)}
.contract-template-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 190px auto;gap:10px;align-items:center;margin:14px 0}
.contract-template-toolbar input,.contract-template-toolbar select{margin:0}
.contract-template-toolbar #contractTemplateCount{text-align:right;white-space:nowrap}
.contract-template-table{table-layout:fixed}
.contract-template-table .ct-document{width:14%}.contract-template-table .ct-title{width:19%}.contract-template-table .ct-version{width:8%}.contract-template-table .ct-type{width:14%}.contract-template-table .ct-file{width:23%}.contract-template-table .ct-status{width:9%}.contract-template-table .ct-action{width:13%}
.contract-template-table th,.contract-template-table td{padding:10px 12px;vertical-align:middle!important}
.contract-template-table td:nth-child(3),.contract-template-table td:nth-child(6){white-space:nowrap}
.contract-template-table td:nth-child(5){white-space:normal}
.contract-template-table .contract-template-status,.contract-template-table .contract-filetype{display:inline-flex;align-items:center;justify-content:center;max-width:100%;white-space:nowrap}
.contract-template-table .row-actions{justify-content:flex-end;flex-wrap:wrap;gap:6px}
.contract-template-table th.sortable{cursor:pointer;user-select:none;padding-right:25px;position:relative}
.contract-template-table th.sortable:hover{background:#eef5f7}
.contract-template-table th.sortable:after{content:'↕';position:absolute;right:9px;color:#91a0a8;font-size:11px}
.contract-template-table th.sortable.sort-active:after{content:'↑';color:#16799b}
.contract-template-table th.sortable.sort-active[data-sort-direction="desc"]:after{content:'↓'}
@media(max-width:760px){.contract-template-toolbar{grid-template-columns:1fr}.contract-template-toolbar #contractTemplateCount{text-align:left}.contract-template-table .row-actions{justify-content:flex-start}}

/* v1.30.0 – kontraktarbejdsrum */
.contract-workspace-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.contract-workspace-tabs .active{background:#2f91b8;color:#fff;border-color:#2f91b8}.contract-tab-panel.hidden{display:none}.contract-section-editor{border:1px solid #d9e3e9;border-radius:12px;padding:14px;margin:10px 0;background:#f8fafb}.contract-section-head{display:flex;align-items:center;gap:16px;margin-bottom:9px}.contract-section-head .check{margin-left:auto;order:2}.contract-section-editor textarea{width:100%;min-height:120px;resize:vertical}.workspace-help{background:#edf8f5;border:1px solid #b9e4d7;border-radius:10px;padding:12px;margin-bottom:12px}.modal-card:has(.contract-workspace-tabs){width:min(1180px,96vw);max-height:94vh;overflow:auto}
@media(max-width:700px){.contract-workspace-tabs{display:grid;grid-template-columns:1fr 1fr}.contract-section-head{align-items:flex-start;flex-direction:column}.contract-section-head .check{margin-left:0;order:0}}

/* v1.32.0 dokumentarbejdsrum */
.modal-contract-workspace{width:min(1500px,96vw);max-width:1500px}.contract-workspace-tabs{overflow-x:auto;flex-wrap:nowrap}.document-overrides{display:grid;gap:10px}.document-override-row{display:grid;grid-template-columns:minmax(240px,1fr) 170px auto;gap:8px;padding:12px;border:1px solid #d8e1e8;border-radius:10px}.document-override-row textarea{grid-column:1/3}.document-override-row .remove-override{grid-row:1/3;grid-column:3}.contract-pdf-preview{min-height:560px;margin-top:12px;border:1px solid #d8e1e8;border-radius:12px;background:#f6f9fb;overflow:hidden}.contract-pdf-preview.large{min-height:720px}.contract-pdf-preview iframe{width:100%;height:72vh;border:0;background:#fff}.contract-version-list{display:grid;gap:8px}.contract-version-list article{display:grid;grid-template-columns:110px 1fr 120px;gap:12px;padding:10px;border:1px solid #d8e1e8;border-radius:10px}@media(max-width:800px){.document-override-row{grid-template-columns:1fr}.document-override-row textarea,.document-override-row .remove-override{grid-column:auto;grid-row:auto}.contract-version-list article{grid-template-columns:1fr}}

/* v1.32.0 dokumentarbejdsrum */
.modal-contract-workspace{width:min(1500px,96vw);max-width:1500px}.contract-workspace-tabs{overflow-x:auto;flex-wrap:nowrap}.document-overrides{display:grid;gap:10px}.document-override-row{display:grid;grid-template-columns:minmax(240px,1fr) 170px auto;gap:8px;padding:12px;border:1px solid #d8e1e8;border-radius:10px}.document-override-row textarea{grid-column:1/3}.document-override-row .remove-override{grid-row:1/3;grid-column:3}.contract-pdf-preview{min-height:560px;margin-top:12px;border:1px solid #d8e1e8;border-radius:12px;background:#f6f9fb;overflow:hidden}.contract-pdf-preview.large{min-height:720px}.contract-pdf-preview iframe{width:100%;height:72vh;border:0;background:#fff}.contract-version-list{display:grid;gap:8px}.contract-version-list article{display:grid;grid-template-columns:110px 1fr 120px;gap:12px;padding:10px;border:1px solid #d8e1e8;border-radius:10px}@media(max-width:800px){.document-override-row{grid-template-columns:1fr}.document-override-row textarea,.document-override-row .remove-override{grid-column:auto;grid-row:auto}.contract-version-list article{grid-template-columns:1fr}}

/* v1.32.1 download feedback */
.btn.is-downloading,.btn:disabled{opacity:.55;cursor:wait;filter:grayscale(.35)}

/* v1.32.4 – mobiloptimering af tilbud og kontrakter */
@media(max-width:760px){
  .modal{padding:0;place-items:stretch}
  .modal-card,
  .modal-card.modal-wide,
  .modal-card.modal-quote-list,
  .modal-contract-workspace{
    width:100vw!important;max-width:none!important;height:100dvh;max-height:100dvh;
    border-radius:0!important;padding:14px 12px 96px!important;overflow-x:hidden!important;
  }
  .modal-close{position:sticky;float:right;top:4px;right:4px;background:#fff;border:1px solid var(--border);box-shadow:0 2px 8px rgba(16,38,54,.08)}
  .quote-builder-head,.quote-list-head{position:sticky;top:-14px;z-index:8;margin:-2px -2px 12px;padding:8px 44px 12px 2px;background:#fff;display:block}
  .quote-builder-head h2,.quote-list-head h2{font-size:18px;line-height:1.25}
  .quote-builder-head p,.quote-list-head p{font-size:11px;line-height:1.4;margin-top:5px}

  .contract-workspace-tabs{
    position:sticky;top:54px;z-index:7;display:grid!important;grid-template-columns:1fr 1fr;
    gap:6px;overflow:visible!important;background:#fff;padding:8px 0 10px;margin:0 0 12px;
    border-bottom:1px solid var(--border)
  }
  .contract-workspace-tabs .btn{width:100%;min-width:0;white-space:normal;line-height:1.15;padding:9px 6px;font-size:11px}
  .contract-workspace-tabs .btn[data-contract-tab="combined"],
  .contract-workspace-tabs .btn[data-contract-tab="documents"]{grid-column:auto}

  .modal-contract-workspace #contractForm>.form-actions,
  .quote-builder-head~form>.form-actions.sticky-actions{
    position:fixed!important;left:0;right:0;bottom:0;z-index:120;background:#fff;
    border-top:1px solid var(--border);box-shadow:0 -8px 24px rgba(16,38,54,.12);
    padding:9px 10px calc(9px + env(safe-area-inset-bottom));margin:0;display:grid;
    grid-template-columns:1fr 1fr;gap:7px;max-height:42vh;overflow-y:auto
  }
  .modal-contract-workspace #contractForm>.form-actions .btn,
  .modal-contract-workspace #contractForm>.form-actions select,
  .quote-builder-head~form>.form-actions.sticky-actions .btn{width:100%;margin:0;min-height:42px;white-space:normal}
  .modal-contract-workspace #contractForm>.form-actions select{grid-column:1/-1}
  .modal-contract-workspace #contractForm>.form-actions #openCombinedContract{grid-column:1/-1}

  .contract-tab-panel .form-grid,.quote-line-grid{grid-template-columns:1fr!important}
  .contract-section-editor{padding:11px}
  .contract-section-head{gap:8px}
  .workspace-help{font-size:12px;line-height:1.45}
  .document-override-row{padding:10px}
  .contract-docs .service-admin-card{display:grid;grid-template-columns:1fr;gap:10px}
  .contract-docs .row-actions{justify-content:stretch}
  .contract-docs .row-actions .btn{flex:1}
  .inline-upload{display:grid!important;grid-template-columns:1fr!important;gap:8px}
  .inline-upload>*{width:100%}
  .contract-pdf-preview,.contract-pdf-preview.large{min-height:420px}
  .contract-pdf-preview iframe{height:62vh}

  .contract-price-table-wrap{overflow:visible;border:0}
  .contract-price-table,.contract-price-table tbody,.contract-price-table tr,.contract-price-table td{display:block;width:100%}
  .contract-price-table thead{display:none}
  .contract-price-table tr{border:1px solid var(--border);border-radius:11px;padding:8px 10px;margin-bottom:10px;background:#fff}
  .contract-price-table td{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid #edf1f3;white-space:normal;overflow-wrap:anywhere}
  .contract-price-table td:last-child{border-bottom:0}
  .contract-price-table td:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}
  .contract-price-table select{margin:0;min-width:0}

  .quote-item,.quote-resource,.quote-custom-section{padding:12px;margin-bottom:10px}
  .quote-item .remove-line,.quote-resource .remove-resource{position:static!important;width:100%;margin-top:8px}
  .section-title.split{align-items:stretch;flex-direction:column;gap:8px}
  .section-title.split .btn{width:100%}
  .deal-totals{grid-template-columns:1fr!important}
  .service-choice-grid{grid-template-columns:1fr!important}
  .quote-overview-grid{grid-template-columns:1fr}
  .quote-overview-card{padding:13px}
  .quote-overview-top{align-items:flex-start;flex-direction:column}
  .quote-overview-values{grid-template-columns:1fr}
  .quote-actions,.row-actions{justify-content:stretch}
  .quote-actions .btn,.row-actions .btn{flex:1;min-width:120px}
  .quote-list{max-height:none;overflow:visible}
  .quote-list-card{padding:12px;gap:10px}
  .quote-meta,.quote-values{grid-template-columns:1fr 1fr}
  .table-wrap:not(.contract-price-table-wrap){max-width:100%;-webkit-overflow-scrolling:touch}
}

@media(max-width:430px){
  .contract-workspace-tabs{grid-template-columns:1fr 1fr;top:50px}
  .contract-workspace-tabs .btn{font-size:10px;padding:8px 4px}
  .modal-contract-workspace #contractForm>.form-actions,
  .quote-builder-head~form>.form-actions.sticky-actions{grid-template-columns:1fr 1fr}
  .quote-meta,.quote-values{grid-template-columns:1fr}
}

/* v1.32.5 – fjern resterende vandret scroll i tilbud og kontrakter på mobil */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  .app,.content,.modal,.modal-card,.modal-contract-workspace{min-width:0!important;max-width:100%!important}
  .content{width:100%!important;overflow-x:hidden!important}
  .modal-card *,.modal-contract-workspace *{min-width:0;max-width:100%}
  .modal-card img,.modal-contract-workspace img,.modal-card svg,.modal-contract-workspace svg{max-width:100%;height:auto}
  .modal-card form,.modal-contract-workspace form,.contract-tab-panel,.quote-builder,.quote-form,.quote-list{width:100%;max-width:100%;overflow-x:hidden}
  .modal-card .form-grid,.modal-card .form-grid.compact,.modal-card .quote-line-grid,.modal-card .deal-totals,.modal-card .quick-create-grid{grid-template-columns:minmax(0,1fr)!important;width:100%}
  .modal-card input,.modal-card select,.modal-card textarea,.modal-card button{max-width:100%;min-width:0}
  .modal-card .toolbar,.modal-card .card-header,.modal-card .section-title.split,.modal-card .deal-item-head,.modal-card .quote-overview-top{max-width:100%;flex-wrap:wrap}
  .modal-card .toolbar>*{max-width:100%;flex:1 1 100%}
  .modal-card .table-wrap{width:100%;max-width:100%;overflow-x:auto!important}
  .modal-card table{max-width:100%}
  .modal-card th,.modal-card td{white-space:normal;overflow-wrap:anywhere;word-break:normal}
  .quote-item,.quote-resource,.quote-custom-section,.deal-item,.contract-section-editor,.document-override-row,.service-admin-card{width:100%;max-width:100%;overflow:hidden}
  .quote-actions,.row-actions,.form-actions{max-width:100%;flex-wrap:wrap}
  .quote-actions .btn,.row-actions .btn,.form-actions .btn{min-width:0!important}
  .contract-pdf-preview,.contract-pdf-preview iframe{width:100%;max-width:100%}
  .contract-workspace-tabs{width:100%;max-width:100%}
}


/* v1.32.6 – reel mobilvisning af tilbuds- og kontraktoversigter */
@media(max-width:760px){
  .topbar{
    height:auto;min-height:116px;padding:10px 12px;align-content:flex-start;flex-wrap:wrap;gap:8px
  }
  .topbar>div:first-of-type{min-width:0;flex:1}
  .top-actions{order:3;width:100%;margin-left:0;gap:8px;display:flex!important}
  .top-actions .global-search{display:block!important;flex:1 1 auto;min-width:0;position:relative}
  .top-actions .global-search input{display:block!important;width:100%;max-width:none;margin:0;height:42px}
  .top-actions .user-chip{display:flex!important;flex:0 0 auto;border-left:0;padding-left:0}
  .top-actions .user-chip div,.top-actions #globalAdd{display:none!important}
  .content{padding-top:132px!important}

  .mobile-record-list{padding:12px!important;overflow:hidden}
  .mobile-record-list>.toolbar{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:9px;margin-bottom:12px}
  .mobile-record-list>.toolbar input{grid-column:1/-1;width:100%;max-width:none!important;margin:0}
  .mobile-record-list>.toolbar .spacer{display:none}
  .mobile-record-list>.toolbar .quote-filter{grid-column:1/-1}
  .mobile-record-list>.toolbar strong{justify-self:end;white-space:nowrap}
  .mobile-record-list>.toolbar .btn{width:auto;min-width:0}

  .mobile-record-list .table-wrap{overflow:visible!important;border:0!important;border-radius:0!important}
  .mobile-record-list table,.mobile-record-list tbody{display:block!important;width:100%!important;min-width:0!important}
  .mobile-record-list thead{display:none!important}
  .mobile-record-list tr{display:block!important;width:100%!important;min-width:0!important;margin:0 0 12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(16,38,54,.05)}
  .mobile-record-list tr:last-child{margin-bottom:0}
  .mobile-record-list td{display:grid!important;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:10px;width:100%!important;min-width:0!important;padding:8px 0!important;border-bottom:1px solid #edf1f3!important;white-space:normal!important;overflow:visible!important;text-align:left!important}
  .mobile-record-list td:last-child{border-bottom:0!important;padding-bottom:0!important}
  .mobile-record-list td::before{content:attr(data-label);font-size:10px;line-height:1.35;font-weight:800;letter-spacing:.45px;text-transform:uppercase;color:var(--muted)}
  .mobile-record-list td>*{min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal}
  .mobile-record-list td strong{font-size:14px;line-height:1.3}
  .mobile-record-list td small{display:block;margin-top:3px;color:var(--muted)}
  .mobile-record-list td[data-label="Handling"] .row-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
  .mobile-record-list td[data-label="Handling"] .btn{width:100%;min-height:42px;margin:0}
  .mobile-record-list .empty{display:block!important;padding:22px!important;text-align:center}
  .mobile-record-list .empty::before{display:none}
}
@media(max-width:390px){
  .mobile-record-list td{grid-template-columns:96px minmax(0,1fr);gap:8px}
}

/* v1.33.0 – Rich editor til Bilag 1 */
.rich-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border:1px solid #cbd8e1;border-bottom:0;border-radius:10px 10px 0 0;background:#f5f8fa;position:sticky;top:0;z-index:2}
.rich-toolbar button,.rich-toolbar select{min-height:34px;border:1px solid #c7d4dc;background:#fff;border-radius:7px;padding:5px 9px;font:inherit;color:#173246}
.rich-toolbar button:hover{background:#eaf4f8}
.rich-editor{min-height:180px;border:1px solid #cbd8e1;border-radius:0 0 10px 10px;background:#fff;padding:14px;line-height:1.45;overflow:auto;outline:none}
.rich-editor:focus{border-color:#168fd0;box-shadow:0 0 0 2px rgba(22,143,208,.15)}
.rich-editor:empty:before{content:attr(data-placeholder);color:#8a9aa5}
.rich-editor img{display:block;max-width:100%;height:auto;margin:10px auto;border-radius:4px}
.rich-editor table{width:100%;border-collapse:collapse;margin:10px 0}
.rich-editor td,.rich-editor th{border:1px solid #9bb7c9;padding:6px;vertical-align:top}
.rich-editor h2,.rich-editor h3{color:#315f8d;margin:12px 0 6px}
@media(max-width:700px){.rich-toolbar{position:static}.rich-toolbar button,.rich-toolbar select{flex:1 1 auto}.rich-editor{min-height:220px}}
.rich-image-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:7px 8px;border:1px solid #cbd8e1;border-bottom:0;background:#eef5f8}
.rich-image-toolbar.hidden{display:none}
.rich-image-toolbar span{font-weight:700;color:#496273;margin-right:4px}
.rich-image-toolbar button{min-height:32px;border:1px solid #c7d4dc;background:#fff;border-radius:7px;padding:4px 8px;font:inherit;color:#173246}
.rich-image-toolbar [data-image-delete]{color:#a92f36;border-color:#e6b6ba}
.rich-editor img.is-selected{outline:3px solid #168fd0;outline-offset:3px}
.rich-editor img[data-width="25"]{width:25%}
.rich-editor img[data-width="50"]{width:50%}
.rich-editor img[data-width="75"]{width:75%}
.rich-editor img[data-width="100"]{width:100%}
.rich-editor img[data-align="left"]{margin-left:0;margin-right:auto}
.rich-editor img[data-align="center"]{margin-left:auto;margin-right:auto}
.rich-editor img[data-align="right"]{margin-left:auto;margin-right:0}

/* v1.34.0 – operational intelligence */
.operational-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#12364a,#1d6274);color:#fff}.operational-hero h2{color:#fff}.handover-grid,.capacity-visual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px}.handover-card.blocked{border-top:4px solid #c6535d}.handover-card.in_progress{border-top:4px solid #d49b34}.handover-card.completed{border-top:4px solid #319675}.handover-values{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.handover-values span{background:#f4f7f9;border-radius:10px;padding:10px}.handover-values small,.handover-values strong{display:block}.handover-progress{height:8px;background:#e7edf0;border-radius:99px;overflow:hidden}.handover-progress i{display:block;height:100%;background:#319675}.handover-checklist{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.handover-checklist label{display:flex;gap:8px;align-items:flex-start}.form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.health-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.customer-health-grid{display:grid;gap:8px}.health-card{display:grid;grid-template-columns:64px minmax(0,1fr) 170px auto;align-items:center;gap:14px;width:100%;border:1px solid #dce5e9;background:#fff;padding:12px;text-align:left;border-radius:12px}.health-card:hover{border-color:#2f91b5}.health-score{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff}.health-score.green{background:#319675}.health-score.amber{background:#d49b34}.health-score.red{background:#c6535d}.health-main strong,.health-main small,.health-main em,.health-money small,.health-money strong{display:block}.health-main em{font-style:normal;color:#6d7d86;margin-top:4px}.health-money{text-align:right}.capacity-resource-card{cursor:pointer}.capacity-bars{height:230px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;align-items:end;padding:12px 0}.capacity-month{text-align:center;display:grid;grid-template-rows:1fr auto auto;height:100%;gap:4px}.capacity-stack{height:170px;background:#eef3f5;border-radius:7px 7px 2px 2px;display:flex;flex-direction:column-reverse;overflow:hidden;justify-content:flex-start}.capacity-stack i{display:block}.capacity-stack .won{background:#2f8fa0}.capacity-stack .pipeline{background:#9ecbd7}.capacity-month strong{font-size:.9rem}.capacity-month small{text-transform:capitalize}.capacity-limit{display:flex;align-items:center;gap:8px}.capacity-limit input{max-width:130px}.sticky-actions{position:sticky;bottom:0;background:rgba(245,248,249,.94);padding:12px;display:flex;justify-content:flex-end;z-index:5}
@media(max-width:760px){.operational-hero{align-items:flex-start;gap:14px}.handover-grid,.capacity-visual-grid{grid-template-columns:1fr}.handover-values,.health-summary{grid-template-columns:1fr 1fr}.handover-checklist,.form-grid.compact{grid-template-columns:1fr}.health-card{grid-template-columns:52px minmax(0,1fr);}.health-money,.health-card>.pill{grid-column:2;text-align:left}.capacity-bars{height:190px;overflow-x:auto}.capacity-stack{height:130px;min-width:42px}}

/* v1.34.5 - Stram og ensartet leverancecheckliste */
.handover-checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
  margin:16px 0 20px;
  align-items:stretch;
}
.handover-check-item{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center!important;
  gap:10px!important;
  min-height:52px;
  padding:10px 12px;
  margin:0;
  border:1px solid #dbe5e9;
  border-radius:10px;
  background:#f8fafb;
  cursor:pointer;
  line-height:1.25;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.handover-check-item:hover{
  border-color:#9dc8d5;
  background:#f2f8fa;
}
.handover-check-item:focus-within{
  box-shadow:0 0 0 3px rgba(47,145,181,.16);
  border-color:#2f91b5;
}
.handover-check-item input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.handover-check-box{
  width:22px;
  height:22px;
  border:2px solid #92a3ab;
  border-radius:6px;
  background:#fff;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.handover-check-item input:checked + .handover-check-box{
  border-color:#319675;
  background:#319675;
}
.handover-check-item input:checked + .handover-check-box::after{
  content:'✓';
  color:#fff;
  font-size:15px;
  line-height:1;
  font-weight:800;
}
.handover-check-text{
  display:block;
  min-width:0;
  font-weight:650;
  color:#40525d;
  overflow-wrap:anywhere;
}
.handover-check-item.is-done{
  border-color:#b9ddcf;
  background:#eef8f4;
}
.handover-check-item.is-done .handover-check-text{
  color:#2e7059;
}
.handover-card .form-grid.compact{
  padding-top:18px;
  margin-top:2px;
  border-top:1px solid #e2eaed;
}
@media(max-width:760px){
  .handover-checklist{grid-template-columns:1fr;gap:9px}
  .handover-check-item{min-height:48px}
}

/* v1.34.6 – kompakt, prioriteret kapacitetscockpit */
.compact-hero{padding:20px 24px}.capacity-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.capacity-summary-card{background:#fff;border:1px solid var(--border);border-radius:13px;padding:14px;box-shadow:var(--shadow)}.capacity-summary-card small,.capacity-summary-card span{display:block;color:var(--muted)}.capacity-summary-card strong{display:block;font-size:24px;margin:4px 0}.capacity-summary-card.critical{border-top:4px solid #c6535d}.capacity-summary-card.warning{border-top:4px solid #d49b34}.capacity-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.capacity-toolbar label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.capacity-toolbar select{min-width:155px}.capacity-toolbar .capacity-toggle{display:flex;align-items:center;gap:7px;height:40px;color:var(--text)}.capacity-toolbar .capacity-toggle input{width:auto}.capacity-toolbar .btn{margin-left:auto}.capacity-family-list{display:grid;gap:14px}.capacity-family{padding:0;overflow:hidden}.capacity-family-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;background:#f6f9fa;border-bottom:1px solid var(--border)}.capacity-family-head h2{margin:0;font-size:17px}.capacity-family-head span{color:var(--muted);font-size:12px}.capacity-resource-list{display:grid}.capacity-compact-row{display:grid;grid-template-columns:minmax(190px,1.45fr) minmax(115px,.8fr) minmax(115px,.8fr) minmax(150px,1.05fr) minmax(115px,.8fr) 85px 92px;gap:14px;align-items:center;width:100%;padding:13px 18px;border:0;border-bottom:1px solid var(--border);background:#fff;text-align:left;cursor:pointer}.capacity-compact-row:last-child{border-bottom:0}.capacity-compact-row:hover{background:#f6fafb}.capacity-compact-row.critical{box-shadow:inset 4px 0 #c6535d}.capacity-compact-row.warning{box-shadow:inset 4px 0 #d49b34}.capacity-resource-name strong,.capacity-resource-name small,.capacity-current small,.capacity-current strong,.capacity-change small,.capacity-change strong,.capacity-limit-display small,.capacity-limit-display strong{display:block}.capacity-resource-name small,.capacity-current small,.capacity-change small,.capacity-limit-display small{color:var(--muted);font-size:11px}.capacity-change .up{color:#a66a17}.capacity-change .down{color:#23795e}.capacity-mini-chart{display:flex;align-items:flex-end;gap:4px;height:38px;padding:3px 0;border-bottom:1px solid #dce5e8}.capacity-mini-chart i{display:block;flex:1;min-width:5px;max-width:18px;background:#62aabd;border-radius:3px 3px 0 0}.capacity-status{text-align:center}.capacity-open{font-size:12px;font-weight:700;color:#287f9f;text-align:right}.capacity-limit-modal[hidden]{display:none}.capacity-limit-modal{display:grid;place-items:center;position:fixed;inset:0;background:rgba(13,31,43,.55);z-index:120}.capacity-limit-dialog{width:min(760px,calc(100vw - 30px));max-height:86vh;display:flex;flex-direction:column}.capacity-limit-search{margin:12px 0}.capacity-limit-list{overflow:auto;border:1px solid var(--border);border-radius:10px}.capacity-limit-list label{display:grid;grid-template-columns:minmax(0,1fr) 150px 70px;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border)}.capacity-limit-list label:last-child{border-bottom:0}.capacity-limit-list strong,.capacity-limit-list small{display:block}.capacity-limit-list small,.capacity-limit-list em{color:var(--muted);font-style:normal}.capacity-limit-list input{width:100%}
@media(max-width:1150px){.capacity-summary-grid{grid-template-columns:repeat(3,1fr)}.capacity-compact-row{grid-template-columns:minmax(170px,1.4fr) 110px 110px minmax(130px,1fr) 100px 75px}.capacity-open{display:none}}
@media(max-width:760px){.capacity-summary-grid{grid-template-columns:1fr 1fr}.capacity-toolbar{display:grid;grid-template-columns:1fr 1fr}.capacity-toolbar label,.capacity-toolbar select,.capacity-toolbar .btn{width:100%;min-width:0;margin:0}.capacity-toolbar .capacity-toggle{height:auto}.capacity-family-head{align-items:flex-start}.capacity-compact-row{grid-template-columns:1fr auto;padding:14px;gap:8px 12px}.capacity-resource-name{grid-column:1}.capacity-status{grid-column:2;grid-row:1}.capacity-current,.capacity-change,.capacity-limit-display{display:grid;grid-template-columns:auto auto;justify-content:start;gap:7px;align-items:baseline}.capacity-current{grid-column:1}.capacity-change{grid-column:1}.capacity-limit-display{grid-column:1}.capacity-mini-chart{grid-column:1/3;width:100%;height:34px}.capacity-open{display:block;grid-column:2;grid-row:3/5;align-self:end}.capacity-limit-list label{grid-template-columns:1fr 110px}.capacity-limit-list em{display:none}}

/* v1.34.9 backup downloads */
.backup-download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.backup-download-grid .service-admin-card{align-items:center}.backup-download-grid small{display:block;margin-top:5px;line-height:1.45}.backup-download-grid .row-actions{flex:0 0 auto}@media(max-width:760px){.backup-download-grid{grid-template-columns:1fr}.backup-download-grid .service-admin-card{align-items:flex-start}.backup-download-grid .row-actions{width:100%}.backup-download-grid .btn{width:100%}}

/* v1.34.10 – brugerbestemte login- og adgangskodekrav */
.login-remember{display:flex!important;align-items:flex-start!important;gap:10px;margin:4px 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#f7fafb;cursor:pointer}
.login-remember input{width:auto!important;margin:3px 0 0!important}
.login-remember span{display:grid;gap:2px}.login-remember small{color:var(--muted);font-weight:400}

/* v1.35.0 – Infrastrukturdiagram */
.modal-infrastructure{width:min(1540px,97vw);max-width:1540px;height:min(94vh,1100px);overflow:auto}
.infra-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.infra-editor-head h2{margin:0 0 4px}.infra-editor-head p{margin:0;color:var(--muted)}
.infra-layout{display:grid;grid-template-columns:minmax(370px,.72fr) minmax(620px,1.55fr);gap:18px;align-items:start}.infra-controls{min-width:0}.infra-preview-wrap{background:#eaf1f5;border:1px solid var(--line);border-radius:14px;padding:10px;min-height:340px;position:sticky;top:8px}.infra-preview-wrap img{display:block;width:100%;height:auto;background:white;border-radius:8px;box-shadow:0 10px 28px rgba(26,54,76,.10)}
.infra-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.infra-mapping{margin:14px 0;border:1px solid var(--line);border-radius:12px;background:#f8fbfc;padding:12px}.infra-mapping summary{cursor:pointer;font-weight:800;color:var(--navy);padding:2px 0 8px}.infra-storage-map{display:grid;grid-template-columns:1fr 1.4fr 1.4fr auto;gap:8px;align-items:center;margin:8px 0}.infra-storage-map input,.infra-storage-map select{min-width:0}
.infra-server-table{max-height:430px}.infra-server-table table{min-width:1220px}.infra-server-table td{vertical-align:middle}.infra-server-table input,.infra-server-table select{width:100%;min-width:95px;padding:8px}.infra-server-table td:nth-child(1){min-width:130px}.infra-server-table td:nth-child(2){min-width:210px}.infra-server-table td:nth-child(3){min-width:165px}.infra-server-table td:nth-child(8){min-width:250px;white-space:normal}.infra-list{display:grid;gap:10px}.infra-upload-label{cursor:pointer}.infra-quote-block{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7fbfc}.infra-quote-block label{display:grid;gap:6px;font-weight:700}.infra-contract-box{margin:0 0 18px}.infra-contract-preview{display:block;width:100%;max-height:520px;object-fit:contain;background:#eef4f7;border:1px solid var(--line);border-radius:10px;padding:8px}.empty.mini{padding:14px;border:1px dashed var(--line);border-radius:10px}
@media(max-width:1000px){.infra-layout{grid-template-columns:1fr}.infra-preview-wrap{position:static}.infra-meta{grid-template-columns:1fr}.infra-storage-map{grid-template-columns:1fr}.infra-editor-head{flex-direction:column}.modal-infrastructure{width:97vw}.infra-server-table{max-height:none}}

/* v1.35.2 – synlig infrastruktursektion på nye salgssager */
.infrastructure-deal-section{margin-top:22px}.infrastructure-deal-section .btn:disabled{cursor:not-allowed;opacity:.6}.infrastructure-deal-help{margin-top:-2px;margin-bottom:14px}

/* v1.35.3 – synligt infrastrukturdiagram og flytbare salgslinjer */
.infrastructure-deal-wrap{margin-top:22px;padding-top:2px;border-top:1px solid var(--border)}
.infrastructure-deal-wrap .section-title{border-top:0;margin-top:10px;padding-top:0}
.deal-item-title{display:flex;align-items:center;gap:10px;min-width:0}
.deal-drag-handle{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #cbd8de;border-radius:8px;background:#fff;color:#647985;font-size:20px;line-height:1;cursor:grab;user-select:none}
.deal-drag-handle:hover{background:#edf6f8;border-color:#8fc4cf;color:#1d778b}
.deal-drag-handle:active{cursor:grabbing}
.deal-item.deal-item-dragging{opacity:.55;box-shadow:0 12px 28px rgba(16,38,54,.16);border-color:#35a9b4}
#dealItems{min-height:20px}
@media(max-width:760px){.deal-drag-handle{width:40px;height:40px;touch-action:none}}

/* v1.36.0 – PostgreSQL + Update Center */
.update-center-hero{border-top:4px solid var(--accent2)}
.update-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.update-status-grid>div{padding:14px;border:1px solid var(--border);border-radius:12px;background:#f7fafb}
.update-status-grid small,.update-status-grid strong{display:block}.update-status-grid small{color:var(--muted);margin-bottom:5px}.update-status-grid strong{font-size:18px}
.update-validation-flow{border:1px solid #d8e7ec;background:#f5fafb;border-radius:12px;padding:12px 16px;margin:10px 0 16px}.update-validation-flow ol{margin:0;padding-left:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px}.update-validation-flow li{color:#405761}
.release-drop{display:block;border:2px dashed #b8cbd4;border-radius:14px;padding:18px;background:#fbfcfd}.release-drop input{margin-top:10px}
.update-progress{margin:14px 0 10px;border:1px solid #d5e4da;background:#f5fbf7;border-radius:14px;padding:12px 14px}.update-progress-track{height:14px;background:#e7eef0;border-radius:999px;overflow:hidden}.update-progress-fill{height:100%;width:0;background:linear-gradient(90deg,#3cb371,#2e9b78);border-radius:999px;transition:width .45s ease}.update-progress-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:10px}.update-progress.active .update-progress-fill{box-shadow:0 0 0 1px rgba(46,155,120,.08)}.update-progress.done{border-color:#7cc8a0;background:#eefaf2}.update-progress.done .update-progress-fill{background:linear-gradient(90deg,#45c26d,#2e9b78)}.update-progress.error{border-color:#e3c6c6;background:#fff7f7}.update-progress.error .update-progress-fill{background:linear-gradient(90deg,#d18a8a,#b94e4e)}
.release-result{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(280px,1.4fr) auto;gap:16px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:15px;margin-top:12px;background:#fff}.release-result.valid{border-left:4px solid #2e9b78}.release-result h3{margin:6px 0 3px}.release-result p{margin:0 0 5px;color:var(--muted)}.release-result small{overflow-wrap:anywhere}.release-check-badges{display:flex;gap:6px;flex-wrap:wrap}.release-check-badges span{font-size:10px;padding:5px 7px;border-radius:999px;background:#e9f6f1;color:#216c55;font-weight:700}.release-result details{grid-column:1/-1}.release-result pre{max-height:320px;overflow:auto;white-space:pre-wrap;background:#122536;color:#dce9ee;padding:12px;border-radius:10px;font-size:11px}.update-restarting{text-align:center;padding:70px 20px}.update-restarting h2{margin-top:18px}.update-spinner{width:46px;height:46px;border:4px solid #d9e5e9;border-top-color:var(--accent2);border-radius:50%;margin:auto;animation:updateSpin .8s linear infinite}@keyframes updateSpin{to{transform:rotate(360deg)}}
@media(max-width:900px){.update-status-grid{grid-template-columns:1fr 1fr}.release-result{grid-template-columns:1fr}.release-result .row-actions{justify-content:flex-start}.update-validation-flow ol{grid-template-columns:1fr}}
@media(max-width:520px){.update-status-grid{grid-template-columns:1fr}}

/* v1.37.0 – kundens servermiljø på kundeprofilen */
.customer-infrastructure-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}
.customer-infrastructure-section .section-title{margin-top:0;padding-top:0;border-top:0}
.customer-infra-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:#f5fafb;margin:8px 0 18px}
.customer-infra-summary>div{display:grid;gap:4px}.customer-infra-summary span{color:var(--muted);font-size:13px}
@media(max-width:700px){.customer-infra-summary{align-items:flex-start;flex-direction:column}.customer-infrastructure-section .section-title.split{align-items:flex-start;gap:10px}.customer-infrastructure-section .section-title.split .btn{width:100%}}

/* v1.37.4 – kundens servermiljø */
.customer-infrastructure-section{margin:22px 0;padding:18px;border:1px solid #cfe1e8;border-radius:16px;background:#f7fbfc}.customer-infrastructure-section .section-title{margin-top:0}.customer-infrastructure-section .row-actions{display:flex;gap:8px;flex-wrap:wrap}.customer-infra-summary{margin-top:12px;padding:12px 14px;border:1px solid #dbe7eb;border-radius:12px;background:#fff;display:flex;justify-content:space-between;gap:16px;align-items:center}.customer-infra-summary>div{display:flex;flex-direction:column;gap:3px}.customer-infra-summary span{color:var(--muted)}@media(max-width:680px){.customer-infrastructure-section .section-title.split{align-items:flex-start}.customer-infrastructure-section .row-actions{width:100%}.customer-infrastructure-section .row-actions .btn,.customer-infrastructure-section .row-actions label.btn{flex:1}.customer-infra-summary{align-items:flex-start;flex-direction:column}}

/* v1.38.0 – HLD / kundeinfrastruktur */
.hld-customer-card,.customer-infrastructure-section{margin:22px 0;padding:18px 20px;border:1px solid #b9d9e6;border-radius:16px;background:linear-gradient(180deg,#f7fcfe,#eef8fb)}
.customer-infrastructure-section .section-title{margin:0 0 8px;padding:0;border:0}.customer-infrastructure-section .row-actions{flex-wrap:wrap}.customer-infrastructure-section p{max-width:900px}
.hld-connections{display:grid;gap:12px;margin:10px 0 22px}.hld-connection-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;padding:14px;border:1px solid #dce6ee;border-radius:14px;background:linear-gradient(180deg,#fbfdfe 0%,#f6fafc 100%);box-shadow:0 1px 0 rgba(13,50,104,.03)}.hld-connection-row label{font-size:11px;font-weight:700;color:var(--muted)}.hld-connection-row input,.hld-connection-row select{margin-top:5px}.hld-connection-row .hld-conn-wide{grid-column:span 2}.hld-check{display:flex!important;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.hld-check input,.hld-check-cell input{width:auto}.hld-server-table input,.hld-server-table select{min-width:92px}.hld-server-table td:nth-child(1) input{min-width:135px}.hld-server-table td:nth-child(2) input{min-width:125px}.hld-server-table td:nth-child(8) input,.hld-server-table td:nth-child(9) input{min-width:190px}.hld-connectivity-head{margin-top:22px}
@media(max-width:1200px){.hld-connection-row{grid-template-columns:repeat(3,minmax(0,1fr))}.hld-connection-row .hld-conn-wide{grid-column:span 2}.hld-connection-row .hld-check{align-items:flex-start}}
@media(max-width:700px){.hld-connection-row{grid-template-columns:1fr}.hld-connection-row .hld-conn-wide{grid-column:span 1}.customer-infrastructure-section .row-actions{display:grid;grid-template-columns:1fr}.customer-infrastructure-section .btn{width:100%}}

/* v1.38.1 HLD upload status */
.hld-upload-progress,.hld-upload-error{display:flex;flex-direction:column;gap:6px}.hld-upload-progress span,.hld-upload-error span{color:var(--muted)}.hld-mini-progress{height:8px;border-radius:999px;background:#dfeaec;overflow:hidden;margin-top:5px}.hld-mini-progress i{display:block;width:45%;height:100%;border-radius:999px;background:#2e9b78;animation:hldUploadMove 1.1s ease-in-out infinite alternate}.hld-upload-error{color:#9c2f35}.hld-upload-error span{color:#8c4649}@keyframes hldUploadMove{from{transform:translateX(-25%)}to{transform:translateX(145%)}}

/* v1.39.0 – HLD i tilbud og kontrakt */
.hld-quote-section{background:linear-gradient(180deg,#f7fbfc 0%,#eef8fa 100%);border-color:#b9dce5}
.hld-quote-grid{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(260px,1fr);gap:14px;align-items:end}
.hld-quote-grid .full{grid-column:1/-1}
.hld-include-toggle{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.hld-include-toggle input{width:auto;margin:0}
.hld-quote-preview{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px}
.hld-quote-preview img{width:100%;max-height:300px;object-fit:contain;border-radius:8px;background:#fff}
.hld-quote-preview img.is-disabled{opacity:.25}
.hld-quote-preview div{display:grid;gap:4px}.hld-quote-preview small{color:var(--muted)}
.contract-hld-snapshot{margin:12px 0 14px;padding:14px;border:1px solid #badce4;border-radius:12px;background:#f4fbfc}
.contract-hld-snapshot-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.contract-hld-snapshot-head>div{display:grid;gap:3px}.contract-hld-snapshot-head small{color:var(--muted)}
.contract-hld-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:12px}.contract-hld-actions label{min-width:260px;display:grid;gap:5px;font-weight:700}
.contract-hld-preview-wrap{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:10px}.contract-hld-preview-wrap img{display:block;width:100%;max-height:420px;object-fit:contain}
@media(max-width:760px){.hld-quote-grid{grid-template-columns:1fr}.hld-quote-preview{grid-template-columns:1fr}.contract-hld-actions{display:grid;grid-template-columns:1fr}.contract-hld-actions label{min-width:0}}

/* v1.39.1 – HLD visual polish */
.modal-card.modal-infrastructure .modal-close{position:absolute!important;top:6px!important;right:6px!important;width:40px;height:40px;border:1px solid #dfe6ea;background:#fff;border-radius:50%;display:grid;place-items:center;font-size:26px;line-height:1;z-index:60;box-shadow:0 3px 12px rgba(16,38,54,.10)}
.modal-card.modal-infrastructure .infra-editor-head{padding-right:56px}
.modal-card.modal-infrastructure .modal-close:hover{background:#f3f7f9}

/* v1.40.2 – fleksibel HLD-import og manuelle overrides */
.hld-import-analysis{margin:18px 0;padding:14px 16px;border:1px solid #bcded0;border-radius:13px;background:#f5fbf8}.hld-import-analysis.needs-review{border-color:#e7d4a6;background:#fffaf0}.hld-analysis-badges,.hld-analysis-fields{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.hld-analysis-badges span{padding:5px 8px;border-radius:999px;background:#e7f1f4;font-size:11px;font-weight:700;color:var(--navy)}.hld-analysis-fields span{padding:5px 8px;border-radius:8px;font-size:11px;font-weight:700}.hld-analysis-fields .ok{background:#e8f7ef;color:#216c55}.hld-analysis-fields .warn{background:#fff0d9;color:#936019}.hld-import-analysis ul{margin:8px 0 0 18px;color:#805c1b}
.hld-manual-panel{margin:18px 0 22px;padding:16px;border:1px solid #cfe0e6;border-radius:14px;background:#f8fbfc}.hld-inline-check{display:flex!important;align-items:center;gap:8px;margin:8px 0 12px;font-weight:700}.hld-inline-check input{width:auto;margin:0}.hld-manual-platform-table table{min-width:1080px}.hld-manual-platform-table input{min-width:100px;width:100%;padding:8px}.hld-manual-platform-table td:nth-child(1),.hld-manual-platform-table td:nth-child(2){min-width:150px}.hld-manual-platform-table td:nth-child(3){min-width:220px}.hld-manual-platform-table td:nth-child(4),.hld-manual-platform-table td:nth-child(5),.hld-manual-platform-table td:nth-child(6){min-width:95px}.hld-capacity-table{max-width:720px}.hld-capacity-table input{width:100%;padding:8px}
@media(max-width:760px){.hld-manual-panel{padding:12px}.hld-analysis-badges,.hld-analysis-fields{align-items:flex-start}.hld-capacity-table{max-width:none}}
/* v1.40.3 – IOPS pr. disk */
.hld-iops-requirements{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 4px;font-size:12px}.hld-iops-requirements span{background:#fff;border:1px solid #cfe0ea;border-radius:999px;padding:4px 8px}.hld-iops-requirements em{color:#607080}

/* v1.40.4 – redigerbare IOPS- og OS-profiler */
.hld-server-table .hld-iops-selects{display:flex;flex-direction:column;gap:6px;min-width:190px}
.hld-server-table .hld-iops-selects label{display:grid;grid-template-columns:minmax(86px,1fr) minmax(108px,auto);gap:6px;align-items:center;margin:0}
.hld-server-table .hld-iops-selects label>span{font-size:10px;line-height:1.15;color:#607080;white-space:normal}
.hld-server-table .hld-iops-selects select,.hld-server-table td>select[data-k="operating_system"]{min-width:145px;width:100%;padding:7px 8px;font-size:11px}
.hld-server-table th:nth-child(7),.hld-server-table td:nth-child(7){min-width:210px}
.hld-server-table th:nth-child(8),.hld-server-table td:nth-child(8){min-width:180px}

/* v1.40.9 – tydelig og personlig fejring af vundne salgssager */
.confetti-layer>i{width:var(--s,9px);height:calc(var(--s,9px) * 1.65)}
.win-celebration{top:16%;min-width:380px;padding:26px 34px;border:1px solid rgba(47,157,120,.22);box-shadow:0 24px 80px rgba(9,34,49,.32)}
.win-trophy{font-size:46px;line-height:1;margin-bottom:4px;filter:drop-shadow(0 5px 9px rgba(9,34,49,.16))}
.win-kicker{font-size:11px!important;letter-spacing:.18em;font-weight:800;color:#2f9d78!important;margin-top:0!important}
.win-celebration>strong{font-size:28px;margin-top:5px}
.win-message{font-size:17px!important;font-weight:700;color:#2f5368!important}
.win-deal{margin-top:10px!important;font-size:14px!important}
.win-values{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.win-value{margin-top:0!important;padding:7px 11px;border-radius:999px;background:#eef7f3;color:#244f40!important}
.win-value strong{color:#173e31}
.confetti-layer.reduced-motion .win-celebration{animation:none;transform:translate(-50%,0)}
@media(max-width:800px){.win-celebration{min-width:0;width:calc(100% - 28px);padding:22px 18px}.win-celebration>strong{font-size:24px}.win-trophy{font-size:40px}}
@media(prefers-reduced-motion:reduce){.confetti-layer.reduced-motion{display:block}.confetti-layer.reduced-motion>i{display:none}}

/* v1.40.13 – moderne auditlog og revisionsoplevelse */
.audit-shell{display:flex;flex-direction:column;gap:14px}
.audit-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border-radius:18px;background:linear-gradient(135deg,#102f45,#174c62 58%,#167884);color:#fff;box-shadow:0 18px 45px rgba(14,45,64,.16)}
.audit-hero h2{margin:2px 0 7px;font-size:26px;color:#fff}.audit-hero p{margin:0;max-width:820px;color:rgba(255,255,255,.78);line-height:1.5}.audit-eyebrow{display:block;font-size:10px;font-weight:900;letter-spacing:.17em;color:#8ee0dc;margin-bottom:5px}.audit-report-cta{background:#fff!important;color:#173b50!important;border-color:#fff!important;box-shadow:0 8px 25px rgba(0,0,0,.15);white-space:nowrap}
.audit-stats{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px}.audit-stats>div{background:#fff;border:1px solid var(--border);border-radius:13px;padding:13px 15px;box-shadow:0 5px 18px rgba(18,48,65,.05)}.audit-stats span,.audit-stats strong{display:block}.audit-stats span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.audit-stats strong{font-size:22px;color:#17354d;margin-top:4px}.audit-stats .critical{border-left:4px solid #c73d46}.audit-stats .warning{border-left:4px solid #d69e00}
.audit-control-card{padding:16px 18px}.audit-control-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.audit-control-head strong,.audit-control-head small{display:block}.audit-control-head small{color:var(--muted);margin-top:3px}.audit-critical-toggle{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--border);border-radius:999px;background:#f8fafb;font-weight:800;font-size:12px;white-space:nowrap}.audit-critical-toggle input{width:auto;margin:0;accent-color:#bd3039}
.audit-filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(4,minmax(130px,1fr)) auto;gap:9px;padding:14px 0 0;align-items:center}.audit-filters input,.audit-filters select{width:100%}.audit-log-card{padding:0;overflow:hidden}.audit-log-card .card-header{padding:16px 18px 10px}.audit-log-card .card-header h3{margin:0 0 3px}.audit-table-wrap{max-height:68vh;overflow:auto;border-top:1px solid var(--border)}.audit-table{min-width:1080px}.audit-table thead{position:sticky;top:0;z-index:3;background:#f4f8fa}.audit-table th{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#607482}.audit-row{cursor:pointer;transition:background .12s}.audit-row:hover{background:#f5fafb}.audit-row td{vertical-align:middle}.audit-time{font-variant-numeric:tabular-nums;white-space:nowrap;color:#526875}.audit-user{display:flex;align-items:center;gap:8px}.audit-avatar{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#e7f1f4;color:#1c5c6f;font-size:10px;font-weight:900;flex:none}.history-detail strong,.history-detail small{display:block}.history-detail small{margin-top:4px;color:#80909a;font-size:10px}.audit-entity{display:block;font-weight:800}.audit-entity small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.audit-open{font-size:22px;color:#466a7e}.severity{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}.severity.info{background:#e7f6ec;color:#256c3b}.severity.warning{background:#fff2cc;color:#805b00}.severity.critical{background:#fee2e2;color:#a51818}.audit-critical{background:#fff9f9}.audit-critical td:first-child{box-shadow:inset 3px 0 0 rgba(217,45,32,.20)}.audit-warning td:first-child{box-shadow:inset 3px 0 0 rgba(214,158,0,.18)}
.audit-row:not(.audit-critical):not(.audit-warning) td:first-child{box-shadow:inset 3px 0 0 rgba(57,140,76,.12)}
.audit-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.audit-detail-head small{color:var(--muted)}.audit-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0}.audit-detail-grid>div{padding:11px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.audit-detail-grid small,.audit-detail-grid strong{display:block}.audit-detail-grid small{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:9px}.audit-detail-grid strong{margin-top:4px}.audit-explanation{padding:13px 15px;border-left:4px solid #178391;background:#eef8f8;border-radius:9px;margin:14px 0}.audit-explanation p{margin:5px 0 0;line-height:1.5;color:#405963}.audit-technical-details{display:grid;grid-template-columns:1fr 1fr;gap:8px}.audit-technical-details>div{padding:9px;border-bottom:1px solid var(--border)}.audit-technical-details span,.audit-technical-details strong{display:block}.audit-technical-details span{font-size:10px;color:var(--muted);text-transform:capitalize}.audit-raw{margin-top:14px}.audit-raw summary{cursor:pointer;font-weight:800}.audit-raw pre{max-height:260px;overflow:auto;padding:12px;border-radius:8px;background:#102b3b;color:#dce9ef;font-size:11px;white-space:pre-wrap}
.audit-report-includes{margin:14px 0;padding:13px 15px;border:1px solid var(--border);border-radius:11px;background:#f8fafb}.audit-report-includes>strong{display:block;margin-bottom:8px}.audit-report-includes>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;color:#3e5664;font-size:12px}
@media(max-width:1050px){.audit-stats{grid-template-columns:1fr 1fr}.audit-filters{grid-template-columns:1fr 1fr}.audit-filters input{grid-column:1/-1}.audit-hero{align-items:flex-start;flex-direction:column}.audit-report-cta{align-self:flex-start}}
@media(max-width:620px){.audit-stats,.audit-filters,.audit-detail-grid,.audit-technical-details,.audit-report-includes>div{grid-template-columns:1fr}.audit-filters input{grid-column:auto}.audit-control-head{align-items:flex-start;flex-direction:column}.audit-hero{padding:20px}.audit-report-cta{width:100%}}

/* v1.40.13 – premium Vundet-fejring */
.win-celebration{top:14%;min-width:430px;max-width:720px;padding:30px 38px 24px;overflow:hidden;border:1px solid rgba(141,224,220,.35);background:linear-gradient(145deg,rgba(12,43,61,.98),rgba(17,75,91,.97));box-shadow:0 30px 90px rgba(4,28,40,.42);color:#fff}
.win-shine{position:absolute;inset:-50% auto -50% -35%;width:32%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);animation:winShine 1.15s ease-out .18s both}
.win-trophy{position:relative;font-size:54px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28));animation:trophyBounce .55s cubic-bezier(.2,.9,.3,1.25) both}.win-kicker{position:relative;color:#91e3dc!important;font-size:10px!important;letter-spacing:.21em}.win-celebration>strong{position:relative;color:#fff;font-size:31px;margin-top:7px}.win-message{position:relative;color:#d8eef0!important;font-size:16px!important;font-weight:700}.win-deal{position:relative;color:#aac7d0!important;margin-top:11px!important;font-size:13px!important}.win-metrics{position:relative;display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:9px;margin-top:17px}.win-metric{padding:11px 13px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.07)}.win-metric span,.win-metric strong{display:block}.win-metric span{margin:0!important;color:#9fc0c9!important;font-size:9px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.win-metric strong{margin-top:4px;color:#fff;font-size:16px}.win-footer{position:relative;margin-top:15px!important;color:#7fa3ad!important;font-size:9px!important;text-transform:uppercase;letter-spacing:.12em}.confetti-layer>i:nth-child(3n){border-radius:50%}.confetti-layer>i:nth-child(5n){height:var(--s,9px);transform:rotate(45deg)}
@keyframes winShine{from{left:-35%}to{left:130%}}@keyframes trophyBounce{0%{transform:scale(.5) rotate(-12deg);opacity:0}70%{transform:scale(1.12) rotate(5deg);opacity:1}100%{transform:scale(1) rotate(0)}}
@media(max-width:800px){.win-celebration{min-width:0;width:calc(100% - 28px);padding:25px 20px 21px}.win-celebration>strong{font-size:25px}.win-trophy{font-size:46px}.win-metrics{grid-template-columns:1fr}}
\n/* v1.40.18 – drag-and-drop catalog sorting */\n.sort-handle-head,.sort-handle-cell{width:42px;min-width:42px;text-align:center!important;padding-left:8px!important;padding-right:6px!important}.drag-handle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:30px;border-radius:8px;color:#6b7f8d;font-size:18px;font-weight:800;letter-spacing:-4px;cursor:grab;user-select:none;transition:background .15s,color .15s,transform .15s}.drag-handle:hover{background:#eaf3f6;color:#173b55;transform:scale(1.04)}.drag-handle:active{cursor:grabbing}.drag-handle.locked{cursor:default;letter-spacing:0;color:#a2adb5;background:#f3f6f7}.catalog-sort-row[draggable=true]{transition:background .12s,box-shadow .12s,opacity .12s}.catalog-sort-row.dragging{opacity:.48;background:#eef7f8}.catalog-sort-row.drag-over{box-shadow:inset 0 2px 0 #2f8fa0}.catalog-sort-row.sort-locked{background:#f8fafb}.catalog-category-label{display:inline-flex;padding:4px 8px;border-radius:7px;background:#f2f6f7;font-weight:700;color:#35566c}.catalog-sort-row td{vertical-align:middle}\n
/* v1.40.19 – information architecture + solution flow */
.opportunity-view-tabs{display:inline-flex;gap:4px;padding:4px;background:#e8eef2;border:1px solid #d8e2e7;border-radius:11px;margin-bottom:14px}.opportunity-view-tabs button{border:0;background:transparent;border-radius:8px;padding:8px 16px;font-weight:750;color:#60727d}.opportunity-view-tabs button.active{background:#fff;color:#19364a;box-shadow:0 2px 8px #17304612}.solution-hero{display:flex;justify-content:space-between;align-items:center;gap:22px;background:linear-gradient(135deg,#fff,#f2fafb);border-color:#cfe3e8;margin-bottom:16px}.solution-hero h2{font-size:22px;margin:4px 0 7px}.solution-hero p{max-width:850px;margin:0;color:var(--muted);line-height:1.55}.solution-hero-mark{min-width:92px;height:72px;border-radius:18px;background:linear-gradient(135deg,#16364a,#2d718d);color:#fff;display:grid;place-items:center;font-size:21px;font-weight:850;letter-spacing:.06em;box-shadow:0 12px 24px #17304622}.solution-picker{display:grid;grid-template-columns:1fr minmax(320px,560px) auto;gap:14px;align-items:end;margin-bottom:16px}.solution-picker strong,.solution-picker span{display:block}.solution-picker select{margin:0}.solution-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.solution-context h2{margin:7px 0 4px}.solution-context p{margin:0;color:var(--muted)}.solution-context-value{text-align:right}.solution-context-value small,.solution-context-value strong{display:block}.solution-context-value strong{font-size:22px;margin-top:4px}.solution-flow-track{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:0;overflow:auto;padding:7px 0}.solution-flow-step{position:relative;padding:12px 10px 12px 20px;min-width:145px;border-top:3px solid #d7e0e5;background:#f8fafb}.solution-flow-step:first-child{border-radius:10px 0 0 10px}.solution-flow-step:last-child{border-radius:0 10px 10px 0}.solution-flow-step.done{border-top-color:var(--green);background:#f0faf6}.solution-flow-step.active{border-top-color:var(--amber);background:#fff9ef}.solution-flow-dot{position:absolute;left:8px;top:13px;font-weight:900;color:#73848e}.solution-flow-step.done .solution-flow-dot{color:var(--green)}.solution-flow-step.active .solution-flow-dot{color:var(--amber)}.solution-flow-step strong,.solution-flow-step small,.solution-flow-step em{display:block;margin-left:10px}.solution-flow-step strong{font-size:11px}.solution-flow-step small{font-size:10px;color:var(--muted);margin-top:3px}.solution-flow-step em{font-size:10px;font-style:normal;font-weight:700;margin-top:7px;color:#49616f}.solution-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.solution-action{appearance:none;text-align:left;display:grid;grid-template-columns:42px 1fr;column-gap:10px;align-items:center;color:var(--text);cursor:pointer}.solution-action:hover{border-color:#9fc8d1;transform:translateY(-1px)}.solution-action>span{grid-row:1/3;width:38px;height:38px;border-radius:11px;background:#e8f4f6;color:#23798b;display:grid;place-items:center;font-size:18px}.solution-action strong,.solution-action small{display:block}.solution-action small{color:var(--muted);margin-top:3px}.solution-guidance{margin-top:16px}.solution-mini-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.solution-mini-flow span{padding:8px 11px;border-radius:9px;background:#eef5f7;font-weight:750;font-size:12px}.solution-mini-flow i{font-style:normal;color:#8b9aa2}.opportunity-solution-strip{border:1px solid #cfe3e8;background:linear-gradient(135deg,#f7fbfc,#fff);border-radius:14px;padding:13px 14px;margin:0 0 16px}.opportunity-solution-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.opportunity-solution-head strong{display:block;margin-top:2px}.opportunity-mini-flow{display:flex;align-items:center;gap:7px;overflow:auto;margin-top:11px;padding-bottom:2px}.opportunity-mini-flow span{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:10px;font-weight:750;color:#71818a}.opportunity-mini-flow i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-style:normal;background:#e6edf0;color:#73838c}.opportunity-mini-flow span.done{color:#26765b}.opportunity-mini-flow span.done i{background:#ddf3eb;color:#227659}.opportunity-mini-flow b{color:#a7b4bb;font-weight:500}.opportunity-flow-loading{color:var(--muted);font-size:11px;margin-top:10px}.solution-selector-grid{margin-top:0}
@media(max-width:1050px){.solution-flow-track{grid-template-columns:repeat(7,155px)}.solution-action-grid{grid-template-columns:repeat(2,1fr)}.solution-picker{grid-template-columns:1fr}.solution-picker .btn{width:100%}}
@media(max-width:700px){.solution-hero{align-items:flex-start}.solution-hero-mark{display:none}.solution-action-grid{grid-template-columns:1fr}.solution-context{align-items:flex-start;flex-direction:column}.solution-context-value{text-align:left}.opportunity-solution-head{align-items:flex-start;flex-direction:column}}

/* v1.40.20 – complete Solution workspace */
.solution-subnav{display:flex;gap:7px;align-items:center;overflow:auto;padding:5px;margin:0 0 14px;background:#edf3f5;border:1px solid #d9e4e8;border-radius:13px;position:sticky;top:0;z-index:8}.solution-subnav button{appearance:none;border:0;background:transparent;padding:9px 13px;border-radius:9px;color:#536873;font-weight:780;white-space:nowrap;cursor:pointer}.solution-subnav button:hover{background:#fff}.solution-subnav button.active{background:#fff;color:#17384c;box-shadow:0 2px 9px #17304614}.solution-page-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);gap:24px;align-items:end;background:linear-gradient(135deg,#fff,#f5fafb);border-color:#cfe2e7;margin-bottom:16px}.solution-page-intro h2{margin:4px 0 7px}.solution-page-intro p{margin:0;color:var(--muted);line-height:1.55}.solution-page-intro label{margin:0}.solution-context-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f6fafb;border:1px solid #d5e6ea;border-radius:12px;padding:11px 13px;margin-bottom:14px}.solution-context-banner strong,.solution-context-banner small{display:block}.solution-context-banner small{color:var(--muted);margin-top:3px}.solution-hub-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 16px}.solution-hub-links button{appearance:none;border:1px solid #d7e4e8;background:#fff;border-radius:14px;padding:15px;text-align:left;display:grid;grid-template-columns:38px 1fr;column-gap:10px;align-items:center;cursor:pointer;box-shadow:0 4px 14px #17304608}.solution-hub-links button:hover{border-color:#9fc8d1;transform:translateY(-1px)}.solution-hub-links button>span{grid-row:1/3;width:36px;height:36px;border-radius:10px;background:#e9f4f6;color:#23798b;display:grid;place-items:center;font-size:18px}.solution-hub-links strong,.solution-hub-links small{display:block}.solution-hub-links small{color:var(--muted);margin-top:3px}.infra-list.secondary{opacity:.86}.solution-context .row-actions{align-self:center}
@media(max-width:1050px){.solution-hub-links{grid-template-columns:repeat(2,1fr)}.solution-page-intro{grid-template-columns:1fr}.solution-subnav{position:static}}
@media(max-width:650px){.solution-hub-links{grid-template-columns:1fr}.solution-context-banner{align-items:flex-start;flex-direction:column}.solution-context-banner .btn{width:100%}.solution-subnav button span{display:none}.solution-subnav{justify-content:space-between}}

/* v1.40.21 – gældende HLD i opportunity-flow */
.quote-list-card.is-active-hld{box-shadow:0 0 0 2px rgba(14,116,144,.18),0 10px 24px rgba(15,23,42,.06);background:linear-gradient(180deg,rgba(236,254,255,.72),#fff)}
.hld-make-active{font-weight:700}

/* v1.40.23 – WIKI v2: complete seller guide */
.wiki-hero-v2{margin-bottom:14px}.wiki-hero-v2>div{max-width:980px}.wiki-hero-v2 h1{font-size:36px}.wiki-start-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 5px 18px rgba(20,48,61,.04)}.wiki-start-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.wiki-start-heading h2{margin:2px 0 0;font-size:22px}.wiki-journeys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.wiki-journeys article{border:1px solid #dbe6ea;border-radius:12px;overflow:hidden;background:#fbfdfe}.wiki-journey-main{border:0;background:transparent;width:100%;padding:15px;text-align:left;display:flex;gap:11px;cursor:pointer;color:var(--text)}.wiki-journey-main:hover{background:#f1f8fa}.wiki-journey-main i{font-style:normal;width:32px;height:32px;border-radius:9px;background:#e5f5f8;color:#137f98;display:grid;place-items:center;font-weight:800;font-size:17px;flex:0 0 auto}.wiki-journey-main span{display:grid;gap:5px}.wiki-journey-main strong{font-size:14px}.wiki-journey-main small{line-height:1.35;color:#617780}.wiki-journey-go{width:100%;border:0;border-top:1px solid #e4ecef;background:#fff;color:#177e96;padding:9px 12px;text-align:left;font-weight:700;cursor:pointer}.wiki-journey-go:hover{background:#edf7f9}.wiki-layout-v2{grid-template-columns:245px minmax(0,1fr)}.wiki-layout-v2 .wiki-toc button.active{background:#e7f4f7;color:#117c94;font-weight:800}.wiki-result-toolbar{display:flex;justify-content:space-between;align-items:end;min-height:45px;margin:0 2px 8px}.wiki-result-toolbar>div{display:grid;gap:2px}.wiki-result-toolbar strong{font-size:18px}.wiki-result-toolbar span{font-size:12px;color:#73848c}.wiki-guide-card{scroll-margin-top:18px}.wiki-guide-card .wiki-article-head p{margin:6px 0 0;color:#6b7f88;font-size:13px}.wiki-steps{list-style:none!important;padding-left:0!important;counter-reset:wstep;display:grid;gap:9px}.wiki-steps li{counter-increment:wstep;display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:start;margin:0!important;background:#f8fbfc;border:1px solid #e5ecef;border-radius:10px;padding:11px}.wiki-steps li:before{content:counter(wstep);grid-row:1/3;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#dff1f5;color:#167f96;font-weight:800}.wiki-steps li strong{font-size:14px}.wiki-steps li span{grid-column:2;color:#60747d;font-size:13px}.wiki-check{list-style:none!important;padding-left:0!important;display:grid;gap:7px}.wiki-check li{position:relative;padding:9px 11px 9px 38px!important;margin:0!important;background:#f7fbf9;border-radius:9px;border:1px solid #dcebe5}.wiki-check li:before{content:'✓';position:absolute;left:12px;top:8px;color:#2c8c6c;font-weight:900}.wiki-day-grid,.wiki-menu-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wiki-day-grid>div,.wiki-menu-map>div{border:1px solid #e2eaed;border-radius:10px;padding:12px;background:#fbfdfe}.wiki-day-grid strong,.wiki-menu-map strong{display:block;color:#1a5567}.wiki-day-grid p{margin:5px 0 0}.wiki-menu-map span{display:block;color:#617780;margin-top:4px;font-size:13px}.wiki-flow{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:12px;background:#f5fafb;border:1px solid #dfeaec;border-radius:10px}.wiki-flow span{padding:7px 9px;background:#fff;border:1px solid #d9e5e9;border-radius:8px;font-weight:700;font-size:12px}.wiki-flow b{color:#68a9b8}.wiki-example{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:12px 14px;border-radius:10px;background:#eef7fa;border:1px solid #d7e8ed;margin:12px 0}.wiki-example span{color:#526b75}.wiki-article-body code{background:#eef3f5;border-radius:5px;padding:1px 5px}
@media(max-width:1100px){.wiki-journeys{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.wiki-start-heading{align-items:flex-start;flex-direction:column}.wiki-start-heading .btn{width:100%}.wiki-journeys,.wiki-day-grid,.wiki-menu-map{grid-template-columns:1fr}.wiki-layout-v2{grid-template-columns:1fr}.wiki-result-toolbar{margin-top:4px}.wiki-hero-v2 h1{font-size:28px}}
/* v1.40.24 – ALSO subscriptions */
.also-admin{margin-top:18px}.also-preview-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.license-price{width:105px;padding:7px 9px}.file-button{cursor:pointer}.notice.info{background:#eef7fa;border:1px solid #cce8ee;padding:12px 14px;border-radius:10px;margin:12px 0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.metric{padding:14px;border:1px solid #e1e8ed;border-radius:12px;background:#fff}.metric small{display:block;color:#687d8c}.metric strong{font-size:22px}.toolbar{display:flex;gap:10px;margin:14px 0}.toolbar input{flex:1}@media(max-width:900px){.metric-grid{grid-template-columns:1fr 1fr}.toolbar{flex-direction:column}}
.metric-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0}.license-mini-list{display:grid;gap:6px;margin:8px 0 16px}.license-mini-list>div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #e5ecef;border-radius:9px;background:#fafcfd}.license-mini-list span{color:#6b7f8d}
/* v1.40.25 – ALSO Simple API connection test */
.notice.success{background:#effaf4;border:1px solid #bfe7cf;color:#1f6844;padding:12px 14px;border-radius:10px;margin:12px 0}
.notice.danger{background:#fff3f3;border:1px solid #efc3c3;color:#8c3030;padding:12px 14px;border-radius:10px;margin:12px 0}
.also-admin code{font-size:.92em;background:#f3f6f8;border-radius:5px;padding:2px 5px}

/* v1.40.26 – ALSO login diagnostics */
.also-diagnostics{display:grid;gap:8px;margin-top:12px}.also-diagnostic-row{display:flex;gap:10px;align-items:flex-start;padding:9px 10px;border:1px solid var(--border,#dbe2ea);border-radius:10px;background:rgba(255,255,255,.72)}.also-diagnostic-row small{display:block;margin-top:2px;color:var(--muted,#667085)}.also-diagnostic-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;font-weight:800;flex:0 0 22px}.also-diagnostic-icon.ok{background:#dcfce7;color:#166534}.also-diagnostic-icon.bad{background:#fee2e2;color:#991b1b}

/* v1.40.28 – Opportunities: tydeligt Pipeline/Liste-skift */
.opportunity-view-bar{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0 0 14px;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px rgba(16,38,54,.04)}
.opportunity-view-switch{display:inline-flex;gap:3px;padding:3px;background:#eef3f5;border:1px solid #dde6ea;border-radius:10px}
.opportunity-view-btn{border:0;background:transparent;color:#5e707a;border-radius:8px;padding:8px 13px;font-weight:750;line-height:1;cursor:pointer}
.opportunity-view-btn:hover{background:#ffffffb8;color:#284555}
.opportunity-view-btn.active{background:#fff;color:#167f99;box-shadow:0 1px 5px rgba(20,55,72,.12)}
@media(max-width:700px){.opportunity-view-bar{align-items:flex-start;flex-direction:column}.opportunity-view-switch{width:100%}.opportunity-view-btn{flex:1}.opportunity-view-bar>.muted{font-size:11px}}

/* v1.40.29 – Opportunities: fælles toolbar for Pipeline og Liste */
.opportunity-toolbar-shell{margin:0 0 14px;padding:0 12px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px rgba(16,38,54,.04)}
.opportunity-toolbar{margin:0;min-height:62px;align-items:center}
.opportunity-toolbar input#dealSearch{flex:0 1 320px;min-width:220px;max-width:420px}
.opportunity-toolbar-help{white-space:nowrap}
.opportunity-list-card{margin-top:0}
@media(max-width:900px){.opportunity-toolbar{flex-wrap:wrap;padding:10px 0}.opportunity-toolbar input#dealSearch{flex:1 1 240px;max-width:none}.opportunity-toolbar .spacer{display:none}.opportunity-toolbar-help{order:5;width:100%;white-space:normal}}

/* v1.50.0 – Customer Hub / customer-centric CRM */
.customer-directory-card{padding:0;overflow:hidden}.customer-directory-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 22px 10px}.customer-directory-head h2{margin:3px 0 5px;font-size:23px}.customer-directory-head p{margin:0;color:var(--muted);max-width:820px}.customer-eyebrow{font-size:10px;letter-spacing:.13em;font-weight:800;color:#6b8794}.customer-directory-toolbar{display:flex;align-items:center;gap:10px;padding:10px 22px 16px}.customer-directory-toolbar>input{flex:0 1 360px;min-width:220px}.customer-status-filter{display:flex;gap:3px;padding:3px;border-radius:10px;background:#edf3f5;border:1px solid #dce6ea}.customer-status-filter button{border:0;background:transparent;border-radius:7px;padding:7px 10px;font-weight:700;color:#60727c;cursor:pointer}.customer-status-filter button.active{background:#fff;color:#167e97;box-shadow:0 1px 5px rgba(20,55,72,.11)}.customer-directory-table table{margin:0}.customer-hub-row{cursor:pointer}.customer-hub-row:hover td{background:#f7fbfc}.customer-list-name{display:grid;gap:2px}.customer-list-name small{color:var(--muted)}.customer-card-link{color:inherit;text-decoration:none;border-radius:6px}.customer-card-link strong{color:#102b3b}.customer-card-link:hover strong,.customer-card-link:focus-visible strong{color:#167e97;text-decoration:underline}.customer-card-link:focus-visible{outline:2px solid #35a9b4;outline-offset:3px}.customer-open-link{text-decoration:none}.customer-hub-row:focus-visible{outline:2px solid #35a9b4;outline-offset:-2px}.customer-source-pill{background:#e6f5f7!important;color:#176d7e!important;border-color:#cde8ec!important}.customer-hub-row td small{color:var(--muted);font-size:11px}
.customer-hub-header{background:linear-gradient(180deg,#fff,#f7fafb);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 18px rgba(16,38,54,.05);margin-bottom:16px;overflow:hidden}.customer-hub-top{display:flex;align-items:center;gap:16px;padding:18px 20px 12px}.customer-hub-identity{display:flex;align-items:center;gap:13px;min-width:0;flex:1}.customer-company-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#173e54,#2f94aa);color:#fff;font-weight:850;font-size:17px;letter-spacing:.03em;flex:0 0 auto}.customer-title-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.customer-title-row h2{margin:0;font-size:23px;line-height:1.15}.customer-hub-identity p{margin:5px 0 0;color:var(--muted)}.customer-hub-actions{display:flex;gap:8px;flex-wrap:wrap}.customer-header-mini{display:flex;gap:22px;padding:0 20px 14px;margin-left:80px;color:#607580;font-size:12px;flex-wrap:wrap}.customer-header-mini b{color:#183647;font-size:13px}.customer-tabs{display:flex;gap:1px;overflow-x:auto;padding:0 12px;border-top:1px solid #e3ecef;background:#fbfdfe}.customer-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 11px 10px;color:#60737d;font-weight:750;white-space:nowrap;cursor:pointer}.customer-tabs button:hover{color:#285465;background:#f2f8fa}.customer-tabs button.active{color:#147c94;border-bottom-color:#2fa0b5;background:#fff}.customer-tabs button span{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#eaf1f4;font-size:10px;margin-left:3px}.customer-tabs button.active span{background:#dff2f6;color:#167b92}.customer-tab-content{display:grid;gap:14px}.customer-subcard{margin:0}.customer-subcard h3{margin:0}.customer-subcard .card-header span.muted{display:block;margin-top:3px}.customer-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.customer-metric{border:1px solid #dce7eb;background:#fff;border-radius:13px;padding:14px 15px;box-shadow:0 3px 12px rgba(17,43,57,.035)}.customer-metric small,.customer-metric span{display:block}.customer-metric small{color:#6f818a;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.customer-metric strong{display:block;margin:5px 0 2px;font-size:21px;color:#17394a}.customer-metric span{color:var(--muted);font-size:11px}.customer-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.customer-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin:0}.customer-facts>div{display:grid;grid-template-columns:105px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid #edf1f3}.customer-facts dt{color:#6b7f89;font-size:12px}.customer-facts dd{margin:0;font-weight:650;color:#203d4b}.customer-next-list{display:grid}.customer-next-list>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:2px 10px;padding:9px 0;border-bottom:1px solid #edf1f3}.customer-next-list .pill{grid-row:1/3;align-self:start;justify-self:start}.customer-next-list small{color:var(--muted)}.customer-journey{grid-column:1/-1}.customer-journey-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.customer-journey-grid button{border:1px solid #dce8eb;border-radius:12px;background:#fbfdfe;padding:13px;text-align:left;display:grid;grid-template-columns:30px 1fr;column-gap:9px;cursor:pointer;color:#1c3c4c}.customer-journey-grid button:hover{border-color:#9bc8d2;background:#f2fafb}.customer-journey-grid i{grid-row:1/3;width:29px;height:29px;border-radius:9px;background:#e2f2f5;display:grid;place-items:center;color:#187d94;font-style:normal}.customer-journey-grid strong,.customer-journey-grid span{display:block}.customer-journey-grid span{color:var(--muted);font-size:11px;margin-top:2px}.customer-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-contact-grid article{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:13px;border:1px solid #e1e9ec;border-radius:12px;background:#fbfdfe}.customer-contact-grid article>div:nth-child(2){display:grid;gap:2px}.customer-contact-grid span,.customer-contact-grid small{color:var(--muted)}.customer-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#dff1f5;color:#176f83;font-weight:800}.customer-empty{padding:28px 18px;text-align:center;border:1px dashed #ccdce2;border-radius:12px;background:#fafcfd}.customer-empty strong{font-size:15px}.customer-empty p{margin:6px auto 0;max-width:600px;color:var(--muted)}.customer-simple-list{display:grid}.customer-simple-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 2px;border-bottom:1px solid #e8eef0}.customer-simple-list>div>div{display:grid;gap:2px}.customer-simple-list small{color:var(--muted)}.customer-service-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.customer-service-layout .full{grid-column:1/-1}
@media(max-width:1250px){.customer-metrics{grid-template-columns:repeat(3,1fr)}.customer-journey-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.customer-directory-head,.customer-hub-top{align-items:flex-start;flex-direction:column}.customer-directory-toolbar{flex-wrap:wrap}.customer-directory-toolbar>input{flex:1 1 280px}.customer-status-filter{overflow-x:auto;max-width:100%}.customer-header-mini{margin-left:0}.customer-hub-actions{width:100%}.customer-hub-actions .btn{flex:1}.customer-overview-grid,.customer-service-layout{grid-template-columns:1fr}.customer-service-layout .full{grid-column:auto}.customer-contact-grid{grid-template-columns:1fr}.customer-journey{grid-column:auto}.customer-facts{grid-template-columns:1fr}}
@media(max-width:620px){.customer-metrics{grid-template-columns:1fr 1fr}.customer-journey-grid{grid-template-columns:1fr 1fr}.customer-directory-toolbar{padding:10px 14px 14px}.customer-directory-head{padding:17px 14px 8px}.customer-tabs{padding:0 6px}.customer-hub-top{padding:15px}.customer-header-mini{padding:0 15px 12px;gap:11px}.customer-hub-top>#customerBack{order:-1}.customer-title-row h2{font-size:20px}}

/* v1.50.0 – Customer Hub navigation refinement: four primary customer areas */
.customer-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 14px 12px;border-top:1px solid #e3ecef;background:#f5f9fa;overflow:visible}
.customer-tabs button{min-width:0;border:1px solid transparent;border-radius:11px;padding:11px 13px;background:transparent;color:#60737d;font-weight:750;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;text-align:left;cursor:pointer}
.customer-tabs button i{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#e7eff2;color:#53717f;font-style:normal;font-weight:850}
.customer-tabs button b{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customer-tabs button>span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#e4ecef;color:#5b737f;font-size:10px;margin-left:0}
.customer-tabs button:hover{color:#285465;background:#eef6f8;border-color:#d8e7eb}
.customer-tabs button.active{color:#126f86;background:#fff;border-color:#c8e1e7;box-shadow:0 3px 10px rgba(20,55,72,.08)}
.customer-tabs button.active i{background:#dff2f6;color:#167b92}
.customer-tabs button.active>span{background:#dff2f6;color:#167b92}
.customer-section-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;margin:0 0 12px;border:1px solid #dce7eb;border-radius:11px;background:#edf3f5;max-width:100%;overflow-x:auto}
.customer-section-tabs button{border:0;border-radius:8px;background:transparent;padding:8px 11px;font-weight:750;color:#60737d;white-space:nowrap;cursor:pointer}
.customer-section-tabs button:hover{background:#f7fbfc;color:#285465}.customer-section-tabs button.active{background:#fff;color:#147c94;box-shadow:0 1px 5px rgba(20,55,72,.11)}
.customer-section-tabs button span{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dfe8eb;font-size:10px;margin-left:4px}.customer-section-tabs button.active span{background:#dff2f6;color:#167b92}
.customer-section-content{display:grid;gap:14px}.customer-directory-toolbar{position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid #edf1f3}.customer-directory-table thead th{position:sticky;top:61px;z-index:2;background:#f7f9fa}
@media(max-width:900px){.customer-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-directory-table thead th{position:static}}
@media(max-width:620px){.customer-tabs{grid-template-columns:1fr 1fr;padding:8px}.customer-tabs button{grid-template-columns:24px minmax(0,1fr) auto;padding:9px 8px;gap:6px}.customer-tabs button i{width:24px;height:24px}.customer-tabs button b{font-size:12px}.customer-section-tabs{display:flex;width:100%;box-sizing:border-box}}

/* v1.50.1 – ren og stabil kundeværktøjslinje */
.customer-directory-toolbar{position:static!important;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px 16px;background:#fff;border-bottom:1px solid #e7eef1}
.customer-toolbar-main{display:flex;align-items:center;gap:12px;min-width:0;flex:1}
.customer-toolbar-meta{display:flex;align-items:center;gap:14px;white-space:nowrap;color:#435d69}
.customer-search-wrap{display:flex;align-items:center;gap:8px;min-width:260px;max-width:520px;flex:1;border:1px solid #ccdbe1;border-radius:10px;background:#fff;padding:0 11px;box-shadow:0 1px 2px rgba(18,43,55,.02)}
.customer-search-wrap>span{color:#80939c;font-size:16px;line-height:1}.customer-search-wrap>input{border:0!important;box-shadow:none!important;background:transparent!important;padding:10px 0!important;min-width:0;width:100%;outline:0}
.customer-status-filter{flex:0 0 auto}.customer-status-filter button{min-height:36px;padding:7px 13px}.customer-status-filter button:focus{outline:none}.customer-status-filter button:focus-visible{box-shadow:0 0 0 2px rgba(43,157,183,.22)}
.customer-directory-table thead th{position:static!important}.customer-list-name small{display:block;margin-top:2px}.customer-list-name small:first-letter{text-transform:none}
@media(max-width:1000px){.customer-directory-toolbar{align-items:stretch;flex-direction:column}.customer-toolbar-main{flex-wrap:wrap}.customer-toolbar-meta{justify-content:flex-end}.customer-search-wrap{max-width:none;flex:1 1 320px}}
@media(max-width:620px){.customer-toolbar-main{align-items:stretch;flex-direction:column}.customer-status-filter{overflow-x:auto}.customer-search-wrap{min-width:0;width:100%}.customer-toolbar-meta{justify-content:space-between;white-space:normal}}

/* v1.50.3 – permanent customer duplicate control */
.dedupe-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.dedupe-hero h2{margin:4px 0 6px}.dedupe-hero p{max-width:980px;margin:0;color:var(--muted,#627482);line-height:1.55}.dedupe-kpis{margin-top:14px}.dedupe-safe{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:4px solid #2d9f79}.dedupe-safe h3{margin:0 0 4px}.dedupe-safe p{margin:0;color:var(--muted,#627482)}.dedupe-list{display:grid;gap:12px}.dedupe-pair{border:1px solid #dfe7ec;border-radius:14px;padding:14px;background:#fff}.dedupe-pair-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.dedupe-pair-head .muted{margin-left:auto}.dedupe-compare{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);gap:12px;align-items:stretch}.dedupe-customer{padding:14px;border-radius:12px;background:#f6f9fa;border:1px solid #e3eaee}.dedupe-customer.master{background:#f1fbf7;border-color:#cbeadf}.dedupe-customer.duplicate{background:#fff8f1;border-color:#f0dfcc}.dedupe-customer small{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;color:#70828e}.dedupe-customer h3{margin:4px 0 2px}.dedupe-customer p{margin:0 0 8px;color:#61727d}.dedupe-customer span{font-size:12px;color:#627482}.dedupe-arrow{display:grid;place-items:center;font-size:22px;color:#8ca0aa}.dedupe-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}@media(max-width:800px){.dedupe-hero,.dedupe-safe{flex-direction:column}.dedupe-compare{grid-template-columns:1fr}.dedupe-arrow{transform:rotate(90deg);height:24px}.dedupe-actions{justify-content:flex-start;flex-wrap:wrap}}

/* v1.50.4 – ALSO LIVE API diagnostics */
.also-live-request{margin-top:12px;padding:10px 12px;border:1px solid var(--border,#d9e1e8);border-radius:10px;background:#f7fafc}.also-live-request strong{display:block;margin-bottom:4px}.also-live-request small{display:block;line-height:1.45;word-break:break-word}

/* v1.50.7 – ALSO WCF fault diagnostics */
.also-fault{margin-top:12px}.also-fault details{margin-top:8px}.also-fault summary{cursor:pointer;font-weight:700}.also-fault pre{white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto;background:#0e1f2d;color:#eef6fb;border-radius:10px;padding:12px;font-size:12px;line-height:1.45}

/* v1.50.8 – consistent sortable list headers */
.crm-sortable th.sortable{transition:background .15s ease,color .15s ease}.crm-sortable th.sortable:hover,.crm-sortable th.sortable:focus{background:#eef5f7;color:#126f88;outline:none}.crm-sortable th.sortable.sorted{color:#126f88}.crm-sortable th[data-no-sort="1"]{cursor:default}.crm-sortable th[data-no-sort="1"]:after{content:""}


/* v1.50.9 – Admin IP access */
.admin-ip-global-banner{position:fixed;z-index:1200;left:260px;right:0;top:0;background:#991b1b;color:#fff;padding:9px 18px;text-align:center;font-size:13px;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.admin-ip-global-banner:not(.hidden)+.topbar{top:38px}
.admin-ip-global-banner:not(.hidden)~.content{padding-top:38px}
.admin-ip-card .admin-ip-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.admin-ip-status-grid>div{border:1px solid var(--border,#dbe3ea);border-radius:12px;padding:12px;background:var(--panel-soft,#f8fafc);display:flex;flex-direction:column;gap:3px}
.admin-ip-status-grid span,.admin-ip-status-grid small{color:var(--muted,#64748b);font-size:12px}.admin-ip-status-grid strong{font-size:15px}.ok-text{color:#15803d!important}.warn-text{color:#b45309!important}
.admin-ip-toggle{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border,#dbe3ea);border-radius:12px;padding:13px 14px;margin:14px 0;background:#fff}.admin-ip-toggle input{width:auto;margin-top:3px}.admin-ip-toggle span{display:flex;flex-direction:column;gap:2px}.admin-ip-toggle small{color:var(--muted,#64748b)}
.admin-ip-bypass-warning{display:flex;flex-direction:column;gap:3px;background:#991b1b;color:#fff;border-radius:12px;padding:12px 14px;margin:12px 0}.admin-ip-bypass-warning span{font-size:12px;opacity:.92}
.admin-ip-emergency{margin-top:14px;border-top:1px solid var(--border,#dbe3ea);padding-top:12px}.admin-ip-emergency summary{cursor:pointer;font-weight:700}.admin-ip-emergency code{background:#eef2f7;padding:2px 5px;border-radius:5px}
@media(max-width:900px){.admin-ip-global-banner{left:0}.admin-ip-status-grid{grid-template-columns:1fr!important}}
/* v1.51.1 – admin-only customer succession / acquisition workflow */
.succession-card{border-top:3px solid #2d8faf}.succession-card .notice{margin:10px 0 14px}.succession-preview .dedupe-compare{margin-bottom:14px}.succession-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;margin:14px 0}.succession-options label{display:flex;align-items:flex-start;gap:8px;font-weight:650}.succession-options input{width:auto;margin-top:2px}.customer-succession-banner{display:flex;gap:12px;align-items:center;margin:0 16px 10px;padding:10px 13px;border-radius:10px;font-size:12px}.customer-succession-banner strong{white-space:nowrap}.customer-succession-banner.outgoing{background:#fff7e9;border:1px solid #efd8a9}.customer-succession-banner.incoming{background:#eef9f5;border:1px solid #cbe8dc}.link-button{border:0;background:none;padding:0;color:#177c9f;text-decoration:underline;cursor:pointer;font:inherit;font-weight:750}@media(max-width:760px){.succession-options{grid-template-columns:1fr}.customer-succession-banner{align-items:flex-start;flex-direction:column;gap:4px}}

/* v1.51.3 – Admin navigation collapse fix */
/* v1.51.4 – Admin navigation typography aligned with the rest of Skallen */
.admin-nav-heading{padding-top:20px}.admin-nav-group{display:grid;gap:2px}.admin-nav-group-toggle{border:0;background:transparent;color:#c7d3da;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;text-align:left;width:100%;font-size:14px;line-height:1.25;font-weight:600;letter-spacing:0}.admin-nav-group-toggle:hover,.admin-nav-group.open>.admin-nav-group-toggle{background:#ffffff0d;color:#fff}.admin-nav-group-toggle .ico{width:20px;text-align:center;font-size:15px}.admin-nav-group-toggle span:nth-child(2){flex:1}.admin-nav-group-toggle b{font-size:16px;font-weight:400;transition:transform .15s;color:#7892a2}.admin-nav-group.open>.admin-nav-group-toggle b{transform:rotate(90deg);color:#b9ccd6}.admin-nav-children{display:grid;gap:1px;padding:0 0 4px 15px}.admin-nav-children[hidden]{display:none!important}.nav-sub-item{padding:8px 10px;font-size:13px}.nav-sub-item .ico{font-size:13px;width:19px}.admin-overview-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:16px;background:linear-gradient(135deg,#fff,#f3f9fb)}.admin-overview-hero h2{font-size:22px;margin:4px 0 7px}.admin-overview-hero p{margin:0;color:var(--muted);max-width:780px;line-height:1.5}.admin-overview-hero-mark{min-width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,var(--nav2),var(--accent2));color:#fff;display:grid;place-items:center;font-size:30px;font-weight:800;box-shadow:0 10px 25px #17304622}.admin-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-overview-card{display:flex;flex-direction:column;min-height:270px}.admin-overview-card-head{display:flex;gap:13px}.admin-overview-card-head>span{width:42px;height:42px;border-radius:12px;background:#e8f4f6;color:#267e91;display:grid;place-items:center;font-size:19px;flex:none}.admin-overview-card-head small{font-size:9px;letter-spacing:1.1px;color:#78909d;font-weight:800}.admin-overview-card-head h2{font-size:16px;margin:3px 0 4px}.admin-overview-card-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.admin-overview-statuses{display:grid;gap:7px;margin:17px 0;flex:1}.admin-overview-status{display:grid;grid-template-columns:8px 1fr;column-gap:8px;align-items:center;padding:8px 10px;border-radius:9px;background:#f7f9fa}.admin-overview-status i{width:7px;height:7px;border-radius:50%;grid-row:1/3}.admin-overview-status strong{font-size:12px}.admin-overview-status small{grid-column:2;color:var(--muted);font-size:10px;margin-top:1px}.admin-overview-status.ok i{background:#2e9b78}.admin-overview-status.warn i{background:#d59b42}.admin-overview-status.neutral i{background:#8fa1ac}.admin-overview-actions{display:flex;gap:7px;flex-wrap:wrap}.admin-overview-actions .btn{padding:7px 10px;font-size:12px}.admin-overview-note{margin-top:16px;display:flex;align-items:center;gap:14px}.admin-overview-note strong{white-space:nowrap}.admin-overview-note span{color:var(--muted);flex:1;font-size:12px}@media(max-width:1050px){.admin-overview-grid{grid-template-columns:1fr}.admin-overview-note{align-items:flex-start;flex-direction:column}.admin-overview-note strong{white-space:normal}}@media(max-width:760px){.admin-overview-hero-mark{display:none}.admin-overview-card{min-height:0}}

/* v1.51.5 – final Admin sidebar typography correction: same visual rhythm as standard navigation */
.sidebar .admin-nav-group{gap:0}
.sidebar .admin-nav-group-toggle{gap:8px;padding:7px 8px;font-size:13px;line-height:1.15;font-weight:500;letter-spacing:0;min-height:34px}
.sidebar .admin-nav-group-toggle .ico{width:18px;font-size:14px;flex:0 0 18px}
.sidebar .admin-nav-group-toggle span:nth-child(2){flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar .admin-nav-group-toggle b{width:10px;flex:0 0 10px;font-size:14px;font-weight:400;text-align:center}
.sidebar .admin-nav-children{padding-left:12px;padding-bottom:3px}
.sidebar .nav-sub-item{padding:7px 8px;font-size:13px}
.sidebar .nav-sub-item .ico{width:18px;font-size:13px}

/* v1.51.6 – sidebar overflow correction: never scroll sideways */
.sidebar{overflow:hidden}
.sidebar nav{
  flex:1 1 auto;
  min-height:0;
  min-width:0;
  width:100%;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:3px;
  scrollbar-width:thin;
  scrollbar-color:#5f7482 transparent;
  overscroll-behavior:contain;
}
.sidebar nav::-webkit-scrollbar{width:6px;height:0}
.sidebar nav::-webkit-scrollbar-track{background:transparent}
.sidebar nav::-webkit-scrollbar-thumb{background:#5f7482;border-radius:999px}
.sidebar nav::-webkit-scrollbar-thumb:hover{background:#7892a2}
.sidebar nav>*{min-width:0;max-width:100%}
.sidebar .nav-item,.sidebar .admin-nav-group-toggle,.sidebar .admin-nav-children{max-width:100%;min-width:0}
.sidebar-bottom{flex:0 0 auto;min-width:0;overflow:hidden}

/* v1.51.7 – ITC Shell Database integration */
.itcshell-card{margin-top:18px;overflow:hidden}
.itcshell-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}
.itcshell-head h2{margin:4px 0 6px}.itcshell-head p{margin:0;max-width:850px;color:var(--muted)}
.integration-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 18px}
.integration-roadmap>div{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.integration-roadmap>div>strong{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:var(--line);font-size:12px}
.integration-roadmap>div.done>strong{background:var(--teal);color:#fff}.integration-roadmap span{font-weight:700}.integration-roadmap small{display:block;font-weight:400;color:var(--muted);margin-top:2px}
.itcshell-form{margin:8px 0 4px}.itcshell-actions{margin:10px 0 12px;flex-wrap:wrap}
.itcshell-security-note{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--soft);font-size:13px;line-height:1.45;margin:8px 0 14px}
.itcshell-discovery{border-top:1px solid var(--line);padding-top:14px;margin-top:12px}
.itcshell-domain-grid,.itcshell-match-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:10px}
.itcshell-domain-grid>div,.itcshell-match-stats>div{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.itcshell-domain-grid strong,.itcshell-match-stats strong{display:block;font-size:20px}.itcshell-domain-grid span,.itcshell-match-stats span{font-size:12px;color:var(--muted)}
.itcshell-match-stats .attention{border-color:#e3b24a;background:#fff8e8}
.itcshell-auto{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:10px}
.itcshell-auto label{font-weight:700}.itcshell-auto small{grid-column:1/-1;color:var(--muted)}
@media(max-width:850px){.integration-roadmap{grid-template-columns:1fr 1fr}.itcshell-head{display:block}.itcshell-head>.pill{margin-top:10px}.itcshell-auto{grid-template-columns:1fr}.itcshell-auto small{grid-column:auto}}
@media(max-width:520px){.integration-roadmap{grid-template-columns:1fr}}
/* v2.0.2 – Azure drift-table safety analysis */
.itcshell-table-analysis{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}
.itcshell-table-analysis table{font-size:12px}
.itcshell-table-analysis td{vertical-align:top}
.itcshell-table-analysis details{margin-top:5px;max-width:420px}
.itcshell-table-analysis summary{cursor:pointer;color:var(--accent);font-weight:700}
.itcshell-table-analysis pre{max-height:220px;overflow:auto;white-space:pre-wrap;font-size:11px;margin-top:6px}
.itcshell-table-analysis .warning{border-color:#e3b24a;background:#fff8e8}
.itcshell-mapping-editor{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.itcshell-mapping-editor .three-col{grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px;margin-top:8px}
.itcshell-mapping-editor label{font-size:11px;font-weight:700;color:var(--muted)}
.itcshell-mapping-editor select{display:block;width:100%;margin-top:3px}
@media(max-width:900px){.itcshell-mapping-editor .three-col{grid-template-columns:1fr}}

/* v2.0.3 – customer infrastructure VM drill-down */
.customer-infra-details{margin:14px 0 0;border-top:1px solid var(--line,#dfe7ec);padding-top:12px}
.customer-infra-details>summary{cursor:pointer;font-weight:700;color:var(--accent,#0b7f96);list-style:none;display:inline-flex;align-items:center;gap:7px}
.customer-infra-details>summary::-webkit-details-marker{display:none}
.customer-infra-details>summary:before{content:'▸';font-size:12px;transition:transform .15s ease}
.customer-infra-details[open]>summary:before{transform:rotate(90deg)}
.customer-infra-details .table-wrap{margin-top:10px;max-height:420px;overflow:auto}

/* v2.0.7 – bulk VMM cloud mapping */
.modal-itc-vmm-bulk{width:min(1280px,97vw);max-height:94vh}.itc-vmm-bulk-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-right:42px;margin-bottom:16px}.itc-vmm-bulk-head h2{margin:3px 0 6px}.itc-vmm-bulk-head p{margin:0;color:var(--muted)}.itc-vmm-bulk-table{max-height:62vh}.itc-vmm-bulk-table td:nth-child(1){white-space:normal;min-width:260px}.itc-vmm-bulk-table td:nth-child(3){min-width:360px}.permission-check.compact{display:inline-flex;padding:6px 9px;white-space:nowrap}.permission-check.compact input{min-height:0;width:auto;margin:0}.modal-itc-vmm-bulk .sticky-actions{display:flex;align-items:center;gap:8px;bottom:-28px}
@media(max-width:760px){.modal-itc-vmm-bulk{width:100vw!important;max-height:100dvh!important}.itc-vmm-bulk-head{display:block;padding-right:36px}.itc-vmm-bulk-table td:nth-child(3){min-width:260px}}

/* v2.1.0 – fakturering: faste kolonner, kladdevisning og målingshistorik */
.billing-source-table-wrap{overflow-x:auto}
.billing-source-table{table-layout:fixed;min-width:1260px}
.billing-source-table .billing-w-service{width:26%}.billing-source-table .billing-w-qty{width:9%}.billing-source-table .billing-w-measure{width:11%}.billing-source-table .billing-w-money{width:10%}.billing-source-table .billing-w-discount{width:7%}.billing-source-table .billing-w-total{width:11%}.billing-source-table .billing-w-group{width:11%}.billing-source-table .billing-w-economic{width:10%}.billing-source-table .billing-w-actions{width:105px}
.billing-source-table th,.billing-source-table td{vertical-align:middle}.billing-source-table .num-cell,.billing-draft-lines .num-cell{text-align:right;font-variant-numeric:tabular-nums}.billing-source-table th:nth-child(2),.billing-source-table th:nth-child(4),.billing-source-table th:nth-child(5),.billing-source-table th:nth-child(6){text-align:right}.billing-col-service{white-space:normal;min-width:260px}.billing-col-measure,.billing-col-group,.billing-col-economic{white-space:normal}.billing-col-actions{text-align:right}.billing-actions{display:flex;gap:6px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.modal-card:has(.billing-history-modal),.modal-card:has(.billing-draft-preview){width:min(1080px,96vw)}
.modal-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.modal-title-row h2{margin:4px 0 3px}.modal-title-row p{margin:0;color:var(--muted)}
.billing-history-ranges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.billing-history-chart-wrap{position:relative;border:1px solid var(--border);border-radius:12px;background:#fbfcfd;padding:8px;overflow:hidden}.billing-history-chart{width:100%;height:auto;display:block}.chart-axis{stroke:#cad6dc;stroke-width:1}.chart-line{stroke:var(--accent2);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.billing-history-point{fill:#fff;stroke:var(--accent2);stroke-width:2;cursor:crosshair}.billing-history-point:hover{fill:var(--accent2)}.chart-label{font-size:11px;fill:#6c7b84}.billing-chart-tooltip{position:absolute;z-index:2;pointer-events:none;background:#102536;color:#fff;border-radius:8px;padding:7px 9px;box-shadow:0 7px 20px #0003;min-width:125px}.billing-chart-tooltip strong,.billing-chart-tooltip span{display:block}.billing-chart-tooltip span{font-size:11px;color:#c7d6df;margin-top:2px}.billing-history-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.billing-history-summary span{border:1px solid var(--border);background:#f7f9fa;border-radius:10px;padding:11px}.billing-history-summary small,.billing-history-summary strong{display:block}.billing-history-summary small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.4px}.billing-history-summary strong{margin-top:4px;font-size:15px}
.billing-draft-lines{min-width:760px}.billing-draft-lines tfoot td{background:#f7f9fa;border-top:2px solid var(--border)}
@media(max-width:800px){.billing-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-title-row{flex-direction:column}.billing-history-ranges{justify-content:flex-start}}


/* v2.20.9 – compact customer billing/license tables + clear estimate spacing */
.billing-hero,.billing-cockpit-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start}
.billing-hero-total{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:5px;min-width:220px;padding:2px 0 0}
.billing-hero-total small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;line-height:1.2}
.billing-hero-total strong{display:block;font-size:22px;line-height:1.2;color:#17394a;font-variant-numeric:tabular-nums;white-space:nowrap}
.billing-hero-total span{display:block;color:var(--muted);font-size:11px;line-height:1.2}
@media (min-width:1201px){
 .billing-source-table-wrap,.customer-license-table-wrap{overflow-x:visible}
 .billing-source-table{width:100%;min-width:0!important;table-layout:fixed}
 .billing-source-table th,.billing-source-table td{padding:8px 7px;white-space:normal;vertical-align:middle}
 .billing-source-table .billing-w-service{width:28%}.billing-source-table .billing-w-qty{width:7%}.billing-source-table .billing-w-measure{width:9%}.billing-source-table .billing-w-money{width:9%}.billing-source-table .billing-w-discount{width:6%}.billing-source-table .billing-w-total{width:9%}.billing-source-table .billing-w-group{width:10%}.billing-source-table .billing-w-economic{width:14%}.billing-source-table .billing-w-actions{width:8%}
 .billing-source-table .num-cell,.billing-source-table .billing-col-actions{white-space:nowrap}
 .billing-source-table .billing-col-economic{overflow-wrap:anywhere;word-break:break-word;font-size:11px}
 .billing-source-table .billing-col-service{min-width:0;overflow-wrap:anywhere}
 .customer-license-table{width:100%;min-width:0!important;table-layout:fixed}
 .customer-license-table th,.customer-license-table td{padding:8px 7px;white-space:normal;vertical-align:middle}
 .customer-license-table th:nth-child(1){width:27%}.customer-license-table th:nth-child(2){width:8%}.customer-license-table th:nth-child(3){width:7%}.customer-license-table th:nth-child(4){width:15%}.customer-license-table th:nth-child(5),.customer-license-table th:nth-child(6),.customer-license-table th:nth-child(7){width:8%}.customer-license-table th:nth-child(8){width:6%}.customer-license-table th:nth-child(9){width:9%}.customer-license-table th:nth-child(10){width:4%}
 .customer-license-table td:nth-child(n+5):nth-child(-n+9){font-variant-numeric:tabular-nums}
 .customer-license-table td:first-child{overflow-wrap:anywhere}
}
@media (max-width:1200px){
 .billing-hero,.billing-cockpit-hero{grid-template-columns:1fr}
 .billing-hero-total{align-items:flex-start;min-width:0}
 .billing-source-table-wrap,.customer-license-table-wrap{overflow-x:auto}
 .billing-source-table{min-width:1080px}
 .customer-license-table{min-width:1080px}
}

/* v2.20.13 – compact license quantities and clickable ticket details */
.license-quantity-inline{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap}
.license-quantity-inline small{display:inline;font-size:.88em;color:var(--muted,#60717e)}
.customer-ticket-row{cursor:pointer}
.customer-ticket-row:hover{background:rgba(28,145,175,.055)}
.customer-ticket-row:focus{outline:2px solid rgba(24,145,180,.35);outline-offset:-2px}
.ticket-detail-modal{max-width:min(980px,92vw)}
.ticket-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.ticket-detail-summary>span,.ticket-source-card{border:1px solid var(--line,#dfe7eb);border-radius:12px;padding:12px;background:var(--surface,#fff)}
.ticket-source-card{margin:12px 0}
.ticket-source-card h4{margin:0 0 8px}
.ticket-description{white-space:normal;line-height:1.55;padding:12px;border-radius:10px;background:rgba(24,145,180,.055);margin-bottom:10px}
.ticket-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:0}
.ticket-detail-grid>div{min-width:0;border-top:1px solid var(--line,#e5ecef);padding-top:7px}
.ticket-detail-grid dt{font-size:.78rem;font-weight:700;color:var(--muted,#667985);word-break:break-word}
.ticket-detail-grid dd{margin:3px 0 0;word-break:break-word;white-space:pre-wrap}
@media(max-width:760px){.ticket-detail-summary,.ticket-detail-grid{grid-template-columns:1fr}}

/* v2.20.17 – visible, persistent billable state on customer billing lines */
.billing-source-table .billing-w-billable{width:78px}
.billing-col-billable{text-align:center;white-space:nowrap}
.billing-billable-pill{min-width:42px;justify-content:center}
.billing-source-table tr.billing-not-billable td{background:#fafbfc;color:#71808a}
.billing-source-table tr.billing-not-billable .billing-col-service .link-button{color:#607681}
@media (min-width:1201px){
 .billing-source-table .billing-w-service{width:25%}.billing-source-table .billing-w-qty{width:7%}.billing-source-table .billing-w-measure{width:9%}.billing-source-table .billing-w-money{width:8%}.billing-source-table .billing-w-discount{width:6%}.billing-source-table .billing-w-total{width:9%}.billing-source-table .billing-w-billable{width:6%}.billing-source-table .billing-w-group{width:9%}.billing-source-table .billing-w-economic{width:13%}.billing-source-table .billing-w-actions{width:8%}
}
