
:root{
  --ink:#1d1a16; --muted:#6a6359; --paper:#fffaf0; --paper2:#f6eddc;
  --card:#fffdf7; --line:#2c251d; --pin:#f2b84b; --mint:#a5d8c7;
  --blue:#6ea8fe; --rose:#f2a7a0; --green:#83c995; --shadow:7px 7px 0 #1d1a16;
  --soft-shadow:0 14px 40px rgba(29,26,22,.12); --radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:linear-gradient(90deg,rgba(29,26,22,.04) 1px,transparent 1px),linear-gradient(rgba(29,26,22,.04) 1px,transparent 1px),var(--paper);background-size:32px 32px;color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.72;font-size:17px}
a{color:inherit;text-decoration:none} a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px} img{max-width:100%;display:block}.site-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:26px 22px;background:#211d18;color:#fff6e6;border-right:4px solid var(--line);display:flex;flex-direction:column;gap:22px}.brand{display:grid;gap:10px}.brand-mark{width:54px;height:54px;border:3px solid #fff6e6;background:var(--pin);box-shadow:4px 4px 0 #000;display:grid;place-items:center;border-radius:16px;color:#211d18;font-weight:900;font-family:Arial,sans-serif}.brand strong{font-family:Arial,sans-serif;font-size:1.4rem;letter-spacing:-.04em}.brand span{color:#d7cbb7;font-size:.92rem;line-height:1.45}.side-nav{display:grid;gap:8px}.side-nav a{font-family:Arial,sans-serif;padding:10px 12px;border:2px solid rgba(255,246,230,.18);border-radius:14px;background:rgba(255,246,230,.06)}.side-nav a:hover{background:#fff6e6;color:#211d18;text-decoration:none}.side-note{margin-top:auto;border:2px dashed rgba(255,246,230,.35);padding:14px;border-radius:16px;color:#e8ddca;font-size:.9rem}.content{min-width:0}.top-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 26px;background:rgba(255,250,240,.82);backdrop-filter:blur(12px);border-bottom:3px solid var(--line);position:sticky;top:0;z-index:9}.top-strip p{margin:0;font-family:Arial,sans-serif;color:var(--muted);font-size:.94rem}.top-strip .mini-links{display:flex;gap:8px;flex-wrap:wrap}.mini-links a,.btn{font-family:Arial,sans-serif;font-weight:800;border:3px solid var(--line);padding:10px 14px;border-radius:999px;background:var(--card);box-shadow:3px 3px 0 var(--line);text-decoration:none;display:inline-flex;align-items:center;gap:8px}.btn.primary{background:var(--pin)}.btn.mint{background:var(--mint)}.btn.rose{background:var(--rose)}.btn:hover,.mini-links a:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--line);text-decoration:none}.wrap{width:min(1180px,calc(100% - 44px));margin-inline:auto}.hero{padding:58px 0 38px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}.label{font-family:Arial,sans-serif;font-size:.8rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;border:2px solid var(--line);background:var(--mint);display:inline-flex;border-radius:999px;padding:6px 10px;box-shadow:3px 3px 0 var(--line)}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;line-height:1.04;letter-spacing:-.055em}h1{font-size:clamp(2.7rem,7vw,6.8rem);margin:18px 0 18px}h2{font-size:clamp(2rem,4vw,4rem);margin:0 0 18px}h3{font-size:1.45rem;margin:0 0 10px}.lead{font-size:1.17rem;color:#3f382f;max-width:66ch}.hero-board{position:relative;min-height:480px}.planner-sheet{background:var(--card);border:4px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow);transform:rotate(-1deg)}.planner-sheet h2{font-size:2rem}.sheet-row{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:start;border-top:2px dashed #c8b99f;padding:12px 0}.sheet-row b{font-family:Arial,sans-serif}.note-card{position:absolute;background:#fff3b0;border:3px solid var(--line);border-radius:18px;padding:16px;box-shadow:5px 5px 0 var(--line);font-family:Arial,sans-serif;max-width:210px;transform:rotate(3deg)}.note-card.one{right:0;top:25px;background:#c4f0df}.note-card.two{left:15px;bottom:10px;background:#ffd0cc;transform:rotate(-4deg)}.section{padding:42px 0}.section.alt{background:rgba(255,255,255,.35);border-top:3px solid var(--line);border-bottom:3px solid var(--line)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:3px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:5px 5px 0 var(--line)}.card:hover{transform:translateY(-2px)}.card .tag{font-family:Arial,sans-serif;font-weight:900;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#5d5449}.card p{color:#544b42}.tool-card{display:grid;gap:10px}.tool-card .icon{width:54px;height:54px;border:3px solid var(--line);border-radius:15px;background:var(--pin);display:grid;place-items:center;font-family:Arial,sans-serif;font-weight:900}.article-layout{display:grid;grid-template-columns:minmax(0,780px) 300px;gap:34px;align-items:start;padding:42px 0}.article{background:var(--card);border:4px solid var(--line);border-radius:30px;padding:34px;box-shadow:var(--shadow)}.article h1{font-size:clamp(2.4rem,5vw,5rem)}.article h2{font-size:2rem;margin-top:34px}.meta{font-family:Arial,sans-serif;color:var(--muted);font-size:.93rem}.toc,.sidebox{background:#fff3d4;border:3px solid var(--line);border-radius:22px;padding:18px;box-shadow:5px 5px 0 var(--line);position:sticky;top:92px}.toc ul{padding-left:20px}.tool-panel{background:#fffdf7;border:4px solid var(--line);border-radius:30px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:6px}.field label{font-family:Arial,sans-serif;font-weight:900}.field input,.field textarea,.field select{width:100%;padding:12px 14px;border:3px solid var(--line);border-radius:14px;background:#fffaf0;font:inherit;color:var(--ink)}.field textarea{min-height:110px}.result{margin-top:20px;background:#e7f7ee;border:3px solid var(--line);border-radius:20px;padding:18px;white-space:pre-wrap;font-family:Arial,sans-serif;box-shadow:4px 4px 0 var(--line)}.faq details{background:var(--card);border:3px solid var(--line);border-radius:16px;padding:14px 16px;margin:12px 0}.faq summary{font-family:Arial,sans-serif;font-weight:900;cursor:pointer}.footer{background:#211d18;color:#fff6e6;padding:42px 0;margin-top:40px;border-top:4px solid var(--line)}.footer a{color:#fff6e6}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:26px}.small{font-size:.92rem;color:#6a6359}.notice{background:#dff7ea;border:3px solid var(--line);border-radius:20px;padding:18px;box-shadow:4px 4px 0 var(--line)}.print-box{border:3px dashed var(--line);border-radius:20px;padding:18px;background:#fff8e9}.mobile-brand{display:none}.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:16px;top:16px;width:auto;height:auto;z-index:100;background:#fff;padding:10px;border:3px solid #000}@media(max-width:980px){.site-shell{display:block}.sidebar{display:none}.mobile-brand{display:flex;align-items:center;gap:10px}.top-strip{position:relative;display:grid}.hero,.article-layout,.grid.two{grid-template-columns:1fr}.hero-board{min-height:auto}.note-card{position:static;margin:14px 0}.grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}}@media(max-width:640px){body{font-size:16px}.wrap{width:min(100% - 28px,1180px)}.grid,.footer-grid{grid-template-columns:1fr}.article,.tool-panel{padding:22px;border-radius:22px}.top-strip .mini-links{display:none}h1{font-size:2.7rem}.hero{padding-top:34px}.planner-sheet{box-shadow:4px 4px 0 var(--line)}}


