.course-list{display:grid;gap:13px}.module-card{display:flex;align-items:center;gap:16px;width:100%;padding:22px 18px;border:1px solid #dedede;border-radius:15px;background:#fff;text-align:left;position:relative;color:#171717;transition:border-color .15s,transform .15s}.module-card:hover{border-color:#d8222c;transform:translateX(2px)}.module-number{position:absolute;right:18px;top:14px;color:#d0d0d0;font-family:var(--font);font-size:12px;font-weight:900}.module-glyph{font-size:27px;background:#f2f2f2;color:#222;border-radius:13px;width:50px;height:55px;display:grid;place-items:center;flex-shrink:0}.module-card>div{flex:1}.difficulty-label{font-size:8px;letter-spacing:1px;font-weight:700;color:#bc2530}.module-card h3{font-size:17px;margin:7px 0 5px;font-weight:900}.module-card p{font-size:11px;color:#888;margin-bottom:12px}.module-card small{font-size:9px;color:#888}.module-track{height:5px;max-width:240px;border-radius:5px;background:#eee;margin:0 0 8px;overflow:hidden}.module-track span{display:block;height:100%;background:#d8222c;border-radius:5px}.module-arrow{font-size:18px;color:#c02630;margin-top:18px}.module-locked{background:#f7f7f7}.module-locked h3{color:#777}.module-locked .module-arrow{color:#aaa}.module-locked .difficulty-label{color:#999}.module-complete{border-color:#333}.learning-callout{border:1px solid #e3e3e3;border-left:3px solid #d8222c;border-radius:11px;padding:16px 18px;background:white;margin-bottom:18px}.learning-callout b{font-family:var(--font);font-size:14px}.learning-callout p{font-size:11px;color:#888;line-height:1.8;margin:6px 0 0}.back-link,.text-button{border:0;background:transparent;color:#b5222d;font:inherit;font-size:11px;padding:9px 0;cursor:pointer}.back-link{display:block;color:#888;margin-bottom:17px}.module-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:25px;align-items:start}.phase-list{display:grid;gap:13px}.phase-row{width:100%;display:flex;align-items:center;gap:14px;border:1px solid #e2e2e2;border-radius:14px;background:#fff;padding:20px 16px;text-align:left;color:#222}.phase-row>div{flex:1}.phase-row h3{font-size:15px;margin:6px 0}.phase-row p{color:#888;font-size:11px;line-height:1.8;margin:0 0 7px}.phase-row small{font-size:9px;color:#999}.phase-row>span:last-child{font-size:10px;color:#b5222d}.phase-node{display:grid;place-items:center;flex-shrink:0;width:39px;height:39px;border:1px solid #e6c1c5;border-bottom-width:3px;border-radius:50%;font-family:var(--font);font-weight:900;background:#fff3f4;color:#bd222e}.phase-passed .phase-node{background:#171717;color:#fff;border-color:#171717}.phase-locked{background:#f6f6f6}.phase-locked .phase-node{background:#eee;color:#aaa;border-color:#ddd}.phase-locked h3{color:#888}.phase-locked .difficulty-label{color:#999}.practical-gate{display:flex;align-items:start;gap:15px;border-radius:13px;background:#171717;color:white;padding:22px;margin-top:22px}.practical-gate>span{filter:grayscale(1);font-size:28px}.practical-gate h3{font-size:15px;margin:0 0 10px}.practical-gate p,.practical-gate li{font-size:11px;color:#bfbfbf;line-height:1.8}.practical-gate ul{padding-left:16px;margin:8px 0 0}.module-material{background:#fff;border:1px solid #e3e3e3;border-radius:15px;padding:23px}.module-material h2{font-size:18px}.module-material>p{font-size:11px;line-height:1.9;color:#777}.module-vocabulary{display:flex;flex-wrap:wrap;gap:5px;margin:20px 0}.audio-buttons{display:flex;gap:5px;margin:0 0 8px;align-items:center;flex-wrap:wrap}.audio-buttons .audio{font-size:10px;padding:9px 11px}.slow-audio{color:#555;background:#f7f7f7;border-color:#ddd}.module-vocabulary .audio-buttons{margin:0}.movement-diagram{margin:19px 0}.movement-diagram svg{width:100%;display:block;border:1px solid #e2e2e2;border-radius:13px}.movement-diagram figcaption,.own-image figcaption{font-size:9px;line-height:1.8;color:#999;margin-top:8px}.phase-media{margin-top:25px;padding-top:20px;border-top:1px solid #eee}.phase-media .section-head h3{font-size:15px;line-height:1.5}.phase-media .section-head small{font-size:7px;letter-spacing:1px;color:#999;flex-shrink:0}.phase-media>p{font-size:11px;color:#777;line-height:1.8}.yt-placeholder{border-radius:12px;border:1px solid #ddd;background:#f5f5f5;padding:25px 20px;text-align:center;margin-top:20px}.yt-placeholder>span{background:#d8222c;color:white;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;margin:auto auto 14px}.yt-placeholder h3{font-size:16px}.yt-placeholder p{color:#888;font-size:11px;line-height:1.8}.yt-placeholder .outline{font-size:10px}.external-video{font-size:11px;color:#b5222d;display:inline-block;margin:12px 0}.video-note{display:block;font-size:9px;color:#999;line-height:1.8}.lesson-video,.phase-media video{width:100%;aspect-ratio:16/9;border:0;border-radius:11px;background:#111;display:block;margin:16px 0}.own-image{margin:15px 0}.own-image img{max-height:380px;width:100%;object-fit:contain;border-radius:12px;background:#f7f7f7}.phase-goal{background:#fff0f1;border:1px solid #ebc3c7;border-radius:11px;padding:17px;margin:18px 0}.phase-goal b{font-family:var(--font);display:block;color:#b5222d;font-size:18px;margin-bottom:6px}.phase-goal span{color:#9a7478;font-size:11px}.phase-study p{font-size:12px!important;line-height:1.9!important}.written-label{font-size:12px;color:#888;display:block;margin:23px 0 9px}.written-answer{width:100%;padding:17px;border:2px solid #ddd;border-bottom-width:4px;border-radius:12px;font-size:17px;color:#222;background:white;font-family:var(--font)}.written-answer:focus{outline:2px solid #d8222c;border-color:transparent}.order-picked{min-height:65px;display:flex;gap:8px;flex-wrap:wrap;border:2px dashed #ddd;background:#fafafa;border-radius:12px;padding:12px;margin:20px 0}.order-picked span{background:#222;color:#fff;border-radius:7px;padding:9px 11px;font-size:11px}.order-options{display:flex;gap:8px;flex-wrap:wrap}.order-token{border:1px solid #ddd;border-bottom-width:3px;border-radius:9px;background:#fff;padding:11px 13px;color:#555;font-size:12px}.order-token:hover{border-color:#d8222c}.result-emblem{background:#171717;color:white;width:75px;height:75px;display:grid;place-items:center;margin:8px auto 22px;border-radius:50%;font-size:35px;font-weight:900}.review-notes{text-align:left;background:#f5f5f5;border-radius:12px;padding:18px;margin-top:23px}.review-notes h3{font-size:15px;margin-bottom:10px}.review-notes ul{padding-left:18px;margin-bottom:0}.review-notes li{font-size:12px;color:#777;line-height:1.8;margin:7px 0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.finish-stats{flex-wrap:wrap}.finish-stats>div{min-width:95px}.media-form label{display:block;font-size:12px;color:#666;margin:18px 0 8px;font-weight:500}.media-form input:not([type=checkbox]),.media-form select,.media-form textarea,.sensei-checks input:not([type=checkbox]){width:100%;display:block;margin-top:8px;border:1px solid #d5d5d5;border-radius:9px;padding:12px;background:#fff;color:#333;font:inherit;font-size:12px}.media-form input[type=file]{font-size:10px!important;background:#fafafa!important;padding:13px 9px!important}.media-form textarea{resize:vertical}.media-form label small{color:#999;font-size:10px;display:block;margin-top:7px}.media-form .primary{margin-top:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.media-form select{min-height:43px}.form-error{color:#b5222d!important}.library-help ol{padding-left:20px}.library-help li{margin-bottom:10px}.saved-media{display:flex;align-items:center;gap:16px;border-top:1px solid #eee;padding:18px 0}.saved-media>div{flex:1}.saved-media b{font-size:13px}.saved-media small{font-size:10px;color:#999;display:block;margin-top:4px}.saved-media p{font-size:10px!important;margin:6px 0 0!important}.saved-media .text-button{font-size:10px;white-space:nowrap}.library-backup{display:flex;gap:12px;margin:23px 0 15px;align-items:stretch}.library-backup>*{width:auto}.import-label{display:flex;align-items:center;cursor:pointer;font-size:10px}.import-label input{max-width:155px;font-size:9px;margin-left:10px}.sensei-checks{display:grid;gap:20px}.sensei-checks article{border:1px solid #ddd;border-radius:12px;padding:20px;background:#fafafa}.sensei-checks h3{font-size:16px}.sensei-checks ul{padding-left:18px}.sensei-checks li{font-size:11px;margin:7px 0}.sensei-checks label{font-size:11px;display:block;color:#777;margin:15px 0}.checkbox-label{display:flex!important;align-items:start;gap:10px;line-height:1.8}.checkbox-label input{margin-top:4px;accent-color:#d8222c}.approval-ok{color:#333!important;font-weight:700}.more-phase-media>h3{font-size:14px;margin:25px 0 0}#media-form-status{margin:15px 0 0;min-height:18px}.sidebar-bottom .nav-item{font-size:10px;padding-top:10px;padding-bottom:10px}.word-card .audio-buttons{margin-top:13px}.word-card .slow-audio{font-size:9px}
@media(max-width:1150px){.module-layout{grid-template-columns:1fr}.module-material{margin-top:0}.module-vocabulary{gap:8px}.module-card h3{font-size:16px}}
.catalog-link{margin:20px 0}.kata-filters{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin:24px 0}.kata-filters label,.training-select label{font-size:11px;color:#777;display:block}.kata-filters input,.kata-filters select,.training-select select{display:block;width:100%;padding:13px;margin-top:8px;border:1px solid #ddd;border-radius:10px;background:#fff;color:#333;font:inherit;font-size:12px}.kata-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.kata-card{background:#fff;border:1px solid #e2e2e2;border-radius:14px;padding:22px 18px;position:relative}.kata-card[hidden]{display:none}.kata-number{position:absolute;right:15px;top:16px;color:#ccc;font-size:10px}.kata-card h3{font-size:17px;line-height:1.4;margin:15px 0 8px;min-height:44px}.kata-reading{font-size:14px;color:#b5222d;margin-bottom:12px;line-height:1.8}.kata-card>small{font-size:9px;color:#999;display:block;line-height:1.8;min-height:31px;margin-bottom:14px}.kata-card .audio-buttons{display:block}.kata-card .audio{display:block;margin-bottom:6px}.kata-card .text-button{font-size:10px;margin-top:8px}.kata-source{margin-top:25px}.kata-large-reading{font-size:24px;color:#b5222d;margin:17px 0 22px}.training-overview{background:#171717;color:#fff;border-radius:15px;padding:25px 28px;display:flex;align-items:center;gap:25px;margin:0 0 27px}.training-overview h2{font-size:21px;margin:8px 0}.training-overview p{font-size:11px;color:#aaa;line-height:1.8;margin:0;max-width:470px}.training-shortcuts{display:flex;flex-direction:column;gap:9px;min-width:195px;margin-left:auto}.training-shortcuts .outline{color:#d8222c;background:#fff;border-color:#fff;font-size:11px;padding:12px}.training-shortcuts .text-button{color:#eee;font-size:10px;padding:3px}.training-select{background:#f4f4f4;border:1px solid #e0e0e0;border-radius:13px;padding:22px;display:flex;align-items:center;gap:25px;margin-bottom:20px}.training-select>label{flex:1}.training-select .belt-drawing{flex-shrink:0}.training-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.training-module-card{background:#fff;border:1px solid #e0e0e0;border-radius:15px;padding:26px}.training-module-card .module-glyph{margin-bottom:20px}.training-module-card h2{font-size:24px;line-height:1.3;margin:14px 0}.training-module-card p{font-size:12px;color:#888;line-height:1.8}.training-module-card small{display:block;font-size:10px;color:#999;margin:20px 0 16px}.kihon-category-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.kihon-category-nav a{background:#fff;border:1px solid #dedede;border-radius:12px;padding:18px;font-family:var(--font);font-weight:900;text-decoration:none;font-size:16px}.kihon-category-nav small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;color:#999;font-weight:400;margin-top:7px}.kihon-category{background:#fff;border:1px solid #ddd;border-radius:15px;padding:25px;margin:22px 0;scroll-margin-top:20px}.category-heading{display:flex;align-items:center;gap:20px;justify-content:space-between;padding-bottom:20px;border-bottom:2px solid #171717}.category-heading>div:first-child>span{color:#d8222c;font-size:24px}.category-heading h2{font-size:26px;margin:6px 0}.category-heading p{color:#888;font-size:11px;margin:0}.category-heading>div:last-child{max-width:235px}.kihon-audio-list article{display:flex;align-items:center;gap:17px;border-bottom:1px solid #eee;padding:21px 0}.kihon-audio-list article:last-child{border-bottom:0}.kihon-item-number{font-size:10px;color:#ccc;width:20px;flex-shrink:0}.kihon-audio-list article>div:first-of-type{flex:1}.kihon-audio-list h3{font-size:16px;margin:0 0 7px}.kihon-audio-list p{font-size:11px;color:#888;margin:0 0 6px}.kihon-audio-list small{font-size:10px;color:#b5222d}.kihon-audio-list .audio-buttons{max-width:240px;margin:0;justify-content:end}.training-check-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;margin:10px 0 15px;font:inherit;font-size:12px}.sidebar{overflow-y:auto}.sidebar>nav>.nav-item{padding-top:12px;padding-bottom:12px}
@media(max-width:1000px){.kata-grid{grid-template-columns:repeat(2,1fr)}.training-overview{display:block}.training-shortcuts{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;min-width:0}.training-shortcuts .text-button{grid-column:1/-1}.training-module-card{padding:23px}.training-module-card h2{font-size:21px}.kihon-category-nav{grid-template-columns:repeat(2,1fr)}.kihon-audio-list article{flex-wrap:wrap}.kihon-audio-list .audio-buttons{max-width:none;justify-content:start;flex-basis:100%;padding-left:37px}}
@media(max-width:640px){.kata-filters{grid-template-columns:1fr;gap:14px}.kata-grid{gap:10px}.kata-card{padding:19px 13px}.kata-card h3{font-size:14px;min-height:38px}.kata-reading{font-size:11px}.kata-card>small{font-size:8px}.kata-card .audio{font-size:9px;padding:8px}.kata-card .text-button{font-size:9px}.kata-number{right:10px;top:12px;font-size:9px}.kata-card .difficulty-label{font-size:6px}.training-overview{padding:22px 20px}.training-overview h2{font-size:19px}.training-overview p{font-size:10px}.training-shortcuts .outline{font-size:10px;padding:11px}.training-select{padding:18px;gap:15px}.training-select select{font-size:11px;padding:12px 7px}.training-select .belt-drawing{transform:scale(.8);transform-origin:right center;width:82px}.training-module-grid{grid-template-columns:1fr;gap:14px}.training-module-card{padding:22px}.training-module-card h2{font-size:22px}.kihon-category{padding:20px 16px}.category-heading{display:block}.category-heading>div:last-child{max-width:none;margin-top:18px}.category-heading .audio-buttons{display:flex}.category-heading h2{font-size:24px}.kihon-category-nav{gap:9px}.kihon-category-nav a{padding:16px;font-size:16px}.kihon-audio-list h3{font-size:14px;line-height:1.5}.kihon-audio-list p{font-size:10px;line-height:1.8}.kihon-audio-list article{gap:12px}.kihon-item-number{width:16px}.kihon-audio-list .audio-buttons{padding-left:28px}.sidebar{overflow-y:visible}}
@media(max-width:640px){.module-card{gap:12px;padding:20px 14px}.module-glyph{width:41px;height:49px;font-size:23px}.module-card h3{font-size:15px;max-width:215px}.module-card p{font-size:10px}.module-number{font-size:10px;right:12px;top:10px}.module-arrow{font-size:16px}.module-card small{font-size:8px}.difficulty-label{font-size:7px;letter-spacing:.6px}.phase-row{padding:17px 12px;gap:11px}.phase-node{width:31px;height:31px;font-size:12px}.phase-row h3{font-size:13px}.phase-row p{font-size:10px}.phase-row small{font-size:8px}.phase-row>span:last-child{font-size:8px}.module-material{padding:19px}.module-material h2{font-size:17px}.phase-media .section-head{align-items:start}.phase-media .section-head small{font-size:6px;max-width:85px;text-align:right}.phase-goal b{font-size:17px}.phase-goal span{font-size:10px}.practical-gate{padding:19px;gap:10px}.practical-gate>span{font-size:22px}.practical-gate h3{font-size:14px}.form-grid{grid-template-columns:1fr;gap:0}.media-form input,.media-form textarea{font-size:12px}.saved-media{flex-wrap:wrap;gap:12px}.saved-media>div{flex-basis:100%}.library-backup{flex-direction:column;align-items:stretch}.library-backup>*{justify-content:center}.library-help li{font-size:12px}.sensei-checks article{padding:17px}.sensei-checks .outline{font-size:9px}.written-answer{font-size:15px;padding:14px}.order-token{font-size:11px;padding:10px}.order-picked span{font-size:10px;padding:8px}.finish .finish-stats{gap:8px}.finish-stats>div{padding:14px 12px;min-width:80px}.finish-stats small{font-size:8px}.hero .tag{letter-spacing:.7px;font-size:6px}.hero h2{font-size:26px}.hero-art .speech{font-size:6px;white-space:nowrap}.hero .primary{font-size:8px}.summary{gap:20px}.summary b{font-size:21px}.summary small{font-size:9px}.word-card .audio-buttons{display:block}.word-card .audio{font-size:9px;margin-bottom:6px;padding:8px 9px}}
.kihon-item-actions{width:240px;flex-shrink:0}.kihon-material-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:10px}.kihon-material-actions .text-button{font-size:11px;color:#c71d2a}.category-heading .kihon-material-actions{justify-content:flex-start}.kihon-material-actions .outline{font-size:10px;padding:9px 12px}
@media(max-width:1000px){.kihon-item-actions{width:100%;padding-left:37px}.kihon-item-actions .audio-buttons{padding-left:0;justify-content:flex-start}.kihon-material-actions{justify-content:flex-start}}
@media(max-width:640px){.kihon-item-actions{padding-left:28px}.kihon-item-actions .audio-buttons{padding-left:0}.kihon-material-actions .text-button{font-size:11px;padding:9px 0}}
.account-preview-banner{background:#181818;color:#fff;padding:9px 20px;font-size:11px;text-align:center}.account-card{max-width:490px;margin:25px auto;text-align:center}.account-card>img{width:100px;height:auto;margin:5px 0 20px}.social-login{width:100%;justify-content:center;display:flex;align-items:center;gap:12px;margin:12px 0;padding:16px}.social-login:disabled{opacity:.45;cursor:not-allowed}.social-login>span{font-family:Arial,sans-serif;font-size:20px;font-weight:bold}.account-card .learning-callout{text-align:left;margin-top:25px}.account-page h1{text-align:center}.account-page>.intro{text-align:center;max-width:580px;margin:auto}.practice-approval-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}#student-practice-panel textarea{display:block;box-sizing:border-box;width:100%;border:1px solid #ccc;border-radius:8px;padding:12px;margin:12px 0}#students-panel .saved-media small{display:block}.account-card .primary{background:#111;border-color:#111}
@media(max-width:640px){.account-preview-banner{font-size:9px;padding:9px 15px}.account-page h1{font-size:27px}.account-card{padding:22px 17px}.social-login{font-size:13px}.practice-approval-buttons{display:grid}}

/* Respeita a área do indicador de início no iPhone. */
@media(max-width:640px){.sidebar{height:calc(70px + env(safe-area-inset-bottom,0px));padding-bottom:calc(5px + env(safe-area-inset-bottom,0px))}.app{margin-bottom:calc(70px + env(safe-area-inset-bottom,0px))}.media-form input,.media-form select,.media-form textarea{font-size:16px}}

.lesson-audio-settings{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:8px 0}.lesson-audio-settings button{background:#fff;border:1px solid #ddd;border-radius:20px;padding:8px 12px;font-size:11px;color:#333;min-height:38px}.lesson-audio-settings button[aria-pressed="true"]{border-color:#d8222c;color:#b11924;background:#fff4f5}.words-jump{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.words-jump a{border:1px solid #ddd;border-radius:20px;text-decoration:none;padding:10px 16px;font-weight:700;font-size:12px}.words-jump a:hover{border-color:#d8222c;color:#b11924}.words-section{margin:40px 0;scroll-margin-top:25px}.words-section>p{line-height:1.8;color:#666}.oath-card{margin-bottom:16px}.oath-card h3{font-size:18px;line-height:1.6;margin:10px 0 16px}.oath-japanese{font-size:20px;line-height:1.9;color:#b11924;overflow-wrap:anywhere}.oath-romaji{font-size:13px;color:#666;line-height:1.9}.oath-card .audio-buttons,.oath-whole .audio-buttons{display:flex;flex-wrap:wrap;gap:8px}.oath-card .audio{font-size:11px}.kata-word-card .japanese{overflow-wrap:anywhere}.kata-word-card .audio{white-space:normal}.kata-word-card>small{font-size:9px;color:#666}.kata-word-card .text-button{font-size:11px}@media(max-width:640px){.oath-card{padding:22px 18px}.oath-card h3{font-size:16px}.oath-japanese{font-size:18px}.lesson-audio-settings{justify-content:flex-start}.lesson-audio-settings button{font-size:10px;padding:8px 10px}.kata-word-card .audio-buttons{display:block}.kata-word-card .audio{margin-bottom:6px}}

/* Responsáveis */
.guardian-panel{margin-top:24px}.guardian-form,.guardian-review{max-width:760px}.guardian-form label,.guardian-review label{display:block;margin:18px 0;font-size:14px;line-height:1.7}.guardian-form input:not([type=checkbox]),.guardian-form select,.guardian-review select,.guardian-review textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #bbb;border-radius:9px;padding:12px;background:white;color:#222;font:inherit;font-size:16px}.guardian-review textarea{min-height:90px}.guardian-consent{border:1px solid #d8222c;border-left:5px solid #d8222c;border-radius:12px;background:#fff8f8;padding:20px;margin:22px 0}.guardian-check{display:flex!important;align-items:flex-start;gap:12px}.guardian-check input{flex:0 0 20px;width:20px;height:20px;margin-top:3px;accent-color:#d8222c}.guardian-buttons{display:flex;flex-wrap:wrap;gap:12px}.guardian-review{border:1px solid #ddd;border-radius:12px;padding:22px;margin:20px 0}.guardian-panel code{overflow-wrap:anywhere}.guardian-panel p,.guardian-form p{line-height:1.8}.guardian-panel button,.guardian-form button{min-height:44px}.guardian-panel [role=status]{color:#a11823}#privacy-queue>h3{margin-top:32px}@media(max-width:640px){.guardian-review,.guardian-consent{padding:17px}.guardian-buttons{flex-direction:column}.guardian-buttons button{width:100%}}
