:root{color:#1a1d24;font-synthesis:none;background:#f3f4f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{min-width:900px;min-height:100vh;margin:0;overflow:hidden}button,select{font:inherit}textarea{resize:vertical;color:#f2f3f5;width:100%;font:inherit;background:#2b303a;border:1px solid #434a56;border-radius:7px;padding:10px 12px}.entry-clue-input{margin-top:7px}.library-section{border-top:1px solid #414854;padding-top:18px}.library-actions,.random-select{grid-template-columns:1fr 1fr;gap:6px;margin:8px 0;display:grid}.random-select label{grid-column:1/-1;margin:0}.library-entries{border:1px solid #424957;border-radius:6px;max-height:220px;margin:10px 0;overflow:auto}.library-entry{border-bottom:1px solid #363c46;gap:8px;padding:8px;color:#e7ebef!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;display:flex!important}.library-entry:last-child{border-bottom:0}.library-entry input{appearance:auto;accent-color:#ffcb47;width:15px;height:15px;margin:2px 0 0}.library-entry span{gap:3px;display:grid}.library-entry small{color:#aeb7c2;font-size:10px;line-height:1.3}.studio{grid-template-rows:minmax(0,1fr);grid-template-columns:286px minmax(0,1fr);display:grid;position:fixed;inset:0;overflow:hidden}.control-panel{color:#f7f8fa;overscroll-behavior:contain;z-index:1;background:#20242c;flex-direction:column;height:100%;min-height:0;padding:30px 24px;display:flex;overflow:hidden scroll;box-shadow:2px 0 12px #12151d1e}.brand{align-items:center;gap:11px;margin-bottom:34px;display:flex}.brand-mark{color:#252a32;letter-spacing:-.5px;background:#ffcb47;border-radius:10px;place-items:center;width:37px;height:37px;font-size:11px;font-weight:900;display:grid}.brand strong{letter-spacing:-.3px;font-size:16px;display:block}.brand small{color:#9fa8b5;letter-spacing:1.1px;margin-top:3px;font-size:8px;display:block}.control-section{margin-bottom:21px}.compact-section{margin-bottom:16px}.control-section label,.label{color:#c8ced8;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px;font-size:11px;font-weight:700;display:block}select,input{appearance:none;color:#f2f3f5;background:#2b303a;border:1px solid #434a56;border-radius:7px;width:100%;padding:10px 12px}input::placeholder{color:#818b98}select:disabled{opacity:1}.hint{color:#858f9d;margin:8px 0 0;font-size:11px;line-height:1.5}.size-options{gap:8px;display:grid}.size-button{color:#dce0e6;text-align:left;cursor:pointer;background:0 0;border:1px solid #424957;border-radius:7px;padding:10px 12px;font-size:13px;transition:all .16s}.size-button:hover{border-color:#88919d}.size-button.selected{color:#ffdc7d;background:#ffcb4712;border-color:#ffcb47;box-shadow:inset 3px 0 #ffcb47}.solution-control{margin-top:2px}.check-label{cursor:pointer;align-items:center;gap:8px;text-transform:none!important;letter-spacing:0!important;color:#ecf0f4!important;font-size:13px!important;display:flex!important}.check-label input{appearance:none;cursor:pointer;background:#2b303a;border:1px solid #9aa3af;border-radius:4px;place-content:center;width:17px;height:17px;margin:0;display:grid}.check-label input:checked{background:#ffcb47;border-color:#ffcb47}.check-label input:checked:after{content:"✓";color:#20242c;font-size:14px;font-weight:900;line-height:1}.check-label input:focus-visible{outline-offset:2px;outline:2px solid #fff}.generate-button{cursor:pointer;color:#24282f;letter-spacing:.1px;background:#ffcb47;border:0;border-radius:7px;width:100%;margin-top:3px;padding:13px 15px;font-weight:800;transition:transform .16s,background .16s}.generate-button:hover{background:#ffda6f;transform:translateY(-1px)}.generate-button span{float:right;font-size:18px;line-height:15px}.local-note{color:#798390;margin-top:auto;padding-top:25px;font-size:10px;line-height:1.4}.export-actions{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px;display:grid}.export-button{color:#e8ebee;cursor:pointer;letter-spacing:.25px;background:#2b303a;border:1px solid #59616e;border-radius:6px;padding:9px 4px;font-size:10px;font-weight:700}.export-button:hover:not(:disabled){color:#ffdc7d;border-color:#ffcb47}.export-button:disabled{cursor:wait;opacity:.6}.export-status{color:#b7dfae;min-height:16px;margin:9px 0 0;font-size:10px;line-height:1.4}.preview-area{overscroll-behavior:contain;background:#f3f4f6;height:100%;min-height:0;padding:37px 45px 60px;overflow:auto scroll}.preview-heading{justify-content:space-between;align-items:end;max-width:750px;margin:0 auto 22px;display:flex}.eyebrow{color:#77808d;letter-spacing:1.4px;font-size:10px;font-weight:700}h1{letter-spacing:-.7px;margin:4px 0 0;font-size:24px}.a4-badge{color:#68717f;background:#fafafa;border:1px solid #d5d9df;border-radius:5px;padding:6px 9px;font-size:11px}.paper{aspect-ratio:1/1.4142;background:#fff;flex-direction:column;width:min(100%,750px);min-width:480px;margin:0 auto;padding:5.3% 8%;display:flex;box-shadow:0 12px 30px #333b481f,0 1px 3px #333b4826}.paper-header,.paper-footer{color:#737b86;letter-spacing:1.4px;justify-content:space-between;font-size:9px;font-weight:700;display:flex}.paper-header{border-bottom:1px solid #d9dce1;padding-bottom:11px}.paper-title{text-align:center;min-height:75px;padding:4.5% 0 3.7%}.paper-title h2{letter-spacing:-1.1px;overflow-wrap:anywhere;min-height:1.2em;margin:0;font-size:clamp(22px,3vw,32px)}.paper-title p{color:#606873;overflow-wrap:anywhere;min-height:1.2em;margin:7px 0 0;font-size:clamp(10px,1.3vw,13px)}.preview-solution-label{color:#b16e00;letter-spacing:1px;margin-top:7px;font-size:10px;font-weight:800;display:block}.maze-frame{flex:1;place-items:center;min-height:0;display:grid}.maze-svg{color:#101216;width:min(100%,520px);height:auto}.paper-footer{border-top:1px solid #d9dce1;padding-top:11px}.word-search-svg{width:min(100%,520px);height:auto}.word-list{color:#303640;margin:8px 0 12px;font-size:10px}.word-list strong{letter-spacing:1px;margin-bottom:5px;font-size:9px;display:block}.word-list div{grid-template-columns:repeat(3,1fr);gap:3px 9px;display:grid}.word-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.paper:has(.crossword-clues) .paper-title{min-height:54px;padding:2.3% 0 1.4%}.paper:has(.crossword-clues) .maze-frame{flex:none;padding-top:2px}.crossword-clues{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-height:205px;margin:12px 0;font-size:10px;line-height:1.42;display:grid;overflow:auto}.crossword-clues strong{letter-spacing:.8px;font-size:10px}.crossword-clues ol{margin:6px 0 0;padding-left:19px}.crossword-clues li{overflow-wrap:anywhere;margin-bottom:4px}.selected-entry>strong,.selected-entry>small{margin:4px 0;display:block}.selected-entry>small{color:#bfc7d1;font-size:11px;line-height:1.45}.move-grid{grid-template-columns:repeat(3,1fr);gap:5px;margin:10px 0;display:grid}.move-grid button{color:#fff;cursor:pointer;background:#2b303a;border:1px solid #59616e;border-radius:5px;padding:5px}.move-grid button:first-child{grid-column:2}.move-grid button:nth-child(2){grid-area:2/1}.move-grid button:nth-child(3){grid-area:2/3}.move-grid button:nth-child(4){grid-area:3/2}.unplaced{border:1px solid #424957;border-radius:6px;gap:4px;margin:8px 0;padding:8px;display:grid}.unplaced small{color:#aeb7c2;font-size:10px}.hundred-grid-paper{margin-bottom:24px;padding:0;display:block;overflow:hidden}.hundred-grid-svg,.hundred-grid-svg svg{width:100%;height:100%;display:block}.number-pair{grid-template-columns:1fr 1fr;gap:7px;display:grid}.error-status{color:#ffb4a9}@media (width<=960px){.preview-area{padding:28px}}
