/* Generated from classroom-source.css: viewport + actual-container layout. */
.lfc-root{--ink:#143b38;--muted:#637873;--paper:#f3f5ee;--line:#dce3d9;--lime:#d8f77c;--green:#235e52;--orange:#c46738;--red:#a34646;font:16px/1.65 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);width:100%;min-width:0;container-type:inline-size;color-scheme:light;box-sizing:border-box;max-width:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.lfc-root *{box-sizing:border-box}.lfc-root h1,.lfc-root h2,.lfc-root h3,.lfc-root h4,.lfc-root p{margin:0;padding:0}
.lfc-root p{font-size:inherit;line-height:inherit}
.lfc-root input:not([type=range]),.lfc-root select,.lfc-root textarea{font-size:16px}.lfc-root h1{font-size:clamp(32px,4vw,58px);line-height:1.15;letter-spacing:-2px;color:inherit}.lfc-root h2{font-size:clamp(24px,2.7vw,36px);line-height:1.3;letter-spacing:-.7px;color:inherit}.lfc-root h3{font-size:20px;line-height:1.4;color:inherit}.lfc-root h4{font-size:17px;color:inherit}.lfc-root button,.lfc-root input,.lfc-root select,.lfc-root textarea{font:inherit;line-height:1.5;letter-spacing:normal}.lfc-root button{cursor:pointer;border-radius:12px;border:1px solid var(--line);padding:10px 17px;background:#fff;color:var(--ink);font-weight:650;box-shadow:none;text-transform:none;transition:background .18s,transform .18s;min-height:44px}.lfc-root button:hover:not(:disabled){background:#edf2df;transform:translateY(-1px)}.lfc-root button:disabled{opacity:.46;cursor:not-allowed;transform:none}.lfc-root button:focus-visible,.lfc-root input:focus-visible,.lfc-root select:focus-visible,.lfc-root textarea:focus-visible,.lfc-root summary:focus-visible{outline:3px solid #5597d0;outline-offset:3px}.lfc-root .primary{background:var(--ink);border-color:var(--ink);color:#fff}.lfc-root .primary:hover:not(:disabled){background:#276252}.lfc-root .lime{background:var(--lime);color:var(--ink);border-color:transparent}.lfc-root .ghost{background:transparent;border-color:currentColor;color:inherit}.lfc-root .small{font-size:13px;padding:7px 12px;min-height:36px}.lfc-root label{display:block;font-size:14px;font-weight:600}.lfc-root input:not([type=range]),.lfc-root select,.lfc-root textarea{width:100%;background:#fff;color:var(--ink);border:1px solid #bdcec4;border-radius:10px;padding:11px 12px;margin-top:5px;min-height:46px;box-shadow:none}.lfc-root input[type=range]{width:100%;accent-color:var(--green)}.lfc-root input[type=number]{font-variant-numeric:tabular-nums}.lfc-root textarea{resize:vertical}.lfc-root a{color:var(--green);text-underline-offset:3px}.lfc-root .app{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;min-height:740px;position:relative;width:100%}.lfc-root:fullscreen{overflow:auto;background:var(--paper);padding:12px}.lfc-root:fullscreen .app{border:0}.lfc-root .topbar{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:20px 32px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}.lfc-root .brand{display:flex;align-items:center;gap:12px}.lfc-root .brand-mark{width:38px;height:38px;border-radius:11px;background:var(--ink);color:var(--lime);display:grid;place-items:center;font-size:24px}.lfc-root .brand-title{font-size:20px;font-weight:800;letter-spacing:1px}.lfc-root .eyebrow{font:700 11px/1.5 ui-monospace,SFMono-Regular,monospace;letter-spacing:2px;text-transform:uppercase}.lfc-root .muted{color:var(--muted)}.lfc-root .toolbar,.lfc-root .row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lfc-root .between{justify-content:space-between}.lfc-root .pill{display:inline-flex;gap:6px;align-items:center;font-size:12px;font-weight:600;border:1px solid var(--line);border-radius:100px;padding:4px 11px;white-space:nowrap;background:#fff}.lfc-root .pill.green{background:#e6efdc;border-color:#ceddbd}.lfc-root .pill.gold{background:#fff0ca;border-color:#f1d18e;color:#895618}.lfc-root .pill.orange{background:#fbeadd;border-color:#e8c6a9;color:#864b29}.lfc-root .hero{display:grid;grid-template-columns:1.15fr 1fr;gap:32px;padding:48px;background:var(--ink);color:#fff;position:relative}.lfc-root .hero .muted{color:#b9cec6}.lfc-root .hero .eyebrow{color:var(--lime);margin-bottom:22px}.lfc-root .hero p{max-width:550px;margin-top:20px}.lfc-root .hero .hero-visual{align-self:center}.lfc-root .intro-grid{display:grid;grid-template-columns:1fr 440px;gap:32px;padding:36px}.lfc-root .stack{display:grid;gap:18px;align-content:start}.lfc-root .card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;min-width:0}.lfc-root .card.tinted{background:#eaf0df}.lfc-root .card.dark{background:var(--ink);color:#fff}.lfc-root .card.dark .muted{color:#b6cac2}.lfc-root .card p+p{margin-top:10px}.lfc-root .card header{margin-bottom:18px}.lfc-root .body{padding:28px 32px 36px}.lfc-root .navigator{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:20px 32px 0}.lfc-root .nav-step{text-align:left;display:flex;gap:12px;align-items:center;background:transparent;border:1px solid var(--line);padding:14px}.lfc-root .nav-step.active{background:var(--ink);border-color:var(--ink);color:#fff}.lfc-root .nav-step.done{border-color:#96b784}.lfc-root .nav-num{font:600 17px ui-monospace,monospace;width:32px;height:32px;border:1px solid currentColor;opacity:.75;border-radius:50%;display:grid;place-items:center;flex:none}.lfc-root .nav-step small{display:block;font-size:11px;font-weight:400;opacity:.75}.lfc-root .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}.lfc-root .section-head .eyebrow{color:var(--green);margin-bottom:7px}.lfc-root .section-head p{margin-top:9px}.lfc-root .layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:22px}.lfc-root .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lfc-root .role-card{position:relative;overflow:hidden;border:1px solid #b5c8a7;background:linear-gradient(130deg,#e8f0d7,#f5f7ef);border-radius:16px;padding:25px;min-height:190px}.lfc-root .role-card .stamp{position:absolute;right:18px;top:15px;color:#b2c9a7;font:700 44px ui-monospace,monospace}.lfc-root .role-card h3{padding-right:55px;margin:12px 0}.lfc-root .role-card p{font-size:17px;position:relative}.lfc-root .role-back{display:grid;place-items:center;text-align:center;min-height:180px;border:1px dashed #77926c;border-radius:15px;background:repeating-linear-gradient(45deg,#eaf0df,#eaf0df 12px,#e3ebd8 12px,#e3ebd8 13px)}.lfc-root .role-back button{margin-top:15px}.lfc-root .roster{display:flex;gap:12px;flex-wrap:wrap}.lfc-root .person{display:flex;align-items:center;gap:9px;padding:9px 12px;background:#f4f6ee;border-radius:12px;min-width:120px}.lfc-root .avatar{width:34px;height:34px;border-radius:50%;background:#dce9c6;display:grid;place-items:center;font-weight:750}.lfc-root .person small{display:block;font-size:11px;color:var(--muted)}.lfc-root .callout{padding:15px 18px;border-left:3px solid #7a9b62;background:#edf2e5;border-radius:0 12px 12px 0;font-size:14px}.lfc-root .callout.warn{background:#fff0dc;border-color:#cc9250;color:#77512c}.lfc-root .questions{display:grid;gap:18px}.lfc-root .question{padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.lfc-root .question h4{margin-bottom:14px;font-weight:650}.lfc-root .options{display:grid;gap:8px}.lfc-root .option{text-align:left;display:flex;align-items:center;gap:12px;font-size:15px;font-weight:450;border-radius:10px;line-height:1.6;padding:11px 14px}.lfc-root .option b{border:1px solid #ccd7c8;border-radius:7px;width:26px;height:26px;font:600 12px/26px ui-monospace,monospace;text-align:center;flex:none}.lfc-root .option.selected{border:2px solid var(--green);background:#edf5df;padding:10px 13px}.lfc-root .feedback{display:grid;gap:12px;margin-top:16px}.lfc-root .feedback-item{padding:14px 16px;border-radius:12px;background:#eef4e3;font-size:14px;border-left:3px solid #809e59}.lfc-root .feedback-item.miss{background:#fbefe2;border-color:#ce9974}.lfc-root .footer{padding:16px 32px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.lfc-root .timeline-controls{display:flex;justify-content:space-between;gap:12px;margin:16px 0;align-items:center;flex-wrap:wrap}.lfc-root .time-node{flex:1;min-width:100px}.lfc-root .time-node.active{background:var(--ink);color:#fff;border-color:var(--ink)}.lfc-root .family-canvas{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;overflow:auto}.lfc-root .pedigree{display:block;width:100%;min-width:800px;height:auto}.lfc-root .pedigree text{font-family:system-ui,"Microsoft YaHei",sans-serif;fill:var(--ink);font-size:13px}.lfc-root .pedigree .label2{fill:var(--muted);font-size:11px}.lfc-root .pedigree .line{stroke:#9baba2;stroke-width:2;fill:none}.lfc-root .pedigree .person-shape{stroke:var(--ink);stroke-width:2;fill:#fff;transition:fill .6s}.lfc-root .pedigree .affected{fill:var(--ink)}.lfc-root .pedigree .hypothetical{fill:#d8944e;stroke:#b36b2d}.lfc-root .pedigree .unknown{fill:#f1f1ed;stroke-dasharray:3 2}.lfc-root .legend{font-size:12px;display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);padding:12px 0 0}.lfc-root .legend i{width:11px;height:11px;border:1px solid var(--ink);display:inline-block;margin-right:4px}.lfc-root .legend i.dark{background:var(--ink)}.lfc-root .legend i.orange{background:#d8944e}.lfc-root .time-big{font:600 68px/1 ui-monospace,monospace;letter-spacing:-4px;margin:15px 0}.lfc-root .timeline-ledger{display:grid;gap:8px;font-size:13px;margin-top:15px}.lfc-root .ledger-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;gap:8px}.lfc-root .shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lfc-root .test-card{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px}.lfc-root .test-card p{font-size:14px;flex:1}.lfc-root .test-card.bought{background:#edf2e4;border-color:#aec098}.lfc-root .test-card .test-icon{font:500 25px ui-monospace,monospace;color:#8caa83}.lfc-root .balance{font:650 48px/1.1 ui-monospace,monospace;letter-spacing:-2px}.lfc-root .receipt{font-size:13px;border-top:1px solid #bdcdb2;padding-top:12px}.lfc-root .receipt strong{display:block;margin-bottom:5px}.lfc-root .bet-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.lfc-root .model-card{padding:18px 15px;background:#fff;border:1px solid var(--line);border-radius:16px;text-align:center}.lfc-root .model-code{font:600 29px ui-monospace,monospace;margin-bottom:4px}.lfc-root .model-card label{font-size:12px}.lfc-root .model-card .factor{font:500 15px ui-monospace,monospace;color:var(--muted);margin:8px 0}.lfc-root .model-card input[type=number]{text-align:center;font-size:23px;font-weight:650}.lfc-root .allocation-track{height:14px;display:flex;overflow:hidden;border-radius:20px;background:#dce4d4;margin:20px 0}.lfc-root .allocation-track i{height:100%;transition:width .2s}.lfc-root .calc{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;padding:24px;background:var(--ink);color:#fff;border-radius:18px;margin-bottom:20px}.lfc-root .calc .muted{color:#bfcec6}.lfc-root .calc strong{font:600 38px ui-monospace,monospace}.lfc-root .note-list{display:grid;gap:10px;max-height:250px;overflow:auto;font-size:13px;margin-bottom:12px}.lfc-root .note-line{background:#f4f6ee;border-radius:10px;padding:10px}.lfc-root .note-line b{display:block;font-size:11px}.lfc-root .error{background:#ffebdf;color:#7e341d;border:1px solid #e2b99f;border-radius:12px;padding:12px 17px;position:sticky;top:8px;z-index:30;margin:12px 20px}.lfc-root .toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);z-index:99999;background:var(--ink);color:#fff;border:1px solid var(--lime);border-radius:14px;padding:14px 24px;box-shadow:0 8px 25px #0003;max-width:min(90vw,600px)}.lfc-root .demo-bar{background:#dce9c8;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px}.lfc-root .teacher-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.lfc-root .metric{padding:19px 24px;background:#fff;border:1px solid var(--line);border-radius:16px}.lfc-root .metric strong{font:650 34px ui-monospace,monospace;display:block;margin-top:8px}.lfc-root .wall-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.lfc-root .team-tile{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;position:relative;overflow:hidden}.lfc-root .team-tile.final{background:var(--ink);color:#fff;border-color:var(--ink)}.lfc-root .team-tile.final .muted{color:#bcd0c5}.lfc-root .team-tile .team-code{font:600 22px ui-monospace,monospace}.lfc-root .team-score{font:650 64px/1.2 ui-monospace,monospace;letter-spacing:-3px;margin:18px 0 4px}.lfc-root .stage-dots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:22px 0 13px;font-size:11px}.lfc-root .stage-dots div{border-top:5px solid #dce3d8;padding-top:7px}.lfc-root .stage-dots div.filled{border-color:#9ebb6a}.lfc-root .team-tile.final .stage-dots div.filled{border-color:var(--lime)}.lfc-root .teacher-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line);margin-bottom:24px}.lfc-root .teacher-controls label{flex:1;min-width:160px}.lfc-root .qr-panel{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:center;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;margin-bottom:24px}.lfc-root .qr-panel svg{width:180px;height:180px;display:block}.lfc-root .detail-grid{display:grid;gap:12px}.lfc-root .detail-member{padding:20px;background:#fff;border-radius:14px;border:1px solid var(--line)}.lfc-root details{border:1px solid var(--line);border-radius:14px;padding:15px 18px;background:#fff}.lfc-root summary{cursor:pointer;font-weight:650}.lfc-root details>div{margin-top:15px}.lfc-root .result-hero{background:var(--ink);color:#fff;border-radius:22px;padding:38px;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.lfc-root .result-hero .muted{color:#b6cbbf}.lfc-root .result-number{font:600 88px/1 ui-monospace,monospace;letter-spacing:-5px;margin:18px 0;color:var(--lime)}.lfc-root .completion-mark{font-size:48px;color:var(--lime)}.lfc-root .spacing{margin-top:20px}.lfc-root .tiny{font-size:12px}.lfc-root .full{width:100%}.lfc-root .inline-source{font-size:12px;color:var(--muted);padding:12px 0}.lfc-root .hero-orbit{width:100%;max-height:240px}.lfc-root .empty{padding:40px;text-align:center;color:var(--muted)}.lfc-root .project-mode .teacher-controls,.lfc-root .project-mode .qr-panel,.lfc-root .project-mode .private-only{display:none}.lfc-root .project-mode .team-tile button{display:none}.lfc-root .project-mode .wall-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.lfc-root .project-mode .team-score{font-size:88px}.lfc-root .project-mode .team-tile{min-height:320px}
@media (min-width:1500px){.lfc-root:not([data-lfc-sized]) .body{padding:38px 48px}.lfc-root:not([data-lfc-sized]) .layout{grid-template-columns:minmax(0,1fr) 370px}.lfc-root:not([data-lfc-sized]) .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lfc-root:not([data-lfc-sized]) .card{padding:28px}}
.lfc-wide .body{padding:38px 48px}.lfc-wide .layout{grid-template-columns:minmax(0,1fr) 370px}.lfc-wide .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lfc-wide .card{padding:28px}

@media (max-width:1000px){.lfc-root:not([data-lfc-sized]) .intro-grid{grid-template-columns:1fr 370px;padding:24px}.lfc-root:not([data-lfc-sized]) .layout{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .layout>.stack:last-child{grid-template-columns:1fr 1fr}.lfc-root:not([data-lfc-sized]) .hero{padding:32px;gap:20px}.lfc-root:not([data-lfc-sized]) .navigator{padding:16px 20px 0;gap:6px}.lfc-root:not([data-lfc-sized]) .nav-step{padding:10px;gap:8px}.lfc-root:not([data-lfc-sized]) .nav-step small{display:none}.lfc-root:not([data-lfc-sized]) .nav-step{font-size:13px}.lfc-root:not([data-lfc-sized]) .body{padding:24px}.lfc-root:not([data-lfc-sized]) .bet-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.lfc-root:not([data-lfc-sized]) .model-card{padding:15px 10px}}
.lfc-medium .intro-grid{grid-template-columns:1fr 370px;padding:24px}.lfc-medium .layout{grid-template-columns:1fr}.lfc-medium .layout>.stack:last-child{grid-template-columns:1fr 1fr}.lfc-medium .hero{padding:32px;gap:20px}.lfc-medium .navigator{padding:16px 20px 0;gap:6px}.lfc-medium .nav-step{padding:10px;gap:8px}.lfc-medium .nav-step small{display:none}.lfc-medium .nav-step{font-size:13px}.lfc-medium .body{padding:24px}.lfc-medium .bet-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.lfc-medium .model-card{padding:15px 10px}

@media (max-width:720px){.lfc-root:not([data-lfc-sized]) .topbar{padding:15px 18px;gap:10px}.lfc-root:not([data-lfc-sized]) .brand-title{font-size:18px}.lfc-root:not([data-lfc-sized]) .topbar .eyebrow{font-size:9px}.lfc-root:not([data-lfc-sized]) .intro-grid,.lfc-root:not([data-lfc-sized]) .hero,.lfc-root:not([data-lfc-sized]) .grid2,.lfc-root:not([data-lfc-sized]) .result-hero{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .hero{padding:28px}.lfc-root:not([data-lfc-sized]) .hero-visual{display:none}.lfc-root:not([data-lfc-sized]) .body{padding:20px 16px}.lfc-root:not([data-lfc-sized]) .navigator{padding:14px 16px 0;grid-template-columns:1fr 1fr}.lfc-root:not([data-lfc-sized]) .layout>.stack:last-child{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .bet-grid{grid-template-columns:repeat(2,1fr)}.lfc-root:not([data-lfc-sized]) .bet-grid>.model-card:last-child{grid-column:span 2}.lfc-root:not([data-lfc-sized]) .shop-grid{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .teacher-metrics{grid-template-columns:1fr 1fr;gap:10px}.lfc-root:not([data-lfc-sized]) .metric{padding:15px}.lfc-root:not([data-lfc-sized]) .qr-panel{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .wall-grid,.lfc-root:not([data-lfc-sized]) .project-mode .wall-grid{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .card{padding:20px}.lfc-root:not([data-lfc-sized]) .section-head h2{font-size:26px}.lfc-root:not([data-lfc-sized]) .footer{padding:15px 18px}.lfc-root:not([data-lfc-sized]) .app{border-radius:16px}.lfc-root:not([data-lfc-sized]) .role-card{padding:20px}}
.lfc-small .topbar{padding:15px 18px;gap:10px}.lfc-small .brand-title{font-size:18px}.lfc-small .topbar .eyebrow{font-size:9px}.lfc-small .intro-grid,.lfc-small .hero,.lfc-small .grid2,.lfc-small .result-hero{grid-template-columns:1fr}.lfc-small .hero{padding:28px}.lfc-small .hero-visual{display:none}.lfc-small .body{padding:20px 16px}.lfc-small .navigator{padding:14px 16px 0;grid-template-columns:1fr 1fr}.lfc-small .layout>.stack:last-child{grid-template-columns:1fr}.lfc-small .bet-grid{grid-template-columns:repeat(2,1fr)}.lfc-small .bet-grid>.model-card:last-child{grid-column:span 2}.lfc-small .shop-grid{grid-template-columns:1fr}.lfc-small .teacher-metrics{grid-template-columns:1fr 1fr;gap:10px}.lfc-small .metric{padding:15px}.lfc-small .qr-panel{grid-template-columns:1fr}.lfc-small .wall-grid,.lfc-small .project-mode .wall-grid{grid-template-columns:1fr}.lfc-small .card{padding:20px}.lfc-small .section-head h2{font-size:26px}.lfc-small .footer{padding:15px 18px}.lfc-small .app{border-radius:16px}.lfc-small .role-card{padding:20px}

@media(prefers-reduced-motion:reduce){.lfc-root *{transition:none!important;animation:none!important}}
.lfc-root .pill.green{color:var(--ink)}
.lfc-root .card{margin:0;max-width:none;min-width:0;box-shadow:none}.lfc-root .row{margin:0}
.lfc-root .pedigree text{font-size:17px}.lfc-root .pedigree .label2{font-size:14px}
.lfc-root .eyebrow,.lfc-root .team-code,.lfc-root .time-big{font-family:ui-monospace,"Microsoft YaHei",sans-serif}
.lfc-root .qr-panel{grid-template-columns:320px minmax(0,1fr)}.lfc-root .qr-panel svg{width:320px;height:320px;max-width:100%}
@media (max-width:720px){.lfc-root:not([data-lfc-sized]) .qr-panel{grid-template-columns:1fr}}
.lfc-small .qr-panel{grid-template-columns:1fr}

.lfc-root .relay-panel{padding:26px;border:1px solid #b8c9ae;border-radius:20px;background:#fff;display:grid;gap:20px}.lfc-root .relay-panel.your-turn{border:2px solid #527841;box-shadow:0 4px 0 #d9e7c4;background:linear-gradient(140deg,#f4f9e8,#fff 65%)}.lfc-root .relay-route{display:grid;grid-template-columns:minmax(0,1fr) 25px minmax(0,1fr);gap:12px;align-items:center}.lfc-root .relay-route>div{padding:14px;border:1px solid var(--line);border-radius:14px;background:#f3f5ee}.lfc-root .relay-route .current{background:#e5f0cf;border-color:#a3b880}.lfc-root .relay-route small{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.lfc-root .relay-route b{font-size:16px;overflow-wrap:anywhere}.lfc-root .relay-pause{padding:25px 0;display:grid;gap:12px}.lfc-root .pulse-dot{width:12px;height:12px;border-radius:50%;background:#6f964f;box-shadow:0 0 0 7px #e9f0df}.lfc-root .wait-banner{padding:22px;background:#e8efdc;border:1px solid #b7cda2;border-radius:18px;display:flex;gap:20px;align-items:center}.lfc-root .wait-banner .completion-mark{color:var(--green);font-size:34px}.lfc-root blockquote{margin:14px 0;border-left:3px solid #b6c997;padding:14px 18px;background:#f0f4e6;border-radius:0 12px 12px 0;font-size:16px;color:var(--ink);overflow-wrap:anywhere}.lfc-root .method-note{border:1px dashed #99b488;background:#f2f6e9;border-radius:12px;padding:16px;font-size:14px}.lfc-root .person.is-me{outline:2px solid #91ac76}.lfc-root .team-phase{font-size:30px;font-weight:750;line-height:1.3;margin:24px 0 12px;letter-spacing:-1px}.lfc-root .team-evidence{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px}.lfc-root .demo-bar select{width:auto;max-width:260px;font-size:12px;min-height:36px;margin:0;padding:6px 10px}.lfc-root .layout>aside{align-self:start}.lfc-root h2:focus{outline:none}.lfc-root .footer span,.lfc-root .note-line,.lfc-root .card p{overflow-wrap:anywhere}.lfc-root .project-mode .team-phase{font-size:38px}.lfc-root .project-mode .team-evidence{font-size:15px}
@media (max-width:720px){.lfc-root:not([data-lfc-sized]) .relay-panel{padding:18px}.lfc-root:not([data-lfc-sized]) .relay-route{gap:6px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)}.lfc-root:not([data-lfc-sized]) .relay-route>div{padding:10px}.lfc-root:not([data-lfc-sized]) .relay-route b{font-size:14px}.lfc-root:not([data-lfc-sized]) .wait-banner{align-items:flex-start}.lfc-root:not([data-lfc-sized]) .demo-bar .row{width:100%}}
.lfc-small .relay-panel{padding:18px}.lfc-small .relay-route{gap:6px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)}.lfc-small .relay-route>div{padding:10px}.lfc-small .relay-route b{font-size:14px}.lfc-small .wait-banner{align-items:flex-start}.lfc-small .demo-bar .row{width:100%}

.lfc-root .eyebrow,.lfc-root .team-code,.lfc-root .time-big,.lfc-root .balance{font-family:ui-monospace,"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif}.lfc-root .nav-step{border-radius:12px}
.lfc-root .app{min-height:0}.lfc-root .student-focus{padding-top:22px}.lfc-root .focus-nav{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:17px 32px;border-bottom:1px solid var(--line);font-size:14px;color:#77867e}.lfc-root .focus-nav span{padding:4px 0}.lfc-root .focus-nav .active{font-weight:750;color:var(--ink);border-bottom:3px solid var(--green)}.lfc-root .focus-nav .done{color:#426648}.lfc-root .focus-context{display:flex;gap:13px;color:var(--muted);font-size:13px;margin-bottom:18px;flex-wrap:wrap}.lfc-root .focus-context span:last-child{margin-left:auto}.lfc-root .focus-stack{display:grid;gap:18px}.lfc-root .focus-task{padding:30px 36px;gap:20px}.lfc-root .focus-task h2{font-size:clamp(24px,2.7vw,34px)}.lfc-root .focus-task>.pill{justify-self:start}.lfc-root .focus-task .role-card{min-height:0;padding:24px 28px}.lfc-root .focus-task .role-card h3{margin:0 0 12px;padding:0}.lfc-root .focus-task .role-card p,.lfc-root .focus-prompt{font-size:19px;line-height:1.9}.lfc-root .focus-task .primary{justify-self:start;padding:12px 24px;min-width:200px}.lfc-root .focus-task>.small{justify-self:start}.lfc-root .quiet-drawer{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:15px 0;font-size:14px}.lfc-root .quiet-drawer>summary{color:var(--muted);font-weight:500}.lfc-root .focus-quiz{gap:20px}.lfc-root .focus-quiz .question{padding:28px 32px}.lfc-root .focus-quiz h3{font-size:24px}.lfc-root .focus-quiz .option{font-size:18px;padding:15px 20px;min-height:62px}.lfc-root .focus-quiz .option.selected{padding:14px 19px}.lfc-root .test-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lfc-root .test-choice{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:16px;padding:15px 18px}.lfc-root .test-choice small{white-space:nowrap;color:var(--muted);font-weight:400}.lfc-root .time-observation{display:flex;align-items:center;gap:30px;background:#f3f6ec;border-radius:16px;margin:18px 0 24px;padding:24px}.lfc-root .time-observation svg{width:130px;flex:none}.lfc-root .time-observation .time-big{font-size:60px;letter-spacing:-3px;margin:0 0 10px}.lfc-root .time-observation .time-big span{font-size:22px;margin-left:10px;letter-spacing:0}.lfc-root .time-observation p{margin-top:10px}.lfc-root .focus-time{padding:28px 34px}.lfc-root .focus-time .primary{min-width:240px}.lfc-root .focus-task .relay-pause{padding:20px 0 32px}.lfc-root .focus-task .bet-grid{margin-top:10px}.lfc-root .focus-task .model-card{padding:15px}.lfc-root .focus-task .method-note{font-size:16px}
@media (max-width:720px){.lfc-root:not([data-lfc-sized]) .focus-nav{gap:6px 16px;padding:12px 18px;font-size:12px}.lfc-root:not([data-lfc-sized]) .focus-context{gap:8px}.lfc-root:not([data-lfc-sized]) .focus-task,.lfc-root:not([data-lfc-sized]) .focus-time{padding:22px 20px}.lfc-root:not([data-lfc-sized]) .focus-task .role-card{padding:20px}.lfc-root:not([data-lfc-sized]) .focus-task .role-card p{font-size:17px}.lfc-root:not([data-lfc-sized]) .focus-quiz .question{padding:22px 20px}.lfc-root:not([data-lfc-sized]) .focus-quiz h3{font-size:21px}.lfc-root:not([data-lfc-sized]) .focus-quiz .option{font-size:16px;padding:14px}.lfc-root:not([data-lfc-sized]) .focus-quiz .option.selected{padding:13px}.lfc-root:not([data-lfc-sized]) .test-choice-grid{grid-template-columns:1fr}.lfc-root:not([data-lfc-sized]) .time-observation{gap:10px;padding:18px 12px}.lfc-root:not([data-lfc-sized]) .time-observation svg{width:80px}.lfc-root:not([data-lfc-sized]) .time-observation .time-big{font-size:42px}.lfc-root:not([data-lfc-sized]) .time-observation h3{font-size:17px}.lfc-root:not([data-lfc-sized]) .time-observation p{font-size:13px}}
.lfc-small .focus-nav{gap:6px 16px;padding:12px 18px;font-size:12px}.lfc-small .focus-context{gap:8px}.lfc-small .focus-task,.lfc-small .focus-time{padding:22px 20px}.lfc-small .focus-task .role-card{padding:20px}.lfc-small .focus-task .role-card p{font-size:17px}.lfc-small .focus-quiz .question{padding:22px 20px}.lfc-small .focus-quiz h3{font-size:21px}.lfc-small .focus-quiz .option{font-size:16px;padding:14px}.lfc-small .focus-quiz .option.selected{padding:13px}.lfc-small .test-choice-grid{grid-template-columns:1fr}.lfc-small .time-observation{gap:10px;padding:18px 12px}.lfc-small .time-observation svg{width:80px}.lfc-small .time-observation .time-big{font-size:42px}.lfc-small .time-observation h3{font-size:17px}.lfc-small .time-observation p{font-size:13px}

.lfc-root .focus-join{padding:10px 0;grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:50px;align-items:center}.lfc-root .focus-join .pill{justify-self:start}.lfc-root .focus-join h1{font-size:clamp(32px,4vw,48px)}
@media (max-width:720px){.lfc-root:not([data-lfc-sized]) .focus-join{grid-template-columns:1fr;gap:24px}.lfc-root:not([data-lfc-sized]) .focus-join h1{font-size:32px}}
.lfc-small .focus-join{grid-template-columns:1fr;gap:24px}.lfc-small .focus-join h1{font-size:32px}


/* v1.2.1: compact entry, fluid controls and theme-safe text. */
.lfc-root .focus-join{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);gap:clamp(24px,4vw,64px)}
.lfc-root .focus-join>*{min-width:0}
.lfc-root .join-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lfc-root .join-fields label{min-width:0}
.lfc-root .join-card{gap:16px}
.lfc-root .join-card h2{font-size:26px}
.lfc-root .join-card .join-instruction{font-size:14px;line-height:1.6}
.lfc-root .join-card .join-privacy{font-size:12px;line-height:1.6}
.lfc-root .join-card p+p{margin:0}
.lfc-root .join-recovery{padding:10px 12px;font-size:13px}
.lfc-root .join-fields input,.lfc-root .join-fields select{height:46px;min-width:0;max-width:100%}
.lfc-root .brand{min-width:0}
.lfc-root .brand-mark{flex:none}
.lfc-root .focus-task .primary,.lfc-root .focus-time .primary{min-width:min(200px,100%);max-width:100%;white-space:normal}
@media (max-width:720px){
  .lfc-root:not([data-lfc-sized]) .topbar{padding:12px 16px;gap:8px;flex-wrap:nowrap}
  .lfc-root:not([data-lfc-sized]) .topbar .brand{gap:9px}
  .lfc-root:not([data-lfc-sized]) .topbar .brand-mark{width:32px;height:32px;font-size:21px}
  .lfc-root:not([data-lfc-sized]) .topbar .eyebrow,.lfc-root:not([data-lfc-sized]) .topbar .entry-badge{display:none}
  .lfc-root:not([data-lfc-sized]) .toolbar{gap:5px}
  .lfc-root:not([data-lfc-sized]) .toolbar .pill{padding:3px 7px;font-size:11px}
  .lfc-root:not([data-lfc-sized]) .join-body{padding:14px}
  .lfc-root:not([data-lfc-sized]) .focus-join{grid-template-columns:minmax(0,1fr);gap:0;padding:0}
  .lfc-root:not([data-lfc-sized]) .join-intro{display:none}
  .lfc-root:not([data-lfc-sized]) .join-card{padding:18px;gap:13px}
  .lfc-root:not([data-lfc-sized]) .join-card h2{font-size:24px;letter-spacing:0}
  .lfc-root:not([data-lfc-sized]) .join-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lfc-root:not([data-lfc-sized]) .join-fields label{font-size:13px}
  .lfc-root:not([data-lfc-sized]) .join-fields input,.lfc-root:not([data-lfc-sized]) .join-fields select{padding:9px 10px}
  .lfc-root:not([data-lfc-sized]) .join-card>.primary{min-height:46px}
  .lfc-root:not([data-lfc-sized]) .join-recovery{padding:8px 10px}
  .lfc-root:not([data-lfc-sized]) .focus-task,.lfc-root:not([data-lfc-sized]) .focus-time{padding:18px 16px}
  .lfc-root:not([data-lfc-sized]) .focus-task h2{font-size:24px;overflow-wrap:anywhere}
  .lfc-root:not([data-lfc-sized]) .focus-task .role-card{padding:16px}
  .lfc-root:not([data-lfc-sized]) .focus-task .primary,.lfc-root:not([data-lfc-sized]) .focus-time .primary{width:100%;min-width:0;padding:11px 14px}
  .lfc-root:not([data-lfc-sized]) .focus-prompt{font-size:16px;line-height:1.75}
  .lfc-root:not([data-lfc-sized]) .time-observation{flex-wrap:wrap}
  .lfc-root:not([data-lfc-sized]) .footer{padding:10px 16px}
}

/* v1.8.0 identity and roster controls */
.lfc-root .email-card{max-width:720px;margin:0 auto}.lfc-root .verified-email{border-color:#7ea86d;background:#edf6e8}.lfc-root .identity-admin textarea{width:100%;resize:vertical}.lfc-root .identity-admin small{display:block;margin-top:.45rem;color:var(--muted,#64736e)}.lfc-root .identity-status-line{padding:.65rem .75rem;margin-bottom:.75rem;border-radius:12px;background:#f3f6ee;border:1px solid #d8e1cf}.lfc-root .email-recovery{border-top:1px solid rgba(35,94,82,.16);padding-top:.75rem}.lfc-root .email-card input,.lfc-root .email-recovery input{width:100%}

  .lfc-small .topbar{padding:12px 16px;gap:8px;flex-wrap:nowrap}
  .lfc-small .topbar .brand{gap:9px}
  .lfc-small .topbar .brand-mark{width:32px;height:32px;font-size:21px}
  .lfc-small .topbar .eyebrow,.lfc-small .topbar .entry-badge{display:none}
  .lfc-small .toolbar{gap:5px}
  .lfc-small .toolbar .pill{padding:3px 7px;font-size:11px}
  .lfc-small .join-body{padding:14px}
  .lfc-small .focus-join{grid-template-columns:minmax(0,1fr);gap:0;padding:0}
  .lfc-small .join-intro{display:none}
  .lfc-small .join-card{padding:18px;gap:13px}
  .lfc-small .join-card h2{font-size:24px;letter-spacing:0}
  .lfc-small .join-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lfc-small .join-fields label{font-size:13px}
  .lfc-small .join-fields input,.lfc-small .join-fields select{padding:9px 10px}
  .lfc-small .join-card>.primary{min-height:46px}
  .lfc-small .join-recovery{padding:8px 10px}
  .lfc-small .focus-task,.lfc-small .focus-time{padding:18px 16px}
  .lfc-small .focus-task h2{font-size:24px;overflow-wrap:anywhere}
  .lfc-small .focus-task .role-card{padding:16px}
  .lfc-small .focus-task .primary,.lfc-small .focus-time .primary{width:100%;min-width:0;padding:11px 14px}
  .lfc-small .focus-prompt{font-size:16px;line-height:1.75}
  .lfc-small .time-observation{flex-wrap:wrap}
  .lfc-small .footer{padding:10px 16px}



/* v1.3: the opening stays visible; collaboration has room to happen in parallel. */
.lfc-root .arrival-hero{padding:46px 48px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:radial-gradient(ellipse at 80% 15%,#356c50 0,transparent 52%),#143b38;isolation:isolate}
.lfc-root .arrival-hero h1{font-size:clamp(40px,5vw,70px);letter-spacing:2px}
.lfc-root .arrival-hero .arrival-tagline{font-size:clamp(23px,2.5vw,34px);line-height:1.5;margin-top:18px}
.lfc-root .arrival-hero .hero-visual{display:block;position:relative}
.lfc-root .arrival-hero .hero-orbit{max-height:300px;filter:drop-shadow(0 0 13px #cce59544)}
.lfc-root .arrival-hero .hero-orbit ellipse{transform-box:fill-box;transform-origin:center;animation:lfc-orbit-drift 18s ease-in-out infinite alternate}
.lfc-root .arrival-hero .hero-orbit circle{animation:lfc-glimmer 5s ease-in-out infinite alternate}
.lfc-root .arrival-hero .orbit-caption{font-size:14px;color:#c3d5bd;text-align:center;max-width:none;margin-top:16px}
.lfc-root .arrival-hero .eyebrow{margin-bottom:18px}
.lfc-root .open-join{padding:10px 0;grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:40px;align-items:center}
.lfc-root .arrival-route{gap:22px}
.lfc-root .journey-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lfc-root .journey-strip>div{padding:16px;border:1px solid var(--line);background:#fff;border-radius:14px;display:flex;align-items:center;gap:10px;font-size:14px}
.lfc-root .journey-strip span{font-size:25px;color:#6b8652}
.lfc-root .lobby-crew{padding:30px}
.lfc-root .work-switch{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:0 0 14px;border-bottom:1px solid var(--line)}
.lfc-root .open-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:start}
.lfc-root .clue-desk,.lfc-root .discussion-panel{padding:26px;gap:18px}
.lfc-root .clue-tabs{display:flex;gap:8px;flex-wrap:wrap}
.lfc-root .clue-desk .role-card{min-height:180px;padding:24px}
.lfc-root .clue-desk .role-card h3{padding:0;margin:14px 0}
.lfc-root .clue-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.lfc-root .clue-map>div{background:#edf2e4;padding:10px;border-radius:10px;font-size:13px}
.lfc-root .clue-map small{display:block;color:var(--muted);margin-top:4px}
.lfc-root .clue-sources{display:flex;gap:8px;flex-wrap:wrap;font-size:13px}
.lfc-root .clue-sources span{border:1px solid #b7cba6;padding:6px 9px;border-radius:8px;background:#edf3e3}
.lfc-root .discussion-panel h2{font-size:25px;line-height:1.6}
.lfc-root .discussion-panel .option{font-size:16px}
.lfc-root .time-studio{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}
.lfc-root .time-studio .time-observation{flex-wrap:wrap;padding:15px;gap:12px}
.lfc-root .time-studio .time-observation svg{width:75px}
.lfc-root .time-studio .time-big{font-size:40px}
.lfc-root .time-studio .family-canvas{padding:8px}
.lfc-root .time-studio .timeline-controls{gap:6px}
.lfc-root .time-studio .time-node{font-size:13px;min-width:72px;padding:8px}
@media (max-width:1000px){.lfc-root:not([data-lfc-sized]) .time-studio{grid-template-columns:minmax(0,1fr)}.lfc-root:not([data-lfc-sized]) .time-studio .time-observation{flex-wrap:nowrap}.lfc-root:not([data-lfc-sized]) .open-join{gap:24px}}
.lfc-medium .time-studio{grid-template-columns:minmax(0,1fr)}.lfc-medium .time-studio .time-observation{flex-wrap:nowrap}.lfc-medium .open-join{gap:24px}

@media (max-width:720px){
 .lfc-root:not([data-lfc-sized]) .arrival-hero{padding:27px 24px;grid-template-columns:minmax(0,1fr);gap:12px}
 .lfc-root:not([data-lfc-sized]) .arrival-hero h1{font-size:42px;position:relative;z-index:1}
 .lfc-root:not([data-lfc-sized]) .arrival-hero .arrival-tagline{font-size:23px;position:relative;z-index:1;max-width:240px}
 .lfc-root:not([data-lfc-sized]) .arrival-hero .hero-visual{position:absolute;right:-20px;top:55px;width:200px;opacity:.27;z-index:-1;pointer-events:none}
 .lfc-root:not([data-lfc-sized]) .arrival-hero .orbit-caption{display:none}
 .lfc-root:not([data-lfc-sized]) .arrival-hero .eyebrow{font-size:9px;letter-spacing:1px}
 .lfc-root:not([data-lfc-sized]) .open-join{grid-template-columns:minmax(0,1fr);gap:20px}
 .lfc-root:not([data-lfc-sized]) .arrival-route{display:none}
 .lfc-root:not([data-lfc-sized]) .open-workspace{grid-template-columns:minmax(0,1fr)}
 .lfc-root:not([data-lfc-sized]) .clue-desk,.lfc-root:not([data-lfc-sized]) .discussion-panel{padding:20px}
 .lfc-root:not([data-lfc-sized]) .clue-desk .role-card{min-height:0;padding:20px}
 .lfc-root:not([data-lfc-sized]) .discussion-panel h2{font-size:22px}
 .lfc-root:not([data-lfc-sized]) .discussion-panel .primary{max-width:100%;white-space:normal}
 .lfc-root:not([data-lfc-sized]) .lobby-crew{padding:20px}
 .lfc-root:not([data-lfc-sized]) .time-studio{gap:6px}
 .lfc-root:not([data-lfc-sized]) .work-switch{gap:8px}
}

 .lfc-small .arrival-hero{padding:27px 24px;grid-template-columns:minmax(0,1fr);gap:12px}
 .lfc-small .arrival-hero h1{font-size:42px;position:relative;z-index:1}
 .lfc-small .arrival-hero .arrival-tagline{font-size:23px;position:relative;z-index:1;max-width:240px}
 .lfc-small .arrival-hero .hero-visual{position:absolute;right:-20px;top:55px;width:200px;opacity:.27;z-index:-1;pointer-events:none}
 .lfc-small .arrival-hero .orbit-caption{display:none}
 .lfc-small .arrival-hero .eyebrow{font-size:9px;letter-spacing:1px}
 .lfc-small .open-join{grid-template-columns:minmax(0,1fr);gap:20px}
 .lfc-small .arrival-route{display:none}
 .lfc-small .open-workspace{grid-template-columns:minmax(0,1fr)}
 .lfc-small .clue-desk,.lfc-small .discussion-panel{padding:20px}
 .lfc-small .clue-desk .role-card{min-height:0;padding:20px}
 .lfc-small .discussion-panel h2{font-size:22px}
 .lfc-small .discussion-panel .primary{max-width:100%;white-space:normal}
 .lfc-small .lobby-crew{padding:20px}
 .lfc-small .time-studio{gap:6px}
 .lfc-small .work-switch{gap:8px}


@keyframes lfc-orbit-drift{to{transform:rotate(12deg)}}
@keyframes lfc-glimmer{to{opacity:.65}}

.lfc-root .arrival-hero .pill:not(.gold):not(.green){color:var(--ink)}
/* v1.4: one shared task, then one personal task. */
.lfc-root .simple-activity{max-width:none;padding:clamp(20px,3vw,44px)}
.lfc-root .simple-activity>h2{max-width:32em}
.lfc-root .simple-clues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lfc-root .simple-clues .role-card{padding:24px;margin:0}
.lfc-root .simple-clues .role-card p{margin-top:12px}
.lfc-root .sealed-role{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;min-height:240px;border:1px solid #bfd099;border-radius:18px;background:radial-gradient(ellipse at 65% 20%,#e1efbf,transparent 55%),#f2f6e8}
.lfc-root .sealed-symbol{font-size:60px;color:#326557;line-height:1}
.lfc-root .simple-check{border-top:1px solid #dce3d6;padding-top:22px;margin-top:10px}
.lfc-root .simple-check .row>p{flex:1;min-width:160px}
.lfc-root .crew-checks{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;font-size:13px;color:#788777}
.lfc-root .crew-checks .checked{color:#235e52;font-weight:700}
.lfc-root .simple-tests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lfc-root .simple-test{display:flex;flex-direction:column;gap:12px;align-items:stretch;padding:24px;border:1px solid #d9e2d0;border-radius:16px;background:#f9fbf5;text-align:left;color:var(--ink);min-width:0}
.lfc-root .simple-test .row{align-items:flex-start}
.lfc-root .simple-test b{flex:1;min-width:0;font-size:18px}
.lfc-root button.simple-test:hover:not(:disabled){border-color:#456f48;background:#edf4e2;box-shadow:0 5px 18px #21463812}
.lfc-root .simple-test .pill{flex:none}
.lfc-root .simple-test.purchased{background:#e5efdc}
.lfc-root .simple-activity .bet-grid .model-card{min-width:0}
@media (max-width:720px){
.lfc-root:not([data-lfc-sized]) .simple-clues,.lfc-root:not([data-lfc-sized]) .simple-tests{grid-template-columns:1fr}
.lfc-root:not([data-lfc-sized]) .simple-clues .role-card,.lfc-root:not([data-lfc-sized]) .simple-test{padding:18px}
.lfc-root:not([data-lfc-sized]) .simple-check>.row{align-items:stretch;flex-direction:column}
.lfc-root:not([data-lfc-sized]) .simple-check .row>button{width:100%}
.lfc-root:not([data-lfc-sized]) .simple-check .row>p{min-width:0}
.lfc-root:not([data-lfc-sized]) .sealed-role{min-height:210px;padding:18px;text-align:center}
}

.lfc-small .simple-clues,.lfc-small .simple-tests{grid-template-columns:1fr}
.lfc-small .simple-clues .role-card,.lfc-small .simple-test{padding:18px}
.lfc-small .simple-check>.row{align-items:stretch;flex-direction:column}
.lfc-small .simple-check .row>button{width:100%}
.lfc-small .simple-check .row>p{min-width:0}
.lfc-small .sealed-role{min-height:210px;padding:18px;text-align:center}


.lfc-root .team-code{font-family:inherit;font-variant-numeric:tabular-nums}

/* v1.5: compact recovery, three-level evidence scale and local remedial activity. */
.lfc-root .arrival-hero h1{font-size:clamp(32px,4.1vw,60px);letter-spacing:-.03em;overflow-wrap:anywhere}
.lfc-root .arrival-hero .arrival-tagline{font-size:clamp(16px,1.6vw,20px);line-height:1.85;max-width:560px;color:#dfebdd}
.lfc-root .sync-banner{display:flex;align-items:center;gap:10px;padding:10px 24px;background:#fff1ce;color:#735124;font-size:14px;flex-wrap:wrap}
.lfc-root .sync-banner>span:nth-child(2){flex:1;min-width:160px}.lfc-root .sync-banner button{font-size:13px;padding:6px 12px;min-height:34px;border-color:#ddc788}
.lfc-root .sync-dot{width:9px;height:9px;border-radius:50%;background:#b17a2e;animation:lfc-glimmer 1s ease-in-out infinite alternate;flex:none}
.lfc-root .model-scale{display:grid;gap:12px}.lfc-root .model-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;background:#f7f9f2;border:1px solid var(--line);border-radius:14px}
.lfc-root .model-row>div:first-child{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.lfc-root .model-abbr{font:600 13px ui-monospace,monospace;color:#748774}
.lfc-root .rating-options{display:grid;grid-template-columns:repeat(3,minmax(70px,1fr));gap:8px;flex:none}.lfc-root .rating-options button{min-width:80px;font-size:16px}.lfc-root .rating-options button.selected{background:#143b38;color:#e8f9c3;border-color:#143b38;box-shadow:inset 0 0 0 1px #143b38}
.lfc-root .supply-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff9e6}.lfc-root .supply-entry p{margin-top:5px}.lfc-root .supply-card{background:linear-gradient(140deg,#fff9e5,#f6faee);border-color:#e2d599}
.lfc-root .supply-card .monster{font-size:36px;color:#796294;line-height:1;filter:drop-shadow(3px 4px 0 #dfd3bd)}.lfc-root .coin-gain{font-size:24px;font-weight:800;color:#a36a1b;animation:lfc-coin-pop .5s ease-out}.lfc-root .supply-card .option{background:#fff}
.lfc-root .personal-score{font-size:44px;font-variant-numeric:tabular-nums;color:#235e52}.lfc-root .personal-score small{font-size:17px;font-weight:400;color:var(--muted)}.lfc-root .score-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.lfc-root .score-breakdown>div{display:grid;gap:8px;background:#f0f5e8;padding:16px;border-radius:12px;font-size:13px}.lfc-root .score-breakdown b{font-size:24px}
.lfc-root .teacher-controls select:disabled{opacity:.6}.lfc-root .method-note{overflow-wrap:anywhere}
.lfc-small .arrival-hero h1{font-size:clamp(30px,8vw,38px)}.lfc-small .arrival-hero .arrival-tagline{font-size:16px;max-width:none;line-height:1.8}.lfc-small .model-row{align-items:stretch;flex-direction:column;padding:16px;gap:12px}.lfc-small .rating-options{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.lfc-small .rating-options button{min-width:0;padding:10px 8px}.lfc-small .supply-entry{flex-wrap:wrap}.lfc-small .supply-entry button{width:100%}.lfc-small .score-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.lfc-small .sync-banner{padding:10px 16px;font-size:12px}.lfc-small .personal-score{font-size:36px}
@keyframes lfc-coin-pop{from{transform:translateY(10px) scale(.85);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.lfc-root *{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
/* v1.6: time, observation and collective feedback. */
.lfc-root .discussion-clock{display:flex;gap:16px;align-items:center;padding:18px 22px;border:1px solid #cbdaca;background:linear-gradient(115deg,#e9f1df,#f3f7ef);border-radius:18px;margin-top:20px}.lfc-root .clock-orbit{font-size:34px;color:#54775f}.lfc-root [data-discussion-clock]{font-variant-numeric:tabular-nums;color:var(--ink)}
.lfc-root .chronoscope{padding:0!important;overflow:hidden}.lfc-root .chrono-header{padding:28px 34px;background:radial-gradient(ellipse at 95% 0%,#476d59,transparent 60%),#103936;color:#f2fae4;position:relative}.lfc-root .chrono-header .eyebrow{color:#d8f77c}.lfc-root .chrono-header h2{margin:12px 0 14px}.lfc-root .chrono-header p{color:#d4e4d8;max-width:65ch}.lfc-root .chronoscope .time-studio{padding:24px;gap:24px}.lfc-root .chronoscope>.simple-check,.lfc-root .chronoscope>.discussion-clock{margin:0 24px 24px}.lfc-root .family-canvas{position:relative;isolation:isolate;background-color:#fbfdf8;background-image:linear-gradient(#deeadb70 1px,transparent 1px),linear-gradient(90deg,#deeadb70 1px,transparent 1px);background-size:24px 24px}.lfc-root .scan-line{position:absolute;left:0;top:0;width:100%;height:1px;background:#82a74c60;box-shadow:0 0 16px #7ba65360;animation:lfc-scan 6s linear infinite;z-index:-1}.lfc-root .pedigree .person-shape.future-person{stroke:#d2873e!important;stroke-width:2.5;stroke-dasharray:5 4;fill:white}.lfc-root .pedigree .person-shape.future-person.affected{fill:#143b38}.lfc-root .pedigree .person-shape.future-onset{fill:#e3a466!important}.lfc-root .pedigree .focus-person>text:first-of-type{font-weight:800}.lfc-root .pedigree .label2{font-size:14px}.lfc-root .chrono-readout{display:flex;align-items:center;gap:12px;background:linear-gradient(125deg,#e6efda,#fcfdf7);padding:20px;border:1px solid #d9e4cf;border-radius:22px}.lfc-root .clock-dial{width:115px;flex:0 0 115px}.lfc-root .clock-dial svg{width:100%;height:auto}.lfc-root .dial-ring{fill:none;stroke:#98b36b;stroke-width:1.5;stroke-dasharray:2 7;transform-origin:center;animation:lfc-dial 24s linear infinite}.lfc-root .chrono-readout h3{font-size:18px}.lfc-root .time-node{min-width:0}.lfc-root .time-node.active{box-shadow:0 0 0 3px #b6d37c33}
.lfc-root .error-observatory{margin-bottom:26px}.lfc-root .error-observatory select{width:auto;max-width:260px}.lfc-root .top-errors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.lfc-root .top-errors>article{border:1px solid #e1d4c5;border-radius:16px;padding:18px;background:#fdfbf6;min-width:0}.lfc-root .top-errors h4{margin:18px 0}.lfc-root .top-errors strong{color:#995d37;font-size:14px}.lfc-root .top-errors details{font-size:14px}.lfc-root .pace-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.lfc-root .pacing select{max-width:460px}.lfc-root .observer-bar{position:sticky;top:0;z-index:30;padding:18px 24px;background:#f0e8ce;border-bottom:1px solid #d8c796;display:flex;justify-content:space-between;gap:20px;align-items:center}.lfc-root .observer-bar p{max-width:66ch}
.lfc-root .flight-finish{margin-top:36px;background:radial-gradient(ellipse at 90% 0%,#355d51,transparent 65%),#102f32;color:#eef8e8;padding:38px;border-radius:24px;overflow:hidden;position:relative;isolation:isolate}.lfc-root .finish-orbit{position:absolute;right:-20px;top:-20px;width:46%;opacity:.2;z-index:-1}.lfc-root .flight-finish>.eyebrow{color:var(--lime)}.lfc-root .flight-finish>h2{margin:18px 0;line-height:1.35}.lfc-root .flight-finish>p{color:#c2d8cd}.lfc-root .honor-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.lfc-root .honor-panel{border:1px solid #5d7c6b;border-radius:18px;background:#fff7de0a;padding:24px;min-width:0}.lfc-root .honor-panel h3{font-size:19px;margin-bottom:16px;color:#e0f6b6}.lfc-root .honor-list{max-height:430px;overflow:auto;scrollbar-width:thin}.lfc-root .honor-list>div{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #5b78604d}.lfc-root .rank{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:10px;background:#d8f77c;color:#143b38;font-weight:800}.lfc-root .honor-list b{flex:1;min-width:0;overflow-wrap:anywhere}.lfc-root .honor-list small{display:block;font-size:12px;font-weight:400;color:#b8cfc2}.lfc-root .honor-list strong{font-size:22px;font-variant-numeric:tabular-nums;color:#d8f77c}.lfc-root .honor-note{margin-top:24px!important}
.lfc-root.lfc-medium .top-errors{grid-template-columns:1fr}.lfc-root.lfc-small .chrono-header{padding:22px}.lfc-root.lfc-small .chronoscope .time-studio{padding:16px;grid-template-columns:1fr}.lfc-root.lfc-small .chronoscope>.simple-check,.lfc-root.lfc-small .chronoscope>.discussion-clock{margin:0 16px 16px}.lfc-root.lfc-small .chronoscope .family-canvas{order:2}.lfc-root.lfc-small .pace-fields{grid-template-columns:1fr 1fr}.lfc-root.lfc-small .observer-bar{position:static;flex-direction:column;align-items:stretch;padding:16px}.lfc-root.lfc-small .honor-grid{grid-template-columns:1fr}.lfc-root.lfc-small .flight-finish{padding:24px 18px}.lfc-root.lfc-small .honor-panel{padding:18px}.lfc-root.lfc-small .error-observatory select{max-width:100%}.lfc-root.lfc-small .discussion-clock{padding:16px;gap:10px}.lfc-root.lfc-small .chrono-readout{padding:16px;gap:8px}.lfc-root.lfc-small .clock-dial{flex-basis:96px;width:96px}
@keyframes lfc-scan{from{transform:translateY(0)}to{transform:translateY(650px)}}@keyframes lfc-dial{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.lfc-root .scan-line,.lfc-root .dial-ring{animation:none}}

/* v1.7: readable questions and an independently scrollable family map. */
.lfc-root :where(div,section,article,details,fieldset,nav){min-width:0}
.lfc-root .app,.lfc-root .body,.lfc-root .focus-stack,.lfc-root .focus-quiz,.lfc-root .question,.lfc-root .options,.lfc-root .quiet-drawer,.lfc-root .time-review,.lfc-root .review-layout,.lfc-root .diagram-station,.lfc-root .timeline-readout{min-width:0;max-width:100%}
.lfc-root button,.lfc-root button span,.lfc-root button b,.lfc-root .question h3,.lfc-root .question h4,.lfc-root .supply-card h3,.lfc-root .simple-test,.lfc-root .simple-test p{white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;height:auto;max-height:none}
.lfc-root button{height:auto!important;text-overflow:clip}
.lfc-root .option{display:grid!important;grid-template-columns:26px minmax(0,1fr);align-items:start;width:100%;min-width:0;max-width:100%;overflow:visible;text-align:left}
.lfc-root .option>span{display:block;min-width:0;width:100%;max-width:100%;text-overflow:clip;overflow:visible;line-height:1.65}
.lfc-root .option>b{width:26px;height:26px!important;margin-top:2px}
.lfc-root .question h3{line-height:1.65;font-size:clamp(18px,1.65vw,24px);overflow:visible}
.lfc-root .grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
.lfc-root.lfc-small .grid2{grid-template-columns:minmax(0,1fr)}
.lfc-root .family-canvas{width:100%;min-width:0;max-width:100%;padding:12px!important;overflow:visible}
.lfc-root .pedigree-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.lfc-root .pedigree-tools .row{gap:6px}
.lfc-root .pedigree-tools button{padding:8px 11px;font-size:13px}
.lfc-root .pedigree-tools button.active{color:white;background:#195b64;border-color:#195b64}
.lfc-root .pedigree-viewport{width:100%;min-width:0;max-width:100%;max-height:560px;max-height:min(68dvh,560px);overflow:auto!important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain;border:1px solid #b5d1cd;border-radius:10px;background:#fbfdf8;scrollbar-width:auto;scrollbar-color:#569c9f #dcebe7}
.lfc-root .pedigree-viewport:focus-visible{outline:3px solid #47cdd0;outline-offset:2px}
.lfc-root .pedigree-viewport::-webkit-scrollbar{height:10px;width:10px}
.lfc-root .pedigree-viewport::-webkit-scrollbar-thumb{background:#569c9f;border-radius:8px}
.lfc-root .pedigree-sheet{min-width:0!important;max-width:none!important}
.lfc-root .pedigree-sheet>.pedigree{display:block;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;overflow:visible;user-select:none;-webkit-user-select:none}
.lfc-root .reading-map{cursor:grab}
.lfc-root .reading-map.dragging{cursor:grabbing}
.lfc-root .map-hint{color:#1b6971;margin:8px 0 4px}
.lfc-root .map-legend{font-size:12px;line-height:1.65}
.lfc-root .review-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:18px 0}
.lfc-root .review-layout>.family-canvas{width:100%;min-width:0;max-width:100%}
.lfc-root .shared-observations{display:grid;gap:12px;margin-top:14px}
.lfc-root .shared-observations article{display:flex;align-items:center;gap:14px;border:1px solid #bbd5cf;background:#f3faf5;padding:16px;border-radius:14px}
.lfc-root .shared-observations article h3{font-size:26px;margin:0}
.lfc-root .shared-observations article p{font-size:14px;line-height:1.5;margin:2px 0}
.lfc-root .observation-symbol{width:42px;height:42px;flex:0 0 42px;border:2px solid #235e52;border-radius:50%;background:white}
.lfc-root .observation-symbol.future-symbol{border:2px dashed #be772d}
.lfc-root .observation-symbol.onset-symbol{background:#e3a466}
.lfc-root .chronoscope .time-studio{grid-template-columns:minmax(0,1fr) minmax(250px,300px);padding:22px}
.lfc-root .chronoscope .timeline-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.lfc-root .chronoscope .time-node{width:100%;min-width:0}
.lfc-root.lfc-medium .chronoscope .time-studio,.lfc-root.lfc-small .chronoscope .time-studio{grid-template-columns:minmax(0,1fr)}
.lfc-root.lfc-small .chronoscope .time-studio{padding:12px}
.lfc-root.lfc-small .chronoscope .diagram-station{order:2}
.lfc-root.lfc-small .focus-quiz .question{padding:18px 14px}
.lfc-root.lfc-small .focus-quiz .option{padding:12px 10px;gap:9px}
.lfc-root.lfc-small .simple-activity{padding:20px 14px}

/* Expedition identity stays around the activity; medical labels remain plain. */
.lfc-root{--ink:#153c40;--green:#176572;--line:#d5e4df;--lime:#d9f780;--paper:#f1f6f1}
.lfc-root .app{border-color:#a9c7c5;box-shadow:0 16px 54px #07293212}
.lfc-root .topbar{color:#edfffa;background:radial-gradient(circle at 84% 8%,#297c7c50,transparent 48%),#0d303b;border-bottom:1px solid #42bbb069}
.lfc-root .topbar .brand-title{color:#f0fff8;letter-spacing:1px}
.lfc-root .topbar .eyebrow{color:#99d4ca}
.lfc-root .topbar .brand-mark{background:#173e48;box-shadow:0 0 22px #58d2bf22;border:1px solid #57a9a0;color:#d9f780}
.lfc-root .topbar .pill{background:#143f48;color:#d5f6e8;border-color:#4e7977;max-width:100%;white-space:normal;line-height:1.45}
.lfc-root .topbar .pill.gold{background:#ffefd2;color:#805a19}
.lfc-root .topbar .toolbar{min-width:0;max-width:65%;flex-wrap:wrap}
.lfc-root .arrival-hero,.lfc-root .flight-finish{background-color:#0b2e3a;background-image:radial-gradient(circle at 73% 18%,#7ee8d02b,transparent 42%),radial-gradient(circle at 12% 85%,#24678a4d,transparent 40%),radial-gradient(circle at 80% 18%,#c9fff4 1px,transparent 2px),radial-gradient(circle at 61% 38%,#a3deda 1px,transparent 2px),radial-gradient(circle at 94% 65%,#dcf7c9 1px,transparent 2px)}
.lfc-root .hero-orbit{filter:drop-shadow(0 0 12px #4fbea92b)}
.lfc-root .arrival-hero .hero-visual{position:relative}
.lfc-root .hero-visual:after{content:'';position:absolute;inset:4% 11%;border:1px solid #96e9d83d;border-radius:50%;transform:rotate(-21deg);pointer-events:none}
.lfc-root .focus-nav{background:#e9f2ec;border-bottom:1px solid #c8ddd5}
.lfc-root .focus-nav .active{border-color:#188d95;color:#125761;text-shadow:0 0 20px #78dfce33}
.lfc-root .team-code{font-size:24px;line-height:1.5;color:#173f48}
.lfc-root .team-code small{display:block;font:12px/1.5 ui-monospace,monospace;color:#577e7d;letter-spacing:1px}
.lfc-root .team-tile{position:relative;border-top:3px solid #499f9e;box-shadow:0 6px 16px #143b3807}
.lfc-root .team-tile.final{border-top-color:#a6c15e}
.lfc-root .demo-launch{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px;border-radius:18px;padding:24px;background:linear-gradient(110deg,#103d4b,#23616a);color:#effffa;border:1px solid #68aaa7}
.lfc-root .demo-launch h3{color:#effffa;margin:4px 0;font-size:23px}
.lfc-root .demo-launch p{font-size:14px;color:#bce0d8;margin:4px 0}
.lfc-root .demo-launch .eyebrow{color:#cfe78d}
.lfc-root .demo-link{display:inline-block;flex-shrink:0;padding:12px 18px;border-radius:12px;background:#dcf68b;color:#133d3f!important;text-decoration:none!important;font-weight:750;white-space:normal;line-height:1.5}
.lfc-root .demo-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 22px;background:#dfede7;color:#264d4e;border:1px solid #bad1c8;border-radius:14px;margin-bottom:12px}
.lfc-root .demo-bar p{margin:3px 0 0;max-width:50em}
.lfc-root .demo-options{background:#f7fbf7;min-width:130px;max-width:100%;padding:8px 14px;border-radius:10px}
.lfc-root .demo-options>div{padding-top:14px;min-width:190px}
.lfc-root.lfc-small .demo-launch{margin:14px;padding:18px;align-items:stretch;flex-direction:column;gap:12px}
.lfc-root.lfc-small .demo-launch h3{font-size:20px}
.lfc-root.lfc-small .topbar .toolbar{max-width:62%}
.lfc-root.lfc-small .topbar .pill{font-size:12px}
.lfc-root.lfc-small .topbar{padding:14px 12px;gap:10px;align-items:center}
.lfc-root.lfc-small .brand-title{font-size:17px}
.lfc-root.lfc-small .brand{min-width:94px;gap:7px}
.lfc-root.lfc-small .brand-mark{width:32px;height:32px}
.lfc-root.lfc-small .demo-bar{padding:14px 12px}
@media(prefers-reduced-motion:reduce){.lfc-root .hero-orbit,.lfc-root .hero-visual:after{animation:none;transition:none}}
.lfc-root .arrival-hero{position:relative;overflow:hidden}
.lfc-root.lfc-small .arrival-hero .hero-visual{position:absolute;right:-20px;top:55px;width:200px;opacity:.22;z-index:-1;pointer-events:none}
.lfc-root.lfc-small .brand{flex:0 0 auto;min-width:112px}
.lfc-root.lfc-small .brand-title{white-space:nowrap}
.lfc-root .pedigree-tools .row{flex-wrap:wrap}
.lfc-root .pedigree-tools button{min-height:40px}
.lfc-root .pedigree-person{cursor:pointer;outline:none}
.lfc-root .pedigree-person .person-hit{fill:transparent;stroke:none;pointer-events:all}
.lfc-root .pedigree-person .selection-ring{fill:none;stroke:#078c9a;stroke-width:3;stroke-dasharray:none;pointer-events:none}
.lfc-root .pedigree-person:focus-visible .person-shape{stroke:#078c9a!important;stroke-width:4}
.lfc-root .member-inspector{margin:14px 0 0;padding:16px 18px;border:1px solid #99c5c2;border-left:4px solid #16838a;border-radius:14px;background:#eff8f5;color:var(--ink);min-width:0;max-width:100%}
.lfc-root .member-inspector h3{font-size:19px;line-height:1.5;margin:3px 0}
.lfc-root .member-inspector p{font-size:16px;line-height:1.65;margin:7px 0 0;white-space:normal!important;overflow-wrap:anywhere}
.lfc-root .member-inspector p.tiny{font-size:12px}
.lfc-root .member-inspector button{min-height:40px}
.lfc-root .flight-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;min-width:0}
.lfc-root .flight-controls button{min-width:112px;min-height:44px;border-color:#487e79}
.lfc-root .flight-controls button[aria-pressed=true]{color:white;background:#17494e}
.lfc-root .flight-controls p{flex:1 1 160px;min-width:0;margin:0}
.lfc-root .device-card{max-width:720px;margin:24px auto;min-width:0}
.lfc-root .device-card h2{font-size:clamp(24px,3vw,36px);line-height:1.35}
.lfc-root .device-identity{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:16px;border-radius:12px;background:#eef5ec;overflow-wrap:anywhere}
.lfc-root .transfer-ticket{text-align:center;border:1px solid #aac9b6;border-radius:20px;padding:26px 16px;background:radial-gradient(ellipse at 100% 0,#346859,transparent),#103e42;color:#eef9e4}
.lfc-root .transfer-ticket>strong{display:block;font:700 clamp(38px,8vw,58px)/1.5 ui-monospace,monospace;letter-spacing:.2em;padding-left:.2em;color:#d8f77c;user-select:all}
.lfc-root .transfer-ticket p{margin-top:8px}
.lfc-root .device-card button,.lfc-root .join-recovery input{min-height:44px}
.lfc-root .join-recovery .callout{margin:0;font-size:15px;line-height:1.65;white-space:normal!important}
.lfc-root input[type=email]{font-family:inherit;letter-spacing:normal;text-transform:lowercase}

/* v1.7.5: an explicit, low-friction after-class individual completion mode. */
.lfc-root .makeup-pill{background:#e7f6f3!important;border-color:#79bdb6!important;color:#155b61!important;box-shadow:inset 0 0 0 1px #a6d9d2}
.lfc-root .topbar .makeup-pill{background:#d9f780!important;border-color:#d9f780!important;color:#143b38!important;box-shadow:0 0 18px #d9f78030}
.lfc-root .makeup-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;padding:13px 17px;border:1px solid #8fc9c2;border-radius:14px;background:linear-gradient(105deg,#e2f5ef,#f2f8e9);color:#16565b}
.lfc-root .makeup-banner b{font-size:15px}.lfc-root .makeup-banner span{font-size:13px;color:#4f716f}
.lfc-root .makeup-check{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:17px 19px;margin-top:20px;border:1px solid #9accc5;border-radius:16px;background:#edf8f4}
.lfc-root .makeup-check>div{display:grid;gap:5px;min-width:0}.lfc-root .makeup-check button{flex:0 1 auto}
.lfc-root .makeup-archive{border-color:#91c2ba;background:#f4faf6}.lfc-root .makeup-archive>p{margin:12px 0}.lfc-root .archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lfc-root .archive-grid article{padding:13px 14px;border:1px solid #d2e4dc;border-radius:12px;background:white}.lfc-root .archive-grid article p{margin-top:5px;font-size:14px;line-height:1.65}
.lfc-root .makeup-settings{border-color:#79bdb6;background:#f6fbf8}.lfc-root .makeup-admin-banner{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 16px;border-radius:12px;background:#dff3ed;color:#15585d}.lfc-root .makeup-admin-banner span{font-size:13px}
.lfc-root.lfc-small .makeup-check{align-items:stretch}.lfc-root.lfc-small .makeup-check button{width:100%}.lfc-root.lfc-small .archive-grid{grid-template-columns:1fr}.lfc-root.lfc-small .makeup-banner{align-items:flex-start;flex-direction:column;gap:2px}

/* v1.8.2: field-level verification feedback and explicit required labels. */
.lfc-root .required-mark{color:#ad3428;font-weight:800;margin-left:2px}.lfc-root .required-note,.lfc-root .name-note{margin:0}.lfc-root .field-error{margin:0;padding:11px 13px;border:1px solid #e0a79e;border-left:4px solid #b63f32;border-radius:10px;background:#fff1ee;color:#7d251c;font-size:14px;font-weight:700;line-height:1.55;overflow-wrap:anywhere}.lfc-root .field-error + .row{margin-top:2px}

/* v1.8.3: email-only handoff, visible verification status and self-claim warning. */
.lfc-root .email-prompt{border-color:#d49b57;background:#fff0dc;color:#7a4b1f}.lfc-root .email-prompt:hover:not(:disabled){background:#ffe5c2}.lfc-root .recovery-identity-warning{border-left-color:#c27632;background:#fff4e6}.lfc-root .recovery-identity-warning b{display:block;margin-bottom:2px}

/* v1.8.4: one verified identity across classrooms, while teams stay classroom-scoped. */
.lfc-root .entry-identity{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid #a7c9bd;border-radius:13px;background:#edf7f1;color:#184f4b}
.lfc-root .entry-identity p{margin:4px 0 0;font-size:13px;color:#58736d;overflow-wrap:anywhere}
.lfc-root .entry-identity.loading{justify-content:flex-start;background:#f4f8f3;color:#496c66}
.lfc-root .last-team-hint{margin:0;padding:10px 12px;border-left:3px solid #91aa65;border-radius:8px;background:#f2f6e8;color:#50633d;line-height:1.55}
.lfc-root .join-error{scroll-margin-block:18vh;margin-top:2px}
.lfc-root .connecting-card{text-align:center;align-items:center}.lfc-root .connecting-card p{max-width:560px}
.lfc-root.lfc-small .entry-identity{align-items:stretch;flex-direction:column}.lfc-root.lfc-small .entry-identity button{width:100%}

/* v1.8.5: low-profile identity switching and shared-device sign-out. */
.lfc-root button.quiet-action{min-height:auto;padding:3px 1px;border:0;border-radius:4px;background:transparent;color:#356a65;text-decoration:underline;text-underline-offset:3px;font-size:12px;font-weight:650}
.lfc-root button.quiet-action:hover:not(:disabled){background:transparent;color:#174d49;transform:none}
.lfc-root.lfc-small .entry-identity button.quiet-action{width:auto;align-self:flex-start}
.lfc-root .shared-device-exit{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:4px;padding-top:15px;border-top:1px solid var(--line)}
.lfc-root .shared-device-exit p{margin:3px 0 0}
.lfc-root.lfc-small .shared-device-exit{align-items:flex-start;flex-direction:column}.lfc-root.lfc-small .shared-device-exit button{width:auto}

/* v1.8.1: on-demand identity audit and merge-safe roster management. */
.lfc-root .identity-metrics{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.lfc-root .identity-load{padding:18px;border:1px dashed #9bbab1;border-radius:14px;background:#f5faf6}.lfc-root .identity-load p{margin-bottom:12px}.lfc-root .identity-list{display:grid;gap:14px}.lfc-root .identity-list label{min-width:220px}.lfc-root .identity-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.lfc-root .identity-table{width:100%;min-width:1040px;border-collapse:collapse;font-size:13px}.lfc-root .identity-table th,.lfc-root .identity-table td{padding:12px 11px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.lfc-root .identity-table th{position:sticky;top:0;z-index:1;background:#e9f2ec;color:#345f5d;white-space:nowrap}.lfc-root .identity-table td small{display:block;color:var(--muted);margin-top:3px}.lfc-root .identity-table tr.identity-conflict td{background:#fff7e8}.lfc-root .identity-table tr.identity-matched td{background:#f7fbf2}.lfc-root .identity-table tbody tr:last-child td{border-bottom:0}.lfc-root .identity-table button{min-width:120px}.lfc-root.lfc-small .identity-list>.row{align-items:stretch;flex-direction:column}.lfc-root.lfc-small .identity-list label{width:100%;min-width:0}.lfc-root.lfc-small .identity-table-wrap{margin-inline:-4px}

/* Student class selection is separate from answers and mailbox verification. */
.lfc-root .class-summary,.class-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin:12px 0;border:1px solid #cbdcd1;border-radius:14px;background:#f4f8f4;min-width:0}
.class-summary>div{min-width:0}.class-summary b,.class-summary p{overflow-wrap:anywhere}.class-summary small{display:block;color:#547467;margin-top:3px}.class-summary button{flex-shrink:0}.class-pending{border-color:#c7d894;background:#f5f8e8}.class-card{max-width:720px;margin:auto}.class-card select{width:100%;min-height:48px}.class-card p{overflow-wrap:anywhere}
@media(max-width:600px){.class-summary{padding:12px;align-items:flex-start;flex-wrap:wrap}.class-summary button{width:100%}.class-card .row{flex-wrap:wrap}}
