:root{
  --dn-bg:#f6fbff;
  --dn-surface:#ffffff;
  --dn-surface-2:#f8fafc;
  --dn-border:#dbeafe;
  --dn-border-2:#e2e8f0;
  --dn-text:#0f172a;
  --dn-muted:#64748b;
  --dn-soft:#eff6ff;
  --dn-blue:#38bdf8;
  --dn-blue-2:#0ea5e9;
  --dn-blue-3:#0369a1;
  --dn-indigo:#4f46e5;
  --dn-green:#16a34a;
  --dn-red:#dc2626;
  --dn-yellow:#ca8a04;
  --dn-shadow:0 18px 45px rgba(15,23,42,.08);
  --dn-shadow-soft:0 10px 30px rgba(14,165,233,.10);
  --dn-radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 10% 0%, rgba(186,230,253,.55), transparent 32rem),
    linear-gradient(180deg,#f8fcff 0%,#ffffff 42%,#f8fafc 100%);
  color:var(--dn-text);
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.dn-page{min-height:100vh;display:flex;flex-direction:column}
.dn-container{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.dn-main{flex:1;padding:34px 0 56px}
.dn-topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(219,234,254,.95);
  backdrop-filter:blur(18px);
  box-shadow:0 10px 35px rgba(15,23,42,.05);
}
.dn-nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px}
.dn-brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.dn-brand-mark{
  width:44px;height:44px;border-radius:16px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#7dd3fc,#0ea5e9);
  color:white;font-weight:900;box-shadow:0 16px 30px rgba(14,165,233,.28)
}
.dn-brand-text{display:flex;flex-direction:column;line-height:1.05}
.dn-brand-title{font-size:1.05rem;font-weight:900;letter-spacing:-.03em}
.dn-brand-subtitle{font-size:.68rem;font-weight:800;letter-spacing:.28em;color:#0284c7;text-transform:uppercase}
.dn-nav{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}
.dn-nav a{
  border-radius:999px;padding:9px 13px;
  color:#334155;font-size:.92rem;font-weight:750;
  transition:.18s ease;
}
.dn-nav a:hover,.dn-nav a.active{background:#e0f2fe;color:#075985}
.dn-nav-actions{display:flex;align-items:center;gap:9px;min-width:max-content}
.dn-btn,.dn-btn-soft,.dn-btn-outline,.dn-btn-danger{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:42px;border-radius:999px;padding:10px 16px;
  font-weight:850;font-size:.92rem;border:1px solid transparent;
  cursor:pointer;transition:.18s ease;white-space:nowrap;
}
.dn-btn{background:linear-gradient(135deg,#38bdf8,#0284c7);color:#fff;box-shadow:0 14px 28px rgba(14,165,233,.22)}
.dn-btn:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(14,165,233,.28)}
.dn-btn-soft{background:#e0f2fe;color:#075985;border-color:#bae6fd}
.dn-btn-soft:hover{background:#bae6fd}
.dn-btn-outline{background:white;color:#0f172a;border-color:#dbeafe}
.dn-btn-outline:hover{background:#f0f9ff;color:#0369a1}
.dn-btn-danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}
.dn-mobile-toggle{display:none;border:0;background:#e0f2fe;color:#075985;border-radius:14px;width:44px;height:44px;font-size:1.2rem}
.dn-footer{border-top:1px solid #dbeafe;background:rgba(255,255,255,.72);padding:26px 0;color:#64748b}
.dn-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.dn-footer-links{display:flex;gap:14px;flex-wrap:wrap}
.dn-hero{
  position:relative;overflow:hidden;border-radius:34px;
  min-height:430px;display:flex;align-items:center;
  background:linear-gradient(135deg,#e0f2fe,#ffffff 52%,#eff6ff);
  border:1px solid #dbeafe;box-shadow:var(--dn-shadow);
}
.dn-hero::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(15,23,42,.82) 0%, rgba(15,23,42,.60) 38%, rgba(15,23,42,.12) 100%),
    var(--dn-hero-image, none);
  background-size:cover;background-position:center;
  opacity:var(--dn-hero-opacity,1);
}
.dn-hero.no-image::before{
  background:
    radial-gradient(circle at 80% 20%, rgba(56,189,248,.34), transparent 24rem),
    radial-gradient(circle at 20% 80%, rgba(79,70,229,.18), transparent 18rem),
    linear-gradient(135deg,#0f172a,#0c4a6e 58%,#0284c7);
}
.dn-hero-content{position:relative;z-index:2;max-width:760px;padding:58px;color:white}
.dn-badge{
  display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.14);backdrop-filter:blur(12px);
  border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em
}
.dn-hero h1{font-size:clamp(2.35rem,5vw,4.8rem);line-height:.96;letter-spacing:-.07em;margin:18px 0 18px}
.dn-hero p{font-size:1.12rem;line-height:1.75;color:#e0f2fe;max-width:690px;margin:0}
.dn-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.dn-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:34px 0 16px}
.dn-kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:950;color:#0284c7;margin:0 0 8px}
.dn-title{font-size:clamp(1.7rem,3vw,2.55rem);letter-spacing:-.045em;line-height:1.05;margin:0;color:#0f172a}
.dn-lede{color:#64748b;line-height:1.75;margin:.75rem 0 0;max-width:780px}
.dn-grid{display:grid;gap:18px}
.dn-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.dn-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.dn-card{
  background:rgba(255,255,255,.9);border:1px solid #dbeafe;border-radius:var(--dn-radius);
  box-shadow:var(--dn-shadow-soft);overflow:hidden;
}
.dn-card-body{padding:22px}
.dn-card:hover{box-shadow:0 20px 50px rgba(14,165,233,.14)}
.dn-feature-card{padding:24px;position:relative;overflow:hidden}
.dn-feature-card::after{content:"";position:absolute;right:-42px;top:-42px;width:130px;height:130px;border-radius:999px;background:#e0f2fe}
.dn-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#e0f2fe;color:#075985;font-size:1.25rem;margin-bottom:16px}
.dn-card h2,.dn-card h3{margin:0 0 8px;letter-spacing:-.03em}
.dn-card p{color:#64748b;line-height:1.7;margin:0}
.dn-list{display:grid;gap:14px}
.dn-list-card{display:flex;gap:16px;align-items:flex-start;padding:18px;border-radius:22px;background:white;border:1px solid #dbeafe;box-shadow:0 10px 30px rgba(15,23,42,.05)}
.dn-thumb{width:86px;height:86px;object-fit:cover;border-radius:20px;background:#e0f2fe;border:1px solid #dbeafe;flex:0 0 auto}
.dn-avatar{width:78px;height:78px;border-radius:999px;object-fit:cover;background:#e0f2fe;border:1px solid #dbeafe;flex:0 0 auto}
.dn-meta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.dn-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:850;background:#f0f9ff;color:#075985;border:1px solid #bae6fd}
.dn-pill.gray{background:#f8fafc;color:#475569;border-color:#e2e8f0}
.dn-pill.green{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.dn-page-hero{
  border-radius:30px;padding:34px;
  background:
    radial-gradient(circle at 80% 0%, rgba(56,189,248,.26), transparent 18rem),
    linear-gradient(135deg,#ffffff,#eff6ff);
  border:1px solid #dbeafe;box-shadow:var(--dn-shadow-soft);margin-bottom:22px
}
.dn-page-hero h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.06em;margin:0}
.dn-page-hero p{color:#64748b;max-width:820px;line-height:1.75}
.dn-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:16px 0 20px}
.dn-search-box{display:flex;gap:10px;flex:1;min-width:260px}
.dn-input,.dn-select,.dn-textarea{
  width:100%;border:1px solid #cbd5e1;background:white;border-radius:16px;padding:12px 14px;color:#0f172a;
  outline:0;transition:.18s ease;
}
.dn-input:focus,.dn-select:focus,.dn-textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 4px rgba(56,189,248,.15)}
.dn-form-card{background:white;border:1px solid #dbeafe;border-radius:28px;box-shadow:var(--dn-shadow-soft);padding:24px}
.dn-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dn-field{display:grid;gap:7px}
.dn-field label{font-weight:850;color:#334155;font-size:.9rem}
.dn-table-wrap{overflow:auto;border-radius:22px;border:1px solid #dbeafe;background:white;box-shadow:var(--dn-shadow-soft)}
.dn-table{width:100%;border-collapse:collapse;min-width:780px}
.dn-table th{background:#f0f9ff;text-align:left;color:#075985;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;padding:14px}
.dn-table td{border-top:1px solid #e2e8f0;padding:14px;color:#334155}
.dn-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:22px;align-items:start}
.dn-detail-image{width:100%;max-height:420px;object-fit:cover;border-radius:28px;border:1px solid #dbeafe;box-shadow:var(--dn-shadow-soft);background:#e0f2fe}
.dn-sidebar-card{position:sticky;top:96px;background:white;border:1px solid #dbeafe;border-radius:26px;box-shadow:var(--dn-shadow-soft);padding:22px}
.dn-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.dn-stat{background:white;border:1px solid #dbeafe;border-radius:22px;padding:18px;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.dn-stat strong{display:block;font-size:1.7rem;letter-spacing:-.04em}
.dn-stat span{color:#64748b;font-size:.88rem;font-weight:750}
.dn-alert{border-radius:22px;padding:18px;border:1px solid #bae6fd;background:#f0f9ff;color:#075985;line-height:1.65}
.dn-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:80;display:none;align-items:center;justify-content:center;padding:20px}
.dn-modal-backdrop.is-open{display:flex}
.dn-modal{width:min(520px,100%);background:white;border-radius:30px;border:1px solid #dbeafe;box-shadow:0 30px 80px rgba(15,23,42,.25);padding:26px}
.dn-empty{border:1px dashed #bae6fd;background:#f0f9ff;border-radius:24px;padding:28px;color:#075985;text-align:center}
.dn-prose{line-height:1.78;color:#334155}
.dn-prose h1,.dn-prose h2,.dn-prose h3{color:#0f172a;letter-spacing:-.035em}
.dn-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dn-gallery img{height:150px;width:100%;object-fit:cover;border-radius:18px;border:1px solid #dbeafe}
@media (max-width: 980px){
  .dn-mobile-toggle{display:grid;place-items:center}
  .dn-nav,.dn-nav-actions{
    display:none;width:100%;padding-bottom:14px
  }
  .dn-topbar.is-open .dn-nav,.dn-topbar.is-open .dn-nav-actions{display:flex}
  .dn-nav-wrap{flex-wrap:wrap}
  .dn-nav{order:3;justify-content:flex-start}
  .dn-nav-actions{order:4;justify-content:flex-start}
  .dn-grid-3,.dn-grid-2,.dn-detail-layout,.dn-stats{grid-template-columns:1fr}
  .dn-hero-content{padding:38px 24px}
  .dn-hero{min-height:390px;border-radius:26px}
  .dn-sidebar-card{position:static}
}
@media (max-width: 640px){
  .dn-container{width:min(100% - 22px,1180px)}
  .dn-main{padding:22px 0 38px}
  .dn-page-hero,.dn-card-body,.dn-form-card{padding:18px}
  .dn-form-grid{grid-template-columns:1fr}
  .dn-list-card{flex-direction:column}
  .dn-thumb,.dn-avatar{width:100%;height:180px;border-radius:20px}
  .dn-footer-inner{align-items:flex-start;flex-direction:column}
}
