:root{font-family:system-ui,sans-serif;color:#222}*{box-sizing:border-box}body{margin:0;background:#e9ecf1}.app{display:flex;min-height:100vh}.panel{width:340px;flex:none;background:#fff;padding:16px;height:100vh;overflow-y:auto;border-right:1px solid #d5d9e0}h1{font-size:1.2rem;margin:0 0 12px}fieldset{border:1px solid #d5d9e0;border-radius:6px;margin:0 0 12px;padding:8px 12px 12px}legend{font-weight:600;padding:0 4px}label{display:flex;flex-direction:column;gap:3px;font-size:.85rem;margin-top:8px}label.check{flex-direction:row;align-items:center;gap:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}input[type=number],select{padding:5px 6px;font:inherit;width:100%}input[type=color]{width:100%;height:30px;padding:0}.unit{color:#666;font-weight:400}.hint{font-size:.75rem;color:#666;margin:8px 0 0}button{margin-top:10px;width:100%;padding:10px;font:inherit;font-weight:600;border:0;border-radius:6px;background:#2b6cb0;color:#fff;cursor:pointer}button.secondary{background:#e2e8f0;color:#222;font-weight:500;padding:6px}button:disabled{background:#a0aec0;cursor:not-allowed}.errors{color:#b00020;font-size:.8rem;padding-left:18px;margin:8px 0 0}.errors:empty{display:none}.stage{flex:1;min-width:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:8px}.sheet{background:#fff;box-shadow:0 2px 12px #00000040}.sheet svg{display:block;width:100%;height:100%}.caption{font-size:.8rem;color:#555}@media (max-width: 760px){.app{flex-direction:column}.panel{width:100%;height:auto;border-right:0}.stage{height:70vh}}[hidden]{display:none!important}.banner{background:#c05621;color:#fff;font-weight:700;font-size:.85rem;padding:8px 16px;border-radius:6px;text-align:center}.booklet-box{border:2px solid #c05621;background:#fffaf0}.booklet-box legend{color:#c05621}.booklet-box .summary{margin:12px 0 0;padding:8px 10px;background:#fff;border:1px solid #c05621;border-left-width:4px;border-radius:4px;font-size:.85rem;font-weight:600;color:#7b341e}.booklet-box .summary:empty{display:none}.pager{display:flex;align-items:center;gap:8px;font-size:.85rem}.pager button{width:36px;margin-top:0;padding:6px}.pager input[type=number]{width:70px}.pager select{width:auto}.stage.booklet{background:#fbefe1}.site-footer{margin-top:8px;font-size:.8rem;color:#555;text-align:center}h1 small{display:block;font-size:.75rem;font-weight:400;color:#555}
