.tgm-card{--tgm-purple:#6f3ee8;--tgm-violet:#8d5cf0;--tgm-ink:#21183f;--tgm-muted:#746d87;--tgm-line:#e5def0;--tgm-soft:#f8f5fc;--tgm-mint:#eaf8f2;--tgm-green:#078966;--tgm-warn:#fff4d8;--tgm-danger:#d9556f;color:var(--tgm-ink);font-family:inherit;background:#fff;border:1px solid var(--tgm-line);border-radius:22px;padding:26px;box-sizing:border-box}.tgm-card *{box-sizing:border-box}.tgm-card button,.tgm-card input,.tgm-card select,.tgm-card textarea{font:inherit}.tgm-head h4,.tgm-topics-head h5,.tgm-workspace h5,.tgm-section-title h6{margin:0;color:var(--tgm-ink)}.tgm-head h4{font-size:22px}.tgm-head p,.tgm-topics-head p,.tgm-workspace-head p,.tgm-section-title p{margin:6px 0 0;color:var(--tgm-muted);line-height:1.45}.tgm-eyebrow,.tgm-workspace-label{display:block;margin-bottom:8px;color:var(--tgm-purple);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.tgm-summary{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:14px;margin:22px 0}.tgm-summary>span{min-height:105px;padding:20px 22px;border:1px solid var(--tgm-line);border-radius:18px;background:#fff;display:flex;flex-direction:column;justify-content:center}.tgm-summary small{color:var(--tgm-muted);font-size:14px}.tgm-summary b{display:block;margin-top:7px;color:var(--tgm-purple);font-size:28px}.tgm-summary .is-work{background:#f6f0ff}.tgm-summary .is-closed{background:var(--tgm-mint)}.tgm-summary .is-closed b{color:var(--tgm-green)}.tgm-summary i,.tgm-workspace-progress span,.tgm-list-bar{display:block;height:8px;margin-top:12px;border-radius:999px;background:#ebe7f1;overflow:hidden}.tgm-summary i em,.tgm-workspace-progress i,.tgm-list-bar em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8144e7,#d43bc9,#f05236)}
.tgm-instruction{margin:0 0 24px;padding:20px;border-radius:18px;background:#faf7ff;border:1px solid #eee6fa}.tgm-instruction-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.tgm-instruction-head>div{display:flex;align-items:baseline;gap:14px}.tgm-instruction-head b{font-size:17px}.tgm-instruction-head span{color:var(--tgm-muted);font-size:13px}.tgm-instruction-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:18px}.tgm-instruction-steps>span{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:4px 18px;border-right:1px solid var(--tgm-line)}.tgm-instruction-steps>span:first-child{padding-left:0}.tgm-instruction-steps>span:last-child{border-right:0}.tgm-instruction-steps i,.tgm-section-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#efe6ff;color:var(--tgm-purple);font-style:normal;font-weight:900}.tgm-instruction-steps small{grid-column:2;color:var(--tgm-muted);line-height:1.35}.tgm-instruction>p{margin:18px 0 0;padding-top:15px;border-top:1px solid var(--tgm-line);color:#5e5770;line-height:1.5}.tgm-instruction.is-collapsed .tgm-instruction-steps,.tgm-instruction.is-collapsed>p{display:none}
.tgm-ghost-button,.tgm-add-gap,.tgm-button,.tgm-text-button{border:1px solid #8251eb;border-radius:11px;background:#fff;color:#6939d6;padding:10px 16px;cursor:pointer;font-weight:750}.tgm-button{border:0;background:linear-gradient(135deg,#ab39de,#ef4c39);color:#fff}.tgm-button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.48}.tgm-text-button{border:0;padding:8px;background:transparent}.tgm-text-button.is-danger{color:var(--tgm-danger)}
.tgm-topics-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:8px}.tgm-topics-head h5{font-size:19px}.tgm-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 210px;gap:12px;margin:16px 0}.tgm-toolbar label{position:relative}.tgm-toolbar label span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#756d86}.tgm-toolbar input,.tgm-toolbar select{width:100%;height:46px;border:1px solid var(--tgm-line);border-radius:12px;background:#fff;color:var(--tgm-ink);padding:0 14px}.tgm-toolbar input{padding-left:38px}
.tgm-topic-list{display:grid;gap:12px}.tgm-topic-card{border:1px solid var(--tgm-line);border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 8px 28px rgba(53,32,94,.035)}.tgm-topic-card[hidden]{display:none}.tgm-gap-item{position:relative;display:grid;grid-template-columns:130px minmax(0,1fr) 70px 28px;align-items:center;gap:16px;width:100%;min-height:96px;padding:19px 22px 25px;border:0;background:#fff;color:var(--tgm-ink);text-align:left;cursor:pointer}.tgm-gap-item:hover,.tgm-gap-item.is-active{background:#fbf9ff}.tgm-gap-item.is-active{box-shadow:inset 4px 0 0 var(--tgm-purple)}.tgm-topic-copy{min-width:0}.tgm-topic-copy b{display:block;font-size:17px;line-height:1.35}.tgm-topic-copy small{display:block;margin-top:6px;color:var(--tgm-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tgm-gap-item>strong{justify-self:end;color:var(--tgm-purple);font-size:23px}.tgm-list-arrow{font-style:normal;font-size:26px;color:var(--tgm-purple);transition:transform .2s}.tgm-gap-item.is-active .tgm-list-arrow{transform:rotate(180deg)}.tgm-list-bar{position:absolute;left:22px;right:22px;bottom:13px;height:5px;margin:0}.tgm-status-chip{justify-self:start;padding:7px 10px;border-radius:999px;background:#efedf3;color:#696272;font-size:11px;font-weight:900;text-transform:uppercase;white-space:nowrap}.tgm-status-chip.is-in-progress,.tgm-status-chip.is-reinforcement{background:#efe7ff;color:#6939d6}.tgm-status-chip.is-closed{background:#e6f8ef;color:#087e5e}
.tgm-workspace{padding:24px;border-top:1px solid var(--tgm-line);background:#fcfbfe}.tgm-workspace[hidden]{display:none}.tgm-workspace-head{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:24px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--tgm-line)}.tgm-workspace-head h5{font-size:20px}.tgm-topic-input{width:100%;border:1px solid var(--tgm-line);border-radius:11px;padding:11px 13px;color:var(--tgm-ink);font-size:18px;font-weight:800;background:#fff}.tgm-workspace-progress{text-align:right}.tgm-workspace-progress strong{color:var(--tgm-purple);font-size:32px}.tgm-workspace-progress span{height:7px}.tgm-section-title>div{display:flex;align-items:flex-start;gap:12px}.tgm-section-title h6{font-size:17px}.tgm-section-title p{font-size:13px}.tgm-focus,.tgm-skills,.tgm-control{margin-top:20px;padding:20px;border:1px solid var(--tgm-line);border-radius:16px;background:#fff}.tgm-focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.tgm-focus-grid label{display:grid;gap:8px}.tgm-focus-grid label>b{font-size:12px;color:#5c5270}.tgm-focus textarea,.tgm-readonly-copy{display:block;width:100%;min-height:78px;padding:12px 14px;border:1px solid var(--tgm-line);border-radius:12px;background:#fff;color:var(--tgm-ink);line-height:1.5;resize:vertical}.tgm-readonly-copy{background:var(--tgm-soft)}.tgm-workspace-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:18px;align-items:start}
.tgm-workspace-grid.is-skills-only{grid-template-columns:minmax(0,1fr)}
.tgm-checklist{display:grid;gap:10px;margin-top:16px}.tgm-skill-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--tgm-line);border-radius:12px;background:#fff}.tgm-skill-row.is-done{border-color:#bdebd8;background:#f3fcf8}.tgm-skill-row.is-reopened{border-color:#f2c9a4;background:#fff9ee}.tgm-skill-check{width:19px;height:19px;accent-color:var(--tgm-purple)}.tgm-skill-text{min-width:0;border:0;background:transparent;color:var(--tgm-ink);outline:0}.tgm-skill-text:not([readonly]){border-bottom:1px dashed #cfc4df;padding:5px}.tgm-skill-state,.tgm-subtopic-score{padding:6px 9px;border-radius:999px;background:#efe7ff;color:#6939d6;font-size:11px;font-weight:850;white-space:nowrap}.tgm-skill-row.is-done .tgm-skill-state,.tgm-subtopic-score.is-pass{background:#def5e9;color:#087e5e}.tgm-skill-row.is-reopened .tgm-skill-state,.tgm-subtopic-score.is-fail{background:#fff0df;color:#b85b20}.tgm-skill-remove{border:0;background:transparent;color:#9c93a9;cursor:pointer;font-size:18px}.tgm-add-skill{margin-top:12px}
.tgm-control-state{display:grid;gap:15px;margin-top:16px;padding:17px;border-radius:14px;background:var(--tgm-warn);border:1px solid #f0dfb2}.tgm-control-state.is-waiting{background:#f2edff;border-color:#dcd0fb}.tgm-control-state.is-passed{background:var(--tgm-mint);border-color:#bfe8d8}.tgm-control-state.is-attention{background:#fff0e4;border-color:#f3c8a7}.tgm-control-state b{font-size:16px}.tgm-control-state p{margin:6px 0 0;color:#665d76;line-height:1.45}.tgm-control-state .tgm-button{width:100%}.tgm-role-note{display:block;padding:9px 12px;border-radius:10px;background:#fff;color:#6d637d;font-weight:700;text-align:center}.tgm-control-hint{display:block;margin-top:10px;color:var(--tgm-muted);line-height:1.4}.tgm-control-result{display:grid;gap:10px;margin-top:14px}.tgm-control-result span{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;background:var(--tgm-soft)}.tgm-control-result small{color:var(--tgm-muted)}.tgm-control-result b{text-align:right}.tgm-workspace-actions{display:flex;justify-content:flex-end;margin-top:14px}.tgm-empty{padding:34px;border:1px dashed #d7cce6;border-radius:16px;color:var(--tgm-muted);text-align:center;background:#fcfbfe}
@media(max-width:1050px){.tgm-instruction-steps{grid-template-columns:1fr 1fr;gap:14px}.tgm-instruction-steps>span{border-right:0;padding:4px}.tgm-workspace-grid{grid-template-columns:1fr}.tgm-gap-item{grid-template-columns:120px minmax(0,1fr) 60px 24px}.tgm-focus-grid{grid-template-columns:1fr}}
@media(max-width:700px){.tgm-card{padding:16px;border-radius:16px}.tgm-summary{grid-template-columns:1fr}.tgm-summary>span{min-height:86px}.tgm-instruction-head,.tgm-topics-head{align-items:flex-start;flex-direction:column}.tgm-instruction-head>div{display:grid;gap:5px}.tgm-instruction-steps{grid-template-columns:1fr}.tgm-toolbar{grid-template-columns:1fr}.tgm-gap-item{grid-template-columns:1fr 48px 22px;gap:9px;padding:17px 16px 23px}.tgm-status-chip{grid-column:1/-1}.tgm-topic-copy small{white-space:normal}.tgm-gap-item>strong{grid-column:2;grid-row:2}.tgm-list-arrow{grid-column:3;grid-row:2}.tgm-list-bar{left:16px;right:16px}.tgm-workspace{padding:16px}.tgm-workspace-head{grid-template-columns:1fr}.tgm-workspace-progress{text-align:left}.tgm-skill-row{grid-template-columns:24px minmax(0,1fr) auto}.tgm-skill-state{grid-column:2}.tgm-skill-remove{grid-column:3;grid-row:1}.tgm-subtopic-score{grid-column:3;grid-row:2}}

/* Full-width topic map agreed for tutoring plans. */
.tgm-card{padding:24px 28px;border-radius:18px}.tgm-head h4{font-size:28px}.tgm-head p{font-size:15px}.tgm-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 14px}.tgm-summary>span{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr);grid-template-rows:auto auto 6px auto;column-gap:16px;align-content:center;min-height:130px;padding:18px 20px;background:#fff}.tgm-summary .is-work,.tgm-summary .is-closed{background:#fff}.tgm-summary .tgm-summary-icon{grid-column:1;grid-row:1/5;align-self:start;display:grid;width:56px;height:56px;margin:0;place-items:center;border-radius:16px;background:#f0e9ff;color:var(--tgm-purple);font-size:30px;font-style:normal;overflow:visible}.tgm-summary .is-work .tgm-summary-icon{background:#fff2d9;color:#d87800}.tgm-summary .is-closed .tgm-summary-icon{background:#edf9e7;color:#2a8f2f}.tgm-summary small{grid-column:2;grid-row:1;font-size:15px}.tgm-summary b{grid-column:2;grid-row:2;margin:3px 0 4px;font-size:31px;line-height:1}.tgm-summary .is-work b{color:#d87800}.tgm-summary>span>em{grid-column:2;grid-row:3;display:block;width:100%;height:6px;margin:0;border-radius:999px;background:#ebe7f1;overflow:hidden}.tgm-summary>span>em>u{display:block;height:100%;border-radius:inherit;background:var(--tgm-purple);text-decoration:none}.tgm-summary .is-work>em>u{background:#df8700}.tgm-summary .is-closed>em>u{background:#309939}.tgm-summary>span>p{grid-column:2;grid-row:4;margin:7px 0 0;color:var(--tgm-muted);font-size:13px}.tgm-toolbar{grid-template-columns:minmax(260px,1fr) 220px;margin:14px 0}.tgm-topic-list{gap:10px}.tgm-topic-card{border-radius:15px;box-shadow:none}.tgm-topic-card:has(.tgm-gap-item.is-active){border-color:#8050ec;box-shadow:0 0 0 1px #8050ec}.tgm-gap-item{grid-template-columns:44px minmax(0,1fr) 90px 190px 28px;gap:14px;min-height:70px;padding:14px 18px 20px}.tgm-gap-item.is-active{box-shadow:none;background:#fbf9ff}.tgm-topic-number{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#eee6ff;color:#7140df;font-size:15px;font-weight:900}.tgm-gap-item.is-active .tgm-topic-number{background:#6f3ee8;color:#fff}.tgm-topic-copy b{font-size:17px}.tgm-gap-item>strong{justify-self:end;font-size:23px}.tgm-status-chip{justify-self:center;min-width:130px;text-align:center}.tgm-status-chip.is-attention{background:#ffe2e6;color:#d5223f}.tgm-list-arrow{font-size:22px}.tgm-list-bar{left:62px;right:18px;bottom:11px;height:5px}.tgm-workspace{padding:20px 14px 14px;border-top:1px solid var(--tgm-line);background:#fbfaff}.tgm-workspace-grid{grid-template-columns:minmax(0,2.15fr) minmax(300px,1fr);gap:12px}.tgm-skills,.tgm-control{height:100%;margin:0;padding:18px;border-radius:14px}.tgm-plain-heading h6,.tgm-control-heading h6{margin:0;font-size:18px}.tgm-plain-heading p{margin:5px 0 0;color:var(--tgm-muted);font-size:13px}.tgm-checklist{margin-top:16px;gap:8px}.tgm-skill-row{grid-template-columns:26px minmax(0,1fr) auto auto;min-height:52px;padding:9px 12px}.tgm-skill-text{font-size:15px;line-height:1.35}.tgm-skill-state{min-width:92px;text-align:center}.tgm-reopened-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;border:1px solid #f2c790;border-radius:11px;background:#fff4dc;color:#83521e}.tgm-reopened-note>b{display:grid;width:24px;height:24px;place-items:center;border:2px solid #df8b24;border-radius:50%;color:#c66d00}.tgm-control{position:relative}.tgm-control-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.tgm-control-heading>span{padding:6px 9px;border-radius:8px;background:#efe7ff;color:#6939d6;font-size:11px;font-weight:900;text-transform:uppercase}.tgm-control-state{margin-top:16px}.tgm-last-result{display:grid;gap:2px;margin-top:16px;padding:0 2px 10px}.tgm-last-result small,.tgm-last-result span{color:var(--tgm-muted)}.tgm-last-result strong{color:var(--tgm-purple);font-size:48px;line-height:1.05}.tgm-last-result>b{margin-top:6px;color:#df6621}.tgm-control-hint{padding:0 4px}.tgm-empty{padding:30px}
@media(max-width:1050px){.tgm-summary>span{grid-template-columns:48px minmax(0,1fr);padding:16px}.tgm-summary .tgm-summary-icon{width:42px;height:42px;font-size:23px}.tgm-gap-item{grid-template-columns:40px minmax(0,1fr) 72px 150px 24px}.tgm-workspace-grid{grid-template-columns:1fr}}
@media(max-width:700px){.tgm-card{padding:16px}.tgm-head h4{font-size:23px}.tgm-summary{grid-template-columns:1fr}.tgm-summary>span{min-height:105px}.tgm-gap-item{grid-template-columns:36px minmax(0,1fr) 56px 22px;padding:14px 14px 34px}.tgm-topic-number{grid-column:1}.tgm-topic-copy{grid-column:2}.tgm-gap-item>strong{grid-column:3;grid-row:1}.tgm-list-arrow{grid-column:4;grid-row:1}.tgm-status-chip{grid-column:2/5;grid-row:2;justify-self:start;min-width:0}.tgm-list-bar{left:14px;right:14px;bottom:11px}.tgm-workspace{padding:12px}.tgm-skills,.tgm-control{padding:14px}.tgm-skill-row{grid-template-columns:24px minmax(0,1fr) auto}.tgm-skill-state{grid-column:2/4;justify-self:start}.tgm-subtopic-score{grid-column:3;grid-row:1}}
.tgm-last-result>b.is-success{color:var(--tgm-green)}.tgm-control-feedback{margin:6px 0 14px;padding:11px 12px;border-radius:11px;background:#fff4e8;color:#8c5627;line-height:1.4}.tgm-control>.tgm-button{width:100%;margin-top:6px}
.tgm-skill-text-input{width:100%;min-width:0;padding:8px 10px!important;border:1px solid #cabbea!important;border-radius:9px;background:#fff!important}.tgm-add-skill{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:9px 13px;border:1px solid #8050ec;border-radius:10px;background:#fff;color:#6734dc;font-weight:800;cursor:pointer}.tgm-add-skill:hover{background:#f7f2ff}.tgm-add-skill>span{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;background:#eee5ff;font-size:18px;line-height:1}.tgm-skill-row.is-draft{grid-template-columns:26px minmax(0,1fr) auto 30px;border-style:dashed;background:#fbf9ff}.tgm-skill-row.is-draft .tgm-skill-remove{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:#f2edf7;color:#786e87}.tgm-skill-row.is-draft .tgm-skill-remove:hover{background:#ffe8ec;color:#c83851}
@media(max-width:700px){.tgm-skill-row.is-draft{grid-template-columns:24px minmax(0,1fr) 30px}.tgm-skill-row.is-draft .tgm-skill-state{grid-column:2;grid-row:2}.tgm-skill-row.is-draft .tgm-skill-remove{grid-column:3;grid-row:1}}
