.za-page{max-width:1080px;margin:0 auto;padding:12px 0 56px;color:#302446}
.za-page *{box-sizing:border-box}
.za-back{display:inline-flex;color:#7652c4!important;font-weight:800;text-decoration:none;margin:0 0 17px}
.za-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:clamp(20px,4vw,42px);border-radius:27px;border:1px solid #e8def5;background:radial-gradient(circle at 90% 10%,#dcd0ff 0,transparent 42%),linear-gradient(112deg,#fff,#f8f2ff);overflow:hidden}
.za-hero-copy{max-width:740px;position:relative;z-index:1}
.za-eyebrow{color:#7751c6;font-size:12px;letter-spacing:1.6px;font-weight:850}
.za-hero h1{font-size:clamp(34px,5vw,54px);letter-spacing:-1.6px;line-height:1.08;margin:12px 0;color:#32254a}
.za-spark{color:#a281e6}
.za-hero p{color:#716486;font-size:16px;max-width:580px;line-height:1.65}
.za-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}
.za-chips span{padding:7px 11px;border-radius:50px;background:#eee7fc;color:#6642aa;font-size:12px;font-weight:750}
.za-mascot{width:clamp(84px,14vw,160px);height:auto;object-fit:contain;filter:drop-shadow(0 14px 17px #8164bc22)}
.za-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,285px);gap:20px;margin:22px 0}
.za-panel{background:#fff;border:1px solid #e7ddf1;border-radius:24px;padding:clamp(16px,3vw,27px);min-width:0;box-shadow:0 12px 34px #7956cf09}
.za-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.za-level-label{font-size:12px;letter-spacing:.6px;font-weight:800;color:#6f598b;display:flex;flex-direction:column;gap:6px}
.za-page select{font:inherit;color:#493264;background:#f8f4ff;border:1px solid #d9caef;border-radius:12px;padding:10px 13px;min-height:44px;cursor:pointer}
.za-round{font-size:13px;color:#6e6381;font-weight:800;border-radius:22px;padding:8px 13px;background:#f5f1fb}
.za-instructions{font-weight:700;color:#57446f;margin:0 0 17px;font-size:14px;line-height:1.6}
.za-board{max-width:560px;margin:0 auto;min-height:180px}
.za-grid{display:grid;gap:5px;width:min(100%,480px);margin:0 auto;touch-action:manipulation}
.za-cell{border:2px solid #e4d8f4!important;background:#faf7ff!important;color:#422c5d!important;border-radius:11px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;aspect-ratio:1;min-width:0;padding:2px!important;font-family:inherit!important;font-size:clamp(16px,4vw,27px)!important;font-weight:850!important;transition:background .12s,border-color .12s}
.za-cell:focus-visible,.za-page button:focus-visible,.za-page select:focus-visible,.za-page input:focus-visible{outline:3px solid #8b62d9!important;outline-offset:2px}
.za-cell:not(.za-fixed){cursor:pointer}
.za-cell.za-fixed{background:#eee8f8!important;color:#554271!important;cursor:default}
.za-cell.za-active{border-color:#9263e1!important;background:#eee2ff!important;box-shadow:0 0 0 2px #9574dd33}
.za-cell.za-toggled{background:#eeeef0!important;color:#999!important;text-decoration:line-through}
.za-cell.za-filled{background:#eaf8f3!important;border-color:#8bceb9!important}
.za-cell.za-bad{border-color:#ea999e!important;background:#fff0f0!important}
.za-cell.za-square-clue{background:#f0e7ff!important}
.za-corner{position:absolute;top:2px;left:4px;font-size:clamp(9px,1.9vw,11px);font-weight:800;color:#805db9;line-height:1}
.za-mini{font-size:clamp(8px,2vw,11px);font-weight:750;color:#877197;line-height:1}
.za-edge-grid{display:grid;gap:0;max-width:490px;margin:0 auto}
.za-edge-grid .za-cell{border-radius:8px!important}
.za-edge{display:flex;align-items:center;justify-content:center;min-width:0;font-size:clamp(10px,3vw,18px);font-weight:900;color:#7851c4}
.za-edge.za-dark{color:#2c2638}
.za-edge.za-light{color:#8d71b7}
.za-edge.za-spacer{color:transparent}
.za-outer-grid{display:grid;grid-template-columns:32px repeat(4,minmax(0,1fr)) 32px;gap:4px;max-width:500px;margin:0 auto}
.za-outer-grid .za-cell{border-radius:9px!important}
.za-outer-clue{display:flex;justify-content:center;align-items:center;font-weight:850;color:#8263bc;font-size:16px}
.za-numberpad{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:20px auto 12px;max-width:540px}
.za-page button{font:inherit;cursor:pointer;transition:transform .12s,filter .12s}
.za-numberpad button{min-width:43px;min-height:43px;border:1px solid #d7c5ed;border-radius:12px;background:#f4edff;color:#6243a5;font-weight:850;font-size:17px}
.za-numberpad button:hover,.za-actions button:hover{transform:translateY(-1px);filter:brightness(.97)}
.za-numberpad button:disabled,.za-actions button:disabled{opacity:.48;cursor:not-allowed}
.za-message{font-weight:800;min-height:26px;color:#7052b2;text-align:center;line-height:1.5}
.za-message.za-success{color:#257c5d}
.za-message.za-error{color:#ac4557}
.za-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.za-actions button{padding:12px 14px;border:1px solid #dfd2f0;background:#f4edff;border-radius:12px;color:#694aab;font-weight:800;font-size:13px;flex:1;min-width:120px}
.za-actions .za-main{background:#7956cf;color:white;border-color:#7956cf;box-shadow:0 6px 15px #7956cf20}
.za-side h2{font-size:25px;margin:10px 0;color:#32254c;letter-spacing:-.7px}
.za-side p{font-size:14px;line-height:1.7;color:#76698a}
.za-stat-wrap{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px 0;padding:13px 0;border-top:1px solid #eee6f6;border-bottom:1px solid #eee6f6}
.za-stat-wrap>div{padding:8px;background:#f9f5ff;border-radius:12px}
.za-stat-label{display:block;font-size:11px;color:#716486;font-weight:750;margin-bottom:5px}
.za-stat-wrap strong{font-size:27px;color:#694ab0}
.za-privacy{font-size:12px!important;color:#897e98!important}
.za-word-row{display:flex;justify-content:center;gap:4px;margin:8px 0}
.za-letter{width:clamp(27px,7vw,46px);height:clamp(35px,9vw,52px);border:2px solid #ddd0ee;border-radius:8px;display:grid;place-items:center;font-size:clamp(16px,4vw,23px);font-weight:850;background:#f9f6ff;color:#3a2a51}
.za-letter.exact{background:#3c9773;border-color:#3c9773;color:white}
.za-letter.present{background:#d0a847;border-color:#d0a847;color:white}
.za-letter.absent{background:#81758c;border-color:#81758c;color:white}
.za-target{text-align:center;font-size:32px;letter-spacing:-1px;font-weight:900;color:#7853c8;background:#f7f0ff;border-radius:16px;padding:15px;margin:12px 0}
.za-expression{width:100%;border:2px solid #ddceef;border-radius:13px;padding:14px;font:inherit;font-weight:800;text-align:center;color:#493265;background:#fff}
.za-number-tiles{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:20px 0}
.za-number-tiles strong{display:grid;place-items:center;background:#efe6ff;border:2px solid #b69ade;border-radius:14px;min-width:58px;min-height:66px;font-size:31px;color:#6a48a9}
.za-help{font-size:12px;text-align:center;color:#7e6e8e;margin:12px 0}
.za-2048-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;background:#e5dbef;padding:10px;border-radius:20px;max-width:460px;margin:0 auto;touch-action:none}
.za-2048-cell{aspect-ratio:1;border-radius:11px;display:grid;place-items:center;background:#f6f0fb;color:#6d4aaf;font-size:clamp(18px,4vw,32px);font-weight:900}
.za-2048-cell.filled{background:#ddc6f8}
.za-2048-cell.v4{background:#c2e4f4}.za-2048-cell.v8{background:#f7d9a7}
.za-2048-cell.v16{background:#f6bc9f}.za-2048-cell.v32{background:#f4a7b6}
.za-2048-cell.v64{background:#dca5ed}.za-2048-cell.v128{background:#a4e1c4}
.za-2048-cell.v256,.za-2048-cell.v512,.za-2048-cell.v1024,.za-2048-cell.v2048{background:#8563c2;color:white;font-size:clamp(14px,3vw,23px)}
.za-puzzle-catalog{margin-top:34px}
.za-puzzle-catalog h2{font-size:clamp(27px,3vw,35px);letter-spacing:-1px;color:#34234c;margin:0 0 8px}
.za-puzzle-catalog>p{color:#77688b;max-width:680px;line-height:1.5}
.za-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.za-catalog-card{position:relative;display:flex;flex-direction:column;gap:11px;border:1px solid #e5d9f3;border-radius:21px;padding:21px;background:linear-gradient(140deg,#fff,#faf7ff);text-decoration:none!important;color:#39264f!important;box-shadow:0 9px 25px #7355b70b;transition:transform .15s,box-shadow .15s}
.za-catalog-card:nth-child(3n+2){background:linear-gradient(145deg,#fff,#eef7ff)}
.za-catalog-card:nth-child(3n+3){background:linear-gradient(145deg,#fff,#f1fcf4)}
.za-catalog-card:hover{transform:translateY(-4px);box-shadow:0 18px 27px #7055a021}
.za-catalog-card:focus-visible{outline:3px solid #805bc4;outline-offset:3px}
.za-catalog-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.za-catalog-symbol{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:#eee4ff;color:#6e49be;font-weight:900;font-size:26px}
.za-catalog-grade{font-size:10px;font-weight:800;color:#79658d;background:#fff;border-radius:18px;padding:6px 8px}
.za-catalog-card h3{margin:0;font-size:20px;letter-spacing:-.3px}
.za-catalog-card p{font-size:13px;line-height:1.55;color:#716384;margin:0;flex:1}
.za-catalog-link{color:#7352c4;font-size:13px;font-weight:850;margin-top:4px}
@media(max-width:820px){.za-layout{grid-template-columns:1fr}.za-side{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.za-side .za-stat-wrap,.za-side .za-privacy{grid-column:1/-1}.za-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.za-hero{align-items:flex-start}.za-mascot{width:75px;position:absolute;right:7px;top:10px;opacity:.5}.za-hero-copy{padding-right:17px}.za-hero h1{font-size:37px;padding-right:15px}.za-chips span{font-size:10px}.za-side{display:block}.za-catalog-grid{grid-template-columns:1fr}.za-actions button{min-width:calc(50% - 6px)}.za-cell{border-width:1.5px!important;border-radius:7px!important}.za-grid{gap:4px}}