/* =========================================================================
   Wellbeing Check-In — page styles, built on assets/site.css
   ========================================================================= */

.ck-app{max-width:780px;margin-inline:auto;padding:0 clamp(1.1rem,4vw,1.5rem) var(--s-8);}

/* progress strip under the site nav */
.ck-progress{
  border-top:1px solid var(--line-soft);
  max-width:780px;margin-inline:auto;
  padding:.55rem clamp(1.1rem,4vw,1.5rem) .7rem;
  display:flex;align-items:center;gap:.9rem;
}
.ck-progress__title{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
                    color:var(--sage-deep);white-space:nowrap;}
.ck-progress__track{flex:1;height:7px;border-radius:99px;background:var(--line-soft);overflow:hidden;}
.ck-progress__fill{display:block;height:100%;width:0;border-radius:99px;
                   background:linear-gradient(90deg,#8a9470,var(--sage-deep));
                   transition:width .5s cubic-bezier(.4,0,.1,1);}
.ck-progress__meta{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;min-width:5rem;}
.ck-progress__phase{font-size:.74rem;font-weight:700;color:var(--sage-deep);white-space:nowrap;}
.ck-progress__time{font-size:.7rem;font-weight:600;color:var(--ink-3);white-space:nowrap;}
@media(max-width:600px){
  .ck-progress__title,.ck-progress__phase{display:none;}
  .ck-progress__meta{min-width:0;}
}

/* ------------------------------------------------------------- screens */
.screen{animation:rise .45s cubic-bezier(.2,.7,.2,1);}
.ck-app .card{margin-top:var(--s-5);}
.ck-app h1{font-size:clamp(1.85rem,1.35rem + 2vw,2.7rem);}
.ck-app h2{font-size:clamp(1.4rem,1.2rem + 1vw,1.9rem);}
.ck-app h3{font-size:1.1rem;}

.welcome-card{padding:clamp(1.6rem,4vw,2.75rem);}
.welcome-card .lead{max-width:44ch;}
.welcome-card .meta-bar{margin:var(--s-5) 0 0;}
.fineprint{font-size:.85rem;color:var(--ink-3);margin-top:var(--s-4);}
.linkbtn{background:none;border:none;padding:0;font:inherit;font-size:.85rem;
         color:var(--sage-deep);font-weight:650;cursor:pointer;
         text-decoration:underline;text-underline-offset:3px;}
.linkbtn:hover{color:var(--ink);}
.disclaimer-collapse{background:var(--shell);border:1px solid var(--line);border-radius:var(--radius-sm);
                     padding:.9rem 1.1rem;margin-top:.9rem;font-size:.88rem;color:var(--ink-2);}
.disclaimer-collapse ul{margin:0;padding-left:1.1rem;}
.disclaimer-collapse li{margin:.35rem 0;}
.crisisline{font-size:.85rem;color:var(--ink-2);border-top:1px solid var(--line-soft);
            padding-top:var(--s-3);margin-top:var(--s-4);}
.crisisline strong{color:var(--clay-deep);}

.section-intro-note{
  font-size:.92rem;color:var(--ink-2);background:var(--shell);
  border:1px dashed var(--line);border-radius:var(--radius-sm);
  padding:.9rem 1.1rem;margin:var(--s-4) 0 0;
}

/* ------------------------------------------------------- likert scale */
.statement{padding:var(--s-4) 0;border-top:1px solid var(--line-soft);}
.statement:first-of-type{border-top:none;padding-top:var(--s-2);}
.stmt-text{font-size:1.02rem;font-weight:650;color:var(--ink);margin:0 0 .85rem;line-height:1.45;max-width:none;}
.stmt-num{color:var(--sage);font-weight:700;margin-right:.4em;}
.scale{display:flex;gap:.5rem;}
.opt{
  flex:1;min-width:0;cursor:pointer;border:1.5px solid var(--line);
  background:var(--paper);border-radius:var(--radius-sm);
  padding:.7rem .25rem .55rem;font-family:inherit;
  display:flex;flex-direction:column;align-items:center;gap:.35rem;
  min-height:64px;transition:transform .12s,border-color .15s,background .15s,box-shadow .15s;
}
.opt:hover{transform:translateY(-2px);border-color:var(--sage);}
.opt .dot{
  width:28px;height:28px;border-radius:50%;border:2px solid var(--c,#c9c5b6);
  display:grid;place-items:center;font-weight:700;font-size:.85rem;color:var(--c,#9a9789);
  transition:all .15s;
}
.opt .lbl{font-size:.66rem;font-weight:700;color:var(--ink-3);line-height:1.2;text-align:center;
          min-height:2.2em;display:flex;align-items:center;}
.opt[data-v="1"]{--c:#6f7b5c;} .opt[data-v="2"]{--c:#8a9470;}
.opt[data-v="3"]{--c:#7d719f;} .opt[data-v="4"]{--c:#c19a5f;}
.opt[data-v="5"]{--c:#b5715a;}
.opt.sel{border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,white);
         box-shadow:0 8px 20px -14px var(--c);}
.opt.sel .dot{background:var(--c);border-color:var(--c);color:#fff;transform:scale(1.06);}
.opt.sel .lbl{color:var(--ink);}
@media(max-width:560px){
  .opt .lbl{display:none;}
  .opt{padding:.8rem .25rem;min-height:56px;}
  .opt .dot{width:32px;height:32px;font-size:1rem;}
}

/* ------------------------------------------------------ choice cards */
.choiceblock + .choiceblock{margin-top:var(--s-5);border-top:1px solid var(--line-soft);padding-top:var(--s-4);}
.choice-q{font-size:1.02rem;font-weight:650;color:var(--ink);margin-bottom:.85rem;max-width:none;}
.choices{display:flex;flex-direction:column;gap:.55rem;}
.choice{
  display:flex;align-items:center;gap:.8rem;cursor:pointer;min-height:52px;
  border:1.5px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);
  padding:.75rem 1rem;transition:all .14s;font-weight:550;color:var(--ink);
}
.choice:hover{border-color:var(--iris);}
.choice .tick{width:22px;height:22px;border-radius:50%;border:2px solid #cdc7dd;flex:none;
              display:grid;place-items:center;transition:all .15s;}
.choice.sel{border-color:var(--iris);background:var(--iris-soft);}
.choice.sel .tick{background:var(--iris);border-color:var(--iris);}
.choice.sel .tick::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;}

/* --------------------------------------------------------- navigation */
.ck-nav{display:flex;justify-content:space-between;align-items:center;gap:.9rem;
        margin-top:var(--s-5);flex-wrap:wrap;}
.ck-nav__right{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;}
.btn-soft{background:var(--shell);color:var(--ink);border-color:var(--line);}
.btn-soft:hover{background:var(--line-soft);}
.skip-link{background:none;border:none;color:var(--ink-3);font:inherit;font-size:.85rem;
           font-weight:650;cursor:pointer;text-decoration:underline;text-underline-offset:3px;
           padding:.5rem 0;}
.skip-link:hover{color:var(--ink-2);}

/* ------------------------------------------------------ notices, lists */
.notice{border-radius:var(--radius-sm);padding:1rem 1.1rem;margin:var(--s-3) 0;font-size:.92rem;}
.notice.info{background:var(--iris-soft);border:1px solid var(--iris-line);}
.notice.warn{background:#f7efdd;border:1px solid #e6d5b4;color:#7b6128;}
.checklist{list-style:none;padding:0;margin:.7rem 0 0;}
.checklist li{position:relative;padding:.35rem 0 .35rem 1.7rem;color:var(--ink-2);font-size:.93rem;}
.checklist li::before{
  content:"";position:absolute;left:.25rem;top:.85em;width:9px;height:5px;
  border-left:2px solid var(--sage);border-bottom:2px solid var(--sage);transform:rotate(-45deg);
}
.consent-row{display:flex;align-items:flex-start;gap:.8rem;background:var(--shell);
             border:1px solid var(--line);border-radius:var(--radius-sm);padding:1rem;
             margin-top:var(--s-4);cursor:pointer;}
.consent-row input{margin-top:.2rem;width:20px;height:20px;accent-color:var(--sage-deep);flex:none;}
.consent-row span{font-size:.93rem;color:var(--ink);font-weight:500;}

/* --------------------------------------------------------- crisis page */
.crisis-card{border:1px solid var(--clay-line);background:var(--clay-soft);}
.crisis-card .ico-badge{background:#fff;color:var(--clay-deep);margin-bottom:var(--s-3);}
.crisis-lines{display:grid;gap:.6rem;margin:var(--s-4) 0;}
.crisis-line{display:flex;align-items:center;gap:.9rem;background:#fff;border:1px solid var(--clay-line);
             border-radius:var(--radius-sm);padding:.85rem 1rem;}
.crisis-line .big{font-family:'Fraunces',Georgia,serif;font-size:1.35rem;font-weight:600;
                  color:var(--clay-deep);flex:none;}
.crisis-line .meta{font-size:.85rem;color:var(--ink-2);}
.crisis-line .meta b{color:var(--ink);display:block;font-size:.95rem;}

/* ------------------------------------------------------------ results */
.result-hero{
  border-radius:var(--radius);padding:clamp(1.75rem,4vw,2.75rem);color:#fff;
  box-shadow:var(--shadow);margin-top:var(--s-5);position:relative;overflow:hidden;
}
.result-hero .eyebrow{background:rgba(255,255,255,.2);color:#fff;border-radius:99px;padding:.4em 1em;}
.result-hero h1{color:#fff;margin-bottom:.6rem;}
.result-hero p{color:rgba(255,255,255,.93);max-width:62ch;}
.lvl-low{background:linear-gradient(135deg,#6f7d55,#525c3d);}
.lvl-strain{background:linear-gradient(135deg,#8378ab,#5f5581);}
.lvl-moderate{background:linear-gradient(135deg,#bd9451,#96702c);}
.lvl-elevated{background:linear-gradient(135deg,#bd7c56,#96552f);}
.lvl-urgent{background:linear-gradient(135deg,#a95a45,#7f3b2c);}

.meter{height:9px;border-radius:99px;background:rgba(255,255,255,.28);margin:var(--s-4) 0 .5rem;
       max-width:26rem;overflow:hidden;}
.meter > span{display:block;height:100%;border-radius:99px;background:#fff;width:0;
              transition:width 1s cubic-bezier(.3,.7,.2,1);}
.meter-ticks{display:flex;justify-content:space-between;max-width:26rem;
             font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
             color:rgba(255,255,255,.85);}

.res-tabs{display:flex;gap:.35rem;margin:var(--s-5) 0 0;padding:.3rem;
          border-radius:99px;border:1px solid var(--line);background:var(--paper);
          position:sticky;top:calc(var(--nav-h) + 4px);z-index:30;}
.res-tab{flex:1;text-align:center;padding:.6rem .4rem;border-radius:99px;font-weight:650;
         font-size:.85rem;color:var(--ink-2);cursor:pointer;border:none;background:none;
         font-family:inherit;min-height:44px;transition:all .15s;}
.res-tab.active{background:var(--sage-deep);color:#fff;}
@media(max-width:820px){.res-tabs{top:4px;}}
@media(max-width:480px){.res-tab{font-size:.78rem;padding:.6rem .2rem;}}

/* Result blocks are separated by a hairline and a wide gap rather than by
   another box — the same spine the rest of the site uses. */
.block-title{display:flex;align-items:center;gap:.8rem;
             margin:var(--s-7) 0 var(--s-4);padding-bottom:var(--s-3);
             border-bottom:1px solid var(--line);}
.block-title h2{margin:0;flex:1;}
.block-title .chip{margin-left:auto;}

.issue{display:flex;align-items:center;gap:.9rem;background:var(--paper);border:1px solid var(--line-soft);
       border-radius:var(--radius-sm);padding:.9rem 1rem;margin-bottom:.6rem;box-shadow:var(--shadow-sm);}
.issue .body{flex:1;min-width:0;}
.issue .body b{font-size:1rem;color:var(--ink);display:block;}
.issue .body .sub{font-size:.8rem;color:var(--ink-3);}

.chip{font-size:.68rem;font-weight:700;padding:.35em .85em;border-radius:99px;
      letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;}
.chip.low{background:var(--sage-soft);color:var(--sage-deep);}
.chip.mild{background:var(--iris-soft);color:var(--iris-deep);}
.chip.moderate{background:#f3e8d2;color:#8a6b28;}
.chip.elevated{background:var(--clay-soft);color:var(--clay-deep);}

.detail{background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius-sm);
        padding:1.15rem 1.25rem;margin-bottom:.75rem;box-shadow:var(--shadow-sm);}
.detail .dhead{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem;}
.detail .dhead b{font-size:1.02rem;color:var(--ink);}
.detail p{margin:0;font-size:.93rem;max-width:none;}
.pattern{border-left:3px solid var(--iris);padding:.3rem 0 .3rem 1rem;margin:.9rem 0;}
.pattern b{color:var(--iris-deep);font-size:.95rem;}
.pattern .dsm{font-size:.87rem;color:var(--ink-2);margin-top:.25rem;}

.flagrow{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem;}
.flag{font-size:.78rem;font-weight:650;padding:.35em .85em;border-radius:99px;
      background:var(--shell);color:var(--ink-3);display:inline-flex;align-items:center;gap:.35em;}
.flag.on{background:#f3e8d2;color:#8a6b28;}
.flag .ico{width:14px;height:14px;}

/* resource groups inside results */
.res-group{margin-bottom:var(--s-4);}
.res-group h3{display:flex;align-items:center;gap:.6rem;font-size:1rem;margin-bottom:.6rem;}
.res-group h3 .tag{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
                   color:var(--sage-deep);background:var(--sage-soft);padding:.25em .7em;border-radius:99px;}
.res-list{display:grid;gap:.5rem;}
.res-list .res-item{display:flex;align-items:flex-start;gap:.7rem;background:var(--paper);
                    border:1px solid var(--line-soft);border-radius:10px;padding:.7rem .85rem;}
.res-list .rdot{width:7px;height:7px;border-radius:50%;background:var(--sage);margin-top:.5rem;flex:none;}
.res-list a{color:var(--sage-deep);font-weight:650;text-decoration:none;
            border-bottom:1.5px solid var(--sage-soft);}
.res-list a:hover{border-color:var(--sage);}
.res-list .rname{font-weight:650;color:var(--ink);}
.res-list .rnote{font-size:.82rem;color:var(--ink-3);display:block;margin-top:.1rem;}

details.fulldir{margin-top:var(--s-3);border:1px solid var(--line-soft);border-radius:var(--radius-sm);
                background:var(--paper);overflow:hidden;}
details.fulldir summary{cursor:pointer;padding:1rem 1.1rem;font-weight:650;color:var(--ink);
                        list-style:none;display:flex;align-items:center;gap:.6rem;min-height:52px;}
details.fulldir summary::-webkit-details-marker{display:none;}
details.fulldir summary .ico{margin-left:auto;color:var(--ink-3);transition:transform .2s;}
details.fulldir[open] summary .ico{transform:rotate(180deg);}
details.fulldir .dir-body{padding:0 1.1rem 1.1rem;}

.disclaimer-final{font-size:.85rem;color:var(--ink-2);background:var(--shell);
                  border:1px dashed var(--line);border-radius:var(--radius-sm);
                  padding:1rem 1.1rem;margin-top:var(--s-5);}
.result-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:var(--s-5);}

.ck-foot{text-align:center;margin-top:var(--s-5);font-size:.78rem;color:var(--ink-3);}
