
@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Instrument+Sans:wght@400;500;600;700;800&display=swap");
:root{--ui-ink:#241f33;--ui-ink-2:#514a63;--ui-muted:#7f788d;--ui-bg:#fff;--ui-wash:#f7f5fb;--ui-wash-2:#f1ecfb;--ui-surface:#fff;--ui-line:#e8e4ef;--ui-line-2:#d9d2e5;--ui-purple:#6d4aff;--ui-purple-deep:#4c2db9;--ui-purple-soft:#9d87ff;--ui-cyan:#6bd3e8;--ui-green:#35bd7b;--ui-yellow:#c28a16;--ui-red:#d84f67;--ui-shadow:0 22px 70px rgba(54,37,104,.12)}
html[data-theme="dark"]{color-scheme:dark;--ui-ink:#f8f6ff;--ui-ink-2:#d8d2e4;--ui-muted:#a59dae;--ui-bg:#111015;--ui-wash:#17141e;--ui-wash-2:#211a2d;--ui-surface:#19161f;--ui-line:#332d3b;--ui-line-2:#443a4f;--ui-purple:#9c82ff;--ui-purple-soft:#b9a7ff}
html[data-theme="friendly"]{--ui-ink:#2f2441;--ui-ink-2:#665875;--ui-muted:#8c7f98;--ui-bg:#fffafd;--ui-wash:#faf1f8;--ui-wash-2:#f3e9ff;--ui-surface:#fffdfd;--ui-line:#eaddea;--ui-line-2:#dccbe0;--ui-purple:#7b55df;--ui-purple-soft:#b28aef}
body{font-family:"Instrument Sans",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;background:var(--ui-wash)!important;color:var(--ui-ink)!important;-webkit-font-smoothing:antialiased}.btn{border-radius:999px!important;font-weight:700!important}.btn-primary,.btn-theme{background:var(--ui-purple)!important;border-color:var(--ui-purple)!important;color:#fff!important}.form-control,.form-select,.select2-selection{border-color:var(--ui-line)!important;border-radius:13px!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important}.form-control:focus,.form-select:focus{border-color:var(--ui-purple)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-purple) 10%,transparent)!important}.text-muted{color:var(--ui-muted)!important}.deedyn-theme-toggle{width:40px;height:40px;border-radius:50%;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-purple);display:grid;place-items:center}.deedyn-theme-toggle:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(54,37,104,.1)}
/* Admin */
.dashboard{background:var(--ui-wash)!important}.dashboard-sidebar{background:#171322!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.07)!important;box-shadow:none!important}.dashboard-sidebar-header{border-color:rgba(255,255,255,.08)!important}.dashboard-sidebar-links-title{color:#776e88!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:9px!important;font-weight:800!important}.dashboard-sidebar-link .dashboard-sidebar-link-title{color:#b7afc3!important;border-radius:11px!important;font-size:12px!important}.dashboard-sidebar-link .dashboard-sidebar-link-title:hover{background:rgba(255,255,255,.055)!important;color:#fff!important}.dashboard-sidebar-link.current>.dashboard-sidebar-link-title{background:linear-gradient(90deg,rgba(109,74,255,.23),rgba(109,74,255,.08))!important;color:#fff!important;box-shadow:inset 2px 0 #9d87ff!important}.dashboard-sidebar-link .dashboard-sidebar-link-title i{color:#a992ff!important}.dashboard-nav{height:70px!important;background:color-mix(in srgb,var(--ui-surface) 94%,transparent)!important;border-bottom:1px solid var(--ui-line)!important;backdrop-filter:blur(18px);box-shadow:none!important;position:sticky!important;top:0;z-index:50}.dashboard-nav .nav-icon{color:var(--ui-ink-2)!important}.dashboard-welcome-message{color:var(--ui-ink)!important;font-weight:700}.dashboard-container{max-width:1480px!important;padding:32px 34px 60px!important}.dashboard-footer{background:transparent!important;border-top:1px solid var(--ui-line)!important;color:var(--ui-muted)!important}.box,.card,.platform-card{border:1px solid var(--ui-line)!important;background:var(--ui-surface)!important;border-radius:25px!important;box-shadow:0 7px 26px rgba(54,37,104,.035)!important;color:var(--ui-ink)!important}.box-header,.card-header{border-color:var(--ui-line)!important;background:transparent!important}.counter{min-height:112px}.counter-amount{font-family:"Fraunces",Georgia,serif!important;font-size:34px!important;color:var(--ui-ink)!important}.counter-title{color:var(--ui-muted)!important}.counter-icon{background:var(--ui-wash-2)!important;color:var(--ui-purple)!important;border-radius:18px!important}.item{border-color:var(--ui-line)!important}.item-title{color:var(--ui-ink)!important}.table{--bs-table-bg:transparent;--bs-table-color:var(--ui-ink);--bs-table-border-color:var(--ui-line)}.modal-content,.dropdown-menu,.offcanvas{background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important;border-radius:22px!important}.settings-link,.themes,.plugin,.upload-image{background:var(--ui-surface)!important;border-color:var(--ui-line)!important;border-radius:22px!important}.deedyn-admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.deedyn-admin-head h1{font-family:"Fraunces",Georgia,serif;font-size:44px;font-weight:520;letter-spacing:-.03em;margin:4px 0}.deedyn-admin-head p{color:var(--ui-muted);margin:0}.deedyn-overview{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;margin-bottom:16px}.deedyn-hero{min-height:250px;border-radius:29px;padding:30px;background:linear-gradient(135deg,#2b1c67,#5336ba 56%,#6d4aff);color:#fff;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;position:relative;overflow:hidden}.deedyn-hero:after{content:"";position:absolute;width:280px;height:280px;border-radius:45% 55% 63% 37%/55% 45% 55% 45%;right:-120px;top:-120px;background:linear-gradient(145deg,#9d87ff,#6bd3e8);opacity:.7}.deedyn-hero>*{position:relative;z-index:2}.deedyn-hero-label{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#c7bcff;font-weight:800}.deedyn-hero h2{font-family:"Fraunces",Georgia,serif;font-size:36px;font-weight:520;letter-spacing:-.03em;margin:8px 0 12px}.deedyn-hero p{font-size:12px;line-height:1.6;color:#ddd6f4}.deedyn-orb{width:132px;height:132px;border-radius:44px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;align-content:center}.deedyn-orb strong{font-family:"Fraunces",Georgia,serif;font-size:42px;font-weight:520}.deedyn-orb span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#d8d0ee}.deedyn-kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px}.deedyn-kpi{min-height:119px;border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:23px;padding:20px;display:flex;flex-direction:column;justify-content:center}.deedyn-kpi span{font-size:10px;color:var(--ui-muted)}.deedyn-kpi strong{font-family:"Fraunces",Georgia,serif;font-size:34px;font-weight:520;line-height:1;margin:6px 0;color:var(--ui-ink)}.deedyn-kpi small{font-size:9px;color:var(--ui-muted)}
/* Installer */
.steps-page{background:var(--ui-wash)!important;min-height:100vh!important}.steps-sidebar{background:#171322!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.07)!important;box-shadow:none!important}.steps-sidebar-header{min-height:96px!important;border-color:rgba(255,255,255,.08)!important}.installer-brand{display:flex;align-items:center;gap:11px;color:#fff!important}.installer-brand-mark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#6d4aff,#9d87ff);font-weight:900;box-shadow:0 10px 25px rgba(109,74,255,.3)}.installer-brand-copy{display:grid}.installer-brand-copy b{font-size:13px}.installer-brand-copy small{font-size:9px;color:#948ba4;text-transform:uppercase;letter-spacing:.1em}.steps-sidebar-item-title{color:#b7afc3!important}.steps-sidebar-item-number{background:rgba(255,255,255,.07)!important;color:#b7afc3!important;border-color:rgba(255,255,255,.12)!important}.steps-sidebar-item.active .steps-sidebar-item-number,.steps-sidebar-item.checked .steps-sidebar-item-number{background:var(--ui-purple)!important;color:#fff!important;border-color:var(--ui-purple)!important}.steps-sidebar-item.active .steps-sidebar-item-title{color:#fff!important}.steps-content,.steps-body,.installation-content,.install-content{background:var(--ui-wash)!important}.steps-form,.installation-box,.install-box,.steps-card{background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:28px!important;box-shadow:0 18px 60px rgba(54,37,104,.07)!important}.steps-page h1,.steps-page h2,.steps-page h3,.steps-page h4{font-family:"Fraunces",Georgia,serif;letter-spacing:-.03em;color:var(--ui-ink)}
@media(max-width:1180px){.deedyn-overview{grid-template-columns:1fr}}@media(max-width:991px){.dashboard-container{padding:26px 20px 50px!important}}@media(max-width:620px){.deedyn-admin-head h1{font-size:37px}.deedyn-hero{grid-template-columns:1fr;padding:24px}.deedyn-orb{width:100%;height:82px;border-radius:20px}.deedyn-kpis{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}


/* Deedyn CI refinement — typography and rhythm */
html{font-size:16px}body{font-size:15px;line-height:1.58}
p,.form-control,.form-select,.btn,.dropdown-menu,.table{font-size:14px}
label,.form-label{font-size:13px;font-weight:650;color:var(--ui-ink-2)}
.dashboard-sidebar-links-title{font-size:10.5px!important;letter-spacing:.115em!important;margin-top:18px!important;margin-bottom:7px!important}
.dashboard-sidebar-link .dashboard-sidebar-link-title{font-size:13.5px!important;line-height:1.25!important;min-height:43px;padding-top:10px!important;padding-bottom:10px!important}
.dashboard-sidebar-link .dashboard-sidebar-link-title i{font-size:14px!important;min-width:20px}
.dashboard-nav,.dashboard-nav a,.dashboard-nav button{font-size:13.5px}
.platform-card-title,.card-title{font-size:15px!important}.platform-card-text{font-size:12.5px!important;line-height:1.55}
.table th{font-size:12px!important;letter-spacing:.025em}.table td{font-size:13.5px!important}
.navbar .nav-link,.navbar a,.footer a{font-size:14px}
.mailbox-item{font-size:14px}.mailbox-item .small,.mailbox-item small{font-size:12px!important}
.steps-sidebar-item-title{font-size:13px!important}.steps-page .form-control,.steps-page .form-select{font-size:14px!important}
.deedyn-eyebrow{display:inline-flex;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--ui-purple)}
.deedyn-soft-note{display:flex;gap:13px;padding:16px;border:1px solid var(--ui-line);background:var(--ui-wash);border-radius:18px;color:var(--ui-ink-2)}
.deedyn-soft-note>i{color:var(--ui-purple);font-size:17px;margin-top:2px}.deedyn-soft-note strong{display:block;color:var(--ui-ink);margin-bottom:3px}.deedyn-soft-note p{font-size:12.5px;line-height:1.55}
.deedyn-check-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.deedyn-check-list li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ui-ink-2)}.deedyn-check-list i{color:var(--ui-green);margin-top:3px}
.deedyn-status-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;border:1px solid var(--ui-line);background:var(--ui-surface);font-size:12px;font-weight:700;color:var(--ui-muted)}.deedyn-status-pill span{width:8px;height:8px;border-radius:50%;background:var(--ui-muted)}.deedyn-status-pill.is-on{color:var(--ui-green)}.deedyn-status-pill.is-on span{background:var(--ui-green);box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-green) 13%,transparent)}
.deedyn-site-theme{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 10px;border-radius:999px;background:var(--ui-wash-2);color:var(--ui-purple)}
.deedyn-site-meta{display:flex;flex-wrap:wrap;gap:10px}.deedyn-site-meta span{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ui-muted);padding:7px 10px;border:1px solid var(--ui-line);border-radius:999px}.deedyn-site-meta i{color:var(--ui-purple)}
.deedyn-score-ring{--score:0;width:98px;height:98px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--ui-purple) calc(var(--score)*1%),var(--ui-line) 0);position:relative}.deedyn-score-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--ui-surface)}.deedyn-score-ring strong,.deedyn-score-ring span{position:relative;z-index:1}.deedyn-score-ring strong{font-family:"Fraunces",Georgia,serif;font-size:29px;line-height:1}.deedyn-score-ring span{font-size:10px;color:var(--ui-muted)}
.deedyn-audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.deedyn-audit-item{display:flex;gap:12px;padding:15px;border:1px solid var(--ui-line);border-radius:17px;background:var(--ui-wash)}.deedyn-audit-item>i{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:var(--ui-surface)}.deedyn-audit-item.passed>i{color:var(--ui-green)}.deedyn-audit-item.warn>i{color:var(--ui-yellow)}.deedyn-audit-item strong{font-size:13px}.deedyn-audit-item p{font-size:11.5px;color:var(--ui-muted);margin:3px 0 0;line-height:1.45}
.deedyn-discovery-links{display:grid;gap:8px}.deedyn-discovery-links a{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-ink-2);font-size:12px}
.preloader{background:color-mix(in srgb,var(--ui-bg) 96%,transparent)!important;backdrop-filter:blur(9px)}
.deedyn-loader{width:92px;height:92px;position:relative;display:grid;place-items:center}
.deedyn-loader-orbit{position:absolute;inset:0;border-radius:31px;background:conic-gradient(from 20deg,var(--ui-purple),var(--ui-cyan),var(--ui-purple-soft),var(--ui-purple));animation:deedynOrbit 1.25s linear infinite;box-shadow:0 22px 60px rgba(109,74,255,.22)}
.deedyn-loader-orbit:after{content:"";position:absolute;inset:5px;border-radius:27px;background:var(--ui-surface)}
.deedyn-loader-core{position:relative;z-index:2;width:57px;height:57px;border-radius:20px 20px 28px 20px;display:grid;place-items:center;background:linear-gradient(145deg,var(--ui-purple),var(--ui-purple-deep));color:#fff;font-family:"Fraunces",Georgia,serif;font-size:31px;font-weight:600;box-shadow:inset 0 1px rgba(255,255,255,.25)}
.deedyn-loader-dot{position:absolute;z-index:3;width:10px;height:10px;border-radius:50%;background:var(--ui-cyan);right:6px;top:10px;box-shadow:0 0 0 5px color-mix(in srgb,var(--ui-cyan) 16%,transparent);animation:deedynPulse 1.25s ease-in-out infinite}
@keyframes deedynOrbit{to{transform:rotate(360deg)}}@keyframes deedynPulse{50%{transform:scale(.72);opacity:.55}}
.installer-brand-mark{font-family:"Fraunces",Georgia,serif!important;font-size:22px!important;background:linear-gradient(145deg,var(--ui-purple),var(--ui-cyan))!important}
.deedyn-demo-banner{position:fixed;left:50%;top:12px;transform:translateX(-50%);z-index:1200;display:flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--ui-purple) 25%,var(--ui-line));border-radius:999px;background:color-mix(in srgb,var(--ui-surface) 94%,transparent);backdrop-filter:blur(16px);box-shadow:0 10px 35px rgba(54,37,104,.12);font-size:11px;font-weight:750;color:var(--ui-purple)}
@media(max-width:768px){body{font-size:14.5px}.dashboard-sidebar-link .dashboard-sidebar-link-title{font-size:14px!important}.deedyn-audit-grid{grid-template-columns:1fr}.deedyn-score-ring{width:82px;height:82px}.deedyn-admin-head{align-items:center}}

.deedyn-route-loader{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;background:color-mix(in srgb,var(--ui-bg) 82%,transparent);backdrop-filter:blur(10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
.deedyn-route-loader.is-visible{opacity:1;visibility:visible;pointer-events:auto}


/* Deedyn accessibility contrast pass v2 */
:root{
  --ui-ink:#211c2d;--ui-ink-2:#443d53;--ui-muted:#6c6578;--ui-bg:#ffffff;
  --ui-wash:#f7f5fb;--ui-wash-2:#eee9f8;--ui-surface:#ffffff;--ui-line:#ddd7e8;--ui-line-2:#c9c1d7;
}
html[data-theme="dark"]{
  color-scheme:dark;--ui-ink:#f6f7fb;--ui-ink-2:#d9deea;--ui-muted:#b5bdcc;
  --ui-bg:#0e1118;--ui-wash:#11151e;--ui-wash-2:#1d2330;--ui-surface:#171b25;
  --ui-line:#343b4b;--ui-line-2:#485164;--ui-purple:#b09aff;--ui-purple-deep:#8a6cff;--ui-purple-soft:#c8baff;
  --ui-cyan:#79dceb;--ui-green:#62d79c;--ui-yellow:#f2bd55;--ui-red:#ff8294;
}
html{font-size:17px!important} body{font-size:16px!important;line-height:1.62!important}
body,body *{text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6,.box,.card,.modal-content,.dropdown-menu,.list-group-item{color:var(--ui-ink)!important}
p,.form-text,.help-block,.small,small{color:var(--ui-ink-2)!important}
.form-label,label{font-size:14.5px!important;font-weight:650!important;color:var(--ui-ink)!important}
.form-control,.form-select,.select2-selection,.btn{font-size:15.5px!important;line-height:1.45!important}
.form-control::placeholder{color:var(--ui-muted)!important;opacity:1!important}
.form-select option{background:var(--ui-surface)!important;color:var(--ui-ink)!important}
.settings-link{min-height:56px!important;padding:9px 13px!important;background:var(--ui-surface)!important;border-color:var(--ui-line)!important}
.settings-link .settings-link-title{font-size:15.5px!important;font-weight:620!important;color:var(--ui-ink-2)!important}
.settings-link .settings-link-icon{width:40px!important;height:40px!important;background:var(--ui-wash-2)!important;color:var(--ui-purple)!important}
.settings-link:hover,.settings-link.current{background:var(--ui-wash-2)!important;border-color:var(--ui-purple)!important}
.settings-link:hover .settings-link-title,.settings-link.current .settings-link-title{color:var(--ui-ink)!important}
.settings-link:hover .settings-link-icon,.settings-link.current .settings-link-icon{background:var(--ui-purple)!important;color:#fff!important}
.dashboard-sidebar-links-title{font-size:11.5px!important;color:#aeb5c5!important}
.dashboard-sidebar-link .dashboard-sidebar-link-title{font-size:14.5px!important;font-weight:590!important;color:#d5d9e4!important}
html[data-theme="light"] .dashboard-sidebar{background:#ffffff!important;border-color:var(--ui-line)!important}
html[data-theme="light"] .dashboard-sidebar-links-title{color:#756d83!important}
html[data-theme="light"] .dashboard-sidebar-link .dashboard-sidebar-link-title{color:#51495f!important}
html[data-theme="light"] .dashboard-sidebar-link .dashboard-sidebar-link-title:hover{color:#211c2d!important;background:#f2eef9!important}
html[data-theme="light"] .dashboard-sidebar-link.current>.dashboard-sidebar-link-title{color:#34215f!important;background:#eee8ff!important}
html[data-theme="dark"] .dashboard-sidebar{background:#10131c!important;border-color:#2c3240!important}
html[data-theme="dark"] .dashboard-sidebar-link .dashboard-sidebar-link-title{color:#d9deea!important}
html[data-theme="dark"] .dashboard-sidebar-link .dashboard-sidebar-link-title:hover{color:#fff!important;background:#1d2330!important}
html[data-theme="dark"] .dashboard-sidebar-link.current>.dashboard-sidebar-link-title{color:#fff!important;background:#242a39!important}
html[data-theme="dark"] .dashboard-nav,html[data-theme="dark"] .box,html[data-theme="dark"] .card,html[data-theme="dark"] .settings-link,html[data-theme="dark"] .list-group-item{background:var(--ui-surface)!important;color:var(--ui-ink)!important}
html[data-theme="dark"] .settings-link .settings-link-title{color:#d9deea!important}
html[data-theme="dark"] .settings-link.current .settings-link-title,html[data-theme="dark"] .settings-link:hover .settings-link-title{color:#fff!important}
html[data-theme="dark"] .form-control,html[data-theme="dark"] .form-select{background:#121620!important;border-color:#3b4354!important;color:#f6f7fb!important}
.table th{font-size:13.5px!important;color:var(--ui-ink-2)!important}.table td{font-size:15px!important;color:var(--ui-ink)!important}
.system-list strong{font-size:15px!important;color:var(--ui-ink)!important}.system-list span{font-size:14.5px!important;color:var(--ui-ink-2)!important;text-align:right;overflow-wrap:anywhere}
:focus-visible{outline:3px solid color-mix(in srgb,var(--ui-purple) 68%,#fff)!important;outline-offset:2px!important}
@media(max-width:768px){html{font-size:16px!important}body{font-size:15.5px!important}.settings-link .settings-link-title,.dashboard-sidebar-link .dashboard-sidebar-link-title{font-size:15px!important}}
