.dpp-dashboard{--ink:#122033;--muted:#667487;--teal:#0796a8;--line:#dce8ec;max-width:1180px;margin:35px auto;padding:0 18px;color:var(--ink);font-family:Cairo,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;line-height:1.7}.dpp-dashboard *{box-sizing:border-box}.dpp-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dpp-dashboard-kicker{display:inline-block;background:#e8f7f8;color:#147b87;border-radius:18px;padding:4px 11px;font-size:12px;font-weight:800}.dpp-dashboard h1{font-size:38px;margin:10px 0 2px}.dpp-dashboard-head p{color:var(--muted);margin:0}.dpp-dashboard-outline,.dpp-dashboard-btn{display:inline-block;text-decoration:none;border-radius:28px;padding:11px 20px;font-weight:800}.dpp-dashboard-outline{border:1px solid var(--teal);color:var(--teal)}.dpp-dashboard-btn{border:0;background:linear-gradient(135deg,var(--teal),#008a99);color:#fff;box-shadow:0 8px 22px rgba(0,143,157,.18)}.dpp-dashboard-btn:disabled{opacity:.6;cursor:not-allowed}.dpp-dashboard-status{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.dpp-dashboard-status>div,.dpp-dashboard-alert,.dpp-dashboard-card,.dpp-dashboard-onboarding,.dpp-dashboard-note{background:#fff;border:1px solid var(--line);border-radius:20px}.dpp-dashboard-status>div{padding:22px}.dpp-dashboard-status small,.dpp-dashboard-status strong,.dpp-dashboard-status span{display:block}.dpp-dashboard-status small{color:var(--muted);font-size:12px}.dpp-dashboard-status strong{font-size:24px;margin:4px 0}.dpp-dashboard-status span{color:var(--muted);font-size:13px}.dpp-dashboard-alert{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#f7fbfc;margin-bottom:18px}.dpp-dashboard-alert strong{white-space:nowrap}.dpp-dashboard-alert span{color:var(--muted);flex:1;font-size:13px}.dpp-dashboard-alert a{color:var(--teal);font-weight:800;text-decoration:none;white-space:nowrap}.dpp-dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dpp-dashboard-card{padding:22px;text-decoration:none;color:var(--ink);transition:.18s}.dpp-dashboard-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,50,60,.08)}.dpp-dashboard-card b{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#e8f7f8;color:var(--teal);font-size:22px}.dpp-dashboard-card strong{display:block;font-size:18px;margin-top:14px}.dpp-dashboard-card span,.dpp-dashboard-card em{display:block;color:var(--muted);font-style:normal;font-size:13px;margin-top:4px}.dpp-dashboard-card em{color:var(--teal);font-weight:800;margin-top:12px}.dpp-dashboard-onboarding{margin-top:18px;padding:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#f5fcfc,#fff)}.dpp-dashboard-onboarding h2{margin:8px 0 4px;font-size:26px}.dpp-dashboard-onboarding p{color:var(--muted);margin:0;font-size:14px}.dpp-dashboard-note{margin-top:16px;padding:14px 18px;color:var(--muted);font-size:12px;background:#f7fbfc}.dpp-dashboard-note strong{color:var(--ink)}.dpp-dashboard-login{max-width:650px;text-align:center;padding:55px 25px}.dpp-dashboard-login h2{font-size:30px}.dpp-dashboard-login p{color:var(--muted)}
@media(max-width:800px){.dpp-dashboard{margin:22px auto}.dpp-dashboard-head{align-items:flex-start}.dpp-dashboard h1{font-size:30px}.dpp-dashboard-status{grid-template-columns:1fr}.dpp-dashboard-grid{grid-template-columns:1fr 1fr}.dpp-dashboard-alert{align-items:flex-start;flex-wrap:wrap}.dpp-dashboard-alert span{flex-basis:100%}.dpp-dashboard-onboarding{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.dpp-dashboard{padding:0 13px}.dpp-dashboard-head{flex-direction:column}.dpp-dashboard-grid{grid-template-columns:1fr}.dpp-dashboard-status>div{padding:18px}.dpp-dashboard-status strong{font-size:21px}.dpp-dashboard-card{padding:18px}.dpp-dashboard-onboarding{padding:20px}}

/* DPP front-end authentication */
.dpp-auth-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:48px 18px;background:#f7fafb;box-sizing:border-box;font-family:Arial,"Cairo",sans-serif}
.dpp-auth-card{width:min(100%,480px);background:#fff;border:1px solid #e4ebee;border-radius:24px;padding:34px;box-shadow:0 16px 45px rgba(15,35,45,.08);box-sizing:border-box}
.dpp-auth-brand{width:48px;height:48px;border-radius:14px;background:#0b9eae;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:18px}
.dpp-auth-card h1{margin:0 0 10px;color:#10253a;font-size:30px;line-height:1.25}
.dpp-auth-lead{margin:0 0 24px;color:#667585;font-size:16px;line-height:1.8}
.dpp-auth-form{display:grid;gap:17px}
.dpp-auth-form label{display:grid;gap:8px;color:#263747;font-size:15px;font-weight:700}
.dpp-auth-form input[type=text],.dpp-auth-form input[type=email],.dpp-auth-form input[type=password]{width:100%;height:52px;border:1px solid #d5dfe4;border-radius:12px;background:#fff;padding:0 15px;font-size:16px;box-sizing:border-box;outline:none}
.dpp-auth-form input:focus{border-color:#0b9eae;box-shadow:0 0 0 3px rgba(11,158,174,.12)}
.dpp-auth-submit{height:52px;border:0;border-radius:13px;background:#0b9eae;color:#fff;font-size:17px;font-weight:800;cursor:pointer}
.dpp-auth-submit:hover{filter:brightness(.96)}
.dpp-auth-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;font-weight:500!important}
.dpp-auth-check input{width:18px;height:18px}
.dpp-auth-alert{border-radius:12px;padding:13px 15px;margin-bottom:18px;font-size:14px;line-height:1.7}
.dpp-auth-alert ul{margin:0;padding-right:18px}
.dpp-auth-error{background:#fff1f1;color:#a32828;border:1px solid #ffd4d4}
.dpp-auth-success{background:#effaf3;color:#176b3b;border:1px solid #ccebd7}
.dpp-auth-links{display:flex;justify-content:space-between;gap:15px;margin-top:20px;flex-wrap:wrap}
.dpp-auth-footer{text-align:center;color:#6c7b88;margin:20px 0 0;font-size:14px}
.dpp-auth-card a{color:#087f8d;text-decoration:none;font-weight:700}
.dpp-auth-card a:hover{text-decoration:underline}
@media(max-width:520px){.dpp-auth-card{padding:25px 20px;border-radius:18px}.dpp-auth-wrap{padding:25px 12px}.dpp-auth-card h1{font-size:26px}}
