:root{--tomato:#dc4b32;--cream:#fff8e9;--butter:#f6d978;--ink:#2b241e;--green:#315d48}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,Songti SC,serif;background-image:linear-gradient(#eadfc9 1px,transparent 1px);background-size:100% 34px}header{height:76px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--ink);background:var(--cream)}header p{font:13px Arial}.logo{font-weight:700;font-size:24px}.logo span{display:inline-grid;place-items:center;background:var(--tomato);color:#fff;width:30px;height:30px;border-radius:50%;margin-left:5px}.intro{min-height:540px;padding:8vw 7vw 4vw;position:relative;background:var(--butter);border-bottom:2px solid}.stamp{font:700 11px Arial;letter-spacing:2px;border:1px solid;padding:8px 12px;display:inline-block;transform:rotate(-2deg)}h1{font-size:clamp(50px,7.5vw,104px);line-height:.96;margin:35px 0 28px;letter-spacing:-.06em}h1 em{color:var(--tomato);font-style:normal;text-decoration:underline;text-decoration-thickness:5px}.intro>p{max-width:600px;font:18px/1.7 Arial}.notebook{max-width:1050px;margin:-70px auto 80px;position:relative;background:#fffdf7;border:2px solid;padding:50px;box-shadow:12px 12px 0 var(--green)}.form-title{display:flex;justify-content:space-between;align-items:center}.form-title h2{font-size:32px}.add,.remove,.result-intro button{background:none;border:1px solid;padding:10px 14px;cursor:pointer}.entry{display:grid;grid-template-columns:56px 1fr;border-top:2px solid;padding:30px 0}.entry-no{font:700 28px Arial;color:var(--tomato)}.row{display:grid;grid-template-columns:1fr 1fr 36px;gap:14px}.row.two{grid-template-columns:1fr 1fr}label{font:700 12px Arial;letter-spacing:.04em}input,textarea{width:100%;border:0;border-bottom:1px solid #9c8e78;background:transparent;padding:11px 4px;font:15px/1.5 Arial;outline:none}textarea{height:88px;resize:vertical}input:focus,textarea:focus{border-bottom:3px solid var(--tomato)}.remove{border:0;font-size:25px}.submit{width:100%;background:var(--tomato);color:#fff;border:0;padding:18px;font:700 16px Arial;cursor:pointer}.submit:disabled{opacity:.7}.submit i{display:inline-block;width:14px;height:14px;border:2px solid;border-right-color:transparent;border-radius:50%;animation:s 1s linear infinite;margin-right:10px}.error{border:2px solid var(--tomato);padding:14px;margin:10px 0 20px;font:14px Arial;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.error b{color:var(--tomato)}.error button{margin-left:auto}.results{padding:7vw;max-width:1300px;margin:auto}.result-intro{display:grid;grid-template-columns:160px 1fr auto;gap:30px;align-items:start;border-top:5px solid;padding-top:25px}.result-intro span,h3{font:700 12px Arial;letter-spacing:2px;text-transform:uppercase}.result-intro h2{font-size:clamp(24px,3vw,42px);margin:0}.heatmap{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:20px 0 60px}.heatmap article{background:#fff;border:1px solid;padding:15px;min-height:150px}.heat{height:18px;margin:12px 0}.h1{background:#f4e7bd}.h2{background:#edd17a}.h3{background:#e79c4c}.h4{background:#dd6841}.h5{background:#962e25}.heatmap time{font:700 12px Arial}.heatmap p,.pattern p{font:14px/1.5 Arial}.split{display:grid;grid-template-columns:1.5fr 1fr;gap:60px}.pattern{border-top:1px solid;padding:18px 0}.pattern small{background:var(--green);color:#fff;padding:4px 7px;font:10px Arial}.pattern h4{font-size:21px;margin:10px 0}.checklist{background:var(--butter);padding:30px;align-self:start}.checklist label{display:flex;gap:10px;padding:14px 0;border-top:1px solid}.checklist input{width:auto}details{margin-top:30px}pre{white-space:pre-wrap;font:14px/1.6 Arial}footer{background:var(--green);color:#fff;padding:26px;text-align:center;font:13px Arial}@keyframes s{to{transform:rotate(360deg)}}@media(max-width:700px){header p{display:none}.notebook{margin:0;border-width:0;padding:25px;box-shadow:none}.entry{grid-template-columns:35px 1fr}.row,.row.two,.split,.result-intro{grid-template-columns:1fr}.remove{position:absolute;right:25px}.result-intro button{width:max-content}.intro{min-height:auto;padding-bottom:80px}}
