@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap";html,body,#root{min-width:320px;min-height:100%;margin:0;font-family:Manrope,Arial,sans-serif}body{min-height:100vh}:root{--ink:#21242b;--muted:#72727d;--paper:#f8f5ef;--line:#dedbd4;--panel:#fffdf9;--charcoal:#24242a;--pink:#e75d72;--pink-dark:#c7465e;--lav:#e2d7ff}*{box-sizing:border-box}button,select,input{font:inherit}.app-shell{min-height:100vh;color:var(--ink);background:#e9e8e4;grid-template-rows:65px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 330px;display:grid}.topbar{color:#f9f6f0;background:#1f2025;border-bottom:1px solid #35363d;grid-column:1/-1;align-items:center;gap:30px;padding:0 22px;display:flex}.brand{letter-spacing:-.9px;align-items:center;gap:9px;font:800 18px Manrope,sans-serif;display:flex}.brand-mark{color:#25252a;background:#e97587;border-radius:50%;place-items:center;width:27px;height:27px;font:700 18px Playfair Display,serif;display:grid}.brand small{letter-spacing:1.5px;color:#aaaab1;margin-left:2px;font:500 8px DM Mono,monospace}.workspace-switch{background:#2b2c33;border:1px solid #3a3b42;border-radius:7px;gap:4px;margin:auto;padding:3px;display:flex}.workspace-switch button{color:#aaaab1;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.workspace-switch button.is-active{color:#fff;background:#42424c}.topbar-note{color:#a7a5a8;white-space:nowrap;font:500 10px DM Mono,monospace}.editor{flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.canvas-toolbar{background:#eeece7;border-bottom:1px solid #d8d5cf;flex:none;justify-content:space-between;align-items:center;height:74px;padding:0 28px;display:flex}.eyebrow{color:#9a9695;letter-spacing:1.35px;margin-bottom:5px;font:500 9px DM Mono,monospace;display:block}.canvas-toolbar strong,.inspector-head strong{font-size:13px;font-weight:700}.zoom-tools{background:#f8f6f1;border:1px solid #d4d0c8;border-radius:6px;align-items:center;display:flex;overflow:hidden}.zoom-tools button{color:#4a4a50;cursor:pointer;background:0 0;border:0;place-items:center;width:30px;height:28px;display:grid}.zoom-tools button+button{border-left:1px solid #ddd8d0}.zoom-tools span{color:#77737a;padding:0 6px;font:500 10px DM Mono,monospace}.canvas-stage{background:radial-gradient(#d5d4d0 1px,#0000 1px) 0 0/16px 16px;flex:1;place-items:center;min-height:0;padding:34px;display:grid;overflow:auto}.sheet-wrap{aspect-ratio:8.5/11;filter:drop-shadow(0 17px 18px #73726b44);width:min(605px,95%);position:relative}.print-sheet{background:var(--paper);flex-direction:column;gap:15px;height:100%;padding:27px 29px 23px;display:flex}.sheet-edge{letter-spacing:1.05px;color:#8b8077;text-align:center;font:500 7px DM Mono,monospace}.magnet-grid{flex:1;gap:9px;display:grid}.magnet-cell{cursor:pointer;background:#eeeae2;border:1px dashed #c7bfb5;min-height:0;padding:0;transition:border .15s,box-shadow .15s;position:relative;overflow:hidden}.magnet-cell:hover,.magnet-cell.selected{border:2px solid var(--pink);box-shadow:0 0 0 3px #e75d7229}.magnet-cell span{color:#aaa39c;flex-direction:column;justify-content:center;align-items:center;gap:5px;height:100%;display:flex}.magnet-cell span b{color:#77726e;font-size:10px;font-weight:700}.magnet-cell span small{color:#aaa39c;font:500 8px DM Mono,monospace}.magnet-cell img{object-fit:cover;width:100%;height:100%;transition:transform .12s;display:block}.magnet-cell em{color:#fff;background:#222329b8;border-radius:50%;place-items:center;width:16px;height:16px;font:500 7px DM Mono,monospace;display:grid;position:absolute;bottom:5px;right:6px}.drop-overlay{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#22242cdc;border:2px dashed #ef8c9b;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.drop-overlay strong{font-size:17px}.drop-overlay span{color:#d0ced2;font-size:12px}.sheet-strip{background:#e2e0db;border-top:1px solid #d3d0ca;flex:none;align-items:center;gap:9px;height:84px;padding:0 25px;display:flex;overflow:auto}.sheet-thumb{text-align:left;cursor:pointer;color:#656168;background:#efede7;border:1px solid #ccc8c0;border-radius:5px;min-width:106px;height:51px;padding:8px 10px}.sheet-thumb.active{border-color:var(--pink);color:#24242a;background:#fffdf9;box-shadow:0 0 0 2px #e75d7230}.sheet-thumb span,.sheet-thumb small{display:block}.sheet-thumb span{font-size:11px;font-weight:700}.sheet-thumb small{margin-top:4px;font:500 8px DM Mono,monospace}.new-sheet{color:#646167;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:8px;font-size:11px;display:flex}.inspector{background:var(--panel);border-left:1px solid #d9d5ce;grid-area:2/2;padding:24px 22px;overflow:auto}.inspector-head{margin-bottom:19px}.inspector label,.field-group>span{color:#4d4c52;margin-bottom:14px;font-size:11px;font-weight:700;display:block}.inspector select{appearance:none;color:#414047;background:#f5f3ee;border:1px solid #dedad1;border-radius:5px;width:100%;margin-top:7px;padding:10px;font-size:11px;display:block}.field-group{padding:5px 0 6px}.grid-picker{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px;display:grid}.grid-picker button{cursor:pointer;color:#858088;background:#f7f5f0;border:1px solid #dedad1;border-radius:4px;padding:7px 2px 5px}.grid-picker button.chosen{border-color:var(--pink);color:var(--pink-dark);background:#fff4f5}.grid-picker i{gap:2px;width:31px;height:24px;margin:auto auto 5px;display:grid}.grid-picker b{background:currentColor;border-radius:1px}.grid-picker small{font:500 8px DM Mono,monospace}.upload-button{color:#fff;cursor:pointer;background:#292a30;border:0;border-radius:6px;align-items:center;gap:8px;width:100%;margin:14px 0 23px;padding:11px 12px;font-size:11px;font-weight:700;display:flex}.upload-button span{color:#a7a4ad;margin-left:auto;font-size:9px;font-weight:500}.photo-editor{border-top:1px solid #e4e0d9;padding-top:20px}.photo-editor.empty{opacity:.55}.photo-editor label{margin-bottom:12px;font-size:10px}.photo-editor input[type=range]{width:100%;accent-color:var(--pink);margin-top:7px;display:block}.adjust-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:16px;display:grid}.adjust-actions button{color:#57555c;cursor:pointer;background:#faf8f4;border:1px solid #e0dcd5;border-radius:4px;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-size:9px;display:flex}.adjust-actions button:disabled{cursor:not-allowed}.export-actions{border-top:1px solid #e4e0d9;gap:7px;margin-top:24px;padding-top:18px;display:grid}.export-actions button{cursor:pointer;border:0;border-radius:5px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:10px;font-weight:700;display:flex}.export-actions .secondary{color:#4f4e55;background:#f0ede7}.export-actions .primary{background:var(--pink);color:#fff}.clear-action{color:#98939a;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin:16px auto 0;font-size:9px;display:flex}.mobile-upload{display:none}@media (width<=840px){.app-shell{flex-direction:column;display:flex}.topbar{height:58px;padding:0 15px}.brand small,.topbar-note{display:none}.workspace-switch{margin-left:auto}.workspace-switch button{padding:7px}.workspace-switch button:last-child{display:none}.editor{height:calc(100svh - 116px)}.canvas-toolbar{height:58px;padding:0 15px}.canvas-toolbar strong{font-size:11px}.canvas-stage{padding:18px}.sheet-strip{height:64px;padding:0 13px}.inspector{display:none}.mobile-upload{background:#212228;grid-template-columns:1fr 1fr;gap:1px;height:58px;display:grid}.mobile-upload button{color:#fff;background:#2c2d34;border:0;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.mobile-upload button+button{background:var(--pink)}.sheet-wrap{width:min(400px,94%)}.print-sheet{gap:9px;padding:18px 19px 16px}.magnet-grid{gap:6px}.sheet-edge{font-size:5px}.magnet-cell span small{display:none}.magnet-cell span b{font-size:8px}}@media print{.topbar,.canvas-toolbar,.sheet-strip,.inspector,.mobile-upload{display:none!important}.app-shell,.editor,.canvas-stage{background:#fff!important;display:block!important}.canvas-stage{padding:0!important}.sheet-wrap{filter:none!important;width:100%!important}.print-sheet{width:100%!important;height:100vh!important;box-shadow:none!important}}.puzzle-piece{background-color:#eeeae2;background-repeat:no-repeat;width:100%;height:100%;display:block!important}
