.app{width:100vw;height:100vh;display:flex;flex-direction:column;background:#fff;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.top-bar{height:70px;width:100%;background:#fff;border-bottom:1px solid rgba(0,0,0,.1);flex-shrink:0;display:flex;align-items:center;padding:0 32px;font-weight:600;font-size:18px;color:#2a2a2a}.top-bar a:hover{color:#ff8c42;transition:color .2s ease}.input-section{flex-shrink:0;display:flex;align-items:center;background:#f5f5f5;border-bottom:1px solid rgba(0,0,0,.1);height:262.5px;position:relative;width:100%}.input-content{flex:1;padding:0 24px;height:100%;display:flex;align-items:center}.row-slider{width:200px;height:6px;border-radius:3px;background:#d0d0d0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.row-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#2a2a2a;cursor:pointer;transition:background .2s ease}.row-slider::-webkit-slider-thumb:hover{background:#ff8c42}.row-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#2a2a2a;cursor:pointer;border:none;transition:background .2s ease}.row-slider::-moz-range-thumb:hover{background:#ff8c42}.grid-container{flex:1;display:grid;gap:12px;padding:24px;overflow-y:auto;overflow-x:hidden;grid-template-columns:repeat(var(--cols, 10),var(--cell-size, 50px));grid-auto-rows:var(--cell-size, 50px);position:relative;justify-content:start;align-content:start;min-height:0;height:100%;background:#fafafa}.square{width:var(--cell-size, 50px);height:var(--cell-size, 50px);aspect-ratio:1;border-radius:0;border:1px solid rgba(0,0,0,.2);transition:transform .4s cubic-bezier(.4,0,.2,1),z-index .3s ease,box-shadow .4s ease,border-color .3s cubic-bezier(.4,0,.2,1),border-width .3s cubic-bezier(.4,0,.2,1),grid-column .4s ease,grid-row .4s ease,left .4s ease,top .4s ease,width .4s ease,height .4s ease;cursor:pointer;z-index:1;position:relative;box-shadow:0 1px 3px #0000001a;will-change:transform;pointer-events:auto;box-sizing:border-box;background:#fff;overflow:hidden}.square-image{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;pointer-events:none;transition:opacity .3s ease,transform .3s ease;opacity:1;will-change:opacity}.square:hover,.square.hovered{z-index:10;box-shadow:0 8px 24px #00000026;border-color:#0003}.square.selected{z-index:20;box-shadow:0 8px 24px #00000026,0 2px 8px #0000001a;border:none;outline:1px solid rgba(0,0,0,.2);outline-offset:0;cursor:pointer}.square.selected:hover{transform:translateY(-50%) scale(calc(var(--selected-scale, 1) * 1.05))}.grid-container .square{transition:transform .4s cubic-bezier(.4,0,.2,1),z-index .3s ease,box-shadow .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1),outline-color .4s cubic-bezier(.4,0,.2,1),grid-column .4s ease,grid-row .4s ease,left .4s ease,top .4s ease,width .4s ease,height .4s ease}.selected-square-text{position:fixed;font-size:48px;font-weight:700;color:#2a2a2a;line-height:1.2;margin-bottom:16px;z-index:25}.selected-square-actions{position:fixed;display:flex;flex-direction:column;gap:12px;z-index:25;transition:opacity .3s ease,bottom .5s ease,width .5s ease,left .5s ease}.action-button{padding:12px 20px;background:#000;color:#fff;border:none;border-radius:0;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%;text-align:center;letter-spacing:.3px;text-transform:uppercase;box-shadow:0 2px 8px #0003,0 1px 3px #00000026}.action-button:hover{background:#ff8c42;transform:translateY(-1px);box-shadow:0 4px 16px #0000004d,0 2px 8px #0003}.action-button:active{transform:translateY(0);box-shadow:0 2px 6px #00000040,0 1px 3px #00000026}.continue-build-button{position:fixed;bottom:32px;right:32px;padding:16px 32px;background:#000;color:#fff;border:none;border-radius:0;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;letter-spacing:.3px;text-transform:uppercase;box-shadow:0 4px 16px #00000040,0 2px 8px #00000026;z-index:30}.continue-build-button:hover{background:#ff8c42;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d,0 3px 10px #0003}.continue-build-button:active{transform:translateY(0);box-shadow:0 2px 8px #00000040,0 1px 4px #00000026}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{width:100vw;height:100vh}
