/* ========================================================================
   BEYOND CARE v132 — LEARNER-PAGE SCRAPBOOK MATERIAL SYSTEM
   Material-only pass for the four learner-facing destinations:
   Courses, My Journal, Resource Studio and Events.

   The page structures, data flows, allocation rules, buttons and interaction
   logic are deliberately untouched. This file adds tactile paper, deckled
   edges, layered shadows, tape and hand-finished details to the existing
   compositions.
   ======================================================================== */

:root{
  --bc-scrap-a:url('./assets/scrapbook-v132/card-a.png');
  --bc-scrap-b:url('./assets/scrapbook-v132/card-b.png');
  --bc-scrap-c:url('./assets/scrapbook-v132/card-c.png');
  --bc-scrap-wide-a:url('./assets/scrapbook-v132/sheet-wide-a.png');
  --bc-scrap-wide-b:url('./assets/scrapbook-v132/sheet-wide-b.png');
  --bc-scrap-tall-a:url('./assets/scrapbook-v132/sheet-tall-a.png');
  --bc-scrap-tall-b:url('./assets/scrapbook-v132/sheet-tall-b.png');
  --bc-scrap-note:url('./assets/scrapbook-v132/note-small.png');
  --bc-scrap-shadow:drop-shadow(0 2px 1px rgba(93,67,42,.07)) drop-shadow(0 12px 10px rgba(68,48,31,.12));
  --bc-scrap-shadow-soft:drop-shadow(0 8px 8px rgba(68,48,31,.09));
}

/* Shared paper-grain wash behind each learner destination. */
body .reflection-shell,
body .services-page,
body .resource-scrapbook-v123{
  position:relative!important;
  isolation:isolate!important;
}
body .reflection-shell::before,
body .services-page::before,
body .resource-scrapbook-v123::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:
    linear-gradient(112deg,rgba(255,255,255,.13),rgba(178,143,99,.035) 48%,rgba(255,255,255,.12)),
    url('./assets/diary-paper-texture.jpg');
  background-size:auto,1180px auto;
  background-position:center top;
  opacity:.23;
  mix-blend-mode:multiply;
}

/* Match the handwritten eyebrow language used on the locked Courses and
   Resource Studio pages without changing any copy or layout. */
body .reflection-shell .welcome-eyebrow,
body .services-page .welcome-eyebrow{
  position:relative!important;
  display:inline-block!important;
  color:#1b1713!important;
  font:600 18px/1.05 'Caveat',cursive!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  padding-bottom:8px!important;
}
body .reflection-shell .welcome-eyebrow::after,
body .services-page .welcome-eyebrow::after{
  content:'';
  position:absolute;
  left:0;
  bottom:1px;
  width:112%;
  height:2px;
  border-radius:999px;
  background:#d51b21;
  transform:rotate(-1deg);
}

/* ------------------------------------------------------------------------
   MY JOURNAL
   ------------------------------------------------------------------------ */
body .reflection-head{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
}
body .reflection-head::before{
  content:'';
  position:absolute;
  inset:-22px -27px -25px -27px;
  z-index:-1;
  pointer-events:none;
  background:var(--bc-scrap-wide-a) center/100% 100% no-repeat;
  filter:var(--bc-scrap-shadow);
  transform:rotate(-.08deg);
}
body .reflection-head::after{
  content:'';
  position:absolute;
  top:-19px;
  right:52px;
  width:96px;
  height:25px;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(226,209,179,.34),rgba(231,216,189,.78),rgba(226,209,179,.4));
  border:1px solid rgba(125,98,65,.08);
  box-shadow:0 3px 8px rgba(64,44,27,.06);
  transform:rotate(3.2deg);
  opacity:.84;
}

body .reflection-panel{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-tall-a)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow-soft);
}
body .reflection-checkpoint-panel{
  background-image:var(--bc-scrap-tall-b)!important;
  transform:rotate(-.035deg);
}
body .reflection-grid>.reflection-panel{
  background-image:var(--bc-scrap-tall-a)!important;
  transform:rotate(.035deg);
}

body .reflection-panel input:not([type='checkbox']),
body .reflection-panel select,
body .reflection-panel textarea,
body .journal-entry textarea{
  border:1px solid rgba(89,67,47,.16)!important;
  border-radius:4px!important;
  background-color:#fffaf1!important;
  background-image:
    linear-gradient(rgba(255,255,255,.42),rgba(249,241,228,.28)),
    url('./assets/diary-paper-texture.jpg')!important;
  background-size:auto,620px auto!important;
  color:#211b16!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 3px 8px rgba(70,49,30,.035)!important;
}
body .reflection-panel input:focus,
body .reflection-panel select:focus,
body .reflection-panel textarea:focus,
body .journal-entry textarea:focus{
  border-color:rgba(213,27,33,.38)!important;
  outline:3px solid rgba(213,27,33,.06)!important;
  outline-offset:1px!important;
}

