/* SnapDue Ledger — final approved web/admin theme.
   Values mirror snapdue-teslim/tokens.json; legacy styles remain below this
   layer only for layout compatibility. */
:root{
  --ink:#17251E;
  --muted:#55665D;
  --line:#E1E7E2;
  --canvas:#F6F7F4;
  --surface:#FFFFFF;
  --indigo:#2F6B4F;
  --indigo-dark:#1E3A2E;
  --mint:#E9F0EA;
  --danger:#94413B;
  --story-night:#17251E;
  --story-blue:#2F6B4F;
  --story-violet:#8F4E2C;
  --story-aqua:#9AC6AA;
  --shadow:0 18px 54px rgba(23,37,30,.10);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--canvas);
}

html,body,button,input,select,textarea{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
body,.public-body,.admin-body{background:var(--canvas);color:var(--ink)}
::selection{color:#fff;background:#2F6B4F}

/* Public navigation and legal/support pages */
.public-nav,.admin-topbar{
  border-color:rgba(23,37,30,.10);
  background:rgba(246,247,244,.92);
  box-shadow:0 14px 42px rgba(23,37,30,.07);
  backdrop-filter:blur(22px);
}
.public-nav nav a,.admin-topbar nav a{color:#55665D}
.public-nav nav a:hover,.admin-topbar nav a:hover{color:#1E3A2E}
.brand img.brand-wordmark,.admin-topbar .brand img.brand-wordmark{width:150px;height:auto;border-radius:0;object-fit:contain}
.legal-shell h1,.login-card h1,.admin-heading h1,.panel-heading h2,.metric-grid strong{color:#17251E;letter-spacing:-.045em}
.legal-copy,.login-card,.admin-panel,.metric-grid article{
  border:1px solid #E1E7E2;
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 44px rgba(23,37,30,.055);
}
.legal-copy p,.lead,.legal-updated,.empty-copy,.panel-heading p,.admin-heading p{color:#55665D}
.legal-copy a,.panel-heading>a{color:#2F6B4F}
.stack-form input,.stack-form select,.stack-form textarea{border-color:#C6D0C7;border-radius:10px;color:#17251E}
.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{border-color:#2F6B4F;box-shadow:0 0 0 3px rgba(47,107,79,.12)}
.primary-button{border-radius:10px;background:#1E3A2E}
.primary-button:hover{background:#2F6B4F}
.quiet-button{background:#E9F0EA;color:#1E3A2E}
.eyebrow,.panel-heading span,.admin-heading span{color:#2F6B4F}

/* Ledger landing */
.story-landing{background:#F6F7F4;color:#17251E}
.story-topbar{
  border:1px solid rgba(23,37,30,.09);
  background:rgba(246,247,244,.90);
  box-shadow:0 18px 48px rgba(23,37,30,.07);
}
.story-topbar>a img{width:158px;filter:none}
.story-language{border-color:#C6D0C7;background:#EDEFE8}
.story-language a{color:#55665D}
.story-language a.is-active{color:#fff;background:#1E3A2E}
.story-hero{
  background:
    linear-gradient(rgba(47,107,79,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(47,107,79,.055) 1px,transparent 1px),
    #F6F7F4;
  background-size:52px 52px;
}
.story-hero:before{
  background:radial-gradient(circle at 76% 38%,rgba(47,107,79,.13),transparent 31%),radial-gradient(circle at 19% 18%,rgba(143,78,44,.07),transparent 25%);
}
.story-aurora i{background:rgba(47,107,79,.13)!important;filter:blur(55px)}
.story-aurora i:nth-child(2){background:rgba(143,78,44,.10)!important}
.story-aurora i:nth-child(3){background:rgba(154,198,170,.18)!important}
.story-kicker{color:#2F6B4F;border-color:#C6D0C7;background:rgba(255,255,255,.65)}
.story-kicker i{background:#2F6B4F;box-shadow:0 0 0 5px rgba(47,107,79,.12)}
.story-hero h1,.story-intro h2,.story-steps h2{color:#17251E}
.story-hero h1 em,.story-intro h2 em,.story-steps h2 em{color:#2F6B4F}
.story-hero-copy>p,.story-trust{color:#55665D}
.story-store{border-color:#17251E;border-radius:11px;background:#17251E;box-shadow:0 14px 34px rgba(23,37,30,.16)}
.story-store:hover{border-color:#2F6B4F;box-shadow:0 18px 42px rgba(23,37,30,.21)}
.story-store-apple{background:#fff;color:#17251E;border-color:#C6D0C7}
.hero-device-stage:before{border-radius:0;background:#E9F0EA;box-shadow:inset 0 0 0 1px #C6D0C7;transform:rotate(-4deg)}
.hero-orbit{border-color:rgba(47,107,79,.18)}
.hero-orbit:before,.hero-orbit:after{border-color:rgba(47,107,79,.12)}
.hero-orbit i,.hero-orbit i:nth-child(2),.hero-orbit i:nth-child(3){border-radius:0;background:#2F6B4F;box-shadow:none}
.story-phone{border-color:#17251E;background:#17251E;box-shadow:0 48px 96px rgba(23,37,30,.24)}
.story-phone-camera{background:#17251E}
.hero-chip{border-color:#E1E7E2;border-radius:12px;background:rgba(255,255,255,.93);box-shadow:0 14px 38px rgba(23,37,30,.12)}
.hero-chip b{border-radius:8px;background:#1E3A2E}
.hero-chip-right b{color:#1E3A2E;background:#E9F0EA}
.story-scroll-cue{color:#55665D}
.story-scroll-cue span{border-color:#C6D0C7}
.story-scroll-cue span:after{background:#2F6B4F}
.story-scroll-cue:before{background:linear-gradient(90deg,transparent,#2F6B4F)}
.story-scroll-cue:after{background:linear-gradient(90deg,#2F6B4F,transparent)}
.story-intro,.story-steps{background:#fff}
.story-intro>span,.story-steps header>span{color:#2F6B4F}

.product-story{color:#fff;background:#17251E}
.product-story:before{background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),radial-gradient(circle at 22% 22%,rgba(47,107,79,.32),transparent 32%);background-size:64px 64px,64px 64px,auto}
.story-halo{background:radial-gradient(circle,rgba(154,198,170,.20),rgba(47,107,79,.14) 42%,transparent 68%)}
.story-halo:before,.story-halo:after{border-color:rgba(154,198,170,.16)}
.story-progress:before{background:rgba(255,255,255,.14)}
.story-progress span{background:#9AC6AA}
.story-progress i{border-color:#7F9187;background:#17251E}
.story-progress i.is-active{border-color:#9AC6AA;background:#9AC6AA;box-shadow:0 0 0 5px rgba(154,198,170,.12)}
.story-chapter>span,.chapter-detail{color:#9AC6AA}
.story-chapter p{color:#C6D0C7}
.chapter-detail i{background:#9AC6AA;box-shadow:0 0 0 7px rgba(154,198,170,.10)}
.steps-track article{border-color:#E1E7E2;border-radius:18px;background:#F6F7F4;box-shadow:0 16px 46px rgba(23,37,30,.06)}
.steps-track article b{border-radius:8px;background:#1E3A2E;box-shadow:none}
.steps-track article p{color:#55665D}
.steps-track>i{background:#C6D0C7}
.story-privacy{border-radius:28px;background:linear-gradient(152deg,#22412F,#17251E);box-shadow:0 38px 88px rgba(23,37,30,.22)}
.story-privacy:before{border-color:rgba(255,255,255,.10)}
.story-privacy>div>span{color:#9AC6AA}
.story-privacy h2 em{color:#9AC6AA}
.story-privacy li{color:#E9F0EA}
.story-privacy li b{border-radius:8px;color:#1E3A2E;background:#9AC6AA}
.story-closing{background:#17251E}
.story-closing:before{background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px)}
.closing-glow{background:radial-gradient(circle,rgba(47,107,79,.40),rgba(154,198,170,.09) 42%,transparent 70%)}
.story-closing>span{color:#9AC6AA}
.story-closing h2 em{color:#9AC6AA}
.story-closing>p{color:#C6D0C7}
.story-footer nav a,.story-footer p{color:#55665D}
.story-footer nav a:hover{color:#2F6B4F}
.story-footer>span{border-color:#E1E7E2;color:#7F9187}

/* Admin */
.admin-body{background:#F6F7F4}
.admin-topbar{background:rgba(246,247,244,.94)}
.admin-language{border-color:#C6D0C7;background:#EDEFE8}
.admin-language a{color:#55665D}
.admin-language a.is-active{color:#fff;background:#1E3A2E}
.metric-grid .privacy-metric{background:linear-gradient(152deg,#22412F,#17251E)}
.metric-grid .privacy-metric strong{color:#9AC6AA}
.metric-grid .privacy-metric span,.metric-grid .privacy-metric small{color:#E9F0EA}
.metric-grid article:after{border-color:rgba(47,107,79,.06)}
.compact-form{background:#F6F7F4}
.status{background:#EDEFE8;color:#55665D}
.status-new{color:#8F4E2C;background:#F7E7DC}
.status-open{color:#2F6B4F;background:#E9F0EA}
.status-resolved{color:#1E3A2E;background:#DCEBE0}
.status-spam{color:#94413B;background:#F4E2E0}
.notification-item{border-color:#E1E7E2;background:#fff}
.notification-item span{color:#2F6B4F}
.notification-item p{color:#55665D}

@media(max-width:760px){
  .story-hero{background-size:38px 38px}
  .product-story{background:#17251E}
  .story-topbar{background:rgba(246,247,244,.94)}
  .admin-topbar nav{background:#F6F7F4;border-color:#E1E7E2}
}

/* Fixed, panel-free public header */
.story-topbar{
  position:fixed;
  z-index:100;
  top:max(20px,env(safe-area-inset-top));
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.story-topbar>a img{
  filter:drop-shadow(0 1px 0 rgba(246,247,244,.88)) drop-shadow(0 8px 20px rgba(23,37,30,.16));
}
.story-language{
  border-color:rgba(23,37,30,.10);
  background:rgba(237,239,232,.82);
  box-shadow:0 8px 24px rgba(23,37,30,.10);
  backdrop-filter:blur(16px);
}

@media(max-width:760px){
  .story-topbar{
    position:fixed;
    top:max(10px,env(safe-area-inset-top));
    width:calc(100% - 24px);
    background:transparent;
  }
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
