/* ORBION MARITIME — shared design system (light / night themes) */
:root{
  --brand-ink:#1b2740;
  --accent:#1f9fc4;          /* maritime cyan */
  --accent-2:#4fd6d0;        /* aqua glow */
  --accent-3:#7aa2ff;        /* horizon blue */
  --danger:#e5484d;
  --ok:#2fb479;

  /* light (day) */
  --bg:#eef2f8;
  --bg-2:#dbe4f0;
  --panel:rgba(255,255,255,.82);
  --panel-solid:#ffffff;
  --panel-line:rgba(27,39,64,.12);
  --panel-shadow:0 24px 60px -24px rgba(20,33,61,.45);
  --text:#141d31;
  --muted:#5c6a85;
  --field:rgba(255,255,255,.7);
  --field-line:rgba(27,39,64,.16);
  --logo:url('/assets/om-logo.png');
  --mark:url('/assets/om-mark.png');
  --glow:rgba(31,159,196,.25);
  --scrim:rgba(230,236,245,.7);
}
:root[data-theme="night"]{
  --bg:#060b16;
  --bg-2:#0b1424;
  --panel:rgba(16,25,43,.72);
  --panel-solid:#101a2d;
  --panel-line:rgba(120,150,200,.16);
  --panel-shadow:0 30px 70px -20px rgba(0,0,0,.7);
  --text:#eaf1fb;
  --muted:#8fa3c4;
  --field:rgba(9,16,30,.6);
  --field-line:rgba(130,160,210,.22);
  /* keep the logo in its original brand colours in every theme */
  --logo:url('/assets/om-logo.png');
  --mark:url('/assets/om-mark.png');
  --glow:rgba(79,214,208,.28);
  --scrim:rgba(6,11,22,.6);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:'Segoe UI',system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  overflow:hidden;
}
.mono{font-family:'Consolas','SFMono-Regular',ui-monospace,'Roboto Mono',monospace;letter-spacing:.14em;text-transform:uppercase}

/* brand lockups */
.logo-wordmark{background:var(--logo) center/contain no-repeat;display:inline-block}
.logo-mark{background:var(--mark) center/contain no-repeat;display:inline-block}

/* theme toggle */
.theme-toggle{
  position:relative;width:60px;height:30px;border-radius:30px;cursor:pointer;
  border:1px solid var(--field-line);background:var(--field);
  transition:background .4s ease,border-color .4s ease;flex:0 0 auto;
}
.theme-toggle .knob{
  position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;
  background:linear-gradient(140deg,#ffd66b,#ff9d3c);
  box-shadow:0 2px 10px rgba(255,170,60,.55);
  transition:transform .45s cubic-bezier(.6,-0.4,.3,1.4),background .45s ease,box-shadow .45s ease;
}
:root[data-theme="night"] .theme-toggle .knob{
  transform:translateX(30px);
  background:radial-gradient(circle at 35% 35%,#dce8ff,#9fb6e6);
  box-shadow:0 2px 12px rgba(120,160,255,.5),inset -5px -3px 0 -2px rgba(90,120,180,.6);
}
.theme-toggle .ic{position:absolute;top:7px;font-size:13px;line-height:16px;opacity:.65;transition:opacity .3s}
.theme-toggle .ic.sun{left:8px}
.theme-toggle .ic.moon{right:8px}
:root[data-theme="night"] .ic.sun{opacity:.25}
:root:not([data-theme="night"]) .ic.moon{opacity:.25}

button,input{font-family:inherit}
a{color:inherit}
::selection{background:var(--accent);color:#fff}
