.rulesShell{--bg:#fff;--surface:#f7f7f8;--soft:#f5f6f8;--line:#e4e7ed;--fg:#172033;--fg-strong:#20293a;--muted:#6d778a;--accent:#1267ed;--accent-weak:#eef3fd;--on-accent:#fff;--ok:#158956;--ok-weak:#e2f7eb;--danger:#c2453b;--danger-weak:#fceceb;--mono:var(--font-mono-stack);--font-sans-stack:var(--font-sans), Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono-stack:var(--font-mono), ui-monospace, "SF Mono", Menlo, Consolas, monospace;background:var(--bg);min-height:100dvh;color:var(--fg);font-family:var(--font-sans-stack);flex-direction:column;display:flex}.rulesShell :focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 65%, transparent);outline-offset:2px}@media (prefers-color-scheme:dark){.rulesShell{--bg:#0d1017;--surface:#0a0c12;--soft:#151a23;--line:#232b39;--fg:#e6ebf3;--fg-strong:#f3f6fa;--muted:#8a94a5;--accent:#5b8cff;--accent-weak:#16233b;--on-accent:#08111f;--ok:#40c882;--ok-weak:#143024;--danger:#ff8f8f;--danger-weak:#2a1616}}.rulesHeader{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:18px;height:64px;padding:0 clamp(16px,4vw,40px);display:flex}.rulesBrand{color:var(--fg);letter-spacing:-.03em;align-items:center;gap:9px;font-size:16px;text-decoration:none;display:flex}.rulesBrand>span{background:url(/kukcode-mark.svg) 50%/contain no-repeat;flex:none;width:30px;height:30px;display:block}.rulesBrand b{font-weight:760}.rulesHeader h1{letter-spacing:-.02em;color:var(--fg-strong);flex:1;margin:0;font-size:16px;font-weight:700}.rulesNav{align-items:center;gap:16px;display:flex}.rulesNav a{color:var(--accent);font-size:12px;font-weight:650;text-decoration:none}.rulesEmpty{text-align:center;max-width:440px;margin:14vh auto 0;padding:0 20px}.rulesMark{background:url(/kukcode-mark.svg) 50%/contain no-repeat;width:52px;height:52px;margin:0 auto 4px;display:block}.rulesEmpty h2{letter-spacing:-.03em;color:var(--fg-strong);margin:18px 0 8px;font-size:24px}.rulesEmpty p{color:var(--muted);margin:0 0 20px;font-size:14px;line-height:1.5}.rulesCta{background:var(--accent);min-height:40px;color:var(--on-accent);font:inherit;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.rulesCta:disabled{opacity:.55;cursor:wait}.rulesCtaSecondary{background:var(--soft);color:var(--fg-strong);margin-left:8px}.rulesBody{flex-direction:column;flex:1;gap:14px;width:100%;max-width:920px;min-height:0;margin:0 auto;padding:20px clamp(16px,4vw,40px) 32px;display:flex}.rulesMeta{flex-wrap:wrap;align-items:baseline;gap:8px 16px;display:flex}.rulesMeta b{color:var(--fg-strong);font-size:14px;font-weight:700}.rulesMeta code{font-family:var(--mono);background:var(--soft);color:var(--fg);border-radius:6px;padding:2px 7px;font-size:12px}.rulesMeta span{color:var(--muted);font-size:12px}.rulesEditor{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:320px;color:var(--fg);font-family:var(--mono);tab-size:2;border-radius:12px;flex:1;padding:14px 16px;font-size:13px;line-height:1.55}.rulesEditor:focus{outline:2px solid var(--accent);outline-offset:1px}.rulesToolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.rulesToolbar input{border:1px solid var(--line);background:var(--bg);min-width:180px;min-height:40px;color:var(--fg);font:inherit;border-radius:10px;flex:1;padding:0 12px;font-size:13px}.rulesToolbar button{background:var(--accent);min-height:40px;color:var(--on-accent);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:0 16px;font-size:13px;font-weight:650}.rulesToolbar button:disabled{opacity:.55;cursor:not-allowed}.rulesNote{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.rulesNote a{color:var(--accent);font-weight:650;text-decoration:none}.rulesOk{background:var(--ok-weak);color:var(--ok);border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45}.rulesOk a{color:inherit;font-weight:700}.rulesError{background:var(--danger-weak);color:var(--danger);border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45}@media (max-width:640px){.rulesHeader{flex-wrap:wrap;gap:10px;height:auto;padding:14px 16px}.rulesHeader h1{flex:100%;order:3}.rulesToolbar{flex-direction:column;align-items:stretch}.rulesCtaSecondary{margin-top:8px;margin-left:0}}
