/* DomusPilot premium product layer. Keep reusable visual language here. */

.ui-icon{display:block;flex:0 0 auto}

.domuspilot-brand{gap:12px;text-decoration:none;color:#fff}
.domuspilot-mark{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border-radius:15px;color:#7ce7c8;background:linear-gradient(145deg,rgba(124,231,200,.18),rgba(59,130,246,.13));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 12px 28px rgba(0,0,0,.18)}
.domuspilot-mark svg{width:30px;height:30px}
.domuspilot-brand-copy{min-width:0;display:grid;gap:2px}
.domuspilot-brand-copy strong{font-size:20px;line-height:1;letter-spacing:-.045em;color:#fff}
.domuspilot-brand-copy small{font-size:9px;line-height:1.2;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#93a4ba}
.dt-powered-by{display:grid;gap:5px;line-height:1.45}
.dt-powered-by strong{color:#dbe6f2;font-size:10px;font-weight:650;letter-spacing:0;text-transform:none}
.dt-powered-by span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#6f829a}

.kh-property{min-height:46px;display:flex;align-items:center;gap:10px;padding:6px 12px 6px 8px;border:1px solid var(--dt-color-border);border-radius:14px;background:#fff;color:var(--dt-color-ink);box-shadow:var(--dt-shadow-xs);transition:box-shadow var(--dt-transition-fast),border-color var(--dt-transition-fast),transform var(--dt-transition-fast)}
.kh-property:hover{border-color:#cbd7e4;box-shadow:var(--dt-shadow-sm);transform:translateY(-1px)}
.kh-property-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--dt-color-primary-soft);color:var(--dt-color-primary-strong);font-size:15px}
.kh-property small,.kh-property strong{display:block;white-space:nowrap}.kh-property small{font-size:9px;color:var(--dt-color-muted);text-transform:uppercase;letter-spacing:.08em}.kh-property strong{margin-top:2px;max-width:160px;overflow:hidden;text-overflow:ellipsis;font-size:11px}

.logout-button{min-height:36px;padding:0 10px;border-radius:9px!important;transition:background var(--dt-transition-fast),color var(--dt-transition-fast)}
.logout-button:hover{background:#f1f5f9;color:var(--dt-color-ink)}

.dp-page-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--dt-color-primary-strong);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.dp-page-kicker::before{content:"";width:18px;height:2px;border-radius:999px;background:var(--dt-color-primary)}
.dp-display{margin:8px 0 0;color:var(--dt-color-ink-strong);font-size:clamp(28px,3.3vw,44px);line-height:1.03;letter-spacing:-.055em}
.dp-lead{max-width:700px;margin:12px 0 0;color:var(--dt-color-muted);font-size:14px;line-height:1.65}

.dp-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:28px;padding:32px;border:1px solid rgba(255,255,255,.09);border-radius:26px;color:#fff;background:radial-gradient(circle at 78% 20%,rgba(34,211,238,.18),transparent 23%),radial-gradient(circle at 12% 0%,rgba(22,199,154,.19),transparent 30%),linear-gradient(135deg,#0b1930,#081426 62%,#0d1c32);box-shadow:var(--dt-shadow-md)}
.dp-hero::after{content:"";position:absolute;width:220px;height:220px;right:-80px;bottom:-120px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.025),0 0 0 58px rgba(255,255,255,.018)}
.dp-hero .dp-page-kicker{color:#86efd0}.dp-hero .dp-display{color:#fff}.dp-hero .dp-lead{color:#b9c7d8}
.dp-hero-side{position:relative;z-index:1;align-self:stretch;display:grid;align-content:center;gap:12px;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.055);backdrop-filter:blur(12px)}
.dp-hero-side small{color:#8da0b7;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.dp-hero-side strong{font-size:22px;line-height:1.15;letter-spacing:-.035em}.dp-hero-side p{margin:0;color:#b7c4d4;font-size:12px;line-height:1.55}
.dp-status{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:6px 9px;border-radius:999px;background:rgba(22,199,154,.12);color:#8bf0d2;font-size:10px;font-weight:850}.dp-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#5ee5bd;box-shadow:0 0 0 4px rgba(94,229,189,.12)}

.dp-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:18px}.dp-stat-card{position:relative;overflow:hidden;min-height:126px;padding:20px;border:1px solid var(--dt-color-border);border-radius:19px;background:#fff;box-shadow:var(--dt-shadow-sm);transition:transform var(--dt-transition-fast),box-shadow var(--dt-transition-fast),border-color var(--dt-transition-fast)}.dp-stat-card:hover{transform:translateY(-2px);border-color:#d4dee9;box-shadow:var(--dt-shadow-md)}
.dp-stat-icon{width:40px;height:40px;display:grid;place-items:center;margin-bottom:18px;border-radius:13px;background:var(--dt-color-primary-soft);color:var(--dt-color-primary-strong)}.dp-stat-card:nth-child(2) .dp-stat-icon{background:#eaf2ff;color:#2f6fda}.dp-stat-card:nth-child(3) .dp-stat-icon{background:#f2ecff;color:#7957c7}.dp-stat-card:nth-child(4) .dp-stat-icon{background:#fff4df;color:#ad6b00}.dp-stat-card:nth-child(5) .dp-stat-icon{background:#ffedf1;color:#c33d5d}.dp-stat-card small{display:block;color:var(--dt-color-muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.dp-stat-card strong{display:block;margin-top:5px;color:var(--dt-color-ink-strong);font-size:25px;line-height:1;letter-spacing:-.045em}

.dp-content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-top:18px}.dp-card{border:1px solid var(--dt-color-border);border-radius:20px;background:#fff;box-shadow:var(--dt-shadow-sm)}.dp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:21px 22px;border-bottom:1px solid #edf1f5}.dp-card-head h3{margin:4px 0 0;font-size:17px;letter-spacing:-.025em}.dp-card-head p{margin:6px 0 0;color:var(--dt-color-muted);font-size:11px}.dp-card-label{color:var(--dt-color-primary-strong);font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.dp-card-body{padding:20px 22px}
.dp-detail-list{display:grid;gap:0;margin:0}.dp-detail-list div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #edf1f5}.dp-detail-list div:last-child{border-bottom:0}.dp-detail-list dt{color:var(--dt-color-muted);font-size:11px}.dp-detail-list dd{margin:0;text-align:right;color:var(--dt-color-ink);font-size:11px;font-weight:800}.dp-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;background:var(--dt-color-primary-soft);color:var(--dt-color-primary-strong);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}

.dp-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dp-module{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid #edf1f5;border-radius:14px;background:#fbfcfe}.dp-module-icon{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#edf8f5;color:var(--dt-color-primary-strong)}.dp-module strong,.dp-module span{display:block}.dp-module strong{font-size:11px}.dp-module span{margin-top:3px;color:var(--dt-color-muted);font-size:9px}.dp-module.is-disabled{opacity:.55}

.dp-brand-signoff{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:17px 20px;border:1px solid var(--dt-color-border);border-radius:17px;background:linear-gradient(90deg,#fff,#f8fbfd);color:var(--dt-color-muted);font-size:11px}.dp-brand-signoff strong{color:var(--dt-color-ink)}

:where(button,a,input,select,textarea):focus-visible{outline:3px solid rgba(22,184,137,.23);outline-offset:2px}

@media(max-width:1180px){.dp-stat-grid{grid-template-columns:repeat(3,1fr)}.dp-content-grid{grid-template-columns:1fr}.dp-content-grid>.dp-card:last-child{grid-column:auto}}
@media(max-width:760px){.domuspilot-brand-copy strong{font-size:19px}.dp-hero{grid-template-columns:1fr;padding:24px}.dp-stat-grid{grid-template-columns:repeat(2,1fr)}.dp-module-grid{grid-template-columns:1fr}.dp-brand-signoff{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.dp-stat-grid{grid-template-columns:1fr}.dp-hero{padding:20px;border-radius:20px}.dp-display{font-size:31px}.dp-card-head,.dp-card-body{padding-inline:17px}}
