/* version: 0.1.0; archive: calendar-editor-scaffold-v0.1.0.zip */
:root{font-family:Inter,system-ui,Arial,sans-serif;color:#223047;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #dfe4ec;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}header a{color:#245d93;text-decoration:none;margin-left:16px}main{max-width:1160px;margin:30px auto;padding:0 20px}.panel,.tile{background:#fff;border:1px solid #dce2eb;border-radius:12px;padding:22px;margin-bottom:20px}h1{margin:0 0 12px}h2{margin-top:0}label{display:block;margin:10px 0 5px;font-weight:600}input,textarea,select{padding:10px;border:1px solid #bbc6d5;border-radius:6px;max-width:100%;font:inherit}input[type=file]{width:100%}button,.button{padding:10px 16px;background:#1685cc;border:0;border-radius:8px;color:#fff;cursor:pointer;text-decoration:none;display:inline-block;font:inherit}button:disabled{opacity:.5;cursor:not-allowed}.muted{color:#69778a}.error{color:#b32636}.success{color:#197b52}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.tile img{width:100%;height:270px;object-fit:contain;background:#f3f3f3}.pageTabs{display:flex;gap:7px;overflow-x:auto;padding:8px 0 16px}.pageTabs button{background:#e6eef7;color:#213851;white-space:nowrap}.pageTabs button.active{background:#1685cc;color:white}.pageTabs button.has-photo:after{content:' ✓'}.editor-grid{display:grid;grid-template-columns:minmax(300px,600px) minmax(240px,1fr);gap:24px}.canvas-wrap{position:relative;width:100%;background:#fff;border:1px solid #cbd5e0;overflow:hidden}.canvas-wrap>img{width:100%;height:auto;display:block}.photo-overlay{position:absolute;overflow:hidden;border:2px dashed #ff4a91;background:#fef7fa50;touch-action:none;cursor:grab}.photo-overlay>img{position:absolute;max-width:none;user-select:none;pointer-events:none}.page-actions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}small{color:#667}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #e3e7ef;padding:9px;text-align:left}@media(max-width:790px){.editor-grid{grid-template-columns:1fr}header{flex-wrap:wrap;gap:10px}}