.site-footer[data-v-58fcb46b]{border-top:1px solid #e2e8f0;background:#f8fafc;padding:0;display:block;font-size:.85rem;color:#64748b;margin-top:auto}.site-footer--blog[data-v-58fcb46b]{background:#f4f4f8;margin-top:0}.footer-main[data-v-58fcb46b]{max-width:960px;margin:0 auto;padding:2.5rem 1.5rem 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.footer-col[data-v-58fcb46b]{display:flex;flex-direction:column;gap:.4rem}.footer-heading[data-v-58fcb46b]{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#1e293b;margin:0 0 .5rem}.footer-link[data-v-58fcb46b]{color:#64748b;text-decoration:none;font-size:.85rem;line-height:1.6;transition:color .15s}.footer-link[data-v-58fcb46b]:hover{color:#7c3aed}.footer-bottom[data-v-58fcb46b]{max-width:960px;margin:0 auto;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;text-align:center;font-size:.8rem;color:#94a3b8}@media(max-width:640px){.footer-main[data-v-58fcb46b]{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:2rem 1.25rem 1rem}}@media(max-width:380px){.footer-main[data-v-58fcb46b]{grid-template-columns:1fr}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;background:var(--page-bg, #f4f4f8);color:#222;min-height:100vh}.page-wrap{min-height:100vh;display:flex;flex-direction:column}.blog-site-header{background:#fff;border-bottom:1px solid #e4e4ec}.footer-link:hover{text-decoration:underline}.app{max-width:960px;margin:0 auto;padding:1.5rem 1.5rem 2rem;flex:1;width:100%;box-sizing:border-box}.app--landing{max-width:100%;padding:0}.app--landing .site-header{max-width:960px;margin:0 auto;padding:1.5rem 1.5rem 0}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;margin-bottom:1rem;gap:1rem}.site-logo{display:flex;align-items:center;gap:.4rem;font-weight:700;font-size:1.15rem;color:#111;text-decoration:none;cursor:pointer}.logo-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#7c3aed;color:#fff;border-radius:8px;font-size:1.1rem;font-weight:900}.logo-text{font-size:1.1rem;font-weight:700}h1{font-size:2rem;letter-spacing:-.5px}.nav-link{font-size:.9rem;color:#444;text-decoration:none;padding:.3rem .5rem;border-radius:6px;transition:color .15s}.nav-link:hover{color:#111}.nav-link--create{color:#7c3aed;font-weight:600}.nav-link--create:hover{color:#6d28d9}.auth-btn-pill{display:inline-flex;align-items:center;padding:.4rem 1rem;border:1.5px solid #222;border-radius:999px;background:transparent;font-size:.875rem;font-weight:600;color:#111;cursor:pointer;text-decoration:none;transition:background .15s,color .15s}.auth-btn-pill:hover{background:#111;color:#fff}.hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:3rem 1.5rem 4rem;max-width:960px;margin:0 auto}.hero-left{flex:1;max-width:500px}.hero-badge{display:inline-flex;align-items:center;gap:.4rem;background:#ede9fe;color:#6d28d9;font-size:.8rem;font-weight:600;padding:.35rem .8rem;border-radius:999px;margin-bottom:1.4rem}.hero-title{font-size:clamp(2.2rem,5vw,3rem);font-weight:900;line-height:1.1;letter-spacing:-1px;color:#0f0f0f;margin-bottom:1rem}.hero-title-accent{color:#7c3aed}.hero-desc{font-size:1rem;color:#555;line-height:1.6;margin-bottom:2rem}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}.daily-cta{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.5rem 0;font-size:.9rem;font-weight:600;color:#4338ca;cursor:pointer;transition:color .15s}.daily-cta:hover{color:#3730a3}.daily-cta-icon{display:flex;align-items:center}.daily-archive-link{display:block;font-size:.8rem;color:#94a3b8;text-decoration:none;margin-top:-.15rem}.daily-archive-link:hover{color:#4338ca;text-decoration:underline}.hero-btn-primary{padding:.75rem 1.6rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.hero-btn-primary:hover{background:#6d28d9;transform:translateY(-1px)}.hero-btn-secondary{padding:.75rem 1.6rem;background:transparent;color:#111;border:1.5px solid #ccc;border-radius:999px;font-size:.95rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.hero-btn-secondary:hover{border-color:#888;background:#fff}.hero-right{flex-shrink:0}.hero-grid-wrap{background:#fff;border-radius:16px;box-shadow:0 4px 32px #00000014;padding:1.25rem;overflow:hidden}.hero-grid{display:flex;flex-direction:column;border:2px solid #333;line-height:0}.hero-grid-row{display:flex}.hc{width:46px;height:46px;background:#fff;border:1px solid #ccc;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:700;color:#111;position:relative;flex-shrink:0}.hc--empty{background:#2a2a2a;border-color:#2a2a2a}.hc-n{position:absolute;top:2px;left:3px;font-size:.55rem;font-weight:700;color:#666;line-height:1}.how-section{background:#fff;padding:4rem 1.5rem;text-align:center}.how-title{font-size:1.8rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.4rem}.how-sub{color:#666;font-size:.95rem;margin-bottom:2.5rem}.how-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:960px;margin:0 auto}.how-cards--types{grid-template-columns:repeat(3,1fr);max-width:960px;margin-bottom:2.5rem}.how-card--type{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;border:2px solid transparent}.how-card--type:hover{border-color:#7c3aed;box-shadow:0 4px 20px #7c3aed1a;transform:translateY(-2px)}.how-card--type:nth-child(2):hover{border-color:#0ea5e9;box-shadow:0 4px 20px #0ea5e91a}.how-card--type:last-child:hover,.how-card--fc:hover{border-color:#6366f1;box-shadow:0 4px 20px #6366f11a}.how-icon--wf{background:#e0f2fe;color:#0ea5e9}.how-icon--fc{background:#ede9fe;color:#6366f1}.how-card-cta{display:inline-block;margin-top:.5rem;font-size:.82rem;font-weight:700;color:#7c3aed}.how-card-cta--wf{color:#0ea5e9}.how-card-cta--fc{color:#6366f1}.how-steps{display:flex;justify-content:center;gap:2rem;max-width:760px;margin:0 auto;flex-wrap:wrap}.how-step{display:flex;align-items:flex-start;gap:.85rem;flex:1;min-width:180px}.how-step-num{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#7c3aed;color:#fff;font-size:.9rem;font-weight:800;display:flex;align-items:center;justify-content:center}.how-step strong{display:block;font-size:.9rem;color:#111;margin-bottom:.2rem}.how-step p{font-size:.82rem;color:#666;line-height:1.5}.latest-post-section{max-width:760px;margin:0 auto 2.5rem;padding:0}.latest-post-card{display:flex;align-items:stretch;background:#fff;border-radius:14px;box-shadow:0 2px 12px #00000012;text-decoration:none;overflow:hidden;transition:transform .2s,box-shadow .2s;border:1px solid #e8e8f0}.latest-post-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0000001f}.latest-post-img{width:240px;min-height:160px;object-fit:cover;flex-shrink:0}.latest-post-body{padding:1.5rem 1.75rem;display:flex;flex-direction:column;justify-content:center;gap:.3rem}.latest-post-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#7c3aed}.latest-post-title{font-size:1.15rem;font-weight:700;color:#222;margin:0;line-height:1.35}.latest-post-date{font-size:.82rem;color:#888}.latest-post-cta{font-size:.9rem;font-weight:600;color:#7c3aed;margin-top:.25rem}@media(max-width:600px){.latest-post-card{flex-direction:column}.latest-post-img{width:100%;height:180px;min-height:auto}.latest-post-body{padding:1.25rem}}.how-card{background:#f8f8fc;border-radius:14px;padding:1.5rem 1.25rem;text-align:left}.how-icon{width:44px;height:44px;border-radius:10px;background:#ede9fe;color:#7c3aed;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.how-card h3{font-size:.95rem;font-weight:700;margin-bottom:.4rem;color:#111}.how-card p{font-size:.85rem;color:#666;line-height:1.5}.auth-bar{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.profile-link{display:inline-flex;align-items:center;gap:.4rem;text-decoration:none}.profile-link:hover .auth-name{color:#6366f1}.pro-pill{background:#7c3aed;color:#fff;font-size:.65rem;font-weight:700;padding:.15rem .4rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.auth-name{font-size:.9rem;font-weight:500;color:#444}.auth-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border:1px solid #ccc;border-radius:6px;background:#fff;font-size:.875rem;font-weight:500;color:#333;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.auth-btn:hover{background:#f5f5f5;border-color:#aaa}.menu-btn{padding:.3rem .55rem;border:1px solid #ccc;border-radius:6px;background:#fff;font-size:.8rem;letter-spacing:2px;cursor:pointer;line-height:1;color:#555;transition:background .15s}.menu-btn:hover{background:#f5f5f5}.menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001a;min-width:160px;z-index:100;overflow:hidden}.menu-item{display:block;width:100%;padding:.6rem 1rem;background:none;border:none;text-align:left;font-size:.9rem;cursor:pointer;color:#222;transition:background .12s}.menu-item:hover{background:#f5f5f5}.menu-item-danger{color:#c00}.modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200}.modal{background:#fff;border-radius:10px;padding:1.5rem;width:100%;max-width:420px;box-shadow:0 8px 32px #0000002e}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.modal-header h2{font-size:1.1rem;font-weight:700}.modal-close{background:none;border:none;font-size:1.4rem;line-height:1;cursor:pointer;color:#888;padding:0 .2rem}.modal-close:hover{color:#222}.modal-sub{font-size:.8rem;color:#888;margin-bottom:1rem}.puzzle-list{list-style:none;display:flex;flex-direction:column;gap:.4rem}.puzzle-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border:1px solid #e8e8e8;border-radius:6px;cursor:pointer;transition:background .12s}.puzzle-item:hover{background:#f0f7ff;border-color:#b3d4ff}.puzzle-title{font-size:.9rem;font-weight:600}.puzzle-date{font-size:.8rem;color:#888}.modal-empty{font-size:.875rem;color:#888;text-align:center;padding:1rem 0}.build-page{max-width:800px;margin:0 auto;padding:0 1.5rem 2rem}.build-hero{padding:2rem 0;border-bottom:1px solid #e4e4ec;margin-bottom:2rem}.build-back-link{display:inline-flex;align-items:center;background:none;border:none;font-size:.85rem;font-weight:600;color:#7c3aed;cursor:pointer;padding:0;margin-bottom:.75rem;transition:opacity .15s}.build-back-link:hover{opacity:.7}.build-type-picker{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:2rem}.build-type-card{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;background:#fff;border:2px solid #e4e4ec;border-radius:14px;padding:1.5rem 1.5rem 1.25rem;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,transform .1s}.build-type-card:hover{border-color:#7c3aed;box-shadow:0 4px 20px #7c3aed1f;transform:translateY(-2px)}.build-type-card--wf:hover{border-color:#0ea5e9;box-shadow:0 4px 20px #0ea5e91f}.build-type-icon{width:52px;height:52px;border-radius:12px;background:#ede9fe;color:#7c3aed;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.build-type-icon--wf{background:#e0f2fe;color:#0ea5e9}.build-type-card h3{font-size:1.1rem;font-weight:800;color:#111}.build-type-card p{font-size:.875rem;color:#666;line-height:1.5}@media(max-width:560px){.build-type-picker{grid-template-columns:1fr}}.build-title{font-size:1.8rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.3rem}.build-sub{color:#666;font-size:.95rem}.browse-section{max-width:960px;margin:2rem auto;padding:0 1.5rem}.browse-header{margin-bottom:2rem}.browse-title{font-size:1.8rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.3rem}.browse-sub{color:#666;font-size:.95rem}.browse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.browse-card{display:flex;flex-direction:column;gap:.5rem;background:#fff;border:1.5px solid #e4e4ec;border-radius:12px;padding:1.25rem 1.25rem 1rem;cursor:pointer;text-align:left;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .1s}.browse-card:hover{border-color:#7c3aed;box-shadow:0 4px 16px #7c3aed1a;transform:translateY(-2px)}.browse-card-icon{width:36px;height:36px;border-radius:8px;background:#ede9fe;color:#7c3aed;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.browse-card-title{font-size:.95rem;font-weight:700;color:#111}.browse-card-play{font-size:.8rem;color:#7c3aed;font-weight:600}.browse-card-author,.browse-card-meta{font-size:.78rem;color:#888}.browse-empty{color:#888;font-size:.9rem}.browse-header--matching{margin-top:2.5rem}.browse-card-icon--matching{background:#fce7f3;color:#db2777}.browse-card--matching:hover{border-color:#db2777;box-shadow:0 4px 16px #db27771a}.browse-header--flashcards{margin-top:2.5rem}.browse-card-icon--flashcards{background:#fef3c7;color:#d97706}.browse-card--flashcards:hover{border-color:#d97706;box-shadow:0 4px 16px #d977061a}.browse-header--community{margin-top:2.5rem}.browse-card-icon--community{background:#fef3c7;color:#d97706}.browse-card--community:hover{border-color:#d97706;box-shadow:0 4px 16px #d977061a}.browse-header--wordsearch{margin-top:2.5rem}.browse-card-icon--wordsearch{background:#dbeafe;color:#2563eb}.browse-card--wordsearch:hover{border-color:#2563eb;box-shadow:0 4px 16px #2563eb1a}.browse-header--quizl,.browse-header--worksheets,.browse-header--drills{margin-top:2.5rem}.browse-card-icon--worksheets{width:36px;height:36px;background:#ecfdf5;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#059669;margin-bottom:.5rem}.browse-card--worksheets:hover{border-color:#059669;box-shadow:0 4px 16px #0596691a}.browse-header--bingo{margin-top:2.5rem}.browse-card-icon--bingo{width:36px;height:36px;background:#fdf4ff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#a21caf;margin-bottom:.5rem}.browse-card--bingo:hover{border-color:#a21caf;box-shadow:0 4px 16px #a21caf1a}.browse-header--scramble{margin-top:2.5rem}.browse-card-icon--scramble{width:36px;height:36px;background:#fff7ed;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#ea580c;margin-bottom:.5rem}.browse-card--scramble:hover{border-color:#ea580c;box-shadow:0 4px 16px #ea580c1a}.browse-card-icon--quizl{width:36px;height:36px;background:#ede9fe;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:.5rem}.browse-card--quizl:hover{border-color:#7c3aed;box-shadow:0 4px 16px #7c3aed1a}.featured-section{margin-bottom:2rem}.featured-heading{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#555;margin-bottom:.75rem}.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.featured-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1rem;font-size:.95rem;font-weight:600;color:#222;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s}.featured-card:hover{border-color:#1a6eff;box-shadow:0 2px 8px #1a6eff1a;color:#1a6eff}.input-section{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:2rem}.word-entry{display:flex;gap:.5rem}.word-entry input{flex:1;padding:.55rem 1rem;border:1.5px solid #e4e4ec;border-radius:999px;font-size:1rem;outline:none;background:#fff;transition:border-color .15s}.word-entry input:focus{border-color:#7c3aed}.word-entry button{padding:.5rem 1.1rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .15s}.word-entry button:hover:not(:disabled){background:#6d28d9}.word-entry button:disabled{opacity:.4;cursor:default}.csv-upload-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.5rem .9rem;background:transparent;color:#7c3aed;border:1.5px solid #7c3aed;border-radius:999px;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.csv-upload-btn:hover{background:#7c3aed;color:#fff}.csv-upload-btn svg{flex-shrink:0}.word-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.chip{display:inline-flex;align-items:center;gap:.25rem;background:#eee;border-radius:20px;padding:.2rem .6rem;font-size:.9rem;font-weight:600;letter-spacing:.5px}.chip-remove{background:none;border:none;cursor:pointer;font-size:1rem;line-height:1;color:#888;padding:0}.chip-remove:hover{color:#c00}.actions{display:flex;gap:.5rem;margin-top:1rem}.generate-btn{padding:.65rem 1.6rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.95rem;cursor:pointer;font-weight:700;transition:background .15s,transform .1s}.generate-btn:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.generate-btn:disabled{opacity:.45;cursor:default}.clear-btn{padding:.65rem 1.2rem;background:transparent;color:#555;border:1.5px solid #ccc;border-radius:999px;font-size:.95rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.clear-btn:hover{border-color:#888;background:#fff}.error{margin-top:.75rem;color:#c00;font-size:.9rem}.clue-edit-section{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:2rem}.clue-edit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.clue-edit-header h2{font-size:1.15rem;font-weight:700}.clue-edit-actions{display:flex;gap:.5rem}.clue-edit-name-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem;flex-wrap:wrap}.clue-edit-name-row .naming-input{flex:1;min-width:160px}.cw-folder-dropdown-wrap{position:relative;flex-shrink:0}.cw-folder-select-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .65rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.85rem;background:#fff;color:#334155;cursor:pointer;white-space:nowrap}.cw-folder-select-btn:hover:not(:disabled){border-color:#a5b4fc}.cw-folder-select-btn:disabled{opacity:.45;cursor:default}.cw-folder-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 4px 12px #0000001a;z-index:50;min-width:160px;overflow:hidden}.cw-folder-option{display:flex;align-items:center;gap:.35rem;width:100%;text-align:left;padding:.5rem .85rem;background:none;border:none;font-size:.875rem;color:#334155;cursor:pointer}.cw-folder-option:hover{background:#f1f5f9}.cw-folder-option--create{color:#6366f1;font-weight:500}.cw-folder-option--create:hover{background:#eef2ff}.cw-folder-divider{height:1px;background:#e2e8f0;margin:.25rem 0}.cw-modal-backdrop{position:fixed;inset:0;background:#00000059;z-index:100;display:flex;align-items:center;justify-content:center}.cw-modal{background:#fff;border-radius:.75rem;padding:1.5rem;width:320px;box-shadow:0 8px 32px #00000026}.cw-modal-title{font-size:1rem;font-weight:700;margin:0 0 1rem;color:#1e293b}.cw-modal-input{width:100%;box-sizing:border-box;padding:.5rem .75rem;border:1.5px solid #e2e8f0;border-radius:.375rem;font-size:.9rem;outline:none}.cw-modal-input:focus{border-color:#6366f1}.cw-modal-error{color:#dc2626;font-size:.85rem;margin:.5rem 0 0}.cw-modal-actions{display:flex;gap:.5rem;margin-top:1rem;justify-content:flex-end}.cw-modal-btn{padding:.45rem 1rem;border-radius:.375rem;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer}.cw-modal-btn--primary{background:#6366f1;color:#fff;border-color:#6366f1;font-weight:600}.cw-modal-btn--primary:hover:not(:disabled){background:#4f46e5}.cw-modal-btn--primary:disabled{opacity:.5;cursor:default}.free-gate-modal{text-align:center;max-width:360px;position:relative}.free-gate-desc{font-size:.9rem;color:#555;margin:.5rem 0 1.25rem;line-height:1.5}.free-gate-actions{justify-content:center;gap:.75rem}.cw-modal-close-btn{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.25rem;cursor:pointer;color:#888;line-height:1}.cw-modal-close-btn:hover{color:#333}.cookie-banner{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);background:#1e1e1e;color:#f5f5f5;border-radius:.75rem;padding:.85rem 1.25rem;display:flex;align-items:center;gap:1rem;z-index:9999;box-shadow:0 4px 20px #00000059;max-width:calc(100vw - 2rem);flex-wrap:wrap}.cookie-banner-text{font-size:.85rem;margin:0;line-height:1.4}.cookie-banner-link{color:#a5b4fc;text-decoration:underline}.cookie-banner-actions{display:flex;gap:.5rem;flex-shrink:0}.cookie-banner-btn{padding:.35rem .9rem;border-radius:.375rem;border:none;font-size:.85rem;font-weight:600;cursor:pointer}.cookie-banner-btn--accept{background:#6366f1;color:#fff}.cookie-banner-btn--accept:hover{background:#4f46e5}.cookie-banner-btn--decline{background:#3a3a3a;color:#ccc}.cookie-banner-btn--decline:hover{background:#4a4a4a}.cw-folder-upsell{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;background:none;border:1px dashed #c4b5fd;border-radius:6px;font-size:.8rem;color:#7c3aed;cursor:pointer;white-space:nowrap}.cw-folder-upsell:hover:not(:disabled){background:#f5f3ff}.cw-folder-upsell:disabled{opacity:.45;cursor:default}.ai-fill-btn{padding:.45rem 1.1rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s;display:inline-flex;align-items:center;gap:.35rem}.ai-fill-btn:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.ai-fill-btn:disabled{opacity:.5;cursor:default}.ai-fill-btn--upsell{background:#f5f3ff;color:#6d28d9;border:1.5px solid #c4b5fd}.ai-fill-btn--upsell:hover{background:#ede9fe;transform:translateY(-1px)}.reposition-row{padding:.4rem 0;border-top:1px solid #f0f0f0;margin-top:.25rem}.reposition-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;background:transparent;color:#7c3aed;border:1px solid #ddd6fe;border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;width:100%;justify-content:center}.reposition-btn:hover:not(:disabled){border-color:#7c3aed;background:#f5f3ff;color:#6d28d9}.reposition-btn--active{background:#7c3aed;color:#fff;border-color:#7c3aed}.reposition-btn--active:hover{background:#6d28d9;border-color:#6d28d9}.reposition-btn:disabled{opacity:.45;cursor:default}.crossword-grid.reposition-active .grid-cell{cursor:grab;-webkit-user-select:none;user-select:none}.crossword-grid.reposition-active .grid-cell.black{cursor:default}.grid-cell.reposition-word{outline:1.5px dashed #94a3b8;outline-offset:-2px}.grid-cell.reposition-dragging{opacity:.4;background:#e0e7ff!important;cursor:grabbing!important}.grid-cell.reposition-valid{background:#d1fae5!important}.grid-cell.reposition-hover{background:#34d399!important;outline:2px solid #059669;outline-offset:-2px;z-index:1;position:relative}.grid-cell.reposition-hover-invalid{background:#fee2e2!important;outline:2px solid #ef4444;outline-offset:-2px;position:relative}.reposition-hint{font-size:.78rem;color:#6366f1;text-align:center;margin-bottom:.5rem;font-style:italic}.reposition-compass{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.compass-toggle-row{display:flex;flex-direction:column;gap:4px}.compass-toggle-btn{padding:.25rem .6rem;border:1px solid #e2e8f0;border-radius:5px;background:#f8fafc;color:#64748b;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.compass-toggle-btn--active{background:#0f172a;color:#fff;border-color:#0f172a}.compass-grid{display:grid;grid-template-columns:repeat(3,30px);grid-template-rows:repeat(3,30px);gap:2px}.compass-btn{width:30px;height:30px;border:1px solid #bfdbfe;border-radius:5px;background:#eff6ff;color:#2563eb;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,border-color .1s}.compass-btn:hover{background:#dbeafe;border-color:#3b82f6}.compass-grid--shrink .compass-btn{border-color:#fecaca;background:#fff5f5;color:#dc2626}.compass-grid--shrink .compass-btn:hover{background:#fee2e2;border-color:#ef4444}.compass-center{background:#e2e8f0;border-radius:3px}.guide-backdrop{position:fixed;inset:0;background:#00000073;z-index:1000}.guide-spotlight{position:fixed;z-index:1001;border-radius:6px;box-shadow:0 0 0 4px #6366f1,0 0 0 6px #6366f14d;pointer-events:none;animation:guide-pulse 1.8s ease-in-out infinite}@keyframes guide-pulse{0%,to{box-shadow:0 0 0 4px #6366f1,0 0 0 8px #6366f140}50%{box-shadow:0 0 0 4px #6366f1,0 0 0 14px #6366f114}}.guide-tooltip{position:fixed;z-index:1002;width:300px;background:#fff;border-radius:.875rem;padding:1.5rem 1.25rem 1.25rem;box-shadow:0 12px 40px #00000038;text-align:center}.guide-tooltip--centered{top:50%!important;left:50%!important;transform:translate(-50%,-50%)}.guide-arrow{position:absolute;width:0;height:0}.guide-arrow--left{left:-10px;top:50%;transform:translateY(-50%);border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:10px solid #fff;filter:drop-shadow(-2px 0 2px rgba(0,0,0,.08))}.guide-arrow--right{right:-10px;top:50%;transform:translateY(-50%);border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:10px solid #fff;filter:drop-shadow(2px 0 2px rgba(0,0,0,.08))}.guide-arrow--top{top:-10px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #fff;filter:drop-shadow(0 -2px 2px rgba(0,0,0,.08))}.guide-arrow--bottom{bottom:-10px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid #fff;filter:drop-shadow(0 2px 2px rgba(0,0,0,.08))}.guide-close{position:absolute;top:.65rem;right:.8rem;background:none;border:none;font-size:1.2rem;cursor:pointer;color:#aaa;line-height:1}.guide-close:hover{color:#333}.guide-icon{font-size:1.75rem;margin-bottom:.3rem}.guide-step-label{font-size:.68rem;color:#94a3b8;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.guide-dots{display:flex;justify-content:center;gap:5px;margin-bottom:.75rem}.guide-dot{width:6px;height:6px;border-radius:50%;background:#e2e8f0;cursor:pointer;transition:background .15s}.guide-dot--active{background:#6366f1}.guide-dot:hover{background:#a5b4fc}.guide-dot--locked{opacity:.3;cursor:default}.guide-dot--locked:hover{background:#e2e8f0}.guide-title{font-size:1rem;font-weight:700;color:#1e293b;margin:0 0 .4rem}.guide-body{font-size:.84rem;color:#475569;line-height:1.55;margin:0 0 1.1rem}.guide-actions{display:flex;gap:.5rem;justify-content:center}.guide-btn{padding:.45rem 1.2rem;border-radius:.5rem;border:none;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.guide-btn--next{background:#6366f1;color:#fff}.guide-btn--next:hover{background:#4f46e5}.guide-btn--back{background:#f1f5f9;color:#475569}.guide-btn--back:hover{background:#e2e8f0}.guide-help-btn{width:22px;height:22px;border-radius:50%;border:1.5px solid #cbd5e1;background:#f8fafc;color:#64748b;font-size:.8rem;font-weight:700;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center;transition:background .1s,border-color .1s}.guide-help-btn:hover{background:#e0e7ff;border-color:#6366f1;color:#4f46e5}.signin-nudge{display:inline-flex;align-items:center;padding:.45rem 1rem;background:#7c3aed;color:#fff;border-radius:999px;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s;border:none;cursor:pointer}.signin-nudge:hover{background:#6d28d9}.reveal-btn,.back-btn,.new-gridl-btn{padding:.45rem 1rem;background:transparent;color:#555;border:1.5px solid #ccc;border-radius:999px;font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s;text-decoration:none}.reveal-btn:hover,.back-btn:hover,.new-gridl-btn:hover:not(:disabled){border-color:#888;background:#fff}.new-gridl-btn:disabled{opacity:.4;cursor:default}.clue-edit-add-row{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #eee}.clue-edit-add-input{font-style:italic}.add-word-btn{padding:.45rem 1rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.85rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}.add-word-btn:hover:not(:disabled){background:#6d28d9}.add-word-btn:disabled{opacity:.4;cursor:default}.finalize-btn{padding:.45rem 1.1rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.finalize-btn:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.finalize-btn:disabled{opacity:.45;cursor:default}.clue-edit-hint{font-size:.85rem;color:#777;margin-bottom:.75rem}.clue-edit-hint a{color:#1a6eff;text-decoration:none}.clue-edit-hint a:hover{text-decoration:underline}.clue-edit-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.clue-edit-row{display:flex;align-items:center;gap:.75rem}.clue-edit-number{font-size:.8rem;font-weight:700;color:#888;min-width:2.5rem;text-align:right}.clue-edit-word{font-weight:700;font-size:.9rem;letter-spacing:.5px;min-width:7rem}.clue-edit-input{flex:1;padding:.35rem .6rem;border:1px solid #ccc;border-radius:6px;font-size:.9rem;outline:none;transition:border-color .15s}.clue-edit-input:focus{border-color:#555}.app--landing:has(.cw-builder) .site-header{max-width:100%;padding:.75rem 1.5rem;margin-bottom:0;border-bottom:1px solid #e2e8f0}.app--landing:has(.cw-builder) .site-footer{display:none}.cw-builder{display:flex;gap:0;min-height:calc(100vh - 140px);width:100%}.cw-builder-left{width:22rem;min-width:22rem;border-right:1px solid #e2e8f0;padding:0;overflow-y:auto;max-height:calc(100vh - 140px);display:flex;flex-direction:column;gap:0;background:#f8fafc}.cw-builder-left .clue-edit-list{flex:1;overflow-y:auto}.cw-builder-left .clue-edit-row{flex-wrap:wrap}.cw-builder-left .clue-edit-word{min-width:5rem}.cw-builder-right{position:relative;flex:1;min-width:0;padding:4.5rem 2rem 2.5rem;overflow-y:auto;max-height:calc(100vh - 140px);display:flex;flex-direction:column;align-items:center;gap:1.25rem;background-color:var(--page-bg, #f8fafc);background-image:var(--cw-pattern, none);background-repeat:repeat}.cw-panel-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:1.25rem 1.25rem 1rem;border-bottom:1px solid #e2e8f0;background:#fff}.cw-panel-header h2{font-size:1.1rem;font-weight:700;color:#1e293b}.cw-panel-section{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding:1rem 0;border-bottom:1px solid #e2e8f0}.cw-panel-section:last-child{border-bottom:none}.cw-panel-actions{gap:.5rem}.cw-panel-section--spaced{justify-content:space-between}.cw-toggles{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.cw-tooltip{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border-radius:50%;background:#e2e8f0;color:#64748b;font-size:.65rem;font-weight:700;cursor:default;margin-left:.1rem;vertical-align:middle}.cw-btn-right{margin-left:auto}.cw-panel-actions .naming-inline{flex-wrap:wrap;width:100%}.cw-panel-extras{flex-direction:column;align-items:stretch;gap:.75rem}.cw-field-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.cw-description{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;font-family:inherit;resize:vertical;outline:none;transition:border-color .15s;color:#334155}.cw-description:focus{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed1a}.cw-header-toggle{margin-top:.25rem}.cw-preview-description{font-size:.95rem;color:#475569;text-align:center;max-width:600px}.cw-puzzle-header{display:flex;gap:2rem;font-size:.95rem;color:#334155}.cw-panel-hint{font-size:.875rem;color:#64748b;margin-bottom:.25rem}.cw-tab-switcher{display:flex;padding:.6rem 1.25rem;gap:.4rem;border-bottom:1px solid #e2e8f0;background:#fff}.cw-tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .75rem;border-radius:6px;font-size:.825rem;font-weight:600;cursor:pointer;border:none;background:transparent;color:#64748b;transition:background .15s,color .15s}.cw-tab:hover{background:#f1f5f9;color:#334155}.cw-tab--active{background:#7c3aed;color:#fff}.cw-tab--active:hover{background:#6d28d9;color:#fff}.cw-sidebar-section{padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.6rem}.cw-sidebar-section:last-child{border-bottom:none}.cw-sidebar-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.cw-customize-section-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.1rem 0}.cw-customize-section-title{font-size:.9rem;font-weight:600;color:#1e293b}.cw-chevron{color:#94a3b8;transition:transform .2s;flex-shrink:0}.cw-chevron--open{transform:rotate(180deg)}.cw-toggle-row{display:flex;align-items:center;justify-content:space-between}.cw-toggle-label{font-size:.875rem;color:#334155}.cw-locked-field{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:#94a3b8;cursor:pointer;padding:.4rem 0}.cw-locked-field:hover{color:#7c3aed}.word-textarea{width:100%;box-sizing:border-box;padding:.65rem .9rem;border:1.5px solid #e4e4ec;border-radius:8px;font-size:.9rem;font-family:inherit;resize:vertical;outline:none;background:#fff;transition:border-color .15s;line-height:1.5}.word-textarea:focus{border-color:#7c3aed}.csv-upload-btn--full{width:100%;justify-content:center;border-radius:8px;border-color:#e2e8f0;color:#64748b}.csv-upload-btn--full:hover{background:#f1f5f9;color:#334155}.cw-action-stack{display:flex;flex-direction:column;gap:.5rem}.cw-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.6rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s;border:1.5px solid #e2e8f0;background:#fff;color:#334155;box-sizing:border-box}.cw-action-btn:hover:not(:disabled){border-color:#c4b5fd;color:#6d28d9;background:#faf5ff}.cw-action-btn:disabled{opacity:.45;cursor:default}.cw-action-btn--primary{background:#7c3aed;color:#fff;border-color:#7c3aed}.cw-action-btn--primary:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9;color:#fff;transform:translateY(-1px)}.cw-action-btn--primary:disabled{opacity:.45;cursor:default}.cw-builder-left .word-entry{margin-bottom:.75rem;flex-wrap:wrap;padding:0 1.25rem}.cw-builder-left .word-entry input{flex:1 1 0;min-width:0}.cw-builder-left .word-chips{padding:0 1.25rem .75rem}.cw-builder-left .actions{padding:0 1.25rem 1rem;flex-direction:column}.cw-builder-left .actions .naming-input,.cw-builder-left .actions .cw-folder-select-btn,.cw-builder-left .actions .cw-folder-upsell,.cw-builder-left .cw-action-stack .naming-input,.cw-builder-left .cw-action-stack .cw-folder-select-btn,.cw-builder-left .cw-action-stack .cw-folder-upsell{width:100%;box-sizing:border-box}.cw-pattern-picker--grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.cw-pattern-tile{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem .25rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.cw-pattern-tile:hover{border-color:#c4b5fd;background:#faf5ff}.cw-pattern-tile--active{border-color:#7c3aed;background:#f5f3ff}.cw-pattern-tile-preview{width:44px;height:44px;border-radius:6px;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;background-color:#fff;overflow:hidden;flex-shrink:0}.cw-pattern-tile-preview--none{background:#f8fafc}.cw-pattern-tile-label{font-size:.7rem;color:#64748b;font-weight:500;white-space:nowrap}.cw-pattern-tile--wide{flex-direction:row;justify-content:flex-start;padding:.4rem .6rem}.cw-canvas-topright{position:absolute;top:1rem;z-index:10}.cw-canvas-topright{right:1rem;display:flex;flex-direction:column;gap:.6rem;background:#fffffff5;border:1px solid #e2e8f0;border-radius:12px;padding:.65rem .85rem;box-shadow:0 2px 8px #00000014;min-width:220px}.cw-canvas-divider{height:1px;background:#e2e8f0;margin:0 -.85rem}.cw-canvas-share-row{display:flex;align-items:center;gap:.4rem}.cw-canvas-help{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:#e2e8f0;color:#64748b;font-size:.6rem;font-weight:700;cursor:default;margin-left:.2rem;flex-shrink:0;line-height:1;vertical-align:middle;position:relative}.cw-canvas-help:hover{background:#ddd6fe;color:#7c3aed}.cw-canvas-topright-header{display:flex;justify-content:flex-end;margin:-.2rem -.4rem .1rem}.cw-canvas-hide-btn{background:none;border:none;padding:.2rem;cursor:pointer;color:#94a3b8;line-height:1;border-radius:4px}.cw-canvas-hide-btn:hover{color:#64748b;background:#f1f5f9}.cw-canvas-print-btn{position:absolute;top:1rem;left:1rem;z-index:10;display:flex;align-items:center;gap:.4rem;background:#fffffff5;border:1px solid #e2e8f0;border-radius:8px;padding:.4rem .75rem;cursor:pointer;color:#64748b;font-size:.82rem;font-weight:500;box-shadow:0 2px 8px #00000014}.cw-canvas-print-btn:hover{color:#7c3aed;border-color:#ddd6fe}.cw-canvas-show-btn{position:absolute;top:1rem;right:1rem;z-index:10;background:#fffffff5;border:1px solid #e2e8f0;border-radius:8px;padding:.45rem;cursor:pointer;color:#64748b;line-height:1;box-shadow:0 2px 8px #00000014}.cw-canvas-show-btn:hover{color:#7c3aed;border-color:#ddd6fe}.cw-folder-row{display:flex;align-items:center;gap:.5rem}.cw-folder-label{font-size:.78rem;color:#64748b;white-space:nowrap;flex-shrink:0}.cw-folder-row .cw-folder-dropdown-wrap{flex:1}.cw-folder-row .cw-folder-select-btn{width:100%}.cw-sidebar-bottom{margin-top:auto;padding:.85rem 1.25rem;border-top:1px solid #e2e8f0;background:#fff;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.cw-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;gap:.5rem;padding:3rem 2rem}.cw-empty-icon{width:80px;height:80px;background:#f1f5f9;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.cw-empty-title{font-size:1.15rem;font-weight:600;color:#64748b}.cw-empty-sub{font-size:.875rem;color:#94a3b8;max-width:280px;line-height:1.5}.cw-pattern-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.cw-pattern-opt{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.4rem;border:2px solid #e2e8f0;border-radius:8px;background:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}.cw-pattern-opt:hover{border-color:#cbd5e1}.cw-pattern-opt--active{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed26}.cw-pattern-preview{width:100%;height:48px;border-radius:4px;background-color:#fff;border:1px solid #e2e8f0;background-size:50%}.cw-pattern-preview--none{display:flex;align-items:center;justify-content:center;background:#f8fafc}.cw-pattern-label{font-size:.7rem;font-weight:600;color:#64748b}.cw-upload-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.5rem 1rem;background:#f8fafc;color:#64748b;border:1.5px dashed #cbd5e1;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}.cw-upload-btn:hover:not(:disabled){border-color:#7c3aed;color:#7c3aed}.cw-upload-btn:disabled{opacity:.5;cursor:default}.cw-upload-btn--locked{background:#fffbeb;border-color:#fcd34d;color:#92400e}.cw-upload-btn--locked:hover{border-color:#f59e0b;color:#78350f}.cw-custom-bg-tile{display:flex;align-items:flex-start;gap:.35rem}.cw-pattern-opt--wide{flex:1}.cw-custom-bg-remove{width:22px;height:22px;margin-top:6px;background:#fee2e2;color:#dc2626;border:1px solid #fca5a5;border-radius:50%;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cw-custom-bg-remove:hover{background:#fecaca}.cw-preview-grid-wrap{display:inline-block}.result-section{display:flex;flex-direction:column;gap:1.25rem;align-items:center}.result-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;width:100%}.toggle{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;-webkit-user-select:none;user-select:none}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle-track{width:36px;height:20px;background:#ccc;border-radius:20px;position:relative;transition:background .2s;flex-shrink:0}.toggle input:checked+.toggle-track{background:#1a6eff}.toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(16px)}.grid-and-clues{display:flex;gap:2rem;align-items:flex-start;flex-wrap:wrap;justify-content:center}.crossword-grid{flex-shrink:0;display:inline-block;border:2px solid #333;line-height:0;touch-action:manipulation}.grid-row{display:flex}.grid-cell{width:40px;height:40px;border:1px solid #ccc;position:relative;display:flex;align-items:center;justify-content:center;background:#fff;transition:background .1s;cursor:pointer}.grid-cell.black{background:#2a2a2a;border-color:#2a2a2a;cursor:default}.grid-cell.active{background:#cde9ff}.grid-cell.cell-selected{background:#f7d900}.grid-cell.cell-word{background:#a8d8ff}.cell-number{position:absolute;top:1px;left:2px;font-size:9px;line-height:1;color:#444;font-weight:700}.cell-letter{font-size:1.1rem;font-weight:700;line-height:1}.clues{display:flex;gap:2rem;flex-wrap:wrap}.clue-group h3{font-size:1rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;border-bottom:2px solid #333;padding-bottom:.2rem}.clue-group ul{list-style:none;display:flex;flex-direction:column;gap:.35rem}.clue-group li{font-size:.9rem;cursor:pointer;padding:2px 4px;border-radius:4px}.clue-group li:hover{background:#e8f3ff}.clue-group li.clue-active{background:#e8f0fe;font-weight:600}.answer{color:#888;font-style:italic;margin-left:.3rem;font-size:.8rem}.toggle-disabled{opacity:.4;pointer-events:none}.edit-clues-btn{padding:.45rem 1rem;background:transparent;color:#555;border:1.5px solid #ccc;border-radius:999px;font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.edit-clues-btn:hover{border-color:#888;background:#fff}.naming-inline{display:flex;align-items:center;gap:.4rem}.naming-input{padding:.45rem .9rem;border:1.5px solid #e4e4ec;border-radius:8px;font-size:.875rem;outline:none;width:180px;transition:border-color .15s}.naming-input:focus{border-color:#7c3aed}.naming-input:disabled{opacity:.45;cursor:default;background:#fafafa}.naming-input--error{border-color:#ef4444!important}.naming-input--error:focus{border-color:#ef4444!important}.subscribe-banner{background:#d1fae5;border:1.5px solid #6ee7b7;color:#065f46;text-align:center;padding:.7rem 1.5rem;font-size:.95rem;font-weight:600}.upgrade-nudge{display:flex;align-items:center;justify-content:center;gap:1rem;background:#fffbeb;border-bottom:1.5px solid #fcd34d;padding:.55rem 1.5rem;font-size:.875rem;color:#78350f}.upgrade-nudge-btn{padding:.3rem .9rem;background:#d97706;color:#fff;border:none;border-radius:999px;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s}.upgrade-nudge-btn:hover{background:#b45309}.modal-sub-pro{color:#7c3aed;font-weight:700;margin-left:.25rem}.upgrade-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1.1rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:999px;font-size:.875rem;font-weight:700;cursor:default;opacity:.9}.upgrade-btn--modal{width:100%;justify-content:center;margin-top:.5rem;padding:.6rem 1.25rem;font-size:.95rem}.modal-upgrade{margin-top:1.25rem;padding:1rem 1.1rem;background:#fffbeb;border:1.5px solid #fcd34d;border-radius:10px;text-align:center}.modal-upgrade-text{font-size:.88rem;color:#78350f;margin-bottom:.6rem}.share-btn{padding:.45rem 1.1rem;background:#7c3aed;color:#fff;border:none;border-radius:999px;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.share-btn:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.share-btn:disabled{opacity:.5;cursor:default}.share-panel{display:flex;align-items:center;gap:.5rem;background:#f0f7ff;border:1px solid #b3d4ff;border-radius:8px;padding:.6rem .85rem}.share-label{font-size:.85rem;color:#555;white-space:nowrap}.share-url-input{flex:1;min-width:0;padding:.3rem .5rem;border:1px solid #ccc;border-radius:5px;font-size:.85rem;background:#fff;color:#222;outline:none}.share-copy-btn{padding:.3rem .7rem;background:#333;color:#fff;border:none;border-radius:5px;font-size:.8rem;cursor:pointer;white-space:nowrap;transition:background .15s}.share-copy-btn:hover{background:#000}.access-code-panel{background:#faf5ff;border:1px solid #e9d5ff;border-radius:8px;padding:.75rem 1rem;margin-top:.75rem}.access-code-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.access-code-label{font-size:.9rem;font-weight:600;color:#6b21a8}.access-code-stats-link{font-size:.8rem;color:#6366f1;text-decoration:none}.access-code-stats-link:hover{text-decoration:underline}.access-code-current{display:flex;align-items:center;gap:.75rem;font-size:.9rem}.access-code-remove{padding:.25rem .6rem;background:#fee2e2;color:#dc2626;border:1px solid #fca5a5;border-radius:4px;font-size:.8rem;cursor:pointer}.access-code-remove:hover{background:#fecaca}.access-code-form{display:flex;gap:.5rem}.access-code-input{flex:1;min-width:0;padding:.35rem .6rem;border:1px solid #cbd5e1;border-radius:5px;font-size:.9rem;outline:none}.access-code-input:focus{border-color:#6366f1}.access-code-set{padding:.35rem .75rem;background:#6366f1;color:#fff;border:none;border-radius:5px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}.access-code-set:disabled{opacity:.6;cursor:not-allowed}.access-code-error{color:#dc2626;font-size:.85rem;margin:.4rem 0 0}.hidden-input{position:fixed;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.print-title{display:none}.public-btn{padding:.45rem 1rem;background:transparent;color:#d97706;border:1.5px solid #d97706;border-radius:999px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.public-btn:hover:not(:disabled){background:#fef3c7}.public-btn--active{background:#d97706;color:#fff}.public-btn--active:hover:not(:disabled){background:#b45309}.public-btn:disabled{opacity:.5;cursor:default}.print-btn{padding:.45rem 1rem;background:transparent;color:#555;border:1.5px solid #ccc;border-radius:999px;font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.print-btn:hover{border-color:#888;background:#fff}@media print{@page{size:letter portrait;margin:1.25in}.print-title{display:block;text-align:center;font-size:14pt;font-weight:700;letter-spacing:-.5px;margin-bottom:.2in}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.site-header,.site-footer,.input-section,.clue-edit-section,.result-toolbar,.share-panel,.access-code-panel,.upgrade-nudge,.hidden-input,.cw-builder-left{display:none!important}body{background:var(--page-bg, #fff)}.app{max-width:none;padding:.5in;margin:0}.cw-builder{display:block}.cw-builder-right{max-height:none;overflow:visible;padding:0;background-color:var(--page-bg, #fff);background-image:var(--cw-pattern, none);background-repeat:repeat}.cw-preview-grid-wrap{transform:none!important}.cw-builder-right .grid-cell:not(.black){background:#fff!important}.cw-preview-description{font-size:11pt;color:#333;margin-bottom:.15in}.cw-puzzle-header{font-size:11pt;margin-bottom:.15in}.result-section{display:block}.grid-and-clues{display:flex;flex-direction:column;gap:.3in;align-items:center;width:100%}.crossword-grid{--cell: min(.45in, calc(7.7in / var(--cols)));border:2pt solid #000;display:inline-block;line-height:0}.grid-row{gap:0;margin-bottom:0}.grid-cell{width:var(--cell);height:var(--cell);border:.75pt solid #888;border-radius:0;background:#fff!important}.grid-cell.black{background:#2a2a2a!important;border-color:#2a2a2a!important;border-radius:0}.cell-letter{display:none}.cell-number{font-size:calc(var(--cell) * .22);top:1pt;left:1pt;color:#000}.grid-cell.cell-selected,.grid-cell.cell-word,.grid-cell.active{background:#fff!important}.clues{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:0 .35in;page-break-inside:avoid}.clue-group h3{font-size:9pt;letter-spacing:1px;border-bottom:1pt solid #000;margin-bottom:4pt;padding-bottom:2pt}.clue-group ul{gap:0}.clue-group li{font-size:8.5pt;line-height:1.4;padding:0;cursor:default;background:none!important}.answer{display:none}.wf-word-list--print{display:flex!important}.wf-cell,.wf-cell.wf-found,.wf-cell.wf-active{background:#fff!important}.wf-cell.wf-answer{background:#fde68a!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media(max-width:768px){.cw-builder{flex-direction:column;min-height:auto}.cw-builder-left{width:100%;min-width:0;max-height:none;border-right:none;border-bottom:1px solid #e2e8f0;padding:1rem}.cw-builder-right{max-height:none;padding:1.25rem 1rem}.cw-panel-header{flex-direction:column;align-items:flex-start}.cw-panel-header .clue-edit-actions{width:100%;justify-content:flex-start}.cw-pattern-picker{grid-template-columns:repeat(3,1fr)}.cw-empty-state{padding:2rem 1rem}.cw-upload-btn{font-size:.75rem}.cw-builder-left .word-entry{flex-wrap:wrap}.cw-builder-left .word-entry input{min-width:0;flex:1 1 100%}}@media(max-width:600px){.grid-cell{width:min(32px,calc(95vw / var(--cols, 1)));height:min(32px,calc(95vw / var(--cols, 1)))}.cell-number{font-size:max(6px,calc(min(32px,calc(95vw / var(--cols, 1)))*.22))}.cell-letter{font-size:max(.6rem,calc(min(32px,calc(95vw / var(--cols, 1)))*.55))}.grid-and-clues{flex-direction:column}.clue-edit-row{flex-wrap:wrap}.clue-edit-word{min-width:auto}}@media(max-width:760px){.hero{flex-direction:column;padding:2rem 1.25rem 2.5rem}.hero-right{width:100%;display:flex;justify-content:center}.hc{width:36px;height:36px;font-size:.85rem}.how-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.how-cards{grid-template-columns:1fr}}.wf-congrats{background:#d1fae5;border:1.5px solid #6ee7b7;color:#065f46;padding:.75rem 1.5rem;border-radius:10px;font-size:1.1rem;font-weight:700;text-align:center;max-width:500px}.wf-play-area{display:flex;gap:2rem;align-items:flex-start;flex-wrap:wrap;justify-content:center}.wf-grid{display:grid;grid-template-columns:repeat(var(--cols),1fr);border:2px solid #333;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0}.wf-row{display:contents}.wf-cell{width:36px;height:36px;aspect-ratio:1;border:1px solid #ccc;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;cursor:pointer;background:var(--page-bg, #fff);transition:background .08s;line-height:1;color:#111}.wf-cell.wf-active{background:#fef08a}.wf-cell.wf-found{background:#86efac;color:#14532d}.wf-cell.wf-answer{background:#fde68a;color:#92400e}.wf-word-list{list-style:none;min-width:140px;display:flex;flex-direction:column;gap:.4rem}.wf-word-list li{font-size:.95rem;font-weight:600;letter-spacing:.5px;padding:.25rem 0;color:#222;border-bottom:1px solid #eee;transition:color .15s}.wf-word-list li.wf-word-found{text-decoration:line-through;color:#888}.wf-word-list--sidebar{min-width:0;width:100%}.wf-sidebar-words{flex:1;overflow-y:auto}.wf-word-list--print{display:none}.wf-difficulty-picker{display:flex;gap:0;border:1.5px solid #e2e8f0;border-radius:8px;overflow:hidden;width:100%}.wf-diff-btn{flex:1;padding:.45rem .5rem;font-size:.8rem;font-weight:600;background:#fff;color:#64748b;border:none;border-right:1px solid #e2e8f0;cursor:pointer;transition:background .15s,color .15s}.wf-diff-btn:last-child{border-right:none}.wf-diff-btn:hover{background:#f8fafc}.wf-diff-btn--active{background:#7c3aed;color:#fff}.wf-diff-btn--active:hover{background:#6d28d9}.wf-diff-hint{font-size:.75rem;color:#94a3b8;line-height:1.4}.wf-size-row{display:flex;gap:.75rem}.wf-size-field{flex:1;display:flex;flex-direction:column;gap:.3rem}.wf-size-label{font-size:.72rem;font-weight:600;color:#64748b}.wf-size-input{width:100%;padding:.4rem .6rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.85rem;color:#1e293b;background:#fff;box-sizing:border-box}.wf-size-input:focus{outline:none;border-color:#7c3aed}@media(max-width:600px){.wf-cell{width:min(28px,calc(92vw / var(--cols, 1)));height:min(28px,calc(92vw / var(--cols, 1)));font-size:max(.55rem,calc(min(28px,calc(92vw / var(--cols, 1)))*.55))}.wf-play-area{flex-direction:column;align-items:center}}.fc-card-chips{flex-direction:column}.fc-chip{display:flex;align-items:center;gap:.35rem;width:100%}.fc-chip-word{font-weight:700;color:#1e1b4b;white-space:nowrap}.fc-chip-sep{color:#6366f1;font-weight:700}.fc-chip-def{color:#374151;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-def-input{flex:1 1 100%;min-width:0}.fc-card-list-sidebar{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:#475569}.fc-card-list-sidebar li{padding:.3rem 0;border-bottom:1px solid #f1f5f9}.fc-card-list-sidebar li:last-child{border-bottom:none}.fc-preview-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;width:100%;max-width:720px}.fc-preview-card{background:#fff;border:1.5px solid #e0e7ff;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.35rem;box-shadow:0 2px 8px #6366f114}.fc-preview-word{font-weight:700;color:#1e1b4b;font-size:1.05rem}.fc-preview-def{color:#475569;font-size:.9rem}.fc-start-btn{padding:.75rem 2rem;background:#6366f1;color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:background .15s}.fc-start-btn:hover:not(:disabled){background:#4f46e5}.fc-start-btn:disabled{opacity:.45;cursor:default}.fc-progress-bar-wrap{width:100%;max-width:480px;height:6px;background:#e5e7eb;border-radius:99px;overflow:hidden}.fc-progress-bar{height:100%;background:#6366f1;border-radius:99px;transition:width .3s ease}.fc-counter{font-size:.95rem;color:#6b7280;font-weight:600;letter-spacing:.5px}.fc-scene{perspective:1000px;width:100%;max-width:480px;height:220px;cursor:pointer}.fc-card{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .45s ease;border-radius:16px}.fc-card--flipped{transform:rotateY(180deg)}.fc-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem;box-shadow:0 4px 20px #6366f11f;-webkit-user-select:none;user-select:none}.fc-face--front{background:#fff;border:2px solid #e0e7ff}.fc-face--back{background:#f5f3ff;border:2px solid #c7d2fe;transform:rotateY(180deg)}.fc-face-label{font-size:.78rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#a5b4fc}.fc-face-text{font-size:1.5rem;font-weight:800;color:#1e1b4b;text-align:center}.fc-face-hint{font-size:.78rem;color:#c4b5fd;margin-top:.5rem}.fc-nav{display:flex;gap:1rem;justify-content:center}.fc-nav-btn{padding:.6rem 1.5rem;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.fc-nav-btn:hover:not(:disabled){background:#4f46e5}.fc-nav-btn:disabled{opacity:.4;cursor:default}.fc-nav-btn--next{background:#7c3aed}.fc-nav-btn--next:hover:not(:disabled){background:#6d28d9}.fc-secondary-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.fc-secondary-btn{padding:.45rem 1rem;background:none;color:#6366f1;border:1.5px solid #c7d2fe;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.fc-secondary-btn:hover{background:#f0f0ff;border-color:#a5b4fc}.fc-done-card{background:#fff;border:2px solid #c7d2fe;border-radius:20px;padding:3rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;box-shadow:0 4px 24px #6366f11a;max-width:420px;width:100%}.fc-done-icon{font-size:3rem;color:#f59e0b;line-height:1}.fc-done-heading{font-size:1.8rem;font-weight:800;color:#1e1b4b}.fc-done-sub{color:#6b7280;font-size:1rem}.fc-done-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.fc-print-cards{display:none}@media print{.fc-print-cards{display:block}.fc-progress-bar-wrap,.fc-counter,.fc-scene,.fc-nav,.fc-secondary-actions,.fc-done-card,.fc-preview-cards{display:none!important}.fc-print-card{width:100%;height:4in;border:1.5px solid #cbd5e1;border-radius:0;display:flex;flex-direction:column;page-break-inside:avoid;break-inside:avoid;margin-bottom:.35in;box-sizing:border-box}.fc-print-half{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:.75in 1in;position:relative}.fc-print-half--word{border-bottom:2px dashed #94a3b8;font-size:24pt;font-weight:800;color:#1e1b4b}.fc-print-half--def{font-size:14pt;color:#374151;transform:rotate(180deg)}.fc-print-fold-label{position:absolute;bottom:4px;right:8px;font-size:7pt;color:#94a3b8;text-transform:uppercase;letter-spacing:1px}.fc-print-card:nth-child(2n){page-break-after:always}}@media print{.ws-left,.ws-answer-toggle,.ws-empty-state,.ws-loading,.ws-edit-box,.ws-question-controls,.ws-drag-handle,.ws-drop-end,.ws-edit-inline-btn,.no-print{display:none!important}.ws-question-text--print{display:block!important}.ws-question--editing{border-color:transparent!important;background:transparent!important}.ws-builder{display:block;padding:0}.ws-right{display:block}.ws-printable{border:none;border-radius:0;padding:0;font-family:Georgia,serif}.ws-passage-box{background:#f9fafb!important;border-left:4pt solid #7c3aed!important}.ws-choice--correct .ws-choice-bubble{background:#dcfce7!important;border-color:#22c55e!important;color:#15803d!important}.ws-choice--correct{color:#15803d!important}.ws-question{page-break-inside:avoid;break-inside:avoid}}.build-type-card--fc .build-type-icon--fc svg{stroke:#6366f1}.build-type-card--fc:hover{border-color:#6366f1}.build-type-card--mt{border-color:#a7f3d0}.build-type-card--mt:hover{border-color:#6ee7b7;box-shadow:0 4px 20px #10b9811a}.build-type-icon--mt svg{stroke:#10b981}.build-type-card--qz{border-color:#ddd6fe}.build-type-card--qz:hover{border-color:#a78bfa;box-shadow:0 4px 20px #7c3aed1a}.build-type-icon--qz svg{stroke:#7c3aed}.build-type-card--ws{border-color:#bbf7d0}.build-type-card--ws:hover{border-color:#22c55e;box-shadow:0 4px 20px #22c55e1f}.build-type-icon--ws svg{stroke:#16a34a}.build-type-card--lp{border-color:#fde68a;position:relative}.build-type-card--lp:hover{border-color:#f59e0b;box-shadow:0 4px 20px #f59e0b1f}.build-type-icon--lp svg{stroke:#d97706}.lp-pro-tag{display:inline-block;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.6rem;font-weight:700;padding:.1rem .45rem;border-radius:10px;letter-spacing:.04em;vertical-align:middle;margin-left:.25rem}.how-card--mt:hover{border-color:#10b981;box-shadow:0 4px 20px #10b9811a}.how-icon--mt svg{stroke:#10b981}.how-card-cta--mt{color:#10b981}.how-card--qz:hover{border-color:#7c3aed;box-shadow:0 4px 20px #7c3aed1a}.how-icon--qz{background:#ede9fe;color:#7c3aed}.how-icon--qz svg{stroke:#7c3aed}.how-card-cta--qz{color:#7c3aed}.how-card--lp:hover{border-color:#d97706;box-shadow:0 4px 20px #d977061a}.how-icon--lp{background:#fef3c7;color:#d97706}.how-icon--lp svg{stroke:#d97706}.how-card-cta--lp{color:#d97706}.how-card--ws:hover{border-color:#7c3aed;box-shadow:0 4px 20px #7c3aed1a}.how-icon--ws{background:#f5f3ff;color:#7c3aed}.how-icon--ws svg{stroke:#7c3aed}.how-card-cta--ws{color:#7c3aed}.how-card--sc:hover{border-color:#ea580c;box-shadow:0 4px 20px #ea580c1a}.how-icon--sc{background:#fff7ed;color:#ea580c}.how-card-cta--sc{color:#ea580c}.how-pro-tag{display:inline-block;background:#d97706;color:#fff;font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:4px;vertical-align:middle;margin-left:6px;letter-spacing:.04em}.mt-card-chips{flex-direction:column}.mt-chip{display:flex;align-items:center;gap:.35rem;width:100%}.mt-chip-word{font-weight:700;color:#064e3b;white-space:nowrap}.mt-chip-sep{color:#10b981;font-weight:700}.mt-chip-def{color:#374151;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-def-input{flex:1 1 100%;min-width:0}.mt-generate-btn{background:#10b981!important}.mt-generate-btn:hover:not(:disabled){background:#059669!important}.mt-pair-list-sidebar{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:#475569}.mt-pair-list-sidebar li{padding:.3rem 0;border-bottom:1px solid #f1f5f9}.mt-pair-list-sidebar li:last-child{border-bottom:none}.mt-pair-matched{opacity:.5;text-decoration:line-through}.mt-preview-pairs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;width:100%;max-width:720px}.mt-preview-pair{background:#fff;border:1.5px solid #d1fae5;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.35rem;box-shadow:0 2px 8px #10b98114}.mt-preview-word{font-weight:700;color:#064e3b;font-size:1.05rem}.mt-preview-def{color:#475569;font-size:.9rem}.mt-start-btn{padding:.75rem 2rem;background:#10b981;color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:background .15s}.mt-start-btn:hover:not(:disabled){background:#059669}.mt-start-btn:disabled{opacity:.45;cursor:default}.mt-play-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.mt-progress-bar-wrap{width:100%;max-width:600px;height:6px;background:#e5e7eb;border-radius:99px;overflow:hidden}.mt-progress-bar{height:100%;background:#10b981;border-radius:99px;transition:width .3s ease}.mt-counter{font-size:.95rem;color:#6b7280;font-weight:600;letter-spacing:.5px}.mt-board{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%}.mt-col{display:flex;flex-direction:column;gap:.5rem}.mt-col-label{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#6b7280;text-align:center;margin-bottom:.25rem}.mt-tile{padding:.7rem 1rem;background:#fff;border:2px solid #d1fae5;border-radius:10px;font-size:.95rem;font-weight:600;color:#064e3b;cursor:pointer;transition:border-color .15s,background .15s,transform .15s,opacity .3s;text-align:left;word-break:break-word}.mt-tile:hover:not(:disabled):not(.mt-tile--matched){border-color:#6ee7b7;background:#f0fdf4}.mt-tile--def{font-weight:500;color:#374151}.mt-tile--selected{border-color:#10b981;background:#d1fae5;transform:scale(1.02)}.mt-tile--matched{border-color:#a7f3d0;background:#ecfdf5;opacity:.5;cursor:default}.mt-tile--wrong{border-color:#fca5a5;background:#fef2f2;animation:mt-shake .5s ease}@keyframes mt-shake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(6px)}45%{transform:translate(-4px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}.mt-secondary-btn{padding:.45rem 1rem;background:none;color:#10b981;border:1.5px solid #a7f3d0;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.mt-secondary-btn:hover{background:#ecfdf5;border-color:#6ee7b7}.mt-done-card{background:#fff;border:2px solid #a7f3d0;border-radius:20px;padding:3rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;box-shadow:0 4px 24px #10b9811a;max-width:420px;width:100%}.mt-done-icon{font-size:3rem;color:#f59e0b;line-height:1}.mt-done-heading{font-size:1.8rem;font-weight:800;color:#064e3b}.mt-done-sub{color:#6b7280;font-size:1rem}.mt-stats{display:flex;gap:2rem;margin:.5rem 0}.mt-stat{display:flex;flex-direction:column;align-items:center;gap:.15rem}.mt-stat-val{font-size:1.5rem;font-weight:800;color:#064e3b}.mt-stat-lbl{font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;font-weight:600}@media(max-width:540px){.mt-board{grid-template-columns:1fr;gap:1rem}}@media(max-width:600px){.fc-scene{height:180px}.fc-face-text{font-size:1.2rem}.fc-input-row{flex-direction:column}}.auth-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.auth-modal{background:#fff;border-radius:12px;padding:2rem;width:90%;max-width:380px;position:relative;box-shadow:0 20px 60px #0003}.auth-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#888;line-height:1}.auth-modal-close:hover{color:#333}.auth-modal-title{font-size:1.25rem;font-weight:700;margin:0 0 1.25rem;text-align:center}.auth-subtitle{font-size:.875rem;color:#555;text-align:center;margin:-.5rem 0 1rem}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-input{padding:.6rem .75rem;border:1.5px solid #ddd;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .15s}.auth-input:focus{border-color:#111}.auth-submit{padding:.65rem;background:#111;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s}.auth-submit:hover{background:#333}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#555;cursor:pointer}.auth-checkbox{width:1rem;height:1rem;cursor:pointer;flex-shrink:0}.auth-error{color:#dc2626;font-size:.85rem;text-align:center;margin:.5rem 0 0}.auth-links{display:flex;justify-content:center;gap:1.25rem;margin-top:.75rem;font-size:.85rem}.auth-links a{color:#555;text-decoration:underline}.auth-links a:hover{color:#111}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1rem 0;color:#aaa;font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ddd}.auth-google-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem;border:1.5px solid #ddd;border-radius:8px;background:#fff;font-size:.9rem;font-weight:500;color:#333;text-decoration:none;cursor:pointer;transition:border-color .15s,background .15s}.auth-google-btn:hover{border-color:#bbb;background:#f9f9f9}
