/* AREALYN AI · PROJECT TEMPLATE V1.0.2 · WHITE GLOSSY
   A single authoritative light stylesheet. No dark fallbacks, panels or colored cards. */
:root {
  color-scheme: light;
  font-family: Inter,"Segoe UI",Arial,Helvetica,sans-serif;
  --ink: #182a37; --muted: #5c6975; --soft: #788895;
  --line: rgba(46,70,89,.16);
  --white: #fff; --pearl: #f6f8fa; --ice: #edf2f6;
  --blue: #2b6288;
  --header-size: 83px;
}
*{box-sizing:border-box}
html{background:#fff;scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);line-height:1.58}
body.menu-open{overflow:hidden}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid #2c6488;outline-offset:4px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.55rem,5vw,5rem);letter-spacing:-.055em;line-height:1.09;font-weight:570}
h2{font-size:clamp(2.05rem,3.55vw,3.5rem);letter-spacing:-.044em;line-height:1.17;font-weight:590}
h3{font-size:1.25rem;font-weight:650;letter-spacing:-.018em}
p{color:var(--muted)}
.shell{width:min(100% - clamp(34px,7.5vw,150px),1510px);margin-inline:auto}
.topbar{
  position:sticky;top:0;z-index:55;
  background:linear-gradient(180deg,#ffffff 0%,#f3f7fa 100%);
  border-bottom:1px solid rgba(255,255,255,.96);
  box-shadow:0 12px 25px rgba(39,61,78,.16),0 3px 8px rgba(39,61,78,.09)
}
.topbar-inner{height:var(--header-size);display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:13px;min-width:0}
.brand-symbol{width:45px;height:45px;position:relative;display:block;flex-shrink:0;transform:rotate(-28deg)}
.brand-symbol span{position:absolute;width:43px;height:25px;border:1.7px solid #688da2;border-radius:9px;transform:skewY(-13deg);left:1px;background:linear-gradient(140deg,rgba(216,231,239,.4),rgba(255,255,255,.9))}
.brand-symbol span:nth-child(1){top:1px}
.brand-symbol span:nth-child(2){top:10px}
.brand-symbol span:nth-child(3){top:19px}
.brand-word{color:#192c39;display:block;font-size:clamp(1.17rem,2vw,1.65rem);letter-spacing:.105em;font-weight:760;line-height:1.08;white-space:nowrap}
.brand-word>span{color:#477994}
.brand-word small{display:block;margin-top:6px;color:#798a98;font-size:.54rem;letter-spacing:.19em;font-weight:700}
.header-actions{display:flex;gap:32px;align-items:center}
.header-link{font-size:.87rem;font-weight:680;color:#44596b}
.header-link:hover{color:#196187}
.menu-toggle,.menu-close{border:0;background:transparent;color:#193142;cursor:pointer;display:flex;align-items:center;justify-content:center}
.menu-toggle{width:56px;height:56px;flex-direction:column;gap:7px;padding:0}
.menu-toggle span{width:33px;height:2px;display:block;background:currentColor;border-radius:4px;transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(9px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}
.menu-backdrop{position:fixed;inset:0;background:rgba(36,49,61,.31);backdrop-filter:blur(5px);z-index:70}
.menu-drawer{
  position:fixed;top:0;bottom:0;right:0;height:100vh;height:100dvh;
  width:clamp(340px,28vw,550px);max-width:100vw;overflow-y:auto;z-index:75;
  background:linear-gradient(145deg,#fff 0%,#f3f7fa 100%);
  box-shadow:-18px 0 42px rgba(33,55,71,.19);
  border-left:1px solid rgba(255,255,255,.9);
  display:flex;flex-direction:column;padding:31px 32px
}
.drawer-top{display:flex;justify-content:space-between;align-items:start;gap:16px;padding-bottom:34px}
.drawer-name{font-size:1.2rem;letter-spacing:.12em;font-weight:760;line-height:1.3}
.drawer-name small{display:block;font-size:.65rem;margin-top:5px;color:#758796;letter-spacing:.14em}
.menu-close{font-size:2.3rem;font-weight:300;width:40px;height:40px}
.drawer-list{display:flex;flex-direction:column}
.drawer-list a{display:flex;justify-content:space-between;gap:15px;padding:18px 6px;border-bottom:1px solid var(--line);font-size:1.04rem;color:#344754}
.drawer-list a:first-child{border-top:1px solid var(--line)}
.drawer-list a:hover{color:#1f618d}
.drawer-list a span{color:#8ca4b4}
.drawer-bottom{margin-top:auto;padding-top:38px;display:flex;justify-content:space-between;gap:10px;color:#7b8e9c;font-size:.72rem;letter-spacing:.08em}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-bottom:1px solid #49687d;border-radius:0;background:transparent;padding:0 0 7px;min-height:36px;color:#193647;font-size:.99rem;font-weight:700;transition:opacity .18s}
.button:hover{opacity:.64}
.button.outline{border-color:#95a9b6;color:#4c6272}
.eyebrow{color:#7d8d9a;font-size:.77rem;letter-spacing:.17em;text-transform:uppercase;font-weight:760}
.hero{
  position:relative;overflow:hidden;padding:clamp(120px,13vw,210px) 0 clamp(90px,12vw,185px);
  background:
    radial-gradient(ellipse at 85% 48%,rgba(198,219,232,.55),transparent 45%),
    linear-gradient(150deg,#fff 0%,#f8fbfc 54%,#ecf3f7 100%);
}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;pointer-events:none;background:linear-gradient(transparent,#fff)}
.hero-inner{position:relative;z-index:2}
.hero h1{max-width:860px;margin:19px 0 27px;color:#203341;text-shadow:0 4px 20px rgba(35,52,65,.07)}
.hero h1 em{font-style:normal;color:#4a7793}
.lead{font-size:clamp(1.07rem,1.45vw,1.25rem);max-width:680px;line-height:1.77}
.buttons{display:flex;flex-wrap:wrap;gap:24px 38px;margin-top:34px}
.hero-graphic{position:absolute;width:58%;height:100%;right:-4%;top:0;z-index:0;opacity:.8;pointer-events:none;mask-image:linear-gradient(to right,transparent 0,#000 29%,#000 70%,transparent 100%)}
.hero-graphic svg{height:100%;width:100%}
.geo-caption{position:absolute;bottom:21%;right:13%;color:#527691;font-size:.75rem;letter-spacing:.22em;display:flex;align-items:center;gap:12px}
.geo-line{height:1px;width:45px;background:#729aaf;display:block}
.section{padding:clamp(78px,9vw,142px) 0;background:#fff}
.section.alt{background:linear-gradient(160deg,#f7fafc 0%,#fff 48%,#f7fafc 100%)}
.section h2{max-width:1060px;color:#1c2b37;text-shadow:0 5px 18px rgba(32,48,64,.065);margin:12px 0 22px}
.intro{max-width:810px;font-size:clamp(1.01rem,1.3vw,1.14rem);line-height:1.77;margin-bottom:42px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(38px,5vw,72px) clamp(30px,5vw,76px)}
.card{border:0;border-top:1px solid var(--line);border-radius:0;background:none;box-shadow:none;padding:26px 0 0}
.card .number{color:#6e8797;font-size:.8rem;letter-spacing:.14em;font-weight:740}
.card h3{margin:16px 0 10px}
.card p{font-size:1rem;line-height:1.77;margin:0}
.notice{padding:0 0 0 22px;margin:45px 0 5px;background:none;border:0;border-left:2px solid #c2d0da;color:#556575;line-height:1.79;max-width:1040px}
.notice strong{color:#213544}
.status{display:inline-block;border:0;background:none;color:#667b89;padding:0;font-size:.78rem;letter-spacing:.04em;font-weight:760}
.footer{
  background:linear-gradient(180deg,#f2f6f9 0%,#fff 100%);
  border-top:1px solid rgba(255,255,255,.95);
  box-shadow:0 -8px 24px rgba(35,57,74,.13);
  padding:35px 0;font-size:.88rem
}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:23px;flex-wrap:wrap}
.footer-brand{color:#263947;font-size:.99rem;letter-spacing:.08em;font-weight:800}
.footer-brand span,.footer-note{color:#697986;font-weight:400}
.footer-links{display:flex;gap:22px;color:#526877}
.footer-links a:hover{color:#184f76}
/* Dashboard: subtle document separators instead of dark panels / boxed cards. */
.dash{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:calc(100vh - var(--header-size));background:#fff}
.sidebar{background:linear-gradient(180deg,#f7fafc 0%,#fff 100%);border-right:1px solid var(--line);padding:34px 20px;display:flex;flex-direction:column;gap:5px}
.side-label{color:#8a97a2;font-size:.72rem;letter-spacing:.14em;margin:18px 10px 9px;font-weight:740}
.sidebar a{display:block;padding:11px 10px;color:#576775;font-size:.92rem;border-left:2px solid transparent;border-bottom:1px solid transparent}
.sidebar a.active{border-left-color:#7191a5;color:#203748;background:linear-gradient(90deg,rgba(217,230,239,.53),transparent);font-weight:700}
.sidebar a:hover{color:#1d5275}
.rail{margin-top:auto;color:#82909b;padding:22px 10px 2px;font-size:.79rem;line-height:1.7}
.rail p{margin:14px 0 0;font-size:.8rem}
.dash-main{width:100%;max-width:1600px;padding:clamp(28px,4.4vw,64px) clamp(24px,5vw,94px) 100px}
.crumb{color:#85929e;font-size:.78rem;letter-spacing:.045em}
.dash-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:24px 0 33px}
.dash-head h1{font-size:clamp(2.15rem,4vw,3.5rem);line-height:1.12;margin:0}
.dash-head p{margin:12px 0 0;font-size:1rem}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:40px 0 65px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.metric{background:none;border:0;border-right:1px solid var(--line);border-radius:0;padding:25px clamp(13px,3vw,37px)}
.metric:first-child{padding-left:0}
.metric:last-child{border-right:0}
.metric .label{color:#6c7d89;font-size:.82rem}
.metric .value{color:#273b4b;font-size:clamp(1rem,1.8vw,1.4rem);font-weight:640;margin-top:13px}
.panels{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(30px,5vw,68px)}
.panel{border:0;background:transparent;border-radius:0;box-shadow:none;padding:0;margin-bottom:32px}
.panel h2{font-size:1.55rem;letter-spacing:-.02em;font-weight:650;margin:0 0 16px}
.panel p{font-size:.98rem;line-height:1.75}
.table{border-collapse:collapse;width:100%}
.table th{text-align:left;color:#81909b;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;padding:16px 10px 13px;border-bottom:1px solid var(--line)}
.table td{padding:19px 10px;color:#3d5160;font-size:.9rem;border-bottom:1px solid rgba(42,62,80,.09)}
.table td:first-child,.table th:first-child{padding-left:0}
.pill{color:#5c7384;font-size:.78rem;background:none;padding:0}
.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:285px;padding:26px 20px;border:0;border-radius:0;background:radial-gradient(ellipse at center,rgba(226,237,244,.9),transparent 70%),repeating-linear-gradient(125deg,transparent 0,transparent 33px,rgba(122,157,180,.08) 34px,transparent 35px)}
.empty strong{color:#324b5d;font-size:1rem;font-weight:690}
.empty p{max-width:390px;margin:10px auto 0;font-size:.89rem}
.list-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px clamp(30px,4vw,65px);margin-top:35px}
.list-card{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:25px 0}
.list-card strong{font-size:1.02rem;font-weight:690;color:#283d4d}
.list-card p{margin:12px 0 0;font-size:.94rem;line-height:1.73}
.dash-section{scroll-margin-top:110px}
@media(max-width:1050px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panels{grid-template-columns:1fr}
  .hero-graphic{width:62%;opacity:.4}
  .metrics{margin:30px 0 50px}
}
@media(max-width:780px){
  :root{--header-size:72px}
  .shell{width:calc(100% - 38px)}
  .header-link{display:none}
  .brand-word{font-size:1.2rem}
  .brand-word small{font-size:.49rem}
  .brand-symbol{transform:rotate(-28deg) scale(.85);width:37px}
  .hero{padding:110px 0 95px}
  .hero-graphic{width:95%;opacity:.19;right:-28%}
  .hero h1{font-size:clamp(2.55rem,8.6vw,4.6rem)}
  .section{padding:67px 0}
  .grid{grid-template-columns:1fr;gap:36px}
  .menu-drawer{width:79vw;min-width:0;padding:26px 21px}
  .footer{padding:27px 0}
  .footer-inner{flex-direction:column;align-items:start}
  .dash{grid-template-columns:minmax(0,1fr)}
  .sidebar{flex-direction:row;gap:4px;overflow-x:auto;padding:11px 14px;border-right:0;border-bottom:1px solid var(--line)}
  .sidebar a{white-space:nowrap;padding:12px 10px}
  .side-label,.rail{display:none}
  .dash-main{padding:35px 20px 65px}
  .dash-head{align-items:start;flex-direction:column;gap:13px}
  .dash-head h1{font-size:2.5rem}
  .metrics{grid-template-columns:1fr;border-top:0;margin:22px 0 42px}
  .metric,.metric:first-child{padding:19px 0;border:0;border-top:1px solid var(--line)}
  .metric:last-child{border-bottom:1px solid var(--line)}
  .list-cards{grid-template-columns:1fr;gap:9px}
  .table{display:block;overflow-x:auto}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .button,.menu-toggle span{transition:none}
}
