.lo-app{--lo-border:#e2e8f0;--lo-text:#172033;--lo-muted:#64748b;--lo-bg:#f8fafc;--lo-primary:#3157e6;max-width:1100px;margin:0 auto;color:var(--lo-text);font-size:16px;line-height:1.55}.lo-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:8px 0 22px}.lo-hero h1{margin:0;font-size:clamp(30px,4vw,48px)}.lo-hero p{margin:4px 0;color:var(--lo-muted)}.lo-hero-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.lo-rules-link,.lo-inline-link{color:var(--lo-primary);font-weight:700;text-decoration:none}.lo-rules-link{display:inline-flex;align-items:center;border:1px solid var(--lo-border);border-radius:999px;padding:9px 14px;background:#fff}.lo-rules-link:hover,.lo-inline-link:hover{text-decoration:underline}.lo-inline-link{text-decoration:underline;text-underline-offset:2px}.lo-account{background:var(--lo-bg);border:1px solid var(--lo-border);border-radius:999px;padding:9px 14px}.lo-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--lo-border);margin-bottom:22px}.lo-tabs button,.lo-grade-tabs button{border:0;background:transparent;padding:11px 14px;font:inherit;font-weight:650;cursor:pointer;border-bottom:3px solid transparent}.lo-tabs button.is-active{color:var(--lo-primary);border-color:var(--lo-primary)}.lo-card,.lo-question-card{background:#fff;border:1px solid var(--lo-border);border-radius:16px;padding:22px;margin:0 0 18px;box-shadow:0 4px 18px rgba(15,23,42,.04)}.lo-card h2,.lo-question-card h2{margin-top:0}.lo-kicker,.lo-question-subject{text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:750;color:var(--lo-primary);margin-bottom:8px}.lo-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--lo-primary);color:#fff!important;text-decoration:none!important;padding:11px 17px;font-weight:700;cursor:pointer}.lo-button.lo-secondary{background:#fff;color:var(--lo-text)!important;border:1px solid var(--lo-border)}.lo-button:disabled{opacity:.45;cursor:not-allowed}.lo-message{padding:12px 15px;border-radius:10px;margin-bottom:16px}.lo-error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}.lo-success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.lo-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.lo-member-bar,.lo-meta,.lo-test-head,.lo-test-nav{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}.lo-member-bar{background:var(--lo-bg);border:1px solid var(--lo-border);border-radius:12px;padding:12px 16px;margin-bottom:18px}.lo-meta{justify-content:flex-start;color:var(--lo-muted);margin:14px 0}.lo-result-big{font-size:34px;font-weight:800;margin:14px 0}.lo-muted{color:var(--lo-muted)}.lo-join form{display:grid;gap:16px;max-width:700px}.lo-join label:not(.lo-consent){display:grid;gap:6px;font-weight:650}.lo-join input[type=text],.lo-join select{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:9px;padding:10px 12px;background:#fff}.lo-consent{display:flex;gap:10px;align-items:flex-start}.lo-school-wrap{position:relative}.lo-suggestions{position:absolute;z-index:20;left:0;right:0;top:100%;background:#fff;border:1px solid var(--lo-border);border-radius:10px;box-shadow:0 10px 30px rgba(15,23,42,.12);overflow:hidden}.lo-suggestions:empty{display:none}.lo-suggestions button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--lo-border);background:#fff;padding:10px 12px;cursor:pointer}.lo-suggestions button:hover{background:var(--lo-bg)}.lo-test-head{margin-bottom:12px}.lo-question-content{font-size:18px;margin:12px 0}.lo-question-image{display:block;max-width:min(100%,760px);height:auto;margin:16px auto;border-radius:10px}.lo-options{display:grid;gap:10px;margin-top:20px}.lo-option{display:grid;grid-template-columns:auto 38px 1fr;align-items:center;gap:10px;padding:12px;border:1px solid var(--lo-border);border-radius:12px;cursor:pointer}.lo-option:hover,.lo-option.is-selected{border-color:#93a7f4;background:#f6f8ff}.lo-letter{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eef2ff;font-weight:800;color:#3147a8}.lo-option input{width:18px;height:18px}.lo-test-nav{margin:18px 0}.lo-table-wrap{overflow:auto}.lo-table{width:100%;border-collapse:collapse}.lo-table th,.lo-table td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--lo-border);vertical-align:top}.lo-ranking td:first-child{width:80px;font-size:18px;font-weight:800}.lo-grade-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:14px}.lo-grade-tabs button{background:var(--lo-bg);border:1px solid var(--lo-border);border-radius:9px}.lo-grade-tabs button.is-active{background:var(--lo-primary);color:#fff;border-color:var(--lo-primary)}.lo-archive-list{display:grid;gap:8px}.lo-archive-row{display:flex;justify-content:space-between;gap:15px;width:100%;text-align:left;border:1px solid var(--lo-border);border-radius:10px;background:#fff;padding:12px 14px;cursor:pointer}.lo-archive-row:hover{background:var(--lo-bg)}.lo-archive-answer{margin-top:18px;padding:14px;background:#f8fafc;border-radius:10px;border-left:4px solid #16a34a}.lo-math-inline{display:inline-block;vertical-align:-.18em;border:0!important;background:transparent!important;padding:0!important;min-width:0!important;font-size:1.05em}.lo-math-block{display:block;border:0!important;background:transparent!important;padding:8px 0!important;min-width:0!important;text-align:center;font-size:1.1em}.lo-loading{padding:20px;color:var(--lo-muted)}
@media(max-width:700px){.lo-hero{align-items:flex-start;flex-direction:column}.lo-hero-actions{justify-content:flex-start}.lo-card,.lo-question-card{padding:16px;border-radius:12px}.lo-option{grid-template-columns:auto 32px 1fr}.lo-archive-row{flex-direction:column}.lo-tabs{overflow:auto;flex-wrap:nowrap}.lo-tabs button{white-space:nowrap}.lo-table{min-width:620px}}

/* v0.1.2 - logowanie bez opuszczania Ligi */
.lo-login-card { max-width: 760px; }
.lo-login-form { display: grid; gap: 16px; max-width: 520px; margin-top: 20px; }
.lo-login-form label { display: grid; gap: 7px; font-weight: 600; }
.lo-login-form input[type="text"],
.lo-login-form input[type="password"] { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #ccd5e2; border-radius: 9px; font: inherit; background: #fff; }
.lo-login-form input:focus { outline: 2px solid rgba(54, 92, 232, .22); border-color: #365ce8; }
.lo-login-form .lo-consent { display: flex; grid-template-columns: none; align-items: center; gap: 9px; font-weight: 400; }
.lo-archive-question .lo-option{grid-template-columns:38px 1fr;cursor:default}.lo-archive-question .lo-option.is-correct{border-color:#86efac;background:#f0fdf4}.lo-archive-question .lo-option.is-correct .lo-letter{background:#dcfce7;color:#166534}
