/* JadyEE theme: the look of the prototype on the real screens. Fonts are self-hosted (CSP allows 'self' only). */
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/unbounded-latin-700-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/unbounded-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/unbounded-cyrillic-ext-700-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/unbounded-latin-800-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/unbounded-cyrillic-800-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/unbounded-cyrillic-ext-800-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/golos-text-latin-400-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/golos-text-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/golos-text-cyrillic-ext-400-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/golos-text-latin-500-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/golos-text-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/golos-text-cyrillic-ext-500-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/golos-text-latin-600-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/golos-text-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/golos-text-cyrillic-ext-600-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/jetbrains-mono-latin-700-normal.woff2') format('woff2');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+2190-21FF,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/jetbrains-mono-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/jetbrains-mono-cyrillic-ext-700-normal.woff2') format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

/* ---------- base ---------- */
#learning-area,#app-menu,#item-bulk,#teacher-send{font-family:'Golos Text',system-ui,-apple-system,'Segoe UI',sans-serif}
#learning-area{background:#F2F5FA}
#learning-area h1,#learning-area h2,#app-menu h2{font-family:'Unbounded',system-ui,sans-serif;letter-spacing:-.02em;color:#092556}

/* ---------- Колоды ---------- */
#page-words>.page-heading,#page-words #material-selected,#page-words #material-show-all{display:none}
#page-words[data-view="list"] #deck-head,#page-words[data-view="list"] #universal-content{display:none}
#page-words:not([data-view="list"]) #today-card,#page-words:not([data-view="list"]) #materials,#page-words:not([data-view="list"]) #legacy-materials,#page-words:not([data-view="list"]) #words-free{display:none}
#today-card{flex-direction:column;align-items:stretch;gap:14px;background:#031D4F;border-radius:24px;padding:22px}
#today-card .today-kicker{font-size:15px;color:#C9D6EE}
#today-card .today-title{font-family:'Unbounded',sans-serif;font-weight:800;font-size:26px;line-height:1.15;letter-spacing:-.02em}
#today-card #words-review{width:100%;min-height:54px;border:0;border-radius:14px;background:#FFCA38;color:#092556;font-weight:600;font-size:17px;box-shadow:0 4px 0 #C99A12}
#today-card .today-weak{flex:none}
#today-card .today-text{flex:none}
#page-words{padding-bottom:80px}
#materials>.app-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:26px 0 12px}
#materials>.app-actions h2{margin:0;font-size:19px}
#materials #material-new{min-height:40px;padding:0 14px;border-radius:12px;font-size:14px;font-weight:600;background:#fff;border:1px solid #DCE3EF;color:#092556}
#material-plan-usage{font-size:13px;color:#5E6F92;margin:0 0 10px}
#material-list,#teacher-deck-list{display:flex;flex-direction:column;gap:10px}
button.deck-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:16px;border-radius:18px;border:1px solid #DCE3EF;background:#fff;color:#092556;font:inherit;cursor:pointer;min-height:76px;transition:transform .15s,box-shadow .2s}
button.deck-card:hover{box-shadow:0 12px 28px -20px rgba(3,29,79,.55)}
button.deck-card:active{transform:scale(.985)}
button.deck-card:focus-visible{outline:3px solid #1F5BD8;outline-offset:2px}
.deck-icon{flex:none;width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-family:'Unbounded',sans-serif;font-weight:800;font-size:18px}
.deck-icon.tone-0{background:#FFCA38;color:#092556}.deck-icon.tone-1{background:#092556;color:#fff}.deck-icon.tone-2{background:#DCE7FF;color:#183E86}.deck-icon.tone-3{background:#F2F5FA;color:#092556;border:1px solid #DCE3EF}
.deck-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.deck-name{font-weight:600;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.deck-sub{font-size:13px;color:#4A5B7E;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.deck-badge-n{flex:none;font-size:12px;font-weight:700;padding:5px 10px;border-radius:9px;white-space:nowrap}
.deck-badge-n.due{background:#DCE7FF;color:#183E86}.deck-badge-n.ok{background:#D9F2E3;color:#155C37}.deck-badge-n.none{display:none}
.teacher-decks h3{font-family:'Unbounded',sans-serif;font-size:17px;margin:22px 0 10px}
.deck-empty{margin:4px 0;color:#5E6F92}
#legacy-materials{margin-top:24px;font-size:14px;color:#4A5B7E}
#page-words:not([data-view="list"]) #universal-content>h2{display:none}
#universal-content .item-top-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
#universal-content .item-top-actions button{min-height:42px;padding:0 14px;border-radius:12px;font-size:14px;font-weight:600;background:#fff;border:1px solid #DCE3EF;color:#092556}
#words-free{margin-top:12px}
/* deck page */
.deck-head{margin:0 0 18px}
.deck-back{width:44px;height:44px;border-radius:12px;border:1px solid #DCE3EF;background:#fff;color:#092556;display:flex;align-items:center;justify-content:center;cursor:pointer}
.deck-head .deck-panel{margin-top:16px;background:#fff;border:1px solid #DCE3EF;border-radius:24px;padding:22px}
.deck-head .deck-tag{display:inline-block;background:#FFCA38;color:#092556;border-radius:8px;padding:3px 10px;font-size:13px;font-weight:600}
.deck-head h1{margin:10px 0 4px;font-size:32px;line-height:1.1}
.deck-head p{margin:0 0 18px;font-size:14px;color:#4A5B7E}
.deck-main{display:flex;flex-wrap:wrap;gap:10px}
.deck-main button{flex:1 1 160px;min-height:52px;border-radius:14px;font-weight:600;font-size:17px}
.deck-main button.learn{background:#FFCA38;border:0;color:#092556;box-shadow:0 4px 0 #C99A12}
.deck-main button.share{background:#fff;border:2px solid #092556;color:#092556}
.deck-more{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.deck-more button{min-height:40px;padding:0 14px;border-radius:12px;font-size:14px;font-weight:600;background:#fff;border:1px solid #DCE3EF;color:#092556}
.deck-more button.danger{color:#9B2C1F}
/* add button */
.decks-fab{position:fixed;right:20px;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:41;width:60px;height:60px;border-radius:20px;border:0;background:#092556;color:#FFCA38;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -12px rgba(3,29,79,.8);cursor:pointer;transition:transform .15s}
.decks-fab:active{transform:scale(.94)}
.decks-fab:focus-visible{outline:3px solid #1F5BD8;outline-offset:3px}
.decks-fab[hidden],body.focus .decks-fab,body.access-locked .decks-fab{display:none}
@media (min-width:900px){.decks-fab{right:calc(50% - 420px)}}

/* ---------- повторение ---------- */
#srs-panel:has(#srs-session:not([hidden])){background:transparent;border:0;padding:6px 0}
#srs-session{max-width:560px;margin:0 auto}
#srs-session-mode,#srs-set-name{display:none}
#srs-session .srs-session-top{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.srs-progress{height:10px;border-radius:5px;background:#DCE3EF;overflow:hidden;margin:12px 0 6px}
#srs-progress-fill{display:block;height:100%;width:0;border-radius:5px;background:#FFCA38;transition:width .45s cubic-bezier(.2,.8,.2,1)}
#srs-session .srs-position{margin:0 0 10px;font-size:13px;font-weight:600;color:#5E6F92}
#srs-session .srs-instruction{margin:0 0 12px;font-size:14px;font-weight:500;color:#4A5B7E}
#srs-panel #srs-session .srs-cue{margin:0;background:#fff;border:1px solid #DCE3EF;border-bottom:0;border-radius:26px 26px 0 0;padding:22px 22px 12px}
#srs-panel #srs-session .srs-answer{margin:0 0 16px;background:#fff;border:1px solid #DCE3EF;border-top:2px solid #DCE3EF;border-radius:0 0 26px 26px;padding:14px 22px 22px;box-shadow:0 24px 50px -36px rgba(3,29,79,.6)}
#srs-session .srs-cue .eyebrow,#srs-session .srs-answer .eyebrow{font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;color:#5E6F92}
#srs-panel #srs-session .srs-cue p{font-family:'Unbounded',sans-serif;font-weight:700;font-size:26px;line-height:1.2;color:#092556;margin:6px 0 4px}
#srs-panel #srs-session .srs-answer p#srs-english{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:clamp(30px,9vw,46px);line-height:1.15;letter-spacing:-.02em;color:#092556;margin:6px 0 2px}
#srs-panel #srs-session .srs-answer p#srs-english.masked{letter-spacing:-.02em}
.srs-meter{display:flex;gap:6px;margin:14px 0 6px}
.srs-meter i{flex:1;height:8px;border-radius:4px;background:#DCE3EF;transition:background .3s}
.srs-meter i.on{background:#FFCA38}
#srs-panel #srs-session .srs-answer p.srs-level{margin:0;font-family:'Golos Text',sans-serif;font-size:13px;font-weight:600;line-height:1.4;letter-spacing:0;color:#5E6F92}
.srs-meter[hidden],.srs-level[hidden]{display:none}
#srs-session>.srs-actions{display:flex;flex-direction:column;gap:10px}
#srs-session>.srs-actions button{width:100%;min-height:52px;border-radius:14px;font-weight:600;font-size:16px}
#srs-session>.srs-actions button:not(.primary){background:#fff;border:2px solid #CBD5E6;color:#092556}
#srs-session>.srs-actions button.primary{background:#FFCA38;border:0;color:#092556;box-shadow:0 4px 0 #C99A12}
#srs-session>.srs-actions #srs-next.primary{background:#092556;color:#fff;box-shadow:none}
#srs-session .srs-session-top .srs-actions{display:flex;flex-direction:row;gap:8px;margin:0}
#srs-session .srs-session-top button{min-height:40px;width:auto;border-radius:12px;background:#fff;border:1px solid #DCE3EF;color:#092556}
#srs-session .srs-ratings{display:flex;flex-direction:column;gap:10px;margin:0 0 12px}
#srs-session .srs-ratings button{width:100%;min-height:54px;border-radius:14px;font-weight:600;font-size:17px}
#srs-session #srs-good{background:#FFCA38;border:0;color:#092556;box-shadow:0 4px 0 #C99A12}
#srs-session #srs-good:disabled{opacity:.45;box-shadow:none}
#srs-session #srs-hinted{background:#fff;border:2px solid #CBD5E6;color:#092556}
#srs-session #srs-again{background:#fff;border:2px solid #E7C1B8;color:#7A2E1C}
#srs-session #srs-feedback{background:#FFF4CC;border-radius:18px;padding:16px 18px;color:#0B1F44;margin:0 0 12px}
#srs-summary{text-align:center;max-width:520px;margin:0 auto}
#srs-summary .jd-done{margin:8px auto 14px}
#srs-summary #srs-summary-home{width:100%;min-height:54px;border:0;border-radius:14px;background:#FFCA38;color:#092556;font-weight:600;font-size:17px;box-shadow:0 4px 0 #C99A12}

/* ---------- меню «Ещё» ---------- */
#app-menu .menu-links button{min-height:52px;border-radius:16px;font-weight:600}
@keyframes jdSheetUp{from{transform:translateY(100%)}to{transform:none}}
@media (max-width:640px){
  dialog#app-menu{position:fixed;inset:auto 0 0 0;margin:0;width:100%;max-width:none;max-height:86vh;border-radius:28px 28px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}
  dialog#app-menu[open]{animation:jdSheetUp .38s cubic-bezier(.2,.8,.2,1) both}
}

/* ---------- прогресс ---------- */
.jady-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:10px}
.jady-metric{background:#fff;border:1px solid #DCE3EF;border-radius:18px;padding:14px 16px;display:flex;flex-direction:column}
.jady-metric strong{font-family:'Unbounded',sans-serif;font-weight:800;font-size:26px;color:#092556;line-height:1.15}
.jady-metric span{font-size:13px;color:#4A5B7E}
.jady-metric.is-zero strong{color:#8DA2CC}

@media (prefers-reduced-motion: reduce){button.deck-card,.decks-fab,dialog#app-menu[open],#srs-progress-fill,.srs-meter i{animation:none!important;transition:none!important}}