body .reflection-checkpoint-list{
  overflow:visible!important;
}
body .reflection-checkpoint-list .course-reflection-activity{
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-a)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow-soft);
  overflow:visible!important;
}
body .reflection-checkpoint-list .course-reflection-activity:nth-child(3n+2){
  background-image:var(--bc-scrap-b)!important;
  transform:rotate(.08deg);
}
body .reflection-checkpoint-list .course-reflection-activity:nth-child(3n){
  background-image:var(--bc-scrap-c)!important;
  transform:rotate(-.06deg);
}
body .reflection-checkpoint-list .course-reflection-activity.complete{
  background-image:
    linear-gradient(rgba(47,125,86,.055),rgba(47,125,86,.055)),
    var(--bc-scrap-a)!important;
  background-blend-mode:multiply,normal!important;
}
body .reflection-checkpoint-list .course-reflection-activity.locked{
  background-image:
    linear-gradient(rgba(120,112,103,.075),rgba(120,112,103,.075)),
    var(--bc-scrap-c)!important;
  background-blend-mode:multiply,normal!important;
  opacity:.68;
}

body .journal-entry{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-a)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow-soft);
}
body #journalEntries .journal-entry:nth-child(3n+2){
  background-image:var(--bc-scrap-b)!important;
  transform:rotate(.06deg);
}
body #journalEntries .journal-entry:nth-child(3n){
  background-image:var(--bc-scrap-c)!important;
  transform:rotate(-.06deg);
}
body .reflection-empty{
  border:0!important;
  border-radius:0!important;
  background:transparent var(--bc-scrap-note) center/100% 100% no-repeat!important;
  filter:var(--bc-scrap-shadow-soft);
  font-family:'Caveat',cursive!important;
  font-size:20px!important;
  color:#62584e!important;
}
body .reflection-admin-warning{
  border:0!important;
  border-radius:0!important;
  background:transparent var(--bc-scrap-note) center/100% 100% no-repeat!important;
  filter:var(--bc-scrap-shadow-soft);
}
body .reflection-toolbar{
  position:relative;
  z-index:1;
}
body .journal-badge{
  border-radius:3px!important;
  border-color:rgba(86,64,44,.14)!important;
  background:#fbf4e8!important;
  box-shadow:0 2px 4px rgba(66,46,29,.03)!important;
}

/* ------------------------------------------------------------------------
   EVENTS
   ------------------------------------------------------------------------ */
body .services-header{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
}
body .services-header::before{
  content:'';
  position:absolute;
  inset:-24px -30px -27px -30px;
  z-index:-1;
  pointer-events:none;
  background:var(--bc-scrap-wide-b) center/100% 100% no-repeat;
  filter:var(--bc-scrap-shadow);
  transform:rotate(.05deg);
}
body .services-header::after{
  content:'';
  position:absolute;
  top:-22px;
  right:58px;
  width:94px;
  height:24px;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(228,212,184,.38),rgba(232,218,192,.78),rgba(224,205,174,.38));
  border:1px solid rgba(119,88,56,.08);
  transform:rotate(-3deg);
  box-shadow:0 3px 8px rgba(61,43,28,.055);
}
body .services-header h1{
  color:#17130f!important;
}
body .service-toolbar h2{
  position:relative!important;
  display:inline-block!important;
  padding-bottom:8px!important;
}
body .service-toolbar h2::after{
  content:'';
  position:absolute;
  left:0;
  bottom:1px;
  width:78%;
  height:2px;
  background:#d51b21;
  border-radius:999px;
  transform:rotate(-.8deg);
}

body .service-admin-panel{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-tall-b)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow);
}
body .service-form-grid input,
body .service-form-grid select,
body .service-form-grid textarea,
body .booking-row select{
  border:1px solid rgba(88,65,45,.17)!important;
  border-radius:4px!important;
  background-color:#fffaf1!important;
  background-image:
    linear-gradient(rgba(255,255,255,.42),rgba(249,241,228,.22)),
    url('./assets/diary-paper-texture.jpg')!important;
  background-size:auto,620px auto!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;
}