/* Functional planner outputs added in the expanded version */
.field.full{grid-column:1 / -1}.tool-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.plan-output{margin-top:24px;background:#fffdf7;border:4px solid var(--line);border-radius:26px;padding:0;box-shadow:var(--shadow);white-space:normal;font-family:Arial, Helvetica, sans-serif}.plan-output[hidden]{display:none}.print-card{padding:26px}.plan-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:3px solid var(--line);padding-bottom:12px;margin-bottom:16px}.plan-heading span{font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:#5d5449}.plan-heading b{background:var(--pin);border:2px solid var(--line);border-radius:999px;padding:6px 10px}.plan-summary{background:#fff3d4;border:2px solid var(--line);border-radius:16px;padding:12px 14px}.plan-table{display:grid;grid-template-columns:130px 1fr;border:3px solid var(--line);border-radius:16px;overflow:hidden;margin:12px 0 18px}.plan-table>div{padding:10px 12px;border-bottom:2px solid var(--line)}.plan-table>div:nth-child(odd){border-right:2px solid var(--line);background:#fff8e9}.plan-table>div:nth-last-child(-n+2){border-bottom:0}.plan-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.plan-week-grid div{border:2px solid var(--line);border-radius:14px;background:#fff8e9;padding:10px;min-height:95px}.plan-week-grid b,.plan-week-grid span{display:block}.plan-week-grid span{font-size:.9rem;color:#5d5449;margin-top:8px}.plan-footer-note{border-top:2px dashed var(--line);padding-top:12px;color:#5d5449}.blog-feature{background:#fffdf7;border:4px solid var(--line);border-radius:30px;padding:26px;box-shadow:var(--shadow)}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.tag-chip{font-family:Arial,sans-serif;font-weight:900;border:3px solid var(--line);border-radius:999px;background:#fff3d4;padding:8px 12px}.article .inline-tool-link{font-family:Arial,sans-serif;font-weight:900;background:#dff7ea;border:2px solid var(--line);border-radius:999px;padding:2px 8px;white-space:nowrap}.article blockquote{border-left:6px solid var(--pin);background:#fff3d4;padding:18px 20px;margin:24px 0;border-radius:0 18px 18px 0}@media print{body.print-plan-only *{visibility:hidden!important}body.print-plan-only .print-target,body.print-plan-only .print-target *{visibility:visible!important}body.print-plan-only .print-target{position:absolute!important;left:0!important;top:0!important;width:100%!important;margin:0!important;box-shadow:none!important;border:0!important;background:#fff!important}body.print-plan-only .print-card{padding:20px!important}.tool-actions,.sidebar,.top-strip,.footer,.toc{display:none!important}.plan-table{break-inside:avoid}.plan-week-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.plan-week-grid{grid-template-columns:1fr 1fr}.plan-table{grid-template-columns:100px 1fr}.tool-actions .btn{width:100%;text-align:center}}
