/* Calm daylight theme. The preceding Site version 78 preserves the original dark appearance. */
body.lab-home,
body.lab-login,
body.lab-member,
body.lab-courses,
body.lab-schedule,
body.lab-materials,
body.lab-journey,
body.lab-admin { color-scheme: light; }

/* Entrance: let the existing photograph breathe while keeping the invitation legible. */
body.lab-home { background:#b6a38b; }
body.lab-home .page { background-color:#8c7760; }
body.lab-home .page::before { background:linear-gradient(90deg,rgba(29,28,26,.46),rgba(34,31,27,.24) 50%,rgba(39,34,29,.12)); }
body.lab-home .page::after { background:linear-gradient(180deg,rgba(24,23,23,.20),transparent 44%,rgba(23,21,19,.36)); }
body.lab-home .access { --ink:#30271d;--muted:#635b50;--gold:#805f2d;--line:rgba(103,78,43,.3);--panel:rgba(255,251,242,.91);color:#30271d;box-shadow:0 22px 58px rgba(31,23,13,.18); }
body.lab-home .access .guide { color:#5e5549; }
body.lab-home .access .divider { color:#6d6050; }
body.lab-home .access .contact { color:#493729;border-color:#a68c66; }
body.lab-home .access .contact:hover { background:#f5ead9; }
@media(max-width:780px){body.lab-home .page::before{background:linear-gradient(180deg,rgba(25,25,24,.34),rgba(30,28,25,.18) 42%,rgba(28,25,22,.38))}}

/* Private entrance: the original photo and crest remain the focus. */
body.lab-login { background:#786b5e; }
body.lab-login .page { background:#574f45; }
body.lab-login .page::after { background:linear-gradient(180deg,rgba(17,20,24,.32),rgba(20,19,18,.20) 43%,rgba(21,19,17,.38)),radial-gradient(circle at 78% 72%,rgba(237,197,124,.15),transparent 34%); }
body.lab-login .login { background:rgba(255,250,240,.9);border-color:rgba(230,207,167,.86);color:#31271c;box-shadow:0 12px 34px rgba(26,20,15,.17); }
body.lab-login .login:after { color:#825e29; }
body.lab-login .invited { color:#f7f1e6; }
body.lab-login .back,body.lab-login .footer { color:#f4eadb; }
@media(max-width:560px){body.lab-login .page::after{background:linear-gradient(180deg,rgba(17,20,24,.37),rgba(20,19,18,.21) 43%,rgba(21,19,17,.42))}}
@media(hover:hover) and (pointer:fine){body.lab-login .login:hover{background:#fffaf0;color:#31271c}}

/* The member lobby and course cards carry the greatest share of screen brightness. */
body.lab-member { --ink:#fffaf1;--muted:#f1e9dc;--accent:#dfbd79;--panel:rgba(255,250,240,.94);--line:rgba(125,99,60,.28);background:#a8967e; }
body.lab-member .page { background-color:#9d8971; }
body.lab-member .page::before { background:linear-gradient(112deg,rgba(26,29,30,.39),rgba(35,32,28,.22) 55%,rgba(39,34,28,.13)); }
body.lab-member .page::after { background:radial-gradient(circle at 78% 26%,rgba(230,198,136,.24),transparent 35%),linear-gradient(180deg,transparent 55%,rgba(32,28,24,.29)); }
body.lab-member .card { color:#30281e;box-shadow:0 18px 45px rgba(34,25,14,.17); }
body.lab-member[data-tier="diamond"] .card,
body.lab-member[data-tier="diamond"] .card:hover {
  background:#fffaf1;
  border-color:#c9ae7a;
  color:#30281e;
  box-shadow:0 18px 45px rgba(34,25,14,.18);
}
body.lab-member .card-link:link,
body.lab-member .card-link:visited { color:#30281e; }
body.lab-member[data-tier="diamond"] .card h2 { color:#30281e; }
body.lab-member[data-tier="diamond"] .card p { color:#5c554a; }
body.lab-member[data-tier="diamond"] .card .number,
body.lab-member[data-tier="diamond"] .card .badge { color:#805f29;border-color:#a88b5c; }
body.lab-member[data-tier="diamond"] .card .badge { background:#fbf2df; }
body.lab-member .card p { color:#5c554a; }
body.lab-member .card .number,body.lab-member .card .badge { color:#805f29;border-color:#a88b5c; }
body.lab-member .card:hover { background:#fffdf8;border-color:#a88b5c; }
body.lab-member .logout { background:rgba(255,250,240,.9);color:#352a1d;border-color:#ddcaa9; }
body.lab-member .logout:hover { color:#65491f; }

body.lab-courses { --ink:#342a20;--muted:#60584c;--gold:#87642d;--line:rgba(109,84,47,.28);background:linear-gradient(145deg,rgba(251,247,239,.69),rgba(243,235,222,.76)),url("scene-study.webp") center/cover fixed;color:#342a20; }
body.lab-courses .nav { background:rgba(255,251,243,.76);padding:13px 18px;border:1px solid var(--line); }
body.lab-courses .nav-actions a { color:#52483b; }
body.lab-courses .course { background:rgba(255,252,246,.94);box-shadow:0 16px 46px rgba(54,40,22,.13); }
body.lab-courses .course.locked { opacity:.78;filter:none; }
body.lab-courses .status { color:#705326; }
body.lab-courses .note { background:rgba(255,250,240,.85);color:#51483d; }
body.lab-courses .section-head p { color:#655d50; }

/* Booking: a quiet, well-lit writing desk instead of a black panel. */
body.lab-schedule { --ink:#302820;--muted:#655b4e;--gold:#815d28;--line:rgba(111,82,43,.3);background:radial-gradient(circle at 78% 8%,#fff9ee,#eee5d6 58%,#e7dac7);color:#302820; }
body.lab-schedule .page::before { opacity:.28; }
body.lab-schedule .page::after { border-color:rgba(140,102,53,.13);box-shadow:0 0 100px rgba(179,136,67,.07); }
body.lab-schedule .brand { color:#302820; }
body.lab-schedule .concierge { background:rgba(255,253,248,.95);border-color:#d8c6a8;box-shadow:0 24px 70px rgba(62,43,21,.14),inset 0 1px #fff; }
body.lab-schedule .date,body.lab-schedule .time { background:#fbf8f2;border-color:#d9cdbb;color:#302820; }
body.lab-schedule .date:hover,body.lab-schedule .time:hover,body.lab-schedule .date.selected,body.lab-schedule .time.selected { background:#f3e8d3;border-color:#9b783d;box-shadow:0 0 0 1px #a48552; }
body.lab-schedule label { color:#4e4539; }
body.lab-schedule input,body.lab-schedule textarea { background:#fffefa;border-color:#cabba5;color:#302820; }
body.lab-schedule input::placeholder,body.lab-schedule textarea::placeholder { color:#82796d; }
body.lab-schedule .booking-fields select { background:#fffefa;border-color:#cabba5;color:#302820; }
body.lab-schedule .calendar-note,body.lab-schedule .identity-note { color:#665b4e; }
body.lab-schedule .suggestions { background:#f8f0e1;border-color:#c7aa7b; }
body.lab-schedule .suggestions p,body.lab-schedule .journey-summary { color:#4f4435; }
body.lab-schedule .suggestion { background:#fffdfa;color:#705025;border-color:#ad8953; }
body.lab-schedule .connection-note { background:#f8f0e1; }
body.lab-schedule .journey-summary { background:#f8f0e1;border-color:#c7aa7b; }
body.lab-schedule .submit:disabled { opacity:.55; }

/* Already paper-based pages need only a softer surrounding frame and image veil. */
body.lab-materials,body.lab-journey { background:#e8dfd0; }
body.lab-materials .suite,body.lab-journey .folio { box-shadow:0 26px 75px rgba(63,48,27,.16); }
body.lab-materials .hero { background:linear-gradient(90deg,rgba(21,21,19,.53),rgba(22,21,19,.27) 45%,rgba(19,18,16,.07)),linear-gradient(0deg,rgba(20,19,17,.42),transparent 42%),url("scene-study.webp") center/cover; }
body.lab-materials .hero::after { background:linear-gradient(transparent,rgba(29,26,21,.47)); }
body.lab-journey .top { background:linear-gradient(110deg,#594936,#7a6246); }
body.lab-journey .goal-card { background:linear-gradient(120deg,#5a4733,#755b3b); }

/* Administration is a work surface too; retain clear status and destructive cues. */
body.lab-admin { --bg:#e9e1d4;--panel:#fffdf8;--ink:#302820;--muted:#665b4d;--gold:#b48b48;--line:rgba(105,77,42,.3);--danger:#a34235;background:var(--bg);color:var(--ink); }
body.lab-admin input,body.lab-admin select,body.lab-admin textarea { background:#fffefa;border-color:#c9b99e;color:#302820; }
body.lab-admin .member,body.lab-admin .material,body.lab-admin .journey-step { background:#faf6ee; }
body.lab-admin .member button,body.lab-admin .material button,body.lab-admin .journey-step button,body.lab-admin .preview-link { color:#60451d;border-color:#9c783e; }
body.lab-admin .tab { color:#5f5446; }
body.lab-admin .tab.active,body.lab-admin button:not(.tab):not(.secondary-button) { color:#241b11; }
body.lab-admin .notice,body.lab-admin .form-note { background:#f5ead5;color:#5c4527;border-color:#a88143; }
body.lab-admin .booking-control span,body.lab-admin .position-control span,body.lab-admin .booking-detail { color:#674d25!important; }
body.lab-admin .status { color:#65491e; }
body.lab-admin .actions .delete,body.lab-admin .actions .cancel-booking { color:#933e32!important;border-color:#b8897d!important; }
