:root{--paper:#f3ece0;--paper-raised:#fbf7ef;--paper-sunk:#ece3d3;--ink:#2f2a23;--ink-soft:#6d6355;--ink-faint:#948878;--clay:#b05c3b;--clay-deep:#8d4526;--moss:#5d6f42;--rule:#ddd1bb;--rule-soft:#e8dfcd;--font-heading:Georgia, "Iowan Old Style", "Palatino Linotype", "Times New Roman", serif;--font-body:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--shadow-card:0 1px 0 #2f2a230a, 0 6px 18px #5a4a3412}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 18% 12%,#ffffff8c,#0000 45%),radial-gradient(circle at 82% 78%,#b05c3b0d,#0000 40%);font-size:16px;line-height:1.55}.page{max-width:940px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.masthead{border-bottom:2px solid var(--rule);margin-bottom:1.75rem;padding-bottom:1rem}.masthead h1{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--clay-deep);margin:0;font-size:2.4rem;font-weight:600}.tagline{color:var(--ink-soft);margin:.35rem 0 .5rem;font-size:1.02rem}.masthead-subtitle{color:var(--ink-soft);max-width:720px;margin:0 0 1rem;font-size:.95rem}.checker-callout{border-left:3px solid var(--rule);background:#2f2a2308;border-radius:4px;margin-top:.75rem;padding:.6rem .75rem}.sheet{flex-direction:column;gap:1.25rem;display:flex}.card{background:var(--paper-raised);border:1px solid var(--rule);box-shadow:var(--shadow-card);border-radius:6px;padding:1.4rem 1.5rem 1.5rem}.card h2{font-family:var(--font-heading);margin:0 0 .35rem;font-size:1.32rem;font-weight:600}.card-hint{color:var(--ink-soft);margin:0 0 1.1rem;font-size:.93rem}.field-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem 1.1rem;display:grid}.field{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.field-grid .field{margin-bottom:0}.field-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);font-size:.82rem;font-weight:600}.required{text-transform:none;letter-spacing:0;color:var(--clay-deep);font-weight:500}input[type=text],input[type=number],textarea{font-family:var(--font-body);color:var(--ink);border:1px solid var(--rule);background:#fffdf8;border-radius:4px;width:100%;padding:.55rem .7rem;font-size:1rem}textarea{resize:vertical;line-height:1.5}input:focus,textarea:focus,button:focus-visible{outline:2px solid var(--clay);outline-offset:1px}input::placeholder,textarea::placeholder{color:var(--ink-faint)}.materials-header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.material-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.material-row{grid-template-columns:1fr 110px auto;align-items:center;gap:.5rem;display:grid}.material-quantity{text-align:left}.empty-note{border:1px dashed var(--rule);color:var(--ink-soft);border-radius:4px;margin:.25rem 0 0;padding:.75rem .9rem;font-size:.93rem}.storage-note{border-top:1px dotted var(--rule);color:var(--ink-faint);margin:.9rem 0 0;padding-top:.8rem;font-size:.85rem}.button-forget{color:var(--ink-soft);margin-top:.6rem;font-size:.8rem}.outcome{border:1px solid var(--rule);background:var(--paper-raised);border-radius:6px;margin-top:1.5rem;padding:1rem 1.1rem}.outcome-question{font-family:var(--font-heading);margin:0 0 .7rem;font-size:1.1rem}.outcome-choices{flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem;display:flex}.button-outcome{font-family:var(--font-body);color:var(--ink);background:var(--paper-raised);border:1px solid var(--rule);border-left:4px solid var(--rule);cursor:pointer;border-radius:4px;padding:.45rem .9rem;font-size:.9rem}.button-outcome:hover{background:var(--paper-sunk)}.outcome-worked{border-left-color:var(--moss)}.outcome-changes{border-left-color:var(--clay)}.outcome-failed{border-left-color:var(--ink-faint)}.button-outcome.picked{background:var(--paper-sunk);font-weight:600}.outcome-note-field{margin-bottom:.6rem}.outcome-note{color:var(--moss);margin:0 0 .3rem;font-size:.93rem}.bank-panel{margin-top:1.75rem}.bank-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.bank-entry{border:1px solid var(--rule-soft);background:var(--paper-raised);border-radius:5px;padding:.75rem .9rem}.bank-entry-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.bank-title{font-family:var(--font-heading);font-size:1.02rem}.bank-outcome{letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--rule);white-space:nowrap;border-left-width:4px;border-radius:3px;flex:none;padding:.1rem .45rem;font-size:.78rem;font-weight:600}.bank-meta{color:var(--ink-faint);margin:.25rem 0 0;font-size:.84rem}.bank-note{color:var(--ink-soft);margin:.4rem 0 0;font-size:.9rem}.bank-entry-actions{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.bank-entry-actions .button-quiet{padding:.25rem .6rem;font-size:.78rem}.bank-import{border-top:1px dotted var(--rule);margin-top:1.1rem;padding-top:1rem}.bank-import .field{margin-bottom:.4rem}.bank-import input[type=file]{font-family:var(--font-body);color:var(--ink-soft);font-size:.88rem}.import-note{border:1px solid var(--rule);border-left:4px solid var(--moss);background:var(--paper-raised);border-radius:4px;margin:.6rem 0 0;padding:.6rem .8rem;font-size:.88rem}.reuse-note{border:1px solid var(--rule);border-left:4px solid var(--ink-faint);background:var(--paper-raised);border-radius:4px;margin:.9rem 0 1rem;padding:.7rem .85rem}.reuse-used{border-left-color:var(--moss)}.reuse-title{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .25rem;font-size:.78rem;font-weight:600}.reuse-text{color:var(--ink);margin:0;font-size:.9rem}.offline-note{border:1px solid var(--rule);border-left:4px solid var(--clay);background:var(--paper-raised);border-radius:4px;margin:.6rem 0 0;padding:.6rem .8rem;font-size:.9rem}.offline-hint{color:var(--ink-soft)}.timing-note{border:1px solid var(--rule);border-left:4px solid var(--clay);background:var(--paper-raised);border-radius:4px;margin:.9rem 0 1rem;padding:.6rem .8rem;font-size:.88rem}.button-primary{font-family:var(--font-body);color:#fff8f1;background:var(--clay);border:1px solid var(--clay-deep);cursor:pointer;border-radius:4px;padding:.7rem 1.5rem;font-size:1rem;font-weight:600}.button-primary:hover:not(:disabled){background:var(--clay-deep)}.button-primary:disabled{background:var(--paper-sunk);border-color:var(--rule);color:var(--ink-faint);cursor:not-allowed}.button-quiet{font-family:var(--font-body);color:var(--clay-deep);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:4px;padding:.35rem .75rem;font-size:.88rem}.button-quiet:hover{background:var(--paper-sunk)}.button-remove{color:var(--ink-soft)}.actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.action-hint{color:var(--ink-soft);margin:0;font-size:.9rem}.notice{border-radius:4px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.notice-error{background:#f6e3d8;border:1px solid #d8a887}.notice-text{color:var(--ink);margin:0}.result{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:1.5rem;margin-top:1rem;display:grid}.result-lesson{background:var(--paper-raised);border:1px solid var(--rule);box-shadow:var(--shadow-card);border-radius:6px;padding:1.6rem 1.75rem}.lesson-title{font-family:var(--font-heading);margin:0 0 .5rem;font-size:1.6rem;font-weight:600}.lesson-intro{color:var(--ink-soft);margin:0 0 1.4rem}.activities{flex-direction:column;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.activity{border-top:1px solid var(--rule-soft);padding-top:1rem}.activity-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.activity-name{font-family:var(--font-heading);margin:0;font-size:1.12rem;font-weight:600}.activity-duration{color:var(--ink-soft);white-space:nowrap;font-size:.85rem}.activity-instructions{margin:.45rem 0 .8rem}.activity-meta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem 1.4rem;display:grid}.activity-block h4{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .3rem;font-size:.78rem;font-weight:600}.activity-block p{margin:0;font-size:.93rem}.activity-materials{flex-direction:column;gap:.2rem;margin:0;padding:0;font-size:.93rem;list-style:none;display:flex}.activity-materials li{border-bottom:1px dotted var(--rule);justify-content:space-between;gap:.6rem;padding-bottom:.15rem;display:flex}.activity-material-quantity{color:var(--ink-soft);white-space:nowrap}.activity-materials-empty{color:var(--ink-faint);font-size:.93rem;font-style:italic}.lesson-section{border-top:1px solid var(--rule-soft);margin-top:1.5rem;padding-top:1rem}.lesson-section h3{font-family:var(--font-heading);margin:0 0 .4rem;font-size:1.1rem}.lesson-section p{margin:0 0 .4rem}.lesson-trace{color:var(--ink-soft);font-size:.92rem}.honesty-line{border-top:1px solid var(--rule);font-family:var(--font-heading);color:var(--ink-soft);margin:1.5rem 0 0;padding-top:.9rem;font-size:.92rem;font-style:italic}.result-panel{position:sticky;top:1.5rem}.feasibility{background:var(--paper-raised);border:1px solid var(--rule);box-shadow:var(--shadow-card);border-radius:6px;padding:1.4rem 1.5rem 1.5rem}.verdict{border-bottom:2px solid var(--rule);align-items:flex-start;gap:.85rem;margin-bottom:1.1rem;padding-bottom:1rem;display:flex}.verdict-mark{font-family:var(--font-heading);flex:none;font-size:1.5rem;line-height:1.1}.verdict-ready .verdict-mark{color:var(--moss)}.verdict-attention .verdict-mark{color:var(--clay)}.verdict-title{font-family:var(--font-heading);margin:0;font-size:1.3rem;font-weight:600}.verdict-ready .verdict-title{color:var(--moss)}.verdict-attention .verdict-title{color:var(--clay-deep)}.verdict-text{color:var(--ink-soft);margin:.25rem 0 0;font-size:.92rem}.editable{border-bottom:1px dotted var(--rule);cursor:text;border-radius:2px;transition:background-color .12s,border-color .12s;display:inline-block}.editable:hover,.editable:focus-visible{background:var(--paper-sunk);border-bottom-color:var(--clay);outline:none}.activity-instructions .editable,.activity-check-text.editable{display:block}.editable-input{width:100%;font:inherit;color:inherit;background:var(--paper-raised);border:1px solid var(--clay);resize:vertical;border-radius:3px;padding:.35rem .45rem;display:block}.activity-materials-edit{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.activity-materials-edit .activity-materials{width:100%}.activity-materials li .button-remove{padding:.1rem .35rem;font-size:.78rem}.checking-line{color:var(--ink-soft);margin:0 0 1rem;font-size:.88rem;font-style:italic}.recheck-note{color:var(--ink-soft);margin:0 0 1rem;font-size:.82rem;font-style:italic}.edit-hint{background:var(--paper-sunk);color:var(--ink-soft);border-radius:4px;margin:0 0 1.2rem;padding:.6rem .8rem;font-size:.85rem;line-height:1.5}.checked-tag{border:1px solid var(--rule);font-family:var(--font-body);letter-spacing:.02em;color:var(--ink-soft);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.05rem .4rem;font-size:.68rem;font-weight:400;display:inline-block}.print-actions{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.print-view .result{margin-top:0}.editable-readonly{display:inline-block}@media print{.masthead,.actions,.print-actions,.card,.notice,.action-hint{display:none}.page,.sheet{box-shadow:none;background:#fff;border:0;margin:0;padding:0}.result{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:1rem;margin-top:0;display:grid}.result-lesson,.result-panel,.feasibility{box-shadow:none;break-inside:avoid;border-color:#999}.result-panel{position:static}.editable{border-bottom:none}.editable-readonly{display:inline}.honesty-line{border-top:1px solid #bbb}}.check{margin-bottom:1.1rem}.rebuild-note{background:var(--paper-sunk);border-left:3px solid var(--moss);color:var(--ink-soft);margin:0 0 1.1rem;padding:.7rem .8rem;font-size:.9rem}.check-title{font-family:var(--font-heading);align-items:baseline;gap:.5rem;margin:0 0 .3rem;font-size:1rem;font-weight:600;display:flex}.check-mark{flex:none;font-weight:700}.check .check-mark,.check-title .check-mark{color:var(--moss)}.material-check-short .check-mark,.material-check-missing .check-mark,.check-fail .check-mark{color:var(--clay)}.check-detail{color:var(--ink-soft);margin:0;font-size:.92rem}.material-checks{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.material-check{align-items:flex-start;gap:.55rem;font-size:.92rem;display:flex}.check-text{flex-direction:column;display:flex}.check-label{font-weight:600}.material-check-short .check-label,.material-check-missing .check-label{color:var(--clay-deep)}@media (width<=860px){.result{grid-template-columns:1fr}.result-panel{position:static}}@media (width<=560px){.material-row{grid-template-columns:1fr 1fr}.button-remove{grid-column:1/-1}}
