:root{color-scheme:light;--ink:#24241f;--paper:#e9e9e4;--beige:#e6d3b6}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--beige);color:var(--ink);font:17px/1.65 Georgia,serif;padding:0 90px 0 0}header,main,footer{max-width:1100px;margin:auto;padding:24px}header{border-bottom:4px double var(--ink)}h1{font-size:clamp(2rem,5vw,4rem);line-height:1.1;margin:.25em 0}h2{font-size:2rem;border-bottom:3px double var(--ink)}.kicker{font:12px Arial,sans-serif;letter-spacing:1px}section{padding:20px;background:var(--paper);margin-bottom:24px;border:1px solid #aaa89b}nav{position:absolute;right:8px;top:140px;width:70px;display:grid;gap:8px}nav a{writing-mode:vertical-rl;border:1px solid var(--ink);padding:16px;background:var(--paper);color:inherit}form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}label{display:flex;flex-direction:column;font:14px/1.6 Arial,sans-serif}input,select,button{font:inherit;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:10px;min-height:44px;min-width:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #444;outline-offset:3px}.notice{border:1px solid;padding:15px}#result{padding:15px 0;min-height:65px}.page-controls{display:flex;justify-content:space-between;align-items:center;gap:10px}.sheet{width:100%;aspect-ratio:3/4;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));background:#ededed;color:#222}.house{border:1px solid #555;padding:8%;display:flex;flex-direction:column;justify-content:center;text-align:center;min-width:0;overflow-wrap:anywhere;font-size:clamp(.65rem,1.8vw,1.2rem)}.house strong{font-size:1.2em}.house small{font:10px Arial,sans-serif;text-transform:uppercase}table{border-collapse:collapse;width:100%;font-size:15px}th,td{border-bottom:1px solid #777;text-align:left;padding:8px}caption{text-align:left;font-style:italic}footer{font:12px Arial,sans-serif}.skip{position:absolute;top:-100px;color:inherit;background:white}.skip:focus{top:0}@media(max-width:800px){body{padding:0}nav{position:static;display:flex;width:auto;margin:16px;flex-wrap:wrap}nav a{writing-mode:horizontal-tb;padding:10px}form{grid-template-columns:repeat(2,minmax(0,1fr))}header,main,footer{padding:14px}section{padding:14px}}@media(max-width:450px){form{grid-template-columns:1fr}.page-controls{flex-wrap:wrap}.house{font-size:11px}.house small{font-size:8px}h2{font-size:1.6rem}}
