/* SCH Vault Library 1.2.4 — Start Here only, scoped to #sch-vault-library. */
#sch-vault-library{--red-dark:#6d0000;--black:#080808;--white:#ffffff;--line-2:#E3E3E3;--chrome-bg:#111111;--chrome-fg:#f5f0eb;--chrome-line:#2a2a2a;}
#sch-vault-library #start-here{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}
#sch-vault-library .sh-row{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}
#sch-vault-library .sh-begin{background:none;border:0;padding:4px 0;text-align:left;font:500 15px/1.5 var(--sans);color:#3d3a35}
#sch-vault-library .sh-begin span{color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
#sch-vault-library .sh-begin:hover span{color:var(--red-dark)}
#sch-vault-library .sh-row-progress{font-size:12.5px;color:var(--muted)}
#sch-vault-library .sh-hide-link{margin-left:auto;background:none;border:0;padding:4px 0;font:600 12px/1.5 var(--sans);color:var(--muted);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
#sch-vault-library .sh-path{background:#fff;border:1px solid var(--line);padding:14px 18px;justify-content:space-between}
#sch-vault-library .sh-path-text strong{font-family:var(--serif);font-size:17px;color:var(--black);display:block;line-height:1.3}
#sch-vault-library .sh-path-text span{color:var(--muted);font-size:13px}
#sch-vault-library .sh-path-actions{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap}
#sch-vault-library .sh-caughtup{background:none;border:0;padding:6px 0;font:700 13px/1.5 var(--sans);color:var(--red);text-align:left}
#sch-vault-library .sh-caughtup:hover{text-decoration:underline;text-underline-offset:4px}
#sch-vault-library .sh-show{padding:10px 16px !important}
#sch-vault-library #sh-full{margin-top:20px}
#sch-vault-library .sh-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}
#sch-vault-library .sh-progress{font:600 13px/1.5 var(--sans);color:var(--ink)}
#sch-vault-library .sh-bar{height:6px;background:#ddd5c9;border-radius:3px;overflow:hidden;margin-top:8px;width:min(320px,70vw)}
#sch-vault-library .sh-bar i{display:block;height:100%;background:var(--red);width:0%;transition:width .35s ease}
#sch-vault-library .btn{background:var(--red);color:#fff;font:700 12px/1.2 var(--sans);padding:16px 24px;border-radius:2px;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--red);text-decoration:none;display:inline-flex;align-items:center;gap:8px}
#sch-vault-library .btn:hover{background:var(--red-dark)}
#sch-vault-library .btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}
#sch-vault-library .btn-outline:hover{background:var(--ink);color:#fff}
#sch-vault-library .sh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#sch-vault-library .sh-card{background:var(--white);border:1px solid var(--line);padding:28px;display:flex;flex-direction:column}
#sch-vault-library .sh-card .num{font:700 22px/1.3 var(--serif);color:var(--red)}
#sch-vault-library .sh-card h3{font-family:var(--serif);font-size:22px;line-height:1.3;margin:12px 0 8px;color:var(--black)}
#sch-vault-library .sh-card p{color:#333;font-size:15px;line-height:1.65;margin:0 0 18px;flex:1}
#sch-vault-library .sh-card .leave{font-size:13px;color:var(--muted);border-top:1px solid var(--line-2);padding-top:12px;margin:0 0 18px;flex:none}
#sch-vault-library .sh-card .leave b{color:var(--ink)}
#sch-vault-library .tag{display:inline-block;font:700 10px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--red);border:1px solid var(--red);border-radius:2px;padding:4px 10px;margin:14px 0 0;align-self:flex-start}
#sch-vault-library .tag.done{color:#fff;background:var(--red)}
#sch-vault-library .tag.soon{color:var(--muted);border-color:#bdb5a8}
#sch-vault-library .card-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
#sch-vault-library .open-btn{font:700 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:#fff;background:var(--red);border:1px solid var(--red);border-radius:2px;padding:10px 16px}
#sch-vault-library .open-btn:hover{background:var(--red-dark)}
#sch-vault-library .link{font:700 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--red);text-decoration:none}
#sch-vault-library .link.disabled{color:#a39a8c;pointer-events:none}
#sch-vault-library .complete-btn{font:600 12px/1.5 var(--sans);color:var(--muted);background:none;border:1px solid var(--line-2);padding:8px 12px;border-radius:2px}
#sch-vault-library .complete-btn[aria-pressed="true"]{color:var(--red);border-color:var(--red);font-weight:700}
#sch-vault-library .hide-btn{font:600 12px/1.5 var(--sans);color:var(--muted);background:none;border:0;text-decoration:underline}
#sch-vault-library .lesson{background:var(--paper);padding:48px 0 56px;min-height:480px}
#sch-vault-library .lesson-col{width:min(700px,calc(100% - 40px));margin:0 auto}
#sch-vault-library #module1-lesson .lesson-col{width:min(1060px,calc(100% - 48px))}
#sch-vault-library #module1-lesson .theme-list{max-width:none;margin-top:20px;gap:14px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
#sch-vault-library #module1-lesson .theme-option{padding:20px 16px;min-height:196px;height:100%;display:flex;flex-direction:column}
#sch-vault-library #module1-lesson .theme-option[aria-pressed="true"]{padding:19px 15px}
#sch-vault-library #module1-lesson .theme-option .theme-name{font-size:17px;line-height:1.35}
#sch-vault-library #module1-lesson .theme-option .theme-desc{font-size:13.5px;line-height:1.6}
#sch-vault-library #module1-lesson .theme-option .theme-pick{display:inline-block;background:transparent;border:1px solid var(--red);border-radius:2px;padding:10px 14px;margin-top:auto;padding-top:10px;text-align:center}
#sch-vault-library #module1-lesson .theme-option .theme-desc{margin-bottom:14px}
#sch-vault-library #module1-lesson .theme-option[aria-pressed="true"] .theme-pick{background:var(--red);color:#fff}
#sch-vault-library #module1-lesson .picker-result{max-width:700px;margin-left:auto;margin-right:auto;padding:18px 22px;text-align:center}
#sch-vault-library #module1-lesson .think-box{max-width:700px;margin-left:auto;margin-right:auto;padding:22px 24px;text-align:center}
#sch-vault-library #module1-lesson .lesson-actions{margin-top:26px;justify-content:center}
#sch-vault-library #module1-lesson .lesson-actions .btn{padding:18px 26px}
@media(max-width:980px) {#sch-vault-library #module1-lesson .theme-list{grid-template-columns:repeat(3,minmax(0,1fr))}
#sch-vault-library #module1-lesson .theme-option{min-height:180px}}
@media(max-width:640px) {#sch-vault-library #module1-lesson .theme-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px) {#sch-vault-library .lesson-col{width:calc(100% - 32px)}
#sch-vault-library #module1-lesson .lesson-col{width:calc(100% - 32px)}
#sch-vault-library #module1-lesson .theme-option{padding:20px 18px}
#sch-vault-library #module1-lesson .theme-option[aria-pressed="true"]{padding:19px 17px}
#sch-vault-library #module1-lesson .think-box{padding:20px 18px}}
@media(max-width:420px) {#sch-vault-library #module1-lesson .theme-list{grid-template-columns:1fr}
#sch-vault-library #module1-lesson .theme-option{min-height:0}}
#sch-vault-library .lesson h2{font-family:var(--serif);font-weight:700;font-size:clamp(28px,3vw,40px);line-height:1.2;margin:12px 0 10px;color:var(--black)}
#sch-vault-library .lesson h2 em{color:var(--red)}
#sch-vault-library .lesson .lede{color:#333;max-width:680px;line-height:1.7;margin:0 0 14px;font-size:15px}
#sch-vault-library .back-btn{background:none;border:0;padding:0;font:700 12px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
#sch-vault-library .lesson-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
#sch-vault-library .think-box{margin-top:26px;background:#fff;border:1px solid var(--line);padding:20px 22px;max-width:760px}
#sch-vault-library .think-box p{font-size:15.5px;line-height:1.7;color:#222;margin:0}
#sch-vault-library .leave-line{background:#fff;border:1px solid var(--line);padding:18px 22px;margin-top:26px;font-size:14px;line-height:1.65;color:#333;max-width:680px}
#sch-vault-library .leave-line b{color:var(--black);font-family:var(--serif)}
#sch-vault-library .theme-list{display:grid;grid-template-columns:1fr;gap:12px;margin-top:22px;max-width:760px}
#sch-vault-library .theme-option{display:block;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:2px;padding:18px 20px;color:var(--ink)}
#sch-vault-library .theme-option:hover{border-color:var(--red)}
#sch-vault-library .theme-option[aria-pressed="true"]{border-color:var(--red);border-width:2px;padding:17px 19px;background:#fff}
#sch-vault-library .theme-option .theme-name{display:block;font-family:var(--serif);font-weight:700;font-size:18px;line-height:1.35;color:var(--black)}
#sch-vault-library .theme-option .theme-desc{display:block;font-size:14.5px;line-height:1.65;color:#444;margin-top:5px}
#sch-vault-library .theme-option .theme-pick{display:block;font:700 10px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-top:10px}
#sch-vault-library .theme-option[aria-pressed="true"] .theme-pick{color:var(--red)}
#sch-vault-library .picker-result{display:none;margin-top:16px;background:#fff;border:1px solid var(--line);padding:16px 20px;font-size:14px;line-height:1.65;color:#333;max-width:760px}
#sch-vault-library .picker-result.show{display:block}
#sch-vault-library .picker-result b{font-family:var(--serif);color:var(--black)}
#sch-vault-library .shots{display:grid;grid-template-columns:1fr 1fr;gap:26px 22px;margin-top:26px}
#sch-vault-library .shot{margin:0}
#sch-vault-library .shot button{border:0;background:none;padding:0;width:100%;text-align:left}
#sch-vault-library .shot img{width:100%;height:auto;border:1px solid var(--line-2);background:#fff}
#sch-vault-library .shot figcaption{font-size:14px;color:#333;line-height:1.65;margin-top:10px}
#sch-vault-library .shot figcaption b{color:var(--black)}
#sch-vault-library .shot .step-no{font:700 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:6px}
#sch-vault-library .lesson-note{color:#333;line-height:1.75;margin:30px 0 0;max-width:700px;font-size:15px}
#sch-vault-library .m2-flow{display:grid;grid-template-columns:1fr;gap:26px;margin-top:26px;max-width:860px}
#sch-vault-library .m2-text{background:#fff;border:1px solid var(--line);padding:20px 22px}
#sch-vault-library .m2-text .step-no{font:700 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:8px}
#sch-vault-library .m2-text p{font-size:14.5px;color:#333;line-height:1.7;margin:0}
#sch-vault-library .m2-text p b{color:var(--black)}
#sch-vault-library .m2-group{display:grid;gap:14px}
#sch-vault-library .m2-group .shot{margin:0}
#sch-vault-library .m2-name{border-color:var(--red);border-width:2px}
#sch-vault-library .m2-name h3{font-family:var(--serif);font-size:21px;line-height:1.3;margin:0 0 8px;color:var(--black)}
#sch-vault-library .m2-name p+p{margin-top:10px}
#sch-vault-library .ready-list{margin:16px 0 0;display:grid;gap:10px}
#sch-vault-library .ready-item{display:flex;gap:12px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);padding:14px 16px;cursor:pointer;min-height:52px}
#sch-vault-library .ready-item:hover{border-color:var(--red)}
#sch-vault-library .ready-item input[type="checkbox"]{width:24px;height:24px;flex:none;margin:2px 0 0;accent-color:var(--red);cursor:pointer}
#sch-vault-library .ready-item .ready-text{font-size:14.5px;line-height:1.65;color:#333}
#sch-vault-library .ready-item .ready-text b{color:var(--black)}
#sch-vault-library .ready-item:has(input:checked){border-color:var(--red);border-width:2px;padding:13px 15px;background:#fff}
#sch-vault-library .ready-status{margin-top:12px !important;font-size:13.5px !important;color:var(--muted) !important}
#sch-vault-library .ready-status.all-ready{color:var(--red) !important;font-weight:700}
#sch-vault-library .m2-ai-note{margin-top:14px !important;background:var(--paper);border:1px solid var(--line);padding:12px 14px}
#sch-vault-library .m3-steps{display:grid;gap:16px;margin-top:26px;max-width:760px}
#sch-vault-library .m3-step{background:#fff;border:1px solid var(--line);padding:20px 22px}
#sch-vault-library .m3-step h3{font-family:var(--serif);font-size:19px;line-height:1.3;margin:0 0 8px;color:var(--black)}
#sch-vault-library .m3-step p{color:#333;font-size:14.5px;line-height:1.7;margin:0}
#sch-vault-library .m3-step p+p{margin-top:8px}
#sch-vault-library .m3-step .path-line{background:var(--paper);border:1px solid var(--line);padding:12px 14px;font-size:13.5px;line-height:1.6;margin-top:12px;color:var(--ink)}
#sch-vault-library .group-links{margin-top:12px;background:var(--paper);border:1px solid var(--line);padding:14px 16px}
#sch-vault-library .group-links-label{font:700 10px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}
#sch-vault-library .group-links a{display:block;color:var(--red);font-weight:700;font-size:14.5px;line-height:1.5;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
#sch-vault-library .group-links a:hover{color:var(--red-dark)}
#sch-vault-library .membership-note{margin-top:12px;border:1px solid var(--red);background:#fff;padding:12px 14px;font-size:14px;line-height:1.65;color:#333}
#sch-vault-library .membership-note b{color:var(--black)}
#sch-vault-library .planner-link{color:var(--red);font-weight:700;font-size:14.5px;text-decoration:underline;text-underline-offset:3px}
#sch-vault-library .planner-link:hover{color:var(--red-dark)}
#sch-vault-library .planner-link-wrap{margin-top:12px !important}
#sch-vault-library .example-box{margin-top:26px;background:var(--black);color:#f5f0eb;padding:24px;max-width:760px}
#sch-vault-library .example-box .ex-eyebrow{font:700 10px/1.6 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#e8b4b8}
#sch-vault-library .example-box h3{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.3;margin:10px 0 10px;color:#fff}
#sch-vault-library .example-box p{color:#ded7d1;font-size:14.5px;line-height:1.7;margin:0}
#sch-vault-library .example-box p+p{margin-top:8px}
#sch-vault-library .example-box strong{color:#fff}
#sch-vault-library .sched{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;width:100%}
#sch-vault-library .sched div{border:1px solid #333;padding:14px 16px;min-width:0;overflow:hidden}
#sch-vault-library .sched b{font-family:var(--serif);font-size:20px;color:#fff;display:block;line-height:1.2}
#sch-vault-library .sched .dest b{font-size:18px}
#sch-vault-library .sched .dest-wide{grid-column:1/-1}
#sch-vault-library .sched span{font-size:12.5px;color:#cfc8bf;line-height:1.5;display:block;margin-top:4px;overflow-wrap:break-word}
#sch-vault-library .example-join-note{margin-top:14px !important}
#sch-vault-library .example-shot{margin:18px 0 0}
#sch-vault-library .example-shot img{border-color:#333;background:#fff}
#sch-vault-library .example-shot figcaption{color:#ded7d1;font-size:13.5px;line-height:1.65;margin-top:10px}
#sch-vault-library .example-shot figcaption b{color:#fff}
@media(max-width:820px) {#sch-vault-library .sched{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#sch-vault-library .sched div{padding:12px;min-width:0}
#sch-vault-library .sched b{font-size:15px;white-space:nowrap;letter-spacing:-.01em;line-height:1.25}
#sch-vault-library .sched .dest b{font-size:12.5px}
#sch-vault-library .sched span{font-size:12px}
#sch-vault-library .example-box{padding:20px 18px}}
@media(max-width:420px) {#sch-vault-library .sched div{padding:10px}
#sch-vault-library .sched b{font-size:14px}
#sch-vault-library .sched .dest b{font-size:11.5px}
#sch-vault-library .example-box{padding:18px 14px}}
#sch-vault-library .lightbox{position:fixed;inset:0;background:rgba(5,5,5,.92);display:none;z-index:100;padding:24px;overflow:auto}
#sch-vault-library .lightbox.open{display:block}
#sch-vault-library .lightbox-in{max-width:1000px;margin:24px auto}
#sch-vault-library .lightbox img{width:100%;border:1px solid #333}
#sch-vault-library .lightbox p{color:#ddd;font-size:14px;line-height:1.6;margin-top:12px}
#sch-vault-library .lightbox .close{position:fixed;top:16px;right:16px;background:#fff;color:#111;border:0;border-radius:2px;padding:10px 16px;font:700 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}
@media(max-width:820px) {#sch-vault-library .sh-cards{grid-template-columns:1fr}
#sch-vault-library .shots{grid-template-columns:1fr}}
#sch-vault-library [hidden]{display:none!important}

/* 1.2.4: editable custom theme card. No other lesson/layout selectors changed. */
#sch-vault-library #module1-lesson .theme-custom-card{min-width:0;max-width:100%;width:100%;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;overflow:visible}
#sch-vault-library #module1-lesson .theme-custom-card > .theme-option{border:0;flex:1;min-height:0;background:transparent}
#sch-vault-library #module1-lesson .theme-custom-card > .theme-option[aria-pressed="true"]{border:2px solid var(--red)}
#sch-vault-library #module1-lesson .custom-theme-editor{min-width:0;width:100%;padding:0 16px 18px;box-sizing:border-box}
#sch-vault-library #module1-lesson .custom-theme-editor[hidden]{display:none!important}
#sch-vault-library #module1-lesson .custom-theme-editor label{display:block;font:700 13px/1.5 var(--sans);color:var(--ink);margin-bottom:7px}
#sch-vault-library #module1-lesson .custom-theme-editor input{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;font:400 16px/1.4 var(--sans);color:var(--ink);border:1px solid var(--line);padding:12px;background:#fff;border-radius:2px}
#sch-vault-library #module1-lesson .custom-theme-save{display:block;box-sizing:border-box;width:100%;min-width:0;white-space:normal;overflow-wrap:break-word;margin-top:10px;background:var(--red);color:#fff;border:1px solid var(--red);border-radius:2px;font:700 11px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.06em;padding:12px 8px;cursor:pointer}
#sch-vault-library #module1-lesson .custom-theme-save:hover{background:var(--red-dark)}
#sch-vault-library #module1-lesson .custom-theme-error{font:600 12px/1.5 var(--sans);color:var(--red);margin:8px 0 0;overflow-wrap:break-word}
@media(max-width:680px){#sch-vault-library #module1-lesson .custom-theme-editor{padding:0 14px 16px}}
