.oi-hub,.oi-module{--oi-accent:#1ca76f;--oi-accent-dark:#147a53;--oi-text:#24323d;--oi-muted:#66737c;--oi-soft:#f4f8fb;--oi-border:#dfe7ec;box-sizing:border-box;color:var(--oi-text)}
.oi-hub *,.oi-module *{box-sizing:border-box}.oi-hub{max-width:1120px;margin:28px auto}.oi-hub-intro{text-align:center;margin-bottom:24px}.oi-kicker{margin:0 0 5px;font-size:12px;font-weight:900;letter-spacing:.09em;color:var(--oi-accent)}.oi-hub-intro h1{margin:0;font-size:36px;line-height:1.12}.oi-hub-intro p:last-child{max-width:700px;margin:10px auto 0;color:var(--oi-muted);font-size:17px}
.oi-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:24px 0}.oi-card{appearance:none;border:1px solid var(--oi-border);background:#fff;border-radius:18px;padding:18px;text-align:left;min-height:210px;display:flex;flex-direction:column;gap:9px;cursor:pointer;transition:.16s ease;color:var(--oi-text);box-shadow:0 7px 22px rgba(28,48,67,.06)}.oi-card:hover{transform:translateY(-2px);border-color:#a9d8c5;box-shadow:0 10px 26px rgba(28,48,67,.1)}.oi-card:focus-visible{outline:3px solid rgba(28,167,111,.28);outline-offset:2px}.oi-card-icon{font-size:34px;line-height:1}.oi-card strong{font-size:18px;line-height:1.22}.oi-card span:not(.oi-card-icon){font-size:14px;line-height:1.45;color:var(--oi-muted)}.oi-card em{margin-top:auto;font-size:13px;font-style:normal;font-weight:900;color:var(--oi-accent-dark)}
.oi-panel{margin-top:28px}.oi-back{border:0;background:transparent;color:var(--oi-accent-dark);font-weight:800;cursor:pointer;padding:8px 0 12px}.oi-panel>.otroci-matematika-app{margin-top:0}
.oi-module{max-width:1040px;margin:0 auto;padding:20px;border:1px solid var(--oi-border);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(28,48,67,.07)}.oi-module-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.oi-module-icon{width:54px;height:54px;border-radius:15px;background:#eef9f4;display:flex;align-items:center;justify-content:center;font-size:30px;flex:0 0 auto}.oi-module-head h2{margin:0;font-size:28px}.oi-module-head p{margin:5px 0 0;color:var(--oi-muted)}
.oi-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:14px}.oi-toolbar label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:800}.oi-toolbar select{min-width:160px;height:48px;padding:9px 36px 9px 12px;border:1px solid #cfd8df;border-radius:10px;background:#fff;font-size:15px;line-height:1.4}.oi-btn{min-height:46px;border:1px solid #cfd8df;background:#fff;border-radius:10px;padding:10px 16px;font-weight:900;cursor:pointer}.oi-btn-primary{background:var(--oi-accent);border-color:var(--oi-accent);color:#fff}.oi-btn:hover{filter:brightness(.98)}.oi-instructions{padding:12px 14px;background:#f7fcfa;border:1px solid #dbeae4;border-left:4px solid var(--oi-accent);border-radius:11px;color:#55666f;font-size:14px;line-height:1.45}.oi-stage{margin-top:18px;min-height:260px}.oi-status{margin-top:14px;min-height:44px;padding:10px 12px;border-radius:10px;background:#fafafa;font-weight:800}.oi-status:empty{display:none}
.oi-scorebar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.oi-pill{background:var(--oi-soft);padding:9px 12px;border-radius:999px;font-weight:800;font-size:14px}.oi-question-card{border:1px solid var(--oi-border);border-radius:18px;padding:22px;background:#fff;max-width:720px;margin:0 auto;text-align:center}.oi-big-question{font-size:40px;font-weight:900;line-height:1.2;margin:8px 0 18px}.oi-answer-form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.oi-answer-form input{width:180px;height:52px;border:2px solid #cdd8df;border-radius:11px;padding:0 12px;font-size:24px;text-align:center;font-weight:800}.oi-answer-form input:focus{outline:3px solid rgba(28,167,111,.18);border-color:var(--oi-accent)}.oi-feedback-good{color:#126844}.oi-feedback-bad{color:#a52c2c}.oi-start-box{text-align:center;padding:22px}.oi-start-box p{color:var(--oi-muted)}
.oi-numberline-wrap{max-width:820px;margin:0 auto;padding:20px 8px}.oi-target{text-align:center;font-size:22px;font-weight:900;margin-bottom:20px}.oi-numberline{display:grid;grid-template-columns:repeat(var(--oi-count,11),minmax(30px,1fr));align-items:start;position:relative;padding-top:8px}.oi-numberline:before{content:"";position:absolute;left:15px;right:15px;top:24px;height:4px;background:#34474f;border-radius:3px}.oi-tick{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px}.oi-tick button{width:32px;height:32px;border-radius:50%;border:2px solid #34474f;background:#fff;cursor:pointer;font-weight:900}.oi-tick button:hover,.oi-tick button:focus{border-color:var(--oi-accent);outline:none;background:#eafaf3}.oi-tick span{font-size:12px;font-weight:700;color:#55666f;text-align:center;white-space:nowrap}.oi-choices{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:18px 0}.oi-choice{min-width:72px;min-height:48px;border:2px solid #cfd8df;border-radius:10px;background:#fff;font-weight:900;font-size:19px;cursor:pointer;padding:8px 13px}.oi-choice:hover{border-color:var(--oi-accent)}.oi-order-pool,.oi-order-answer{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;min-height:60px;padding:10px;border:1px dashed #cfd8df;border-radius:12px;margin:10px 0}.oi-order-chip{border:1px solid #aac8bb;background:#eef9f4;border-radius:9px;padding:9px 13px;font-weight:900;cursor:pointer}
.oi-clock-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:center;max-width:760px;margin:0 auto}.oi-clock{width:210px;height:210px}.oi-clock-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.oi-clock-controls label{display:flex;flex-direction:column;gap:5px;font-weight:800}.oi-clock-controls select{height:48px;border:1px solid #ccd7de;border-radius:9px;padding:0 10px;font-size:18px}.oi-money{max-width:760px;margin:0 auto}.oi-money-target{text-align:center;font-size:25px;font-weight:900;margin-bottom:14px}.oi-money-sum{text-align:center;font-size:18px;margin:10px 0}.oi-coins{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.oi-coin{min-width:62px;height:54px;border-radius:999px;border:2px solid #d0b36b;background:#fff7dc;font-weight:900;cursor:pointer}.oi-measure-q{text-align:center}.oi-measure-q .oi-big-question{font-size:30px}.oi-bar-compare{display:flex;align-items:end;justify-content:center;gap:28px;margin:20px 0}.oi-bar-item{display:flex;flex-direction:column;align-items:center;gap:8px}.oi-bar{height:28px;background:#cad7dd;border-radius:6px;border:1px solid #97aab4}.oi-bar-item button{min-width:110px;min-height:44px;border:1px solid #cfd8df;border-radius:9px;background:#fff;font-weight:800;cursor:pointer}
.oi-logic-grid{max-width:760px;margin:0 auto;text-align:center}.oi-sequence{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:18px 0}.oi-seq-box{min-width:64px;min-height:56px;padding:10px;border-radius:10px;border:1px solid #d8e0e5;background:#f8fafb;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900}.oi-target-build{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.oi-target-build select{height:48px;min-width:90px;border:1px solid #cfd8df;border-radius:9px;padding:0 10px;font-size:18px;font-weight:800}
@media(max-width:980px){.oi-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.oi-card:last-child{grid-column:1/-1}}
@media(max-width:760px){.oi-hub{margin:16px auto}.oi-hub-intro h1{font-size:29px}.oi-module{padding:14px;border-radius:14px}.oi-module-head h2{font-size:24px}.oi-toolbar{align-items:stretch}.oi-toolbar label,.oi-toolbar select,.oi-toolbar .oi-btn-primary{width:100%}.oi-toolbar select{min-width:0}.oi-clock-card{grid-template-columns:1fr}.oi-clock{margin:0 auto}.oi-big-question{font-size:32px}.oi-numberline{overflow-x:auto}.oi-tick span{font-size:10px}}
@media(max-width:520px){.oi-cards{grid-template-columns:1fr}.oi-card:last-child{grid-column:auto}.oi-card{min-height:0}.oi-hub-intro p:last-child{font-size:15px}.oi-question-card{padding:16px}.oi-answer-form input{width:140px}.oi-numberline-wrap{overflow-x:auto}.oi-numberline{min-width:560px}.oi-clock{width:190px;height:190px}}

/* v0.6.0: razlaga postopka, pregled hitrih računov in dinamična ura */
.oi-solution{margin-top:12px;padding:15px 17px;border:1px solid #cfe2d9;border-left:4px solid var(--oi-accent);border-radius:12px;background:#f7fcfa;color:#34474f;line-height:1.5}
.oi-solution[hidden]{display:none}.oi-solution-title{font-size:16px;font-weight:900;margin-bottom:6px;color:#1e5f47}.oi-solution ol{margin:6px 0 0 21px;padding:0}.oi-solution li{margin:5px 0;font-weight:600}
.oi-results{max-width:900px;margin:0 auto}.oi-results-summary{display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:15px 17px;border:1px solid var(--oi-border);border-radius:14px;background:var(--oi-soft);font-size:17px}.oi-results-summary strong{font-size:22px}.oi-results-scroll{margin-top:14px;overflow-x:auto;border:1px solid var(--oi-border);border-radius:12px}.oi-results table{width:100%;border-collapse:collapse;min-width:650px;background:#fff}.oi-results th,.oi-results td{padding:10px 11px;border-bottom:1px solid #e6ecef;text-align:left;vertical-align:top}.oi-results th{background:#f5f8fa;font-size:13px}.oi-results td:last-child{font-size:18px;font-weight:900;text-align:center}.oi-result-ok td{background:#f2fbf7}.oi-result-bad td{background:#fff5f5}.oi-results-note{font-size:13px;color:var(--oi-muted);margin:10px 2px 0}
.oi-line-correct{background:#dcf7ea!important;border-color:#42ad7d!important}.oi-line-wrong{background:#ffe4e4!important;border-color:#dc6a6a!important}.oi-choice-selected{background:#dcf7ea!important;border-color:#65c99f!important}
.oi-clock-interactive [data-drag-hand]{cursor:grab;touch-action:none}.oi-clock-interactive [data-drag-hand]:active{cursor:grabbing}.oi-clock-tip{margin:0 0 12px;color:var(--oi-muted);line-height:1.45}.oi-clock-adjust{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.oi-clock-adjust button{min-height:44px;border:1px solid #cbd6dc;border-radius:9px;background:#fff;padding:8px 11px;font-weight:800;cursor:pointer}.oi-clock-live{margin:10px 0 14px;font-size:17px}.oi-clock-read{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:center;justify-content:center;max-width:720px;margin:0 auto}.oi-clock-read .oi-answer-form{justify-content:flex-start}.oi-clock-read .oi-clock{margin:0 auto}
@media(max-width:760px){.oi-clock-read{grid-template-columns:1fr}.oi-clock-read .oi-answer-form{justify-content:center}.oi-results-summary{align-items:flex-start;flex-direction:column}}

/* v0.7.0: predšolske vizualne vaje in razširjene vaje 6.–9. razreda */
.oi-preschool-card{background:linear-gradient(180deg,#fff 0%,#fbfefa 100%);border-width:2px}
.oi-preschool-card .oi-target{font-size:24px;margin-bottom:22px}
.oi-emoji-row{font-size:42px;line-height:1.45;letter-spacing:5px;max-width:640px;margin:14px auto 20px;word-break:normal}
.oi-preschool-choice{min-width:74px;min-height:58px;font-size:25px}
.oi-preschool-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch;margin:18px auto;max-width:650px}
.oi-preschool-groups>div{border:2px solid #dfe7ec;border-radius:15px;padding:15px;display:flex;flex-direction:column;justify-content:center;min-height:140px}
.oi-shape-grid{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:12px;max-width:650px;margin:0 auto}
.oi-shape-choice{min-height:150px;border:2px solid #d5dfe4;border-radius:16px;background:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.oi-shape-choice span{font-size:64px;line-height:1;color:#4f6570}.oi-shape-choice small{font-size:15px;font-weight:900;color:#53636b}
.oi-shape-choice:hover,.oi-shape-choice:focus-visible{border-color:var(--oi-accent);outline:3px solid rgba(28,167,111,.16)}
.oi-pattern-row{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;margin:18px auto 22px;font-size:44px;line-height:1}
.oi-pattern-row span{display:flex;align-items:center;justify-content:center;min-width:58px;min-height:58px}
.oi-pattern-missing{border:2px dashed #93a5ae;border-radius:12px;font-size:30px!important;font-weight:900;color:#60717a}
.oi-preschool-visual-choices .oi-choice{font-size:34px;min-width:74px;min-height:62px}
.oi-size-compare{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:520px;margin:22px auto}
.oi-size-compare button{min-height:170px;border:2px solid #d5dfe4;border-radius:18px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.oi-size-compare button:hover,.oi-size-compare button:focus-visible{border-color:var(--oi-accent);outline:3px solid rgba(28,167,111,.16)}
.oi-position-board{display:grid;grid-template-columns:repeat(3,72px);grid-template-rows:repeat(3,72px);gap:6px;justify-content:center;margin:16px auto 20px}
.oi-position-board>div{border:1px solid #dfe7ec;border-radius:10px;background:#f8fafb;display:flex;align-items:center;justify-content:center;font-size:38px}
.oi-letter-grid{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:12px;max-width:520px;margin:18px auto 0}
.oi-letter-choice{min-height:88px;border:2px solid #d5dfe4;border-radius:16px;background:#fff;font-size:42px;font-weight:900;cursor:pointer;text-transform:none}
.oi-letter-choice:hover,.oi-letter-choice:focus-visible{border-color:var(--oi-accent);outline:3px solid rgba(28,167,111,.16);background:#f4fbf8}
.oi-letter-hero{font-size:82px;font-weight:900;line-height:1.1;margin:8px 0 16px}.oi-picture-hero{font-size:92px;line-height:1.15;margin:5px 0 18px}
.oi-alphabet-strip{display:flex;gap:12px;justify-content:center;align-items:center;margin:14px 0 20px}.oi-alphabet-strip span{width:82px;height:82px;display:flex;align-items:center;justify-content:center;border-radius:15px;border:2px solid #d9e2e6;background:#fff;font-size:40px;font-weight:900}.oi-alphabet-strip .oi-alpha-missing{border-style:dashed;background:#f7fcfa;color:var(--oi-accent-dark)}
.oi-angle-visual{display:flex;gap:18px;justify-content:center;align-items:center;margin:10px 0 18px;font-size:36px}.oi-angle-rays{font-size:70px;line-height:1;color:#526872}.oi-angle-visual strong{font-size:34px}
.oi-coordinate{width:min(300px,100%);height:auto;margin:4px auto 8px;background:#fafcfd;border:1px solid #e0e6e9;border-radius:12px}.oi-coordinate line{stroke:#72838b;stroke-width:1.5}.oi-coordinate circle{fill:#1ca76f;stroke:#126844;stroke-width:1.5}.oi-coordinate text{font-size:13px;font-weight:900;fill:#24323d}
@media(max-width:620px){.oi-shape-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}.oi-shape-choice{min-height:125px}.oi-letter-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.oi-preschool-groups{grid-template-columns:1fr}.oi-emoji-row{font-size:36px;letter-spacing:3px}.oi-pattern-row{font-size:36px;gap:6px}.oi-pattern-row span{min-width:48px;min-height:48px}.oi-size-compare{gap:12px}.oi-size-compare button{min-height:140px}.oi-position-board{grid-template-columns:repeat(3,62px);grid-template-rows:repeat(3,62px)}}
.oi-speed-continue{margin-top:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.oi-speed-pause-note{margin:0;color:var(--oi-muted);font-size:13px;font-weight:600}
.oi-result-process td{background:#fffdf6!important;font-size:13px;color:#42515a;border-bottom:1px solid #e6ecef}
.oi-result-process td:last-child{text-align:left;font-size:13px;font-weight:400}
.oi-result-process ol{margin:6px 0 2px 20px;padding:0}
.oi-result-process li{margin:3px 0}


/* Homepage promo for Spletne učne vaje */
.oi-home-promo{
  display:flex;
  align-items:center;
  gap:18px;
  padding:22px 24px;
  width:936px;
  max-width:calc(100vw - 32px);
  margin:0 auto 28px;
  border:1px solid #cfe9df;
  border-radius:20px;
  background:#f4fbf8;
  color:#0d2741;
  box-sizing:border-box;
}
.oi-home-promo-icon{
  flex:0 0 58px;
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#fff;
  border:1px solid #d9ebe4;
  font-size:30px;
  line-height:1;
}
.oi-home-promo-content{min-width:0}
.oi-home-promo-kicker{
  margin:0 0 8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  color:#087a58;
}
.oi-home-promo h2{
  margin:0 0 8px;
  font-size:26px;
  line-height:1.2;
  color:#081f3a;
}
.oi-home-promo p:not(.oi-home-promo-kicker){
  margin:0 0 14px;
  line-height:1.55;
  color:#3f5f78;
}
.oi-home-promo-button{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 16px;
  border-radius:10px;
  background:#13865f;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:800;
}
.oi-home-promo-button:hover{background:#0c6d4d;color:#fff !important}
@media (max-width:640px){
  .oi-home-promo{align-items:flex-start;padding:18px;gap:14px}
  .oi-home-promo-icon{flex-basis:50px;width:50px;height:50px;font-size:26px}
  .oi-home-promo h2{font-size:22px}
}
