@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-arabic-wght-normal-CJWMIGCx.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-latin-ext-wght-normal-at8nfxId.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-latin-wght-normal-PfPtmrPZ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0e1325;--surface: #161d35;--surface-2: #1e2747;--line: #2b3558;--text: #eef1fa;--muted: #8c95b8;--x: #ff6b6b;--o: #4cc9f0;--radius: 18px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Cairo Variable,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}#root{min-height:100dvh;display:flex;justify-content:center}button{font:inherit;color:inherit;touch-action:manipulation;cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--o);outline-offset:2px}.app{width:100%;max-width:440px;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 16px) calc(env(safe-area-inset-right) + 16px) calc(env(safe-area-inset-bottom) + 16px) calc(env(safe-area-inset-left) + 16px)}.screen{flex:1;display:flex;flex-direction:column;animation:enter .22s ease-out}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}.topbar{display:flex;align-items:center;gap:12px;min-height:44px;margin-bottom:20px}.topbar-txt{min-width:0}.topbar h1{margin:0;font-size:19px;font-weight:700;line-height:1.3}.topbar p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.section-title{margin:24px 0 10px;color:var(--muted);font-size:14px;font-weight:700}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.segmented button{padding:10px;border:none;border-radius:12px;background:none;color:var(--muted);font-size:16px;font-weight:700;transition:background-color .15s ease,color .15s ease}.segmented button.on{background:var(--surface-2);color:var(--text)}.variant-hint{min-height:3.2em;margin:10px 4px 0;color:var(--muted);font-size:14px;line-height:1.6}.icon-btn{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.icon-btn svg{width:22px;height:22px}.hero{text-align:center;padding:36px 0 28px}.logo{display:flex;justify-content:center;direction:ltr}.logo .mark{width:92px;height:92px}.logo .mark-o circle{animation-delay:.26s}.hero h1{margin:4px 0 2px;font-size:34px;font-weight:900;letter-spacing:3px;direction:ltr}.hero p{margin:0;color:var(--muted)}.menu{display:flex;flex-direction:column;gap:12px}.menu-btn{width:100%;display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:start;transition:transform .12s ease,background-color .12s ease}.menu-btn:not(:disabled):active{transform:scale(.98);background:var(--surface-2)}.menu-btn:disabled{opacity:.55}.menu-btn .ico{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;border-radius:14px;background:var(--surface-2);color:var(--muted)}.menu-btn .ico svg{width:26px;height:26px}.menu-btn .ico-x{color:var(--x)}.menu-btn .ico-o{color:var(--o)}.menu-btn .txt{flex:1;min-width:0}.menu-btn strong{display:block;font-size:18px;font-weight:700}.menu-btn .txt span{color:var(--muted);font-size:14px}.badge{flex-shrink:0;padding:2px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:700}.home-foot{margin-top:auto;padding-top:24px}.install{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface)}.install .ico{color:var(--o);flex-shrink:0;display:grid}.install .ico svg{width:24px;height:24px}.install p{flex:1;margin:0;font-size:14px;line-height:1.6;color:var(--muted)}.install b{color:var(--text);font-weight:700}.install-btn{flex-shrink:0;padding:8px 16px;border:none;border-radius:12px;background:var(--o);color:var(--bg);font-weight:800}.install .close{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;border:none;background:none;color:var(--muted)}.install .close svg{width:18px;height:18px}.brand{margin-top:18px;text-align:center;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:4px;direction:ltr;opacity:.7}.splash{justify-content:center;align-items:center}.splash .logo .mark{width:72px;height:72px}.stack{display:flex;flex-direction:column;gap:12px}.account-bar{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--o);font-weight:800}.account-name{flex:1;min-width:0;overflow:hidden;font-weight:700;text-align:right;text-overflow:ellipsis;white-space:nowrap}.icon-btn.small{width:38px;height:38px;border-radius:12px;color:var(--muted)}.icon-btn.small svg{width:19px;height:19px}.verify-banner{width:100%;margin-top:12px;padding:12px 14px;border:1px solid rgb(255 209 102 / .35);border-radius:14px;background:#ffd16614;text-align:start}.verify-banner strong{display:block;color:#ffd166;font-size:15px}.verify-banner span{color:var(--muted);font-size:13px}.home .account-bar+.hero,.home .verify-banner+.hero{padding-top:20px}.chip{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;direction:ltr}.chip-ico{width:18px;height:18px}.menu-btn .ico-gold{color:#ffd166}.menu-btn.admin{border-style:dashed;padding:12px 16px}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-row.three{grid-template-columns:repeat(3,1fr)}.stat{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:start}.stat>span{display:flex;flex-direction:column;min-width:0}.stat strong{font-size:20px;font-weight:800;line-height:1.3;font-variant-numeric:tabular-nums}.stat small{color:var(--muted);font-size:12px}.stat-ico{width:30px;height:30px;flex-shrink:0}.stakes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;direction:ltr}.stake{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}.stake.on{border-color:#ffd166;background:#ffd1661a}.stake:disabled{opacity:.35}.stake-ico{width:22px;height:22px}.stakes+.form-note{margin-top:10px}.search-btn{margin-top:20px}.searching{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.searching h2{margin:12px 0 0;font-size:22px}.searching p{margin:0 0 16px;color:var(--muted)}.searching .secondary-btn{max-width:220px}.radar{position:relative;width:110px;height:110px}.radar span{position:absolute;inset:0;border:3px solid var(--o);border-radius:50%;opacity:0;animation:radar 2s ease-out infinite}.radar span+span{border-color:var(--x);animation-delay:1s}@keyframes radar{0%{transform:scale(.3);opacity:.9}to{transform:scale(1);opacity:0}}.versus{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px}.vs{color:var(--muted);font-size:13px;font-weight:700}.versus .score{position:relative;overflow:hidden}.versus .score.away{opacity:.55}.score .rating{color:var(--muted);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.score .clock{position:absolute;bottom:0;inset-inline-start:0;height:3px;transition:width .25s linear}.score.tone-X .clock{background:var(--x)}.score.tone-O .clock{background:var(--o)}.result-card{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;padding:14px 10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:center}.result-card small{display:block;color:var(--muted);font-size:12px}.result-card strong{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}.result-card em{margin-inline-start:4px;font-size:12px;font-style:normal;opacity:.8}.up{color:#6ee7a0}.down{color:var(--x)}.balance{display:flex;align-items:center;justify-content:center;gap:10px;padding:22px 0 6px}.balance-ico{width:40px;height:40px}.balance strong{font-size:42px;font-weight:900;font-variant-numeric:tabular-nums}.balance span{color:var(--muted)}.ledger,.ranks,.code-list{margin:0;padding:0;list-style:none}.ledger li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 2px;border-bottom:1px solid var(--line)}.ledger-txt{display:flex;flex-direction:column;min-width:0}.ledger-txt strong{font-size:15px}.ledger-txt small{color:var(--muted);font-size:12px}.ledger-delta{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}.ledger-actions{display:flex;align-items:center;gap:6px}.ledger-actions .link-btn{margin:0;padding:4px 8px}.code-txt{letter-spacing:1px;text-align:right}.my-rank{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.my-rank>span:nth-child(2){flex:1;display:flex;flex-direction:column}.my-rank strong{font-size:22px;font-weight:900}.my-rank small{color:var(--muted);font-size:13px}.wld{color:var(--muted);font-size:12px;white-space:nowrap}.ranks li{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:12px}.ranks li:nth-child(odd){background:var(--surface)}.ranks li.me{outline:2px solid var(--o)}.ranks .pos{width:26px;color:var(--muted);font-weight:800;text-align:center}.ranks li:nth-child(1) .pos{color:#ffd166}.ranks .who{flex:1;min-width:0;overflow:hidden;font-weight:700;text-align:right;text-overflow:ellipsis;white-space:nowrap}.ranks .pts{min-width:48px;font-size:16px;text-align:left;font-variant-numeric:tabular-nums}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.made-codes{margin-top:16px;padding:12px 14px;border:1px solid rgb(255 209 102 / .4);border-radius:16px;background:#ffd1660f}.made-head{display:flex;align-items:center;justify-content:space-between}.made-head .link-btn{margin:0}.code-list li{padding:6px 0;font-size:17px;font-weight:700;letter-spacing:1px;font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all}.text-field{display:flex;flex-direction:column;gap:6px}.text-label{font-size:14px;font-weight:700}.text-input{width:100%;padding:13px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);font:inherit;font-size:17px;outline:none}.text-input:focus{border-color:var(--muted)}.text-input[dir=ltr]{text-align:left}.code-input{font-size:26px;font-weight:800;letter-spacing:10px;text-align:center!important}.text-hint{color:var(--muted);font-size:13px;line-height:1.5}.form-note{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.form-note b{color:var(--text)}.form-note.center{text-align:center}.form-error{min-height:1.5em;margin:0;color:var(--x);font-size:14px;line-height:1.5}.form-error:empty{min-height:0}.form-success{margin:0 0 4px;padding:10px 14px;border-radius:12px;background:#4cc9f01a;color:var(--o);font-size:14px}.link-row{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px}.link-row .link-btn{margin:0}.link-btn:disabled{opacity:.6}.primary-btn:disabled{opacity:.6}.level-dots{width:48px;height:48px;flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;gap:4px;padding-bottom:14px;border-radius:14px;background:var(--surface-2);direction:ltr}.level-dots i{width:6px;border-radius:3px;background:var(--line)}.level-dots i:nth-child(1){height:8px}.level-dots i:nth-child(2){height:14px}.level-dots i:nth-child(3){height:20px}.level-easy i:nth-child(-n+1),.level-medium i:nth-child(-n+2){background:var(--o)}.level-hard i{background:var(--x)}.form{display:flex;flex-direction:column;gap:12px}.field{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.field:focus-within{border-color:var(--muted)}.field-mark{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:var(--surface-2)}.field-mark .mark{width:30px;height:30px}.field input{flex:1;min-width:0;padding:10px 0;border:none;background:none;color:var(--text);font:inherit;font-size:17px;outline:none}.field input::placeholder{color:var(--muted)}.primary-btn,.secondary-btn{width:100%;padding:15px;border-radius:var(--radius);font-size:17px;font-weight:800;transition:transform .12s ease}.primary-btn{border:none;background:var(--text);color:var(--bg)}.secondary-btn{border:1px solid var(--line);background:var(--surface)}.primary-btn:active,.secondary-btn:active{transform:scale(.98)}.form .primary-btn{margin-top:8px}.link-btn{display:block;margin:12px auto 0;padding:8px 12px;border:none;background:none;color:var(--muted);font-size:14px}.scores{display:grid;grid-template-columns:1fr auto 1fr;gap:8px}.score{min-width:0;display:flex;align-items:center;gap:8px;padding:10px 12px;border:2px solid transparent;border-radius:16px;background:var(--surface);transition:border-color .2s ease}.score .mark{width:28px;height:28px;flex-shrink:0}.score .mark line,.score .mark circle{animation:none;stroke-dashoffset:0}.score-txt{min-width:0;display:flex;flex-direction:column}.score .name{overflow:hidden;color:var(--muted);font-size:13px;white-space:nowrap;text-overflow:ellipsis}.score .num{font-size:22px;font-weight:800;line-height:1.2;font-variant-numeric:tabular-nums}.score.draw{flex-direction:column;justify-content:center;gap:0;padding:10px 14px}.score.active.tone-X{border-color:var(--x)}.score.active.tone-O{border-color:var(--o)}.board{position:relative;width:100%;aspect-ratio:1;margin:28px 0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));direction:ltr}.board>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.grid line{stroke:var(--line);stroke-width:4;stroke-linecap:round}.cell{position:relative;z-index:1;padding:0;border:none;border-radius:20px;background:none}.cell:not(:disabled):active{background:var(--surface)}.cell .mark{position:absolute;top:16%;left:16%;width:68%;height:68%}.cell.selected:before{content:"";position:absolute;inset:10px;border-radius:16px;background:var(--surface-2)}.cell.selected .mark{animation:lift .9s ease-in-out infinite}@keyframes lift{50%{transform:scale(1.1)}}.cell.target:after{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--line)}.board.over .cell:not(.win) .mark{opacity:.25;transition:opacity .3s ease}.winline{z-index:2}.winline line{stroke-width:10;stroke-linecap:round;stroke-dasharray:400;stroke-dashoffset:400;animation:draw .38s .12s ease-out forwards}.winline.tone-X line{stroke:var(--x)}.winline.tone-O line{stroke:var(--o)}.status-wrap{min-height:68px;text-align:center}.status{margin:0;font-size:20px;font-weight:700;line-height:1.6}.status-detail{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.status.tone-X{color:var(--x)}.status.tone-O{color:var(--o)}.status.tone-draw{color:var(--text)}.status.final{font-size:26px;font-weight:900;animation:pop .32s ease-out}@keyframes pop{0%{opacity:0;transform:scale(.85)}}.actions{display:flex;gap:10px;margin-top:16px}.mark{display:block;overflow:visible}.mark line,.mark circle{fill:none;stroke-width:13;stroke-linecap:round;animation:draw .22s ease-out forwards}.mark-x line{stroke:var(--x);stroke-dasharray:71;stroke-dashoffset:71}.mark-x line+line{animation-delay:.11s}.mark-o circle{stroke:var(--o);stroke-dasharray:164;stroke-dashoffset:164;animation-duration:.32s;transform:rotate(-90deg);transform-origin:50% 50%}@keyframes draw{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}
