/* Anima Mundi — online screens. Uses the app's own tokens (--panel, --gold, --ink-text …). */
.axo-banner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 22px;padding:16px 18px;border:1px solid var(--gold-dim,#8a743a);border-radius:14px;
  background:linear-gradient(135deg,rgba(201,162,75,.14),rgba(201,162,75,.03) 60%),var(--glass-2,#0d111b);}
.axo-banner-txt{flex:1 1 240px;min-width:0;}
.axo-banner-h{font-family:'Fraunces',Georgia,serif;font-size:17px;line-height:1.3;color:var(--ink-text,#e9e4d6);margin:4px 0 3px;text-wrap:balance;}
.axo-banner-sub{font-size:12.5px;color:var(--ink-dim,#9aa3b8);}
.axo-banner-go{flex:0 0 auto;width:auto!important;margin:0!important;}

.axo{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(4,6,10,.74);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:'Manrope',system-ui,-apple-system,sans-serif;color:var(--ink-text,#e9e4d6);}
.axo[hidden]{display:none!important;}
.axo-card{position:relative;width:100%;max-width:460px;max-height:calc(100% - 8px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  background:var(--panel,#111726);border:1px solid var(--line,#26304a);border-radius:18px;padding:26px 22px 22px;box-shadow:0 24px 70px rgba(0,0,0,.55);}
@media (max-width:520px){
  .axo{padding:0;align-items:flex-end;}
  .axo-card{max-width:none;max-height:100%;height:100%;border-radius:0;border:none;
    padding:calc(22px + env(safe-area-inset-top,0px)) max(18px,env(safe-area-inset-right,0px)) calc(22px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px));}
}
.axo-x{position:absolute;top:10px;right:10px;width:38px;height:38px;border-radius:50%;border:none;background:transparent;color:var(--ink-dim,#9aa3b8);font-size:24px;line-height:1;cursor:pointer;}
@media (max-width:520px){ .axo-x{top:calc(8px + env(safe-area-inset-top,0px));} }
.axo-x:hover{background:var(--glass-2,#0d111b);color:var(--ink-text,#e9e4d6);}
.axo-body{display:flex;flex-direction:column;gap:14px;}
.axo-stack{display:flex;flex-direction:column;gap:10px;}
.axo-row{display:flex;gap:10px;flex-wrap:wrap;}
.axo-row>.axo-btn{flex:1 1 140px;}
.axo-center{text-align:center;justify-content:center;}

.axo-mark{font-family:'Fraunces',Georgia,serif;letter-spacing:.32em;font-size:12px;color:var(--gold,#c9a24b);text-align:center;}
.axo-eyebrow{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold,#c9a24b);font-weight:700;}
.axo-h{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:24px;line-height:1.2;margin:0;padding-right:36px;text-wrap:balance;}
.axo-h.axo-center{padding-right:0;}
.axo-sub{font-size:14px;line-height:1.6;color:var(--ink-dim,#9aa3b8);margin:0;}
.axo-sub b{color:var(--ink-text,#e9e4d6);}
.axo-fine{font-size:12px;line-height:1.55;color:var(--ink-faint,#67708a);margin:0;}
.axo-fine a{color:var(--ink-dim,#9aa3b8);}
.axo-good{color:#6fbf9a;} .axo-bad{color:#e0555f;}
.axo-l{font-size:12px;font-weight:600;color:var(--ink-dim,#9aa3b8);margin-top:4px;}
.axo-optional{font-weight:400;color:var(--ink-faint,#67708a);}

.axo-btn,.axo-prov{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 16px;border-radius:12px;
  border:1px solid var(--line,#26304a);background:var(--glass-2,#0d111b);color:var(--ink-text,#e9e4d6);font:600 14px/1.2 inherit;font-family:inherit;cursor:pointer;width:100%;}
.axo-btn:hover,.axo-prov:hover{border-color:var(--gold-dim,#8a743a);}
.axo-btn:disabled{opacity:.55;cursor:default;}
.axo-primary{background:var(--gold,#c9a24b);border-color:var(--gold,#c9a24b);color:#1a1206;}
.axo-primary:hover{background:var(--gold-bright,#e7c877);border-color:var(--gold-bright,#e7c877);}
.axo-warn{border-color:rgba(224,85,95,.5);color:#ef8b8b;}
.axo-prov{justify-content:flex-start;padding-left:18px;font-weight:500;}
.axo-pi{width:18px;height:18px;flex:0 0 auto;}
.axo-btn:focus-visible,.axo-prov:focus-visible,.axo-opt:focus-visible,.axo-tab:focus-visible,.axo-in:focus-visible,.axo-icon:focus-visible,.axo-x:focus-visible{outline:2px solid var(--gold-bright,#e7c877);outline-offset:2px;}
.axo-in{width:100%;min-height:46px;padding:11px 13px;border-radius:11px;border:1px solid var(--line,#26304a);background:var(--glass,#080b12);color:var(--ink-text,#e9e4d6);font:16px/1.3 inherit;font-family:inherit;}
.axo-in:focus{border-color:var(--gold-dim,#8a743a);outline:none;}
select.axo-in{appearance:auto;color-scheme:dark;}
.axo-share{font-family:ui-monospace,Menlo,monospace;font-size:13px;resize:none;}
.axo-or{display:flex;align-items:center;gap:10px;color:var(--ink-faint,#67708a);font-size:12px;}
.axo-or::before,.axo-or::after{content:"";flex:1;height:1px;background:var(--line,#26304a);}

.axo-loading{display:flex;align-items:center;gap:10px;color:var(--ink-dim,#9aa3b8);font-size:14px;padding:22px 0;}
.axo-spin{width:16px;height:16px;border-radius:50%;border:2px solid var(--line,#26304a);border-top-color:var(--gold,#c9a24b);animation:axo-spin .8s linear infinite;}
@keyframes axo-spin{to{transform:rotate(360deg);}}

.axo-top{display:flex;align-items:center;gap:12px;padding-right:40px;}
.axo-who{flex:1;min-width:0;}
.axo-hello{font-family:'Fraunces',Georgia,serif;font-size:21px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.axo-loc{font-size:12.5px;color:var(--ink-dim,#9aa3b8);}
.axo-icon{width:40px;height:40px;border-radius:10px;border:1px solid var(--line,#26304a);background:var(--glass-2,#0d111b);color:var(--ink-dim,#9aa3b8);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:18px;}
.axo-icon .ic{margin:0;}
.axo-daily{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:14px;border:1px solid var(--gold-dim,#8a743a);
  background:linear-gradient(160deg,rgba(201,162,75,.12),rgba(201,162,75,0) 70%),var(--glass-2,#0d111b);}
.axo-score{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.axo-big{font-family:'Fraunces',Georgia,serif;font-size:52px;line-height:1;color:var(--gold-bright,#e7c877);font-variant-numeric:tabular-nums;}
.axo-of{font-size:18px;color:var(--ink-dim,#9aa3b8);}
.axo-score .axo-meta{margin-left:auto;}
.axo-meta{font-size:13px;color:var(--ink-dim,#9aa3b8);font-variant-numeric:tabular-nums;}
.axo-reset{font-size:12px;color:var(--ink-faint,#67708a);font-variant-numeric:tabular-nums;}

.axo-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:4px;}
.axo-tabs::-webkit-scrollbar{display:none;}
.axo-tab{flex:0 0 auto;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px 14px;min-height:38px;border-radius:20px;border:1px solid var(--line,#26304a);
  background:transparent;color:var(--ink-dim,#9aa3b8);font:500 12.5px inherit;font-family:inherit;cursor:pointer;}
.axo-tab.on{background:var(--gold,#c9a24b);border-color:var(--gold,#c9a24b);color:#1a1206;font-weight:700;}
.axo-board{display:flex;flex-direction:column;gap:2px;}
.axo-lr{display:grid;grid-template-columns:34px 1fr auto 34px;align-items:center;gap:10px;padding:10px 10px;border-radius:10px;font-size:14px;font-variant-numeric:tabular-nums;}
.axo-lr:nth-child(odd){background:rgba(255,255,255,.02);}
.axo-lr.me{background:rgba(201,162,75,.14);outline:1px solid var(--gold-dim,#8a743a);}
.axo-rk{color:var(--ink-faint,#67708a);font-weight:700;text-align:center;}
.axo-lr.podium .axo-rk{color:var(--gold,#c9a24b);}
.axo-nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.axo-nm em{font-style:normal;font-size:11px;color:var(--gold,#c9a24b);margin-left:4px;text-transform:uppercase;letter-spacing:.08em;}
.axo-tm{color:var(--ink-faint,#67708a);font-size:12.5px;}
.axo-sc{font-weight:700;text-align:right;color:var(--ink-text,#e9e4d6);}
.axo-gap{text-align:center;color:var(--ink-faint,#67708a);line-height:1;padding:2px 0;}
.axo-empty{color:var(--ink-dim,#9aa3b8);font-size:14px;text-align:center;padding:22px 0;margin:0;}
.axo-board .axo-fine{margin-top:10px;text-align:center;}

.axo-prog{height:3px;border-radius:2px;background:var(--line,#26304a);overflow:hidden;margin-right:40px;}
.axo-prog span{display:block;height:100%;background:var(--gold,#c9a24b);transition:width .3s ease;}
.axo-qtop{display:flex;justify-content:space-between;align-items:center;}
.axo-clock{font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink-dim,#9aa3b8);}
.axo-q{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:21px;line-height:1.35;margin:2px 0 4px;text-wrap:balance;}
.axo-opts{display:flex;flex-direction:column;gap:8px;}
.axo-opt{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px 14px;text-align:left;border-radius:12px;border:1px solid var(--line,#26304a);
  background:var(--glass-2,#0d111b);color:var(--ink-text,#e9e4d6);font:15px/1.35 inherit;font-family:inherit;cursor:pointer;transition:border-color .15s,background .15s;}
.axo-opt:hover{border-color:var(--gold-dim,#8a743a);}
.axo-opt.picked{border-color:var(--gold,#c9a24b);background:rgba(201,162,75,.16);}
.axo-key{flex:0 0 26px;height:26px;border-radius:7px;border:1px solid var(--line,#26304a);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--ink-dim,#9aa3b8);}
.axo-opt.picked .axo-key{background:var(--gold,#c9a24b);border-color:var(--gold,#c9a24b);color:#1a1206;}

.axo-grid{display:flex;gap:5px;flex-wrap:wrap;}
.axo-grid.big{justify-content:center;gap:6px;}
.axo-cell{width:22px;height:22px;border-radius:5px;background:var(--line,#26304a);}
.axo-grid.big .axo-cell{width:24px;height:24px;}
.axo-cell.hit{background:var(--gold,#c9a24b);}
.axo-review{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;counter-reset:q;}
.axo-review li{counter-increment:q;padding:12px 14px 12px 40px;position:relative;border-radius:12px;background:var(--glass-2,#0d111b);border:1px solid var(--line-soft,#1b2336);}
.axo-review li::before{content:counter(q);position:absolute;left:14px;top:12px;font-size:12px;font-weight:700;color:var(--ink-faint,#67708a);}
.axo-review li.no{border-color:rgba(224,85,95,.28);}
.axo-rq{font-size:14px;line-height:1.45;margin-bottom:6px;}
.axo-ra{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;font-weight:600;}
.axo-rx{font-size:12.5px;color:var(--ink-dim,#9aa3b8);margin-top:5px;line-height:1.5;}
.axo-card2{display:flex;flex-direction:column;gap:12px;padding:22px 18px;border-radius:14px;border:1px solid var(--gold-dim,#8a743a);
  background:radial-gradient(circle at 50% 0,rgba(201,162,75,.18),rgba(201,162,75,0) 70%),var(--glass,#080b12);}
.axo-danger{margin-top:12px;padding-top:16px;border-top:1px solid var(--line,#26304a);display:flex;flex-direction:column;gap:8px;}
body.axo-on{overscroll-behavior:none;}
@media (prefers-reduced-motion:reduce){ .axo-spin{animation-duration:2.4s;} .axo-prog span,.axo-opt{transition:none;} }