body .service-grid{
  overflow:visible!important;
}
body .service-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-a)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow);
}
body .service-grid .service-card:nth-child(3n+2){
  background-image:var(--bc-scrap-b)!important;
  transform:rotate(.07deg);
}
body .service-grid .service-card:nth-child(3n){
  background-image:var(--bc-scrap-c)!important;
  transform:rotate(-.07deg);
}
body .service-card:hover{
  transform:translateY(-2px) rotate(-.03deg)!important;
  filter:drop-shadow(0 3px 1px rgba(93,67,42,.07)) drop-shadow(0 16px 13px rgba(68,48,31,.15));
}
body .service-fact{
  border-radius:3px!important;
  border-color:rgba(83,62,44,.13)!important;
  background:#fff8ed!important;
  box-shadow:0 2px 5px rgba(65,44,28,.03)!important;
}
body .booking-row{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-c)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow-soft);
}
body .booking-list .booking-row:nth-child(even){
  background-image:var(--bc-scrap-b)!important;
  transform:rotate(.035deg);
}
body .service-empty{
  border:0!important;
  border-radius:0!important;
  background:transparent var(--bc-scrap-note) center/100% 100% no-repeat!important;
  filter:var(--bc-scrap-shadow-soft);
  font-family:'Caveat',cursive!important;
  font-size:20px!important;
  color:#62584e!important;
}

/* ------------------------------------------------------------------------
   RESOURCE STUDIO
   The locked v129/v131 composition is retained. These rules only deepen the
   material treatment already present on the page.
   ------------------------------------------------------------------------ */
body .resource-scrapbook-v123 .resource-studio-feature-card-v123{
  border:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-a)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  clip-path:none!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow-soft);
  overflow:visible!important;
}
body .resource-scrapbook-v123 .resource-studio-feature-card-v123:nth-child(2){
  background-image:var(--bc-scrap-b)!important;
  transform:rotate(.035deg);
}
body .resource-scrapbook-v123 .resource-studio-feature-card-v123:nth-child(3){
  background-image:var(--bc-scrap-c)!important;
  transform:rotate(-.035deg);
}
body .resource-scrapbook-v123 .resource-studio-browser-v123{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  border:0!important;
  background-color:transparent!important;
  background-image:var(--bc-scrap-tall-a)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
  box-shadow:none!important;
  filter:var(--bc-scrap-shadow);
}
body .resource-scrapbook-v123 .resource-studio-tree-v123,
body .resource-scrapbook-v123 .resource-studio-content-v123{
  position:relative!important;
  z-index:1!important;
  background-color:transparent!important;
}
body .resource-scrapbook-v123 .resource-card-v123,
body .resource-scrapbook-v123 .resource-folder-card{
  background-color:#fbf7ef!important;
  background-image:
    linear-gradient(rgba(255,255,255,.28),rgba(248,239,224,.14)),
    url('./assets/diary-paper-texture.jpg')!important;
  background-size:auto,620px auto!important;
  border-color:rgba(77,56,39,.09)!important;
  box-shadow:0 9px 18px rgba(65,46,31,.06)!important;
}
body .resource-scrapbook-v123 .resource-empty-v123,
body .resource-scrapbook-v123 .resource-studio-welcome-note-v121{
  border:0!important;
  background:transparent var(--bc-scrap-note) center/100% 100% no-repeat!important;
  clip-path:none!important;
  filter:var(--bc-scrap-shadow-soft);
}
body .resource-scrapbook-v123 .resource-command-input-v123,
body .resource-scrapbook-v123 .resource-studio-secondary-v123{
  background-color:#fffaf1!important;
  background-image:url('./assets/diary-paper-texture.jpg')!important;
  background-size:520px auto!important;
}

/* Courses already carry the full v131 material system. This small shared wash
   only keeps the four destinations tonally consistent and does not alter the
   locked Courses geometry. */
body .learning-library-v131{
  --bc-scrapbook-system-version:132;
}

@media(max-width:900px){
  body .reflection-head::before,
  body .services-header::before{
    inset:-16px -13px -18px -13px;
  }
  body .reflection-head::after,
  body .services-header::after{
    right:24px;
  }
  body .resource-scrapbook-v123 .resource-studio-browser-v123{
    background-image:var(--bc-scrap-tall-b)!important;
  }
}
@media(max-width:620px){
  body .reflection-head::after,
  body .services-header::after{
    width:72px;
    height:20px;
    top:-14px;
  }
  body .reflection-panel,
  body .service-admin-panel,
  body .resource-scrapbook-v123 .resource-studio-browser-v123{
    filter:drop-shadow(0 7px 7px rgba(68,48,31,.09));
  }
  body .service-card,
  body .booking-row,
  body .journal-entry,
  body .reflection-checkpoint-list .course-reflection-activity{
    transform:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body .service-card,
  body .booking-row,
  body .journal-entry,
  body .reflection-checkpoint-list .course-reflection-activity{
    transition:none!important;
    transform:none!important;
  }
}
