:root{color:#1d2a36;background:#f6f8fb;font-family:system-ui,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{min-width:320px;margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #b8c4d0;border-radius:6px;padding:.55rem .85rem}button:where(:hover){background:#eff4f8}button:disabled{cursor:wait;opacity:.65}.app-main{place-items:stretch center;min-width:0;min-height:0;padding:clamp(.65rem,1.4vw,1rem);display:grid;overflow:hidden}.page-state,.auth-page,.home-page{background:#fff;border:1px solid #e1e7ed;border-radius:12px;width:min(100%,960px);max-height:100%;padding:clamp(1.5rem,4vw,2.5rem);overflow:auto}.landing{text-align:center;place-content:center;gap:1.5rem;min-height:280px;display:grid}.primary{color:#fff;background:#1769aa;border-color:#1769aa}.primary:hover{background:#11588f}.auth-page{gap:1rem;display:grid}.auth-page h1,.home-page h1{margin:0}.auth-page{align-self:center;width:min(100%,720px);height:fit-content}.role-field{gap:.45rem;display:grid}.role-field-label{color:#405b69;font-weight:700}.role-switch{background:#edf4f7;border:1px solid #cbdbe2;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:84px;padding:5px;display:grid;position:relative;overflow:hidden}.role-switch-thumb{z-index:0;background:#1769aa;border-radius:9px;width:calc(50% - 8px);transition:transform .28s cubic-bezier(.2,.8,.2,1),background .28s;position:absolute;top:5px;bottom:5px;left:5px;box-shadow:0 8px 20px #174f7828}.role-switch.role-teacher .role-switch-thumb{background:#24776f;transform:translate(calc(100% + 6px))}.role-switch button{z-index:1;color:#536b78;text-align:left;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:.7rem;min-width:0;padding:.7rem;transition:color .2s;display:flex;position:relative}.role-switch button:hover{background:0 0}.role-switch button:focus-visible{outline-offset:-4px;outline:3px solid #75aeca}.role-switch button.active:focus-visible{outline-color:#ffffffc9}.role-switch button>span:last-child{gap:.15rem;min-width:0;display:grid}.role-switch strong{font-size:1rem}.role-switch small{opacity:.78;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:500;overflow:hidden}.role-switch-icon{aspect-ratio:1;opacity:.9;border:1px solid;border-radius:50%;flex:none;place-items:center;width:34px;font-size:.8rem;font-weight:800;display:grid}label{gap:.4rem;font-weight:600;display:grid}input,select{background:#fff;border:1px solid #b8c4d0;border-radius:6px;padding:.6rem}.button-row{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.notice{color:#9f2d22;margin:0}.hint{color:#647484;margin:0;font-size:.875rem}.user-card{background:#f7fafc;grid-template-columns:7rem 1fr;gap:.75rem 1rem;padding:1.25rem;display:grid}.user-card dt{color:#647484}.user-card dd{margin:0}.feature-placeholder{color:#748493;border:1px dashed #b8c4d0;border-radius:8px;place-items:center;min-height:180px;margin-top:1.5rem;display:grid}.student-page{background:#fff;border:1px solid #e1e7ed;border-radius:12px;gap:1.15rem;width:min(100%,1120px);max-height:100%;padding:clamp(1.25rem,3vw,2.5rem);display:grid;overflow:auto}.student-page h1,.student-page h2,.student-page p{margin:0}.eyebrow{color:#1769aa;letter-spacing:.08em;font-size:.8rem;font-weight:700}.intro{color:#506272;max-width:780px;line-height:1.7}.student-metrics article{background:#f3f8fb;border-radius:10px;gap:.35rem;padding:1rem;display:grid}.student-metrics strong{color:#1769aa;font-size:1.7rem}.student-metrics span,.case-card p,.case-state,.record-row small{color:#647484}.continue-card,.empty-record,.record-detail{background:#f8fbfd;border:1px solid #c9dce8;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.continue-card h2,.empty-record h2,.record-detail h2{margin-top:.35rem}.student-actions,.case-actions{flex-wrap:wrap;gap:.65rem;display:flex}.share-code{background:#f7fafc;border-radius:10px;align-items:end;gap:.75rem;padding:1rem;display:flex}.share-code label{flex:1}.case-card{border:1px solid #d9e4ec;border-radius:10px;align-content:start;gap:.8rem;min-height:240px;padding:1.1rem;display:grid}.case-card-head{color:#397295;justify-content:space-between;font-size:.82rem;display:flex}.case-card-head span{background:#e4f2fa;border-radius:99px;padding:.2rem .45rem}.record-row{border:1px solid #d9e4ec;border-radius:9px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.record-row h2{font-size:1rem}.record-row p{margin:.45rem 0}.record-detail{justify-content:stretch;align-items:start;display:grid}.record-detail dl{grid-template-columns:7rem 1fr;gap:.55rem 1rem;margin:0;display:grid}.record-detail dt{color:#647484}.record-detail dd{word-break:break-all;margin:0}@media (width<=650px){body{overflow:auto}.shell{height:auto;min-height:100dvh;overflow:visible}.app-main{min-height:70vh;overflow:visible}.student-page,.page-state,.auth-page,.home-page{max-height:none}.student-metrics{grid-template-columns:1fr}.continue-card,.record-row,.share-code{flex-direction:column;align-items:stretch}.record-row button{align-self:flex-start}}@media (width<=470px){.role-switch{min-height:74px}.role-switch button{gap:.4rem;padding:.55rem .35rem}.role-switch-icon{width:28px}.role-switch small{display:none}}.shell{--u:calc(100vw / 19.2);grid-template-rows:minmax(0,1fr) auto;height:100dvh;display:grid;overflow:hidden}.site-header{z-index:40;height:calc(var(--u) * 1.3);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.app-main{padding-top:calc(var(--u) * 1.3 + clamp(.4rem, 1vw, .9rem))}.shell-login>.app-main{padding-top:clamp(.65rem,1.4vw,1rem)}.nav-island{width:calc(100% - var(--u) * 2.4);height:calc(var(--u) * .9);align-items:center;gap:calc(var(--u) * .3);padding:0 calc(var(--u) * .2);border-radius:calc(var(--u) * .16);color:#fff;-webkit-backdrop-filter:blur(calc(var(--u) * .2));backdrop-filter:blur(calc(var(--u) * .2));background:#00000080;display:flex}.nav-logo{align-items:center;gap:calc(var(--u) * .12);color:inherit;background:0 0;border:0;flex:none;padding:0;display:inline-flex}.nav-logo-icon{height:calc(var(--u) * .36);width:auto;display:block}.nav-logo-mark{isolation:isolate;display:inline-block;position:relative}.nav-logo-word{height:calc(var(--u) * .34);width:calc(var(--u) * 1.45);background-color:#fff;display:block;-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20611%20143'%20width='611'%20height='143'%20role='img'%20aria-label='小愈伴学'%3e%3cpath%20d='M0,0%20L5,0%20L11,5%20L14,11%20L15,16%20L25,22%20L34,31%20L41,35%20L62,42%20L76,46%20L77,50%20L72,54%20L65,56%20L44,57%20L42,63%20L41,69%20L41,79%20L43,89%20L57,96%20L59,100%20L58,106%20L56,113%20L54,118%20L50,117%20L43,110%20L37,102%20L28,97%20L26,94%20L23,94%20L22,99%20L32,108%20L43,125%20L48,131%20L49,138%20L48,139%20L37,138%20L33,137%20L14,136%20L-3,131%20L-12,124%20L-16,115%20L-19,115%20L-24,128%20L-29,133%20L-35,133%20L-44,128%20L-46,125%20L-45,120%20L-27,108%20L-24,106%20L-26,102%20L-31,96%20L-30,92%20L-26,91%20L-18,94%20L-22,90%20L-28,88%20L-29,81%20L-24,69%20L-23,63%20L-27,65%20L-41,72%20L-47,73%20L-56,72%20L-57,69%20L-50,61%20L-37,50%20L-27,42%20L-18,32%20L-7,17%20L-3,9%20L-1,1%20Z%20M1,28%20L-2,31%20L-2,33%20L7,32%20L9,31%20L9,29%20Z%20M23,40%20L12,42%20L6,47%20L8,51%20L17,50%20L20,55%20L24,54%20L22,69%20L18,76%20L19,80%20L23,82%20L27,81%20L27,52%20L26,47%20L28,43%20L25,40%20Z%20M-13,46%20L-14,49%20L-9,48%20L-10,46%20Z%20M-7,80%20L-8,83%20L-4,84%20L-4,80%20Z%20M9,81%20L9,88%20L11,93%20L18,91%20L18,87%20L13,81%20Z%20M-11,88%20L-14,94%20L-13,98%20L-1,111%20L4,116%20L13,118%20L27,118%20L28,116%20L20,102%20L18,102%20L14,110%20L7,111%20L1,106%20L-3,98%20L-3,93%20L-9,88%20Z%20'%20fill='%23000000'%20transform='translate(228,0)'/%3e%3cpath%20d='M0,0%20L6,0%20L11,5%20L19,12%20L20,13%20L19,27%20L18,33%20L23,28%20L27,24%20L29,17%20L31,15%20L36,16%20L43,25%20L44,31%20L40,37%20L32,42%20L27,43%20L27,45%20L29,44%20L41,43%20L44,50%20L45,59%20L41,61%20L26,62%20L18,64%20L17,69%20L37,67%20L49,66%20L52,69%20L55,80%20L57,82%20L56,87%20L49,87%20L47,86%20L19,86%20L17,87%20L16,95%20L16,115%20L14,132%20L14,142%20L4,142%20L1,139%20L0,134%20L-1,94%20L-5,97%20L-23,98%20L-27,97%20L-25,102%20L-25,116%20L-30,122%20L-34,120%20L-41,112%20L-48,110%20L-48,103%20L-44,91%20L-42,77%20L-48,81%20L-52,86%20L-67,95%20L-72,97%20L-77,96%20L-74,87%20L-60,68%20L-50,53%20L-41,33%20L-38,25%20L-38,16%20L-35,11%20L-31,12%20L-27,17%20L-22,27%20L-23,33%20L-26,37%20L-14,38%20L-3,29%20L1,30%20L1,16%20L-1,9%20L-1,1%20Z%20M-1,33%20L-4,38%20L-8,51%20L-8,54%20L1,51%20L1,33%20Z%20M-31,43%20L-35,53%20L-35,60%20L-32,60%20L-32,58%20L-21,57%20L-23,52%20L-28,43%20Z%20M-27,70%20L-27,78%20L-26,79%20L-19,79%20L-2,75%20L0,74%20L0,72%20L-7,72%20L-11,73%20L-18,73%20L-24,70%20Z%20'%20fill='%23000000'%20transform='translate(387,1)'/%3e%3cpath%20d='M0,0%20L5,2%20L16,8%20L23,16%20L25,22%20L20,27%20L19,73%20L20,104%20L24,117%20L25,125%20L23,127%20L15,126%20L5,121%20L-6,112%20L-15,101%20L-20,90%20L-19,87%20L-16,88%20L-11,93%20L-3,100%20L0,100%20L1,97%20L1,42%20L2,28%20L2,16%20L-2,9%20L-1,1%20Z%20'%20fill='%23000000'%20transform='translate(86,6)'/%3e%3cpath%20d='M0,0%20L5,0%20L10,5%20L13,9%20L12,16%20L3,24%20L5,25%20L11,23%20L16,23%20L23,35%20L26,40%20L26,46%20L20,49%20L6,52%20L1,53%20L7,61%20L6,67%20L2,70%20L-5,71%20L-8,74%20L-10,74%20L-10,76%20L-4,75%20L29,75%20L33,85%20L33,96%20L30,97%20L19,93%20L13,92%20L-7,92%20L-16,95%20L-16,103%20L-15,116%20L-15,130%20L-13,139%20L-14,140%20L-20,140%20L-31,133%20L-36,129%20L-45,118%20L-50,110%20L-52,105%20L-61,106%20L-71,107%20L-81,102%20L-87,97%20L-88,91%20L-86,89%20L-64,86%20L-48,82%20L-36,81%20L-41,76%20L-50,73%20L-59,69%20L-61,74%20L-64,76%20L-71,76%20L-80,73%20L-81,66%20L-75,57%20L-69,49%20L-70,42%20L-67,39%20L-54,38%20L-59,28%20L-66,19%20L-64,15%20L-63,14%20L-54,14%20L-44,19%20L-46,13%20L-42,10%20L-39,11%20L-31,11%20L-15,6%20L-10,6%20L-9,11%20L-19,20%20L-26,29%20L-30,30%20L-36,27%20L-40,24%20L-40,31%20L-41,35%20L-31,34%20L-18,30%20L-7,14%20L-3,8%20L-1,1%20Z%20M0,40%20L-14,45%20L-20,49%20L-21,51%20L-14,50%20L-5,47%20L-2,48%20L3,42%20L3,40%20Z%20M-60,52%20L-61,56%20L-60,61%20L-57,60%20L-48,60%20L-31,55%20L-29,54%20L-29,52%20L-37,52%20L-45,54%20L-53,54%20Z%20M-25,69%20L-29,73%20L-25,73%20L-24,69%20Z%20M-40,98%20L-47,104%20L-43,110%20L-37,116%20L-33,115%20L-32,113%20L-32,98%20Z%20'%20fill='%23000000'%20transform='translate(551,2)'/%3e%3cpath%20d='M0,0%20L4,1%20L10,8%20L12,12%20L12,20%20L9,28%20L6,36%20L-2,47%20L-20,58%20L-29,59%20L-36,59%20L-37,57%20L-33,51%20L-21,37%20L-16,32%20L-5,19%20L-2,14%20L-1,2%20Z%20'%20fill='%23000000'%20transform='translate(63,47)'/%3e%3cpath%20d='M0,0%20L9,2%20L29,10%20L39,18%20L39,28%20L38,31%20L38,49%20L31,55%20L28,54%20L19,34%20L14,23%20L2,10%20L0,4%20Z%20'%20fill='%23000000'%20transform='translate(115,52)'/%3e%3c/svg%3e") 0/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20611%20143'%20width='611'%20height='143'%20role='img'%20aria-label='小愈伴学'%3e%3cpath%20d='M0,0%20L5,0%20L11,5%20L14,11%20L15,16%20L25,22%20L34,31%20L41,35%20L62,42%20L76,46%20L77,50%20L72,54%20L65,56%20L44,57%20L42,63%20L41,69%20L41,79%20L43,89%20L57,96%20L59,100%20L58,106%20L56,113%20L54,118%20L50,117%20L43,110%20L37,102%20L28,97%20L26,94%20L23,94%20L22,99%20L32,108%20L43,125%20L48,131%20L49,138%20L48,139%20L37,138%20L33,137%20L14,136%20L-3,131%20L-12,124%20L-16,115%20L-19,115%20L-24,128%20L-29,133%20L-35,133%20L-44,128%20L-46,125%20L-45,120%20L-27,108%20L-24,106%20L-26,102%20L-31,96%20L-30,92%20L-26,91%20L-18,94%20L-22,90%20L-28,88%20L-29,81%20L-24,69%20L-23,63%20L-27,65%20L-41,72%20L-47,73%20L-56,72%20L-57,69%20L-50,61%20L-37,50%20L-27,42%20L-18,32%20L-7,17%20L-3,9%20L-1,1%20Z%20M1,28%20L-2,31%20L-2,33%20L7,32%20L9,31%20L9,29%20Z%20M23,40%20L12,42%20L6,47%20L8,51%20L17,50%20L20,55%20L24,54%20L22,69%20L18,76%20L19,80%20L23,82%20L27,81%20L27,52%20L26,47%20L28,43%20L25,40%20Z%20M-13,46%20L-14,49%20L-9,48%20L-10,46%20Z%20M-7,80%20L-8,83%20L-4,84%20L-4,80%20Z%20M9,81%20L9,88%20L11,93%20L18,91%20L18,87%20L13,81%20Z%20M-11,88%20L-14,94%20L-13,98%20L-1,111%20L4,116%20L13,118%20L27,118%20L28,116%20L20,102%20L18,102%20L14,110%20L7,111%20L1,106%20L-3,98%20L-3,93%20L-9,88%20Z%20'%20fill='%23000000'%20transform='translate(228,0)'/%3e%3cpath%20d='M0,0%20L6,0%20L11,5%20L19,12%20L20,13%20L19,27%20L18,33%20L23,28%20L27,24%20L29,17%20L31,15%20L36,16%20L43,25%20L44,31%20L40,37%20L32,42%20L27,43%20L27,45%20L29,44%20L41,43%20L44,50%20L45,59%20L41,61%20L26,62%20L18,64%20L17,69%20L37,67%20L49,66%20L52,69%20L55,80%20L57,82%20L56,87%20L49,87%20L47,86%20L19,86%20L17,87%20L16,95%20L16,115%20L14,132%20L14,142%20L4,142%20L1,139%20L0,134%20L-1,94%20L-5,97%20L-23,98%20L-27,97%20L-25,102%20L-25,116%20L-30,122%20L-34,120%20L-41,112%20L-48,110%20L-48,103%20L-44,91%20L-42,77%20L-48,81%20L-52,86%20L-67,95%20L-72,97%20L-77,96%20L-74,87%20L-60,68%20L-50,53%20L-41,33%20L-38,25%20L-38,16%20L-35,11%20L-31,12%20L-27,17%20L-22,27%20L-23,33%20L-26,37%20L-14,38%20L-3,29%20L1,30%20L1,16%20L-1,9%20L-1,1%20Z%20M-1,33%20L-4,38%20L-8,51%20L-8,54%20L1,51%20L1,33%20Z%20M-31,43%20L-35,53%20L-35,60%20L-32,60%20L-32,58%20L-21,57%20L-23,52%20L-28,43%20Z%20M-27,70%20L-27,78%20L-26,79%20L-19,79%20L-2,75%20L0,74%20L0,72%20L-7,72%20L-11,73%20L-18,73%20L-24,70%20Z%20'%20fill='%23000000'%20transform='translate(387,1)'/%3e%3cpath%20d='M0,0%20L5,2%20L16,8%20L23,16%20L25,22%20L20,27%20L19,73%20L20,104%20L24,117%20L25,125%20L23,127%20L15,126%20L5,121%20L-6,112%20L-15,101%20L-20,90%20L-19,87%20L-16,88%20L-11,93%20L-3,100%20L0,100%20L1,97%20L1,42%20L2,28%20L2,16%20L-2,9%20L-1,1%20Z%20'%20fill='%23000000'%20transform='translate(86,6)'/%3e%3cpath%20d='M0,0%20L5,0%20L10,5%20L13,9%20L12,16%20L3,24%20L5,25%20L11,23%20L16,23%20L23,35%20L26,40%20L26,46%20L20,49%20L6,52%20L1,53%20L7,61%20L6,67%20L2,70%20L-5,71%20L-8,74%20L-10,74%20L-10,76%20L-4,75%20L29,75%20L33,85%20L33,96%20L30,97%20L19,93%20L13,92%20L-7,92%20L-16,95%20L-16,103%20L-15,116%20L-15,130%20L-13,139%20L-14,140%20L-20,140%20L-31,133%20L-36,129%20L-45,118%20L-50,110%20L-52,105%20L-61,106%20L-71,107%20L-81,102%20L-87,97%20L-88,91%20L-86,89%20L-64,86%20L-48,82%20L-36,81%20L-41,76%20L-50,73%20L-59,69%20L-61,74%20L-64,76%20L-71,76%20L-80,73%20L-81,66%20L-75,57%20L-69,49%20L-70,42%20L-67,39%20L-54,38%20L-59,28%20L-66,19%20L-64,15%20L-63,14%20L-54,14%20L-44,19%20L-46,13%20L-42,10%20L-39,11%20L-31,11%20L-15,6%20L-10,6%20L-9,11%20L-19,20%20L-26,29%20L-30,30%20L-36,27%20L-40,24%20L-40,31%20L-41,35%20L-31,34%20L-18,30%20L-7,14%20L-3,8%20L-1,1%20Z%20M0,40%20L-14,45%20L-20,49%20L-21,51%20L-14,50%20L-5,47%20L-2,48%20L3,42%20L3,40%20Z%20M-60,52%20L-61,56%20L-60,61%20L-57,60%20L-48,60%20L-31,55%20L-29,54%20L-29,52%20L-37,52%20L-45,54%20L-53,54%20Z%20M-25,69%20L-29,73%20L-25,73%20L-24,69%20Z%20M-40,98%20L-47,104%20L-43,110%20L-37,116%20L-33,115%20L-32,113%20L-32,98%20Z%20'%20fill='%23000000'%20transform='translate(551,2)'/%3e%3cpath%20d='M0,0%20L4,1%20L10,8%20L12,12%20L12,20%20L9,28%20L6,36%20L-2,47%20L-20,58%20L-29,59%20L-36,59%20L-37,57%20L-33,51%20L-21,37%20L-16,32%20L-5,19%20L-2,14%20L-1,2%20Z%20'%20fill='%23000000'%20transform='translate(63,47)'/%3e%3cpath%20d='M0,0%20L9,2%20L29,10%20L39,18%20L39,28%20L38,31%20L38,49%20L31,55%20L28,54%20L19,34%20L14,23%20L2,10%20L0,4%20Z%20'%20fill='%23000000'%20transform='translate(115,52)'/%3e%3c/svg%3e") 0/contain no-repeat}.nav-logo-curve{right:0;bottom:calc(var(--u) * .02);width:calc(var(--u) * .82);height:calc(var(--u) * .16);z-index:-1;position:absolute;overflow:visible}.nav-logo-curve path{fill:none;stroke:#1cb870;stroke-width:6px;stroke-linecap:round}.nav-links{align-items:center;height:100%;display:flex}.nav-links button{height:100%;margin-right:calc(var(--u) * .45);color:#fff;font-size:calc(var(--u) * .2);letter-spacing:.01em;white-space:nowrap;background:0 0;border:0;border-radius:0;align-items:center;padding:0;font-weight:600;transition:color .3s cubic-bezier(.38,0,0,1);display:inline-flex}.nav-links button:last-child{margin-right:0}.nav-links button:hover:not(:disabled){color:#02a36b;background:0 0}.nav-links button.active{color:#02a36b}.nav-actions{align-items:center;margin-left:auto;display:flex}.nav-cta{align-items:center;gap:calc(var(--u) * .06);height:calc(var(--u) * .4);padding:0 calc(var(--u) * .2);border-radius:calc(var(--u) * .1);color:#fff;font-size:calc(var(--u) * .18);box-shadow:none;background:#02a36b;border:0;font-weight:700;transition:background-color .3s cubic-bezier(.38,0,0,1);display:inline-flex}.nav-cta span{font-size:calc(var(--u) * .14);opacity:.95}.nav-cta:hover:not(:disabled){background:#059466}.nav-user{align-items:center;gap:calc(var(--u) * .12);display:flex}.nav-user-avatar{width:calc(var(--u) * .34);height:calc(var(--u) * .34);color:#06281a;font-size:calc(var(--u) * .15);background:linear-gradient(145deg,#62e3ab,#12a06a);border-radius:50%;place-items:center;font-weight:800;display:grid}.nav-user-name{max-width:calc(var(--u) * 2.6);color:#fff;font-size:calc(var(--u) * .17);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-user button{height:calc(var(--u) * .4);padding:0 calc(var(--u) * .18);border-radius:calc(var(--u) * .1);color:#fff;font-size:calc(var(--u) * .15);background:#ffffff14;border:1px solid #ffffff3d}.nav-user button:hover:not(:disabled){color:#06281a;background:#7ef0bd;border-color:#7ef0bd}.nav-toggle{color:#fff;background:#ffffff12;border:1px solid #ffffff29;border-radius:10px;align-items:center;gap:9px;margin-left:auto;padding:10px 16px;font-size:14px;font-weight:700;display:none}.nav-toggle i{background:currentColor;border-radius:2px;width:16px;height:2px;transition:background-color .2s;position:relative}.nav-toggle i:before,.nav-toggle i:after{content:"";background:currentColor;border-radius:2px;width:16px;height:2px;transition:transform .25s cubic-bezier(.38,0,0,1);position:absolute;left:0}.nav-toggle i:before{top:-5px}.nav-toggle i:after{top:5px}.nav-toggle i.open{background:0 0}.nav-toggle i.open:before{transform:translateY(5px)rotate(45deg)}.nav-toggle i.open:after{transform:translateY(-5px)rotate(-45deg)}.nav-drawer{width:calc(100% - var(--u) * 1.2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#000000eb;border:1px solid #ffffff1a;border-radius:16px;gap:4px;padding:14px;display:grid;position:absolute;top:calc(100% - 4px);left:50%;transform:translate(-50%);box-shadow:0 24px 60px #040e0966}.nav-drawer button{color:#ffffffd9;text-align:left;background:0 0;border:0;border-radius:12px;padding:13px 16px;font-size:16px;font-weight:600}.nav-drawer button:hover:not(:disabled){background:#ffffff14}.nav-drawer button.active{color:#02a36b;background:#02a36b24}.nav-drawer .drawer-cta{color:#06281a;text-align:center;background:#1cb870}.nav-drawer .drawer-quiet{color:#ffffff8c;font-size:14px}.site-footer{color:#ffffff94;letter-spacing:.02em;background:#0d1a13;justify-content:space-between;align-items:center;gap:16px;padding:9px clamp(1rem,3vw,2.2rem);font-size:12px;display:flex}.site-footer-note{color:#ffffff6b}@media (width<=1000px){.shell{--u:62px}.nav-links,.nav-actions{display:none}.nav-toggle{display:inline-flex}.nav-logo-icon{height:31px}.nav-logo-word{width:95px;height:22px}}@media (width<=650px){.shell{--u:46px}.nav-island{width:calc(100% - 1rem)}.site-footer{flex-direction:column;align-items:flex-start;gap:2px}}.student-page{scrollbar-width:thin;background:0 0;border:0;gap:1.1rem;width:min(100%,1180px);max-height:100%;padding:clamp(1rem,2.2vw,1.6rem) clamp(.4rem,1.2vw,.8rem);display:grid;overflow:auto}.student-page h1,.student-page h2,.student-page h3,.student-page p{margin:0}.student-page .page-hero{color:#ffffffeb;box-shadow:var(--xy-shadow);background:radial-gradient(760px 360px at 92% -20%,#28e3974d,#0000 62%),radial-gradient(520px 320px at -6% 118%,#02a36b75,#0000 64%),linear-gradient(150deg,#0c2619,#11402a 68%,#0a1c12);border:1px solid #ffffff24;border-radius:22px;justify-content:space-between;align-items:flex-end;gap:1.4rem;padding:clamp(1.3rem,2.6vw,2rem) clamp(1.3rem,3vw,2.2rem);display:flex;position:relative;overflow:hidden}.student-page .page-hero:after{content:"";opacity:.2;pointer-events:none;background-image:radial-gradient(#ffffff24 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.student-page .page-hero>*{z-index:1;position:relative}.student-page .page-hero h1{color:#f3faf6;letter-spacing:.01em;font-size:clamp(1.5rem,2.6vw,2.05rem)}.student-page .page-hero .eyebrow{color:#4fd99e}.student-page .page-hero .intro{color:#ffffffa8;max-width:640px;margin-top:.5rem;font-size:.88rem;line-height:1.7}.student-page .page-hero-actions{flex-wrap:wrap;flex:none;gap:.6rem;display:flex}.student-page .page-hero .primary{box-shadow:0 12px 26px #02a36b66}.student-metrics{grid-template-columns:repeat(3,1fr);gap:.85rem;display:grid}.student-metrics article{border:1px solid var(--xy-line);background:var(--xy-card);min-height:104px;box-shadow:var(--xy-shadow-soft);border-radius:18px;align-content:center;gap:.3rem;padding:1rem 1.2rem;display:grid;position:relative}.student-metrics article:after{content:"";background:#d6eee0;border-radius:50%;width:9px;height:9px;position:absolute;top:1.1rem;right:1.1rem}.student-metrics article:nth-child(2):after{background:#ffe6b8}.student-metrics article:nth-child(3):after{background:#bdeedd}.student-metrics strong{color:var(--xy-green);font-size:2rem;line-height:1.1}.student-metrics strong em{color:var(--xy-muted);font-size:.9rem;font-style:normal}.student-metrics span{color:var(--xy-muted);font-size:.84rem}.student-home-page{grid-auto-rows:max-content;align-content:start;align-self:stretch}.student-home-workspace{grid-template-columns:minmax(0,1.6fr) minmax(250px,.8fr);align-items:stretch;gap:.9rem;display:grid}.continue-card,.empty-record{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:20px;justify-content:space-between;align-items:center;gap:1.2rem;padding:clamp(1.2rem,2.2vw,1.7rem);display:flex}.continue-card p{color:var(--xy-green);letter-spacing:.06em;font-size:.8rem;font-weight:700}.continue-card h2,.empty-record h2{margin-top:.45rem;font-size:1.25rem}.continue-card span,.empty-record p{color:var(--xy-muted);margin-top:.4rem;font-size:.86rem;line-height:1.6;display:block}.continue-card.empty{background:linear-gradient(160deg,#fff,#f3faf6)}.student-quick-actions{grid-template-rows:repeat(2,1fr);gap:.7rem;display:grid}.student-quick-actions button{border:1px solid var(--xy-line);background:var(--xy-card);min-width:0;box-shadow:var(--xy-shadow-soft);text-align:left;border-radius:18px;align-content:center;justify-items:start;gap:.3rem;padding:1rem 1.2rem;transition:transform .25s cubic-bezier(.38,0,0,1),border-color .25s;display:grid;position:relative}.student-quick-actions button:after{content:"→";color:var(--xy-green);opacity:0;font-size:1.05rem;transition:opacity .25s,transform .25s;position:absolute;top:50%;right:1.1rem;transform:translateY(-50%)}.student-quick-actions button:hover{border-color:#02a36b66;transform:translateY(-2px)}.student-quick-actions button:hover:after{opacity:1;transform:translateY(-50%)translate(4px)}.student-quick-actions span{color:var(--xy-green-ink);font-size:1rem;font-weight:750}.student-quick-actions small{color:var(--xy-muted);line-height:1.5}.student-cases-page{grid-auto-rows:max-content;align-content:start}.student-page-header-row{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:end;gap:1.2rem;display:grid}.student-page-header-row>div{min-width:0}.share-code{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:18px;align-items:flex-end;gap:.7rem;padding:1rem 1.1rem;display:flex}.share-code label{min-width:0;color:var(--xy-muted);flex:1;font-size:.8rem}.share-code input{margin-top:.35rem}.student-page .page-hero .share-code-hero{flex:none;align-self:center;width:min(380px,100%)}.student-page .page-hero .share-code-hero label{color:var(--xy-muted)}.student-page .page-hero .share-code-hero input{color:var(--xy-text);background:#fff}.student-inline-notice{background:#fdf1ee;border-radius:12px;margin:0;padding:.6rem .85rem;font-size:.85rem}.case-library-content,.student-records-content{min-height:0}.case-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.9rem;display:grid}.case-card{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:20px;align-content:start;gap:.55rem;padding:1.25rem 1.35rem 1.35rem;transition:transform .25s cubic-bezier(.38,0,0,1),border-color .25s,box-shadow .25s;display:grid;position:relative}.case-card:hover{box-shadow:var(--xy-shadow);border-color:#02a36b61;transform:translateY(-3px)}.case-card-head{color:var(--xy-muted);justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.case-card-head span{color:var(--xy-green-deep);background:#e6f6ee;border-radius:99px;padding:.22rem .6rem;font-weight:700}.case-card-head small{color:var(--xy-muted)}.case-card h2{margin-top:.3rem;font-size:1.18rem;line-height:1.45}.case-availability{font-weight:600;color:var(--xy-green)!important;font-size:.82rem!important}.case-state{color:var(--xy-muted);font-size:.84rem}.case-actions{flex-wrap:wrap;gap:.55rem;margin-top:.5rem;display:flex}.student-page-footer{color:var(--xy-muted);justify-content:space-between;align-items:center;gap:1rem;padding:.35rem .2rem 0;font-size:.84rem;display:flex}.student-records-page{grid-auto-rows:max-content;align-content:start}.record-list{gap:.75rem;display:grid}.record-row{border:1px solid var(--xy-line);background:var(--xy-card);min-height:104px;box-shadow:var(--xy-shadow-soft);border-radius:18px;justify-content:space-between;align-items:center;gap:1.2rem;padding:1.15rem 1.35rem;transition:border-color .25s,box-shadow .25s;display:flex;position:relative}.record-row:before{content:"";background:#f0c460;border-radius:0 3px 3px 0;width:3px;position:absolute;top:18px;bottom:18px;left:0}.record-row:has(.record-status.completed):before{background:var(--xy-green)}.record-row:hover{box-shadow:var(--xy-shadow);border-color:#02a36b59}.record-main{gap:.3rem;min-width:0;display:grid}.record-main h2{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;overflow:hidden}.record-main p{color:var(--xy-muted);font-size:.84rem}.record-main small{color:var(--xy-muted)}.record-status{color:#8a6413;background:#fdf3d7;border-radius:99px;justify-self:start;padding:.2rem .6rem;font-size:.72rem;font-weight:750}.record-status.completed{color:var(--xy-green-deep);background:#e2f5ea}.report-page.loading-report{background:var(--xy-card);border:1px solid var(--xy-line);width:min(100%,720px);box-shadow:var(--xy-shadow);border-radius:22px;align-self:center;padding:clamp(1.6rem,3vw,2.4rem)}.report-loading-bar{background:#e3efe7;border-radius:99px;height:5px;overflow:hidden}.report-loading-bar span{background:linear-gradient(90deg,#1cb870,#02a36b);border-radius:99px;width:40%;height:100%;animation:1.2s ease-in-out infinite report-loading;display:block}@keyframes report-loading{to{transform:translate(185%)}}@media (width<=900px){.student-home-workspace,.student-page-header-row{grid-template-columns:1fr}.student-quick-actions{grid-template-rows:auto;grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.student-page{padding:.9rem .2rem 1.2rem}.student-metrics{grid-template-columns:1fr;gap:.6rem}.student-metrics article{min-height:84px}.student-quick-actions{grid-template-columns:1fr}.continue-card,.record-row,.share-code,.student-page-footer{flex-direction:column;align-items:stretch}.record-row button{align-self:flex-start}.case-grid{grid-template-columns:1fr}}.formal-experience{--sim-panel:#fff;--sim-line:#d9e3e9;--sim-muted:#718493;--sim-phone:#f2f3f5;--sim-chathead:#fff;--sim-bubble:#fff;--sim-student:#1593d1;--sim-shadow:0 18px 45px #21495f18;color:#2f4338;background:#eef3ee;border-radius:12px;width:100%;height:100%;min-height:0;overflow:hidden}.formal-experience *{box-sizing:border-box}.formal-experience button,.formal-experience select,.formal-experience textarea{font:inherit}.formal-experience button{cursor:pointer}.formal-experience .experience-shell{grid-template-rows:auto minmax(0,1fr);gap:12px;height:100%;min-height:0;padding:14px clamp(14px,2vw,28px);display:grid}.formal-experience .topbar{background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;width:100%;max-width:1540px;margin:0 auto;padding:0;display:flex}.formal-experience .eyebrow{color:#02a36b;letter-spacing:.13em;margin:0 0 5px;font-size:.72rem;font-weight:800}.formal-experience .topbar h1{color:inherit;margin:0;font-size:clamp(1.25rem,2.2vw,1.8rem)}.formal-experience .notice{color:#7b5b18;background:#fff4ce;border-radius:5px;margin:7px 0 0;padding:3px 8px;font-size:.75rem;display:inline-block}.formal-experience .controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.formal-experience .advance-button{color:#fff;cursor:pointer;background:#02a36b;border:0;border-radius:10px;padding:10px 18px;font-size:.86rem;font-weight:750;box-shadow:0 10px 22px #02a36b47}.formal-experience .advance-button:hover{background:#059466}.formal-experience .advance-button:disabled{opacity:.5;cursor:default;box-shadow:none}.formal-experience .controls label{color:#5f7568;align-items:center;gap:7px;font-size:.82rem;display:flex}.formal-experience .controls select{color:#2f4338;background:#fff;border:1px solid #122e2033;border-radius:8px;height:36px;padding:0 11px}.formal-experience .mode-control{align-items:center;gap:6px;display:inline-flex;position:relative}.formal-experience .mode-help-button{color:#718493;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;width:32px;height:36px;padding:6px;display:inline-grid}.formal-experience .mode-help-button svg{width:20px;height:20px}.formal-experience .mode-help-button:focus-visible{outline-offset:1px;outline:2px solid #718493}.formal-experience .mode-help-popover{z-index:35;width:min(320px,100vw - 96px);padding-top:8px;position:absolute;top:100%;right:0}.formal-experience .mode-help-popover p{color:#405563;overflow-wrap:break-word;background:#fff;border:1px solid #d9e3e9;border-radius:8px;margin:0;padding:12px 14px;font-size:14px;line-height:1.7;box-shadow:0 6px 20px #21495f24}@media (width<=1000px){.formal-experience .mode-help-popover{left:0;right:auto}}.formal-experience .switch input{opacity:0;position:absolute}.formal-experience .switch span{background:#bdc9cf;border-radius:20px;width:32px;height:18px;position:relative}.formal-experience .switch span:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:all .2s;position:absolute;top:3px;left:3px}.formal-experience .switch input:checked+span{background:#02a36b}.formal-experience .switch input:checked+span:after{transform:translate(14px)}.formal-experience .workspace{grid-template-columns:minmax(560px,1fr) minmax(330px,390px);align-items:stretch;gap:clamp(14px,2vw,28px);width:100%;max-width:1540px;height:100%;min-height:0;margin:auto;display:grid;overflow:hidden}.formal-experience .his{border:1px solid var(--sim-line);background:var(--sim-panel);min-height:0;box-shadow:var(--sim-shadow);border-radius:14px;grid-template-rows:auto auto auto minmax(0,1fr);display:grid;overflow:hidden}.formal-experience .his-head{color:#fff;background:linear-gradient(112deg,#0d3b27,#0f5c3b);justify-content:space-between;align-items:center;padding:14px 19px;display:flex}.formal-experience .brand{color:inherit;background:0 0;border:0;align-items:center;gap:11px;display:flex}.formal-experience .brand>span{border:2px solid #fff;border-radius:7px;place-items:center;width:36px;height:36px;font:700 1.3rem Georgia;display:grid}.formal-experience .brand div{gap:2px;display:grid}.formal-experience .brand small{color:#c9ecd9;font-size:.72rem}.formal-experience .readonly{letter-spacing:.08em;border:1px solid #fff6;border-radius:99px;padding:4px 8px;font-size:.68rem}.formal-experience .patient-strip{border-bottom:1px solid var(--sim-line);background:#f3f9f5;align-items:center;gap:11px;padding:15px 20px;display:flex}.formal-experience .patient-mark{color:#fff;background:#2f9d69;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.formal-experience .patient-strip>div{gap:3px;display:grid}.formal-experience .patient-strip small{color:var(--sim-muted);font-size:.78rem}.formal-experience .patient-strip dl{gap:24px;margin:0 0 0 auto;display:flex}.formal-experience .patient-strip dl div{gap:2px;display:grid}.formal-experience .patient-strip dt{color:#82929e;font-size:.66rem}.formal-experience .patient-strip dd{color:#315566;margin:0;font-size:.8rem;font-weight:700}.formal-experience .his-tabs{border-bottom:1px solid var(--sim-line);background:#f3f9f5;grid-template-columns:repeat(5,1fr);display:grid}.formal-experience .his-tabs button{color:#6b8073;background:0 0;border:0;border-bottom:3px solid #0000;padding:13px 8px;font-size:.82rem}.formal-experience .his-tabs button.active{color:#0f5c3b;background:#fff;border-color:#02a36b;font-weight:800}.formal-experience .his-page{scrollbar-width:thin;min-height:0;padding:clamp(18px,2.2vw,28px);overflow-y:auto}.formal-experience .doc-kicker{color:#02a36b;letter-spacing:.1em;margin:0 0 8px;font-size:.7rem;font-weight:800}.formal-experience .his-page h2{color:#10241a;margin:0;font-size:1.28rem}.formal-experience .doc-meta{gap:8px;margin:12px 0 23px;display:flex}.formal-experience .doc-meta span{color:#5f7568;background:#eaf4ee;border-radius:5px;padding:4px 8px;font-size:.74rem}.formal-experience .doc-text{color:#2f4338;white-space:pre-wrap;max-width:900px;margin:0;line-height:1.95}.formal-experience .empty{color:#8a9ba6;text-align:center;background:#fbfdfd;border:1px dashed #c5d4dc;border-radius:9px;place-items:center;min-height:300px;display:grid}.formal-experience .empty span{font-size:2rem}.formal-experience .empty p{margin:8px}.formal-experience .phone-column{grid-template-rows:minmax(0,1fr) auto auto;justify-items:center;gap:7px;min-height:0;display:grid}.formal-experience .phone{color:#1d2933;background:var(--sim-phone);border:7px solid #20252a;border-radius:30px;grid-template-rows:auto auto minmax(0,1fr) auto 42px;width:min(100%,390px);height:100%;min-height:0;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 38px #17364635}.formal-experience .phone-status{color:#26343e;background:var(--sim-chathead);justify-content:space-between;align-items:center;min-height:25px;padding:0 12px 0 17px;font-size:11px;display:flex}.formal-experience .phone-indicators{align-items:center;gap:1px;height:24px;display:flex}.formal-experience .phone-indicators img{object-fit:contain;width:29px;height:24px;display:block}.formal-experience .phone-indicators img:last-child{width:31px}.formal-experience .qq-head{background:var(--sim-chathead);border-bottom:1px solid #e4e7e9;grid-template-columns:26px 38px 1fr 27px;align-items:center;gap:8px;min-height:52px;padding:8px 13px 9px;display:grid}.formal-experience .qq-head button{color:#566773;background:0 0;border:0;font-size:27px;line-height:1}.formal-experience .qq-head .menu{font-size:16px}.formal-experience .avatar{color:#fff;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:.76rem;font-weight:800;display:grid}.formal-experience .avatar.patient{background:linear-gradient(145deg,#a77580,#694952)}.formal-experience .avatar.student{background:linear-gradient(145deg,#37a8dc,#1279b2)}.formal-experience .qq-head div{gap:2px;display:grid}.formal-experience .qq-head strong{font-size:16px;line-height:1.2}.formal-experience .qq-head small{color:#81909a;font-size:11px;line-height:1.25}.formal-experience .qq-head small i{background:#36b06f;border-radius:50%;width:6px;height:6px;display:inline-block}.formal-experience .chat{background:var(--sim-phone);scrollbar-width:thin;flex-direction:column;gap:13px;padding:16px 12px;display:flex;overflow-y:auto}.formal-experience .row{align-items:flex-start;gap:8px;display:flex}.formal-experience .row.student{flex-direction:row-reverse}.formal-experience .bubble{color:#24343f;background:var(--sim-bubble);white-space:pre-wrap;word-break:break-word;border-radius:3px 12px 12px;max-width:79%;padding:9px 11px;line-height:1.55;box-shadow:0 1px 2px #1a3b4b14}.formal-experience .row.student .bubble{color:#fff;background:var(--sim-student);border-radius:12px 3px 12px 12px}.formal-experience .row time{color:#8b979f;white-space:nowrap;align-self:center;font-size:.62rem}.formal-experience .row time>span{display:block}.formal-experience .event-card{color:#31596b;background:#eaf7fc;border:1px solid #a8d2e3;border-radius:9px;padding:11px 12px}.formal-experience .event-card strong{color:#087da0;margin-bottom:5px;font-size:.72rem;display:block}.formal-experience .event-card p{margin:0;font-size:.79rem;line-height:1.55}.formal-experience .system-message{color:#7d8991;text-align:center;background:#e3e7e9;border-radius:6px;align-self:center;max-width:92%;padding:5px 9px;font-size:.69rem}.formal-experience .system-message.time{background:0 0}.formal-experience .typing .bubble{color:#6f808b;align-items:center;gap:4px;font-size:.72rem;display:flex}.formal-experience .typing .bubble i{background:#7c8c96;border-radius:50%;width:4px;height:4px;animation:1s infinite sim-dots}.formal-experience .typing .bubble i:nth-child(3){animation-delay:.15s}.formal-experience .typing .bubble i:nth-child(4){animation-delay:.3s}@keyframes sim-dots{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.formal-experience .advance-row{text-align:center;flex-direction:column;align-items:center;gap:5px;margin:2px auto 0;display:flex}.formal-experience .advance-row button{color:#02a36b;cursor:pointer;background:#fff;border:1px solid #02a36b;border-radius:999px;padding:7px 16px;font-size:.78rem}.formal-experience .advance-row button:hover{color:#fff;background:#02a36b}.formal-experience .advance-row button:disabled{opacity:.45;cursor:default}.formal-experience .advance-row span{color:#7d8991;font-size:.68rem}.formal-experience .composer{background:#fff;border-top:1px solid #e1e5e7;gap:8px;padding:9px 10px;display:flex}.formal-experience .composer textarea{resize:none;color:#273945;background:#eef1f3;border:0;border-radius:8px;outline:0;flex:1;min-width:0;padding:8px 9px;line-height:1.4}.formal-experience .composer button{color:#fff;background:#0e83c1;border:0;border-radius:8px;align-self:flex-end;padding:8px 11px}.formal-experience .composer button:disabled{opacity:.45;cursor:default}.formal-experience .qq-tools{color:#64727c;background:#fff;border-top:1px solid #e1e5e7;justify-content:space-around;align-items:center;display:flex}.formal-experience .qq-tools button{cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:4px;display:flex}.formal-experience .qq-tools button:hover{background:#eef4f7}.formal-experience .qq-tools button.active{background:#d9eefb}.formal-experience .qq-tools button:disabled{opacity:.35;cursor:default}.formal-experience .qq-tools img{object-fit:contain;width:27px;height:27px;display:block}.formal-experience .emoji-panel{z-index:5;background:#fff;border-top:1px solid #e1e5e7;grid-template-columns:repeat(8,1fr);gap:4px;max-height:156px;padding:8px;display:grid;position:absolute;bottom:42px;left:0;right:0;overflow-y:auto;box-shadow:0 -6px 16px #1a3b4b1a}.formal-experience .emoji-panel button{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:3px}.formal-experience .emoji-panel button:hover{background:#eef4f7}.formal-experience .emoji-panel img{width:26px;height:26px;display:block}.formal-experience .emoji-panel span{font-size:1.35rem;line-height:1}.formal-experience .bubble.emoji{box-shadow:none;background:0 0;padding:3px 7px}.formal-experience .emoji-glyph{font-size:1.35rem;line-height:1.1}.formal-experience .chat-image{margin:0}.formal-experience .chat-image img{border-radius:8px;max-width:190px;display:block}.formal-experience .chat-image-pending{color:#7d8991;font-size:.74rem}.formal-experience .chat-image figcaption{color:#667b8a;margin-top:4px;font-size:.66rem}.formal-experience .voice-bubble{align-items:center;gap:6px;display:inline-flex}.formal-experience .voice-bubble img{width:16px;height:16px}.formal-experience .status{color:#667b8a;text-align:center;max-width:404px;margin:0;font-size:.78rem;line-height:1.5}.formal-experience .completion{color:#28613d;background:#effaf3;border:1px solid #9bd1b0;border-radius:9px;width:100%;padding:8px 10px;font-size:.74rem}.formal-experience .completion strong{margin-bottom:4px;display:block}.formal-experience .completion button{color:#fff;background:#28764a;border:0;border-radius:7px;margin-top:9px;padding:7px 10px}.formal-experience[data-theme=dark]{color:#d9e4e9;--sim-panel:#172228;--sim-line:#31434c;--sim-muted:#a4b4bd;--sim-phone:#101417;--sim-chathead:#1a2024;--sim-bubble:#282e32;--sim-student:#0f669f;--sim-shadow:0 18px 45px #0006;background:#11191e}.formal-experience[data-theme=dark] .topbar h1,.formal-experience[data-theme=dark] .his-page h2{color:#e1edf1}.formal-experience[data-theme=dark] .controls label{color:#adbdc5}.formal-experience[data-theme=dark] .controls select{color:#c6dce5;background:#1a272e;border-color:#465c66}.formal-experience[data-theme=dark] .patient-strip,.formal-experience[data-theme=dark] .his-tabs{background:#1b292f}.formal-experience[data-theme=dark] .his-tabs button.active{color:#6fe3b0;background:#172228}.formal-experience[data-theme=dark] .doc-text{color:#c4d3d9}.formal-experience[data-theme=dark] .doc-meta span{color:#b7cad2;background:#22343c}.formal-experience[data-theme=dark] .empty{color:#94a8b1;background:#18242a;border-color:#43565f}.formal-experience[data-theme=dark] .phone-status,.formal-experience[data-theme=dark] .qq-head,.formal-experience[data-theme=dark] .composer,.formal-experience[data-theme=dark] .qq-tools{color:#d7e1e6;background:#1b2024;border-color:#30373b}.formal-experience[data-theme=dark] .phone-indicators img,.formal-experience[data-theme=dark] .qq-tools img{filter:invert(.85)}.formal-experience[data-theme=dark] .emoji-panel{background:#1b2024;border-color:#30373b}.formal-experience[data-theme=dark] .emoji-panel button:hover,.formal-experience[data-theme=dark] .qq-tools button:hover{background:#253038}.formal-experience[data-theme=dark] .chat-image figcaption{color:#9fb0b8}.formal-experience[data-theme=dark] .advance-row button{color:#6fe3b0;background:#172228;border-color:#2f6a4e}.formal-experience[data-theme=dark] .advance-row button:hover{color:#0b1a20;background:#6fe3b0}.formal-experience[data-theme=dark] .bubble{color:#e0e7ea}@media (width<=1000px){.formal-experience .workspace{grid-template-columns:1fr}.formal-experience .phone-column{grid-row:1;position:static}.formal-experience{overflow-y:auto}.formal-experience .experience-shell{height:auto;min-height:100%}.formal-experience .phone{height:680px}.formal-experience .topbar{flex-direction:column;align-items:flex-start}.formal-experience .controls{justify-content:flex-start}.formal-experience .his{min-height:560px}}@media (width<=650px){.formal-experience{border-radius:0}.formal-experience .experience-shell{padding:12px}.formal-experience .workspace{display:block}.formal-experience .phone-column{margin-bottom:18px}.formal-experience .phone{border-width:5px;border-radius:25px;width:100%;height:680px;min-height:600px}.formal-experience .patient-strip dl{display:none}.formal-experience .his-tabs{grid-template-columns:repeat(3,1fr)}.formal-experience .controls{flex-direction:column;align-items:flex-start}}.formal-experience .doc-images{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;max-width:900px;margin-top:18px;display:grid}.formal-experience .doc-images figure{border:1px solid var(--sim-line);background:#f2f7f9;border-radius:10px;margin:0;overflow:hidden}.formal-experience .doc-images img{object-fit:contain;background:#eef4f6;width:100%;max-height:420px;display:block}.formal-experience .doc-image-pending{color:#6b8494;background:#eef4f6;place-items:center;min-height:160px;font-size:.8rem;display:grid}.formal-experience .doc-images figcaption{color:#5b7484;padding:8px 10px;font-size:.78rem}.formal-experience[data-theme=dark] .doc-images figure{background:#1d2b31}.formal-experience[data-theme=dark] .doc-image-pending{color:#9fb6c1;background:#22343c}.formal-experience[data-theme=dark] .doc-images figcaption{color:#b7cad2}.report-page{background:#f5f8fa;gap:1.35rem;width:min(100%,1180px)}.report-hero{color:#effbff;background:linear-gradient(130deg,#083d56,#086f82 65%,#1599a8);border-radius:16px;justify-content:space-between;align-items:flex-start;gap:2rem;padding:1.5rem;display:flex;box-shadow:0 18px 44px #0a485527}.report-hero h1{margin:.25rem 0 .7rem;font-size:clamp(1.65rem,3vw,2.5rem)}.report-hero p:last-child{color:#d9f0f4;max-width:760px;line-height:1.75}.report-lock{text-align:right;gap:.3rem;min-width:150px;display:grid}.report-lock span{font-weight:800}.report-stats{grid-template-columns:repeat(4,1fr);gap:.8rem;display:grid}.report-stats article{background:#fff;border:1px solid #dce6ea;border-radius:12px;gap:.2rem;padding:1rem 1.15rem;display:grid}.report-stats strong{color:#087b8a;font-size:1.7rem}.report-panel{background:#fff;border:1px solid #dce6ea;border-radius:15px;gap:1.2rem;padding:clamp(1.15rem,2.4vw,1.7rem);display:grid;box-shadow:0 10px 28px #173e4b0a}.panel-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.panel-heading h2{margin-top:.25rem}.panel-heading>p{color:#647780;text-align:right;max-width:520px;line-height:1.65}.trajectory-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.trajectory-list li{grid-template-columns:2.2rem 1fr;align-items:start;gap:.8rem;display:grid}.trajectory-index{color:#fff;background:#078998;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;font-weight:800;display:grid}.trajectory-list li>div{border-bottom:1px solid #e4ebee;gap:.35rem;padding:.2rem 0 1rem;display:grid}.trajectory-list blockquote,.moment-card blockquote,.target-grid blockquote{color:#405b64;background:#f5fafb;border-left:3px solid #66b7c0;margin:.25rem 0 0;padding:.7rem .9rem;line-height:1.6}.outcome-summary{color:#495e66;background:#eef5f6;border-radius:10px;padding:1rem;line-height:1.7}.profile-grid{grid-template-columns:minmax(330px,.9fr) minmax(380px,1.1fr);align-items:start;gap:1.5rem;display:grid}.radar-figure{text-align:center;margin:0}.radar-figure svg{width:min(100%,410px);overflow:visible}.radar-ring{fill:none;stroke:#d6e4e8;stroke-width:1px}.radar-figure line{stroke:#d6e4e8;stroke-width:1px}.radar-value{fill:#0c99a746;stroke:#087f8d;stroke-width:3px}.radar-figure text{fill:#4c6871;font-size:12px}.radar-figure figcaption{color:#70838a;font-size:.78rem;line-height:1.5}.radar-point{stroke:#fff;stroke-width:2px}.radar-point.touched{fill:#e4a658}.radar-point.not-observed{fill:#c9d2d5}.touchpoint-legend{flex-wrap:wrap;justify-content:center;gap:.55rem;margin:-.25rem 0 .55rem;display:flex}.touchpoint-legend span,.touchpoint-state{border-radius:99px;padding:.24rem .55rem;font-size:.72rem;font-weight:750}.touchpoint-legend .not-observed{color:#687b82;background:#edf1f2}.communication-signature{gap:.75rem;display:grid}.signature-stage{background:radial-gradient(circle,#f9ffff 0 15%,#0000 38%),linear-gradient(145deg,#eff8f8,#fbfdfe 56%,#f2f6fb);border:1px solid #dbe9eb;border-radius:18px;min-height:390px;position:relative;overflow:hidden}.signature-stage:before,.signature-stage:after{content:"";opacity:.13;background:#71c3c8;border-radius:50%;position:absolute}.signature-stage:before{width:220px;height:220px;top:-118px;right:-46px}.signature-stage:after{width:130px;height:130px;bottom:-70px;left:9%}.signature-stage svg{width:100%;height:100%;position:absolute;inset:0}.signature-stage svg path{fill:none;stroke:#8ecbd0;stroke-width:1.6px;stroke-dasharray:5 8}.signature-stage svg circle{fill:none;stroke:#cee3e5;stroke-width:1px}.signature-core{text-align:center;color:#fff;background:linear-gradient(145deg,#0b7180,#1597a0);border:8px solid #dff1f1;border-radius:50%;place-items:center;width:164px;height:164px;padding:1rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 38px #0b6e7a2d}.signature-core span{letter-spacing:.08em;font-size:.76rem}.signature-core strong{margin:-.1rem 0;font-size:2.25rem;line-height:1}.signature-core small{color:#dff7f7}.signature-node{z-index:2;background:#ffffffed;border:1px solid #d4e5e7;border-radius:14px;grid-template-columns:2.25rem 1fr;align-items:center;gap:.65rem;width:min(31%,245px);min-height:78px;padding:.85rem 1rem;display:grid;position:absolute;box-shadow:0 12px 28px #184a5613}.signature-node span{color:#0a7885;background:#ddf2f2;border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-size:.76rem;font-weight:850;display:grid}.signature-node strong{color:#164d59;line-height:1.35}.signature-node.node-1{top:7%;left:50%;transform:translate(-50%)}.signature-node.node-2{bottom:9%;left:6%}.signature-node.node-3{bottom:9%;right:6%}.signature-dot{z-index:1;background:#e0a34d;border:3px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 0 0 1px #e0a34d}.signature-dot.dot-1{top:29%;left:28%}.signature-dot.dot-2{top:62%;right:25%}.signature-dot.dot-3{background:#74a7ca;width:8px;height:8px;top:22%;right:16%;box-shadow:0 0 0 1px #74a7ca}.signature-captions{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.signature-captions article{border-top:2px solid #cbe4e6;grid-template-columns:2rem 1fr;gap:.55rem;padding:.8rem .9rem;display:grid}.signature-captions span{color:#0a8290;font-size:.76rem;font-weight:850}.signature-captions p{color:#526970;line-height:1.55}.orientation-card{gap:.75rem;display:grid}.orientation-kicker{color:#70848a;letter-spacing:.08em;font-size:.74rem;font-weight:800}.orientation-label{color:#0d6977;font-size:1.2rem;font-weight:800}.orientation-scale{background:#e6ebed;border-radius:99px;height:13px;display:flex;overflow:hidden}.orientation-scale .rational{background:#247bad}.orientation-scale .affective{background:#d77886}.orientation-legend{color:#647780;justify-content:space-between;font-size:.8rem;display:flex}.orientation-card>p{color:#405b64;line-height:1.65}.dimension-notes{gap:.55rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.dimension-notes li{border-top:1px solid #e4ebee;grid-template-columns:9rem 1fr;gap:.75rem;padding-top:.55rem;display:grid}.dimension-notes strong{color:#305d68}.dimension-notes span{color:#637780;line-height:1.55}.dimension-notes li>div{align-content:start;gap:.35rem;display:grid}.dimension-notes .touchpoint-state{justify-self:start}.untouched-touchpoints{border-top:1px solid #e5edef;flex-wrap:wrap;align-items:center;gap:.45rem;padding-top:.9rem;display:flex}.untouched-touchpoints>span{color:#6a7d84;margin-right:.25rem;font-size:.78rem;font-weight:750}.untouched-touchpoints small{color:#718289;background:#f0f3f4;border-radius:99px;padding:.3rem .55rem}.moment-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:.9rem;display:grid}.moment-card{background:#fbfdfe;border:1px solid #dce6ea;border-radius:12px;align-content:start;gap:.65rem;padding:1rem;display:grid}.moment-card small{color:#75868d}.moment-card p{color:#526970;line-height:1.65}.target-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;display:grid}.target-grid section{background:#fff;border:1px solid #d8e4e8;border-radius:15px;align-content:start;gap:.85rem;padding:1.15rem;display:grid;overflow:hidden;box-shadow:0 10px 28px #163d4910}.target-grid section>header{grid-template-columns:2.5rem 1fr;align-items:center;gap:.75rem;display:grid}.target-grid h3{color:#174d5a;font-size:1.05rem}.target-number{color:#fff;letter-spacing:.08em;background:#168b96;border-radius:11px;place-items:center;width:2.5rem;height:2.5rem;font-size:.75rem;font-weight:900;display:grid}.target-action{background:linear-gradient(135deg,#e6f4f3,#f2f8fa);border-radius:11px;padding:1rem}.target-action small,.target-grid blockquote small{color:#157581;letter-spacing:.06em;margin-bottom:.3rem;font-size:.72rem;font-weight:850;display:block}.target-action p{color:#174b57;font-size:1.02rem;font-weight:750;line-height:1.65}.target-grid blockquote{background:#fffbf3;border-left:3px solid #e0a34d;margin:0;padding:.85rem 1rem}.target-grid blockquote p{color:#4c5d61;line-height:1.6}.target-reason{color:#667a81;grid-template-columns:7rem 1fr;gap:.65rem;padding-top:.2rem;font-size:.84rem;line-height:1.55;display:grid}.target-reason b{color:#45616a}.teach-back-workspace{grid-template-columns:minmax(280px,.72fr) minmax(440px,1.28fr);align-items:stretch;gap:1rem;display:grid}.source-dialogue,.teach-back-chat{background:#fff;border:1px solid #d7e5e8;border-radius:14px}.source-dialogue{grid-template-rows:auto 1fr;min-height:500px;display:grid;overflow:hidden}.source-dialogue>header{background:#fbfdfe;border-bottom:1px solid #e2eaed;padding:1rem 1.05rem}.source-dialogue>header small{color:#71848b}.source-dialogue>header h3{color:#244e59;margin-top:.3rem;font-size:1rem;line-height:1.45}.source-dialogue>div{align-content:start;gap:.65rem;max-height:445px;padding:1rem;display:grid;overflow-y:auto}.source-dialogue p{border-radius:10px;grid-template-columns:2.5rem 1fr;gap:.55rem;padding:.75rem;line-height:1.55;display:grid}.source-dialogue p.student{background:#eaf5fb}.source-dialogue p.patient{background:#f1f3f4}.teach-back-chat{flex-direction:column;min-height:500px;display:flex;overflow:hidden;box-shadow:0 13px 32px #163e4b10}.chat-window-header{background:#fbfdfe;border-bottom:1px solid #e0e9ec;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.chat-window-header>div{align-items:center;gap:.7rem;display:flex}.chat-window-header>div>div{gap:.12rem;display:grid}.chat-window-header strong{color:#234d58}.chat-window-header small{color:#70838a;font-size:.72rem}.chat-window-header small i{background:#43aa79;border-radius:50%;width:7px;height:7px;margin-right:.3rem;display:inline-block}.chat-window-header>span{color:#147481;background:#e5f3f3;border-radius:99px;padding:.3rem .55rem;font-size:.72rem;font-weight:750}.chat-avatar{color:#fff;background:linear-gradient(145deg,#1595a0,#0b6f7d);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-weight:800;display:grid}.teach-back-thread{background:linear-gradient(#f8fbfc,#fff);flex-direction:column;flex:1;gap:.85rem;min-height:250px;max-height:440px;padding:1rem;display:flex;overflow-y:auto}.chat-message{background:#edf1f2;border-radius:14px 14px 14px 4px;align-self:flex-start;gap:.35rem;max-width:88%;padding:.85rem 1rem;display:grid}.chat-message.student{color:#174b58;background:#dff1f7;border-radius:14px 14px 4px;align-self:flex-end}.chat-message small{color:#6b7e85;font-size:.72rem;font-weight:750}.chat-message p{line-height:1.65}.patient-question{background:#fffaf0;border-left:3px solid #e0a34d;gap:.25rem;margin:.25rem 0;padding:.65rem .75rem;display:grid}.patient-question span{color:#87611c;font-size:.72rem;font-weight:800}.patient-question p{color:#5b6264}.teach-back-compose{background:#fff;border-top:1px solid #e0e9ec;grid-template-columns:1fr auto;align-items:end;gap:.7rem;padding:.85rem;display:grid}.teach-back-compose textarea{resize:none;border:1px solid #bfcfd5;border-radius:11px;min-height:62px;max-height:130px;padding:.75rem .85rem;line-height:1.5}.teach-back-compose textarea:focus{border-color:#5aacb4;outline:2px solid #83c8ce55}.teach-back-compose button{white-space:nowrap;min-height:44px}.understanding-result{grid-template-columns:1fr 1fr;gap:.65rem;width:100%;display:grid}.understanding-result>div{background:#fff;border:1px solid #dce6e9;border-radius:10px;padding:.8rem}.understanding-result small{color:#0d7480;font-weight:800}.understanding-result p{color:#526970;margin-top:.3rem;line-height:1.55}.loading-report{align-content:center;min-height:360px}.report-loading-bar{background:#dfeaec;border-radius:99px;width:min(100%,520px);height:7px;overflow:hidden}.report-loading-bar span{border-radius:inherit;background:#078998;width:35%;height:100%;animation:1.4s ease-in-out infinite alternate report-loading;display:block}.pdf-download-panel{color:#eaf8f6;background:linear-gradient(115deg,#153f49,#236d68);border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex;box-shadow:0 16px 34px #153f4920}.pdf-download-panel>div{gap:.28rem;display:grid}.pdf-download-panel strong{color:#fff;font-size:1rem}.pdf-download-panel span{color:#cce4e0;font-size:.84rem;line-height:1.55}.pdf-download-panel button{color:#153f49;background:#fff;border-color:#fff;flex:none}@media (width<=820px){.report-hero,.panel-heading{flex-direction:column;align-items:flex-start}.report-lock,.panel-heading>p{text-align:left}.report-stats{grid-template-columns:repeat(2,1fr)}.profile-grid,.teach-back-workspace{grid-template-columns:1fr}.dimension-notes li{grid-template-columns:1fr;gap:.25rem}.signature-stage{gap:.65rem;min-height:auto;padding:1rem;display:grid}.signature-stage svg,.signature-dot{display:none}.signature-core,.signature-node{width:100%;height:auto;min-height:0;position:relative;inset:auto;transform:none}.signature-core{border-width:0;border-radius:13px;grid-template-columns:auto auto 1fr;justify-content:center;gap:.5rem}.signature-core strong{font-size:1.5rem}.signature-node{grid-template-columns:2.25rem 1fr}.signature-captions{grid-template-columns:1fr}.source-dialogue{min-height:0}.source-dialogue>div{max-height:340px}.target-reason{grid-template-columns:1fr;gap:.2rem}}@media (width<=520px){.report-stats,.teach-back-compose,.understanding-result{grid-template-columns:1fr}.teach-back-compose button{width:100%}.target-grid{grid-template-columns:1fr}.pdf-download-panel{flex-direction:column;align-items:stretch}.pdf-download-panel button{width:100%}}.knowledge-panel{background:linear-gradient(#fff,#f7fbf7);border-color:#cfe0cf}.knowledge-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.85rem;display:grid}.knowledge-card{background:#fff;border:1px solid #dbe8db;border-radius:12px;gap:.55rem;padding:.95rem 1rem;display:grid}.knowledge-card header{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.knowledge-card header small{color:#5c7a5c;font-weight:700}.knowledge-level{color:#2f6b3c;background:#e6f4e6;border-radius:99px;padding:.18rem .5rem;font-size:.72rem;font-weight:750}.knowledge-card blockquote{color:#4a5a4a;background:#f4faf4;border-left:3px solid #9cc79c;border-radius:6px;margin:0;padding:.5rem .7rem;line-height:1.55}.knowledge-card p{color:#4f5f57;line-height:1.6}.knowledge-card p b{color:#2f6b3c;margin-right:.4rem}.knowledge-matched{color:#3d6b47}.knowledge-missing{color:#8a6320}.report-page{background:0 0;gap:1.15rem}.report-hero{box-shadow:var(--xy-shadow);background:radial-gradient(720px 340px at 92% -20%,#28e3974d,#0000 62%),radial-gradient(520px 320px at -6% 118%,#02a36b75,#0000 64%),linear-gradient(150deg,#0c2619,#11402a 68%,#0a1c12);border-radius:22px}.report-hero h1{color:#f3faf6}.report-hero p:last-child{color:#ffffffb8}.report-lock small{color:#ffffff8c}.report-stats article{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:18px}.report-stats strong{color:var(--xy-green)}.report-stats span{color:var(--xy-muted)}.report-panel{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:20px}.panel-heading>p{color:var(--xy-muted)}.trajectory-index{background:var(--xy-green)}.trajectory-list li>div{border-bottom:1px solid var(--xy-line)}.trajectory-list small{color:var(--xy-muted)}.trajectory-list strong{color:var(--xy-green-ink)}.trajectory-list blockquote,.moment-card blockquote,.target-grid blockquote{color:#43584b;background:#f4faf6;border-left-color:#7cc9a2}.outcome-summary{color:#43584b;background:#eef6f0;border-radius:14px}.radar-value{fill:#02a36b42;stroke:#0f8f61}.radar-ring,.radar-figure line{stroke:#d9e8de}.radar-figure text{fill:#5f7568}.radar-point.clear{fill:#0f8f61}.touchpoint-legend .clear,.touchpoint-state.clear{color:#0f5c3b;background:#e2f5ea}.touchpoint-legend .touched,.touchpoint-state.touched{color:#8a6413;background:#fdf3d7}.signature-stage{border:1px solid var(--xy-line);background:radial-gradient(circle,#f7fdf9 0 15%,#0000 38%),linear-gradient(145deg,#eef8f1,#fbfdfc 56%,#f2f8f4)}.signature-stage svg path{stroke:#8fcaa9}.signature-core{background:linear-gradient(145deg,#0d6a44,#12a067);border-color:#d9f0e3;box-shadow:0 18px 38px #0f5c3b40}.signature-node{border:1px solid var(--xy-line);border-radius:16px}.signature-node span{color:#0f5c3b;background:#e2f5ea}.signature-node strong{color:#17402c}.orientation-label{color:#0f5c3b}.target-number{background:#0f8f61}.target-action{background:linear-gradient(135deg,#e8f6ee,#f3faf6)}.target-action small,.target-grid blockquote small{color:#0f5c3b}.target-action p{color:#17402c}.target-grid section{border:1px solid var(--xy-line);box-shadow:var(--xy-shadow-soft);border-radius:18px}.moment-card{border:1px solid var(--xy-line);background:#fbfdfc;border-radius:16px}.moment-card h3{color:var(--xy-green-ink)}.teach-back-panel{background:linear-gradient(#fff,#f6fbf8);border-color:#cbe6d6}.chat-window-header>span{color:#0f5c3b;background:#e2f5ea}.pdf-download-panel{background:linear-gradient(115deg,#123f2a,#1f6a48);border-radius:18px;box-shadow:0 16px 34px #0f5c3b38}.report-loading-bar{background:#e3efe7}.report-loading-bar span{background:linear-gradient(90deg,#1cb870,#02a36b)}.knowledge-suggestion b{color:#0f5c3b}.muted{color:var(--xy-muted)}.teacher-page{color:#1f3942;background:#fff;border:1px solid #dce6e9;border-radius:14px;align-content:start;gap:.9rem;width:min(100%,1440px);min-width:0;height:100%;min-height:0;padding:clamp(.85rem,1.5vw,1.25rem);display:grid;overflow:auto;box-shadow:0 12px 34px #1738420c}.teacher-page h1,.teacher-page h2,.teacher-page h3,.teacher-page p{min-width:0;margin:0}.teacher-page h1{color:#173f4b;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.35rem,2vw,1.8rem);overflow:hidden}.teacher-page h2{font-size:1.08rem}.teacher-page h3{font-size:.95rem}.teacher-heading,.panel-title,.section-heading{justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.teacher-heading>div:first-child,.section-heading>div:first-child{gap:.28rem;min-width:0;display:grid}.teacher-heading p:not(.eyebrow),.section-heading>p{color:#60747d;font-size:.9rem}.heading-actions{white-space:nowrap;flex:none;gap:.55rem;display:flex}.teacher-panel{background:#fff;border:1px solid #dce6e9;border-radius:12px;align-content:start;gap:.85rem;min-width:0;padding:1rem;display:grid}.empty-copy,.muted{color:#6c7c83;line-height:1.6}.teacher-metrics{grid-template-columns:repeat(4,1fr);gap:.7rem;display:grid}.teacher-metrics article{background:#f3f9f8;border:1px solid #dbe9e7;border-radius:10px;gap:.22rem;padding:.85rem 1rem;display:grid}.teacher-metrics span{color:#64777e;font-size:.86rem}.recent-panel{min-height:0}.compact-list{align-content:start;gap:.5rem;min-height:0;display:grid;overflow:auto}.compact-list>button{text-align:left;justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.compact-list span{gap:.15rem;min-width:0;display:grid}.compact-list strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compact-list small,.compact-list em{color:#6c7a81;white-space:nowrap;font-style:normal}.teacher-library-page{grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.library-layout{grid-template-columns:268px minmax(0,1fr);gap:.9rem;min-height:0;display:grid}.case-sidebar{background:#f7fafb;border:1px solid #dce5e9;border-radius:12px;grid-template-rows:auto minmax(0,1fr);gap:.55rem;min-height:0;padding:.75rem;display:grid}.sidebar-title{justify-content:space-between;align-items:center;padding:.2rem .35rem;display:flex}.sidebar-title span{text-align:center;color:#27766e;background:#e1f0ed;border-radius:99px;min-width:1.8rem;padding:.16rem .4rem}.case-scroll{align-content:start;gap:.38rem;min-height:0;display:grid;overflow:auto}.case-sidebar button{text-align:left;gap:.22rem;min-width:0;padding:.65rem .7rem;display:grid}.case-sidebar button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-sidebar button.selected{color:#fff;background:#277b70;border-color:#277b70}.case-sidebar small{opacity:.8}.overview-main,.overview-stack{gap:.75rem;min-width:0;min-height:0;display:grid}.overview-main{overflow:auto}.library-empty{text-align:center;color:#708087;background:#fafcfc;border:1px dashed #cbd8dc;border-radius:12px;place-content:center;gap:.5rem;min-height:100%;display:grid}.library-empty>span{color:#2a7a72;letter-spacing:.08em;font-size:.78rem;font-weight:700}.draft-overview{align-self:start}.teacher-modal{z-index:30;background:#102b3070;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.teacher-modal form{background:#fff;border-radius:14px;gap:.8rem;width:min(650px,100%);max-height:92vh;padding:1.2rem;display:grid;overflow:auto;box-shadow:0 20px 60px #0b222b40}.teacher-modal header,.teacher-modal footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.teacher-modal textarea{resize:vertical;min-height:86px;font:inherit;border:1px solid #b8c4d0;border-radius:7px;padding:.65rem}.teacher-modal footer{justify-content:flex-end}.danger{color:#9e2f2f;border-color:#dfb5b5}.status-pill{color:#6b7076;background:#eef1f3;border-radius:99px;flex:none;padding:.28rem .65rem}.status-pill.published{color:#16645b;background:#dff2ed}.summary-grid{grid-template-columns:repeat(4,1fr);gap:.6rem;display:grid}.summary-grid span,.node-stat-strip span,.report-meta span{color:#61717a;background:#f3f8f8;border-radius:8px;gap:.18rem;min-width:0;padding:.72rem;display:grid}.summary-grid strong,.node-stat-strip strong,.report-meta strong{color:#1d5c59;text-overflow:ellipsis;white-space:nowrap;font-size:1.15rem;overflow:hidden}.case-action-grid{flex-wrap:wrap;gap:.5rem;display:flex}.experience-panel{min-height:0}.experience-table{border:1px solid #dfe7ea;border-radius:8px;min-width:680px;display:grid;overflow:hidden}.experience-table>div{border-top:1px solid #edf1f3;grid-template-columns:.8fr .65fr minmax(180px,1.3fr) .9fr;gap:.6rem;min-width:0;padding:.6rem .75rem;display:grid}.experience-table>div>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.experience-table .experience-head{color:#61717a;background:#f4f7f8;border-top:0;font-size:.82rem;font-weight:700}.experience-table i{border-radius:50%;width:.45rem;height:.45rem;margin-right:.35rem;display:inline-block}.experience-table i.done{background:#2c8a7d}.experience-table i.active{background:#d59b32}.teacher-build-page{grid-template-rows:auto auto minmax(0,1fr);gap:.6rem;width:min(100%,1800px);min-width:0;height:100%;min-height:0;display:grid}.build-header{background:#fff;border:1px solid #dce5e9;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:.7rem .9rem;display:flex}.build-header>div:first-child{min-width:0}.build-header h1{text-overflow:ellipsis;white-space:nowrap;max-width:46vw;margin:.08rem 0 0;font-size:1.08rem;overflow:hidden}.build-status{white-space:nowrap;flex:none;align-items:center;gap:.42rem;display:flex}.build-status>span{color:#52716b;font-size:.8rem}.build-notice{color:#674e14;background:#fff9e9;border:1px solid #e6d59f;border-radius:7px;margin:0;padding:.48rem .75rem}.build-workspace{grid-template-columns:minmax(650px,1fr) minmax(330px,410px);gap:.7rem;min-width:0;min-height:0;display:grid}.authoring-surface{background:#fff;border:1px solid #cedce0;border-radius:11px;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-tabs{background:#f7fafb;border-bottom:1px solid #dce6e9;gap:.2rem;padding:.45rem .55rem 0;display:flex}.workspace-tabs button{border-bottom:3px solid #0000;border-radius:7px 7px 0 0}.workspace-tabs button.selected{color:#176d65;background:#fff;border-bottom-color:#2b8b80}.graph-editor{background:#fff;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.graph-toolbar{white-space:nowrap;background:#fff;border-bottom:1px solid #dce5e9;flex-wrap:nowrap;align-items:center;gap:.32rem;min-width:0;padding:.45rem .55rem;display:flex;overflow-x:auto}.graph-toolbar>div{min-width:150px;margin-right:auto;display:grid}.graph-toolbar>div span{color:#6d7b81;font-size:.72rem}.graph-toolbar button{padding:.34rem .5rem;font-size:.78rem}.graph-toolbar button.active{color:#fff;background:#73588b}.toolbar-separator{background:#dbe3e6;width:1px;height:1.5rem}.zoom-value{text-align:center;color:#607178;min-width:3rem;font-size:.76rem}.graph-body{grid-template-columns:minmax(0,1fr) 310px;min-width:0;min-height:0;display:grid}.graph-canvas-scroll{cursor:grab;touch-action:none;background:#f6f9fa;min-width:0;min-height:0;overflow:auto}.graph-canvas-scroll:active{cursor:grabbing}.graph-scaled{position:relative}.graph-canvas{transform-origin:0 0;background-image:radial-gradient(#cfdde1 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0 auto auto 0}.graph-canvas svg{pointer-events:none;position:absolute;inset:0;overflow:visible}.graph-canvas path{fill:none;stroke:#91a6ae;stroke-width:2px;marker-end:url(#teacher-arrow)}.graph-canvas marker path{fill:#91a6ae;stroke:none}.graph-node{text-align:left;touch-action:none;border-radius:9px;align-content:start;gap:.3rem;width:218px;height:118px;padding:.62rem;display:grid;position:absolute;overflow:hidden;box-shadow:0 3px 10px #1a2e3814}.graph-node>span{justify-content:space-between;gap:.5rem;display:flex}.graph-node em{color:#6a7880;font-size:.71rem;font-style:normal}.graph-node strong,.graph-node small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.graph-node small{color:#53666f;font-size:.76rem}.graph-node i{color:#735d1b;font-size:.69rem;font-style:normal}.graph-node.dialogue_event{border-left:6px solid #c4707f}.graph-node.non_dialogue_event{border-left:6px solid #558da8}.graph-node.judgment_condition{background:#fdfaff;border-left:6px solid #8b70a1}.graph-node.selected{outline:3px solid #7fc2b8}.graph-node.locked{opacity:.72}.graph-empty{text-align:center;color:#718087;position:absolute;top:45%;left:0;right:0}.graph-inspector{background:#fbfcfc;border-left:1px solid #dce5e9;align-content:start;gap:.7rem;min-width:0;min-height:0;padding:.75rem;display:grid;overflow:auto}.graph-inspector>header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.graph-inspector>header>div{gap:.16rem;min-width:0;display:grid}.graph-inspector>header span:first-child{color:#6a7b82;font-size:.72rem}.graph-inspector>header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-fields{gap:.62rem;display:grid}.node-fields label{font-size:.8rem}.node-fields input,.node-fields textarea{width:100%;font:inherit;border:1px solid #c4d0d5;border-radius:6px;padding:.5rem}.node-fields textarea{resize:vertical;min-height:74px}.checkbox-field{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.checkbox-field input{width:auto}.inspector-help{color:#718087;font-size:.75rem;line-height:1.45}.editable-badge,.locked-badge{border-radius:99px;flex:none;padding:.2rem .45rem;font-size:.7rem}.editable-badge{color:#17665d;background:#dff2ed}.locked-badge{color:#7a5e24;background:#f5ecd8}.inline-notice{color:#6a5a2d;font-size:.78rem;line-height:1.45}.agent-panel{background:#fff;border:1px solid #cadad6;border-radius:10px;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid;overflow:hidden}.agent-head{border-bottom:1px solid #dae5e2;justify-content:space-between;align-items:center;padding:.68rem .75rem;display:flex}.agent-dot{background:#34a693;border-radius:50%;width:.62rem;height:.62rem;margin-right:.4rem;display:inline-block}.agent-head small{color:#6b7d77}.agent-messages{background:#f5f9f8;align-content:start;gap:.62rem;min-height:0;padding:.72rem;display:grid;overflow:auto}.agent-messages article{background:#fff;border-radius:10px;gap:.3rem;max-width:94%;padding:.6rem .7rem;display:grid;box-shadow:0 1px 3px #23332e12}.agent-messages article.teacher{background:#dff1ec;justify-self:end}.agent-messages span{color:#65766f;font-size:.7rem}.agent-messages p{white-space:pre-wrap;line-height:1.5}.agent-messages ul{color:#536761;margin:.2rem 0 0;padding-left:1rem;font-size:.78rem}.agent-review ul{color:inherit}.agent-input{border-top:1px solid #dae5e2;gap:.45rem;padding:.65rem;display:grid}.agent-input textarea{resize:vertical;min-height:76px;font:inherit;border:1px solid #b8c4d0;border-radius:7px;padding:.6rem}.agent-input>div{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.agent-input small{color:#6c7b76;font-size:.73rem;line-height:1.35}.material-workspace{grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.material-tabs{white-space:nowrap;border-bottom:1px solid #e0e8ea;flex-wrap:nowrap;gap:.35rem;padding:.7rem;display:flex;overflow-x:auto}.material-tabs button.selected{color:#fff;background:#26746b;border-color:#26746b}.material-editor{grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr);gap:1rem;min-height:0;padding:1rem;display:grid;overflow:auto}.material-copy,.material-gallery{align-content:start;gap:.8rem;display:grid}.material-editor textarea{resize:vertical;min-height:260px;font:inherit;border:1px solid #b8c4d0;border-radius:7px;padding:.7rem}.upload-box{background:#f5faf8;border:1px dashed #83a9a1;border-radius:8px;padding:.75rem}.upload-box span{color:#647a74;font-size:.75rem;font-weight:400}.material-images{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;display:grid}.material-images figure{border:1px solid #d8e2df;border-radius:8px;margin:0;overflow:hidden}.material-images img,.material-images figure>div{object-fit:cover;background:#f1f4f3;place-items:center;width:100%;height:125px;display:grid}.material-images figcaption{justify-content:space-between;align-items:center;gap:.4rem;padding:.4rem;font-size:.76rem;display:flex}.material-images figcaption span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-images figcaption button{padding:.22rem .38rem}.check-dialog{z-index:25;background:#10211c7a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.check-dialog>div{background:#fff;border-radius:12px;gap:.75rem;width:min(620px,100%);max-height:88vh;padding:1.3rem;display:grid;overflow:auto}.check-dialog h3{margin:.3rem 0 0}.check-dialog ul{margin:0;padding-left:1.2rem}.check-error{color:#8e2e27;background:#fff0ef;border-radius:7px;padding:.65rem}.review-confirm{grid-template-columns:auto 1fr;align-items:center;display:flex}.review-confirm input{width:auto}.scope-notice,.pending-report{color:#6b5519;background:#fff9e9;border:1px solid #ead9a6;border-radius:8px;margin:0;padding:.68rem .9rem}.node-stat-strip{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.teacher-nodes-page{grid-template-rows:auto auto auto minmax(0,1fr);overflow:hidden}.teacher-nodes-page .graph-editor{border:1px solid #cedce0;border-radius:11px}.class-report-page{overflow:auto}.report-hero{color:#eaf8f6;background:#174f58;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.05rem;display:grid}.report-hero>div:first-child{gap:.4rem;display:grid}.report-hero .eyebrow{color:#8fe0d2}.report-hero h2{color:#fff;font-size:1.3rem}.report-hero p{max-width:790px;line-height:1.65}.report-hero small{color:#b9d7d7}.report-meta{grid-template-columns:repeat(3,minmax(95px,1fr));gap:.45rem;display:grid}.report-meta span{color:#cce0df;background:#ffffff12}.report-meta strong{color:#fff}.insight-section{gap:.7rem;display:grid}.insight-grid{grid-template-columns:repeat(3,1fr);gap:.7rem;display:grid}.insight-grid article{background:#f5faf9;border:1px solid #d6e5e3;border-radius:11px;align-content:start;gap:.42rem;padding:.9rem;display:grid}.insight-grid article>span{color:#26766e;font-size:.76rem;font-weight:700}.insight-grid article p{color:#5c7077;font-size:.86rem}.insight-grid article footer{color:#355f5d;border-top:1px solid #dce9e7;margin-top:.25rem;padding-top:.55rem;font-size:.8rem;line-height:1.5}.decision-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.decision-grid article{background:#f7f9fa;border-radius:9px;gap:.55rem;padding:.8rem;display:grid}.decision-grid article>header,.decision-row>div:first-child{justify-content:space-between;gap:.6rem;display:flex}.decision-grid header span,.decision-row strong{color:#6a7a81;font-size:.76rem}.decision-row{grid-template-columns:minmax(0,1fr) 3rem;gap:.3rem .6rem;display:grid}.decision-row>div:first-child{grid-column:1/-1}.decision-bar{background:#e1eae9;border-radius:99px;height:.55rem;overflow:hidden}.decision-bar i{border-radius:inherit;background:#338b80;height:100%;display:block}.decision-row em{color:#3d6865;text-align:right;font-size:.78rem;font-style:normal}.report-grid{grid-template-columns:1.1fr .9fr;gap:.8rem;display:grid}.pattern-panel>div{gap:.45rem;display:grid}.report-bullets,.discussion-list{color:#4e626b;gap:.5rem;margin:0;padding-left:1.2rem;line-height:1.55;display:grid}.trajectory-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.7rem;display:grid}.trajectory-grid article{border:1px solid #dce5e9;border-radius:9px;align-content:start;gap:.6rem;padding:.8rem;display:grid}.trajectory-grid article>div{gap:.25rem;display:grid}.trajectory-grid span{color:#557078;font-size:.75rem}.trajectory-grid b{color:#276f68;font-size:.86rem}.trajectory-grid blockquote{color:#53646c;background:#f5f9f8;border-left:3px solid #8ebbb3;margin:0;padding:.5rem;line-height:1.5}.touchpoint-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.touchpoint-grid article{background:#f4f8f7;border-radius:8px;gap:.45rem;padding:.75rem;display:grid}.touchpoint-grid header,.touchpoint-grid footer{justify-content:space-between;gap:.5rem;display:flex}.touchpoint-grid header span,.touchpoint-grid footer{color:#697a80;font-size:.72rem}.touchpoint-grid article>div{background:#e6eceb;border-radius:99px;height:.55rem;display:flex;overflow:hidden}.touchpoint-grid i.clear{background:#267e73}.touchpoint-grid i.developing{background:#d8a44f}.touchpoint-grid i.none{background:#cbd4d6}.evidence-details summary{cursor:pointer;color:#2c6e68;font-weight:700}.bar-list{gap:.55rem;display:grid}.bar-list>div{grid-template-columns:minmax(180px,1.2fr) minmax(120px,1fr) 2rem 4.2rem;align-items:center;gap:.55rem;font-size:.8rem;display:grid}.bar-list>div>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bar-list span small{color:#728087;margin-right:.45rem}.bar-list>div>div{background:#e8efed;border-radius:99px;height:.5rem;overflow:hidden}.bar-list i{border-radius:inherit;background:#3b8a7f;height:100%;display:block}.bar-list em{color:#74848a;font-style:normal}.pdf-policy{color:#315d5a;background:#f2f8f6;border:1px solid #cde1dd;border-radius:8px;margin:0;padding:.72rem .9rem;font-size:.84rem;line-height:1.55}@media (width<=1180px){.build-workspace{grid-template-columns:minmax(560px,1fr) 340px}.graph-body{grid-template-columns:minmax(0,1fr) 280px}.insight-grid,.report-hero{grid-template-columns:1fr}.report-meta{width:100%}}@media (width<=980px){.teacher-page,.teacher-build-page{height:auto;max-height:none;overflow:visible}.teacher-library-page,.teacher-nodes-page{grid-template-rows:auto}.library-layout,.build-workspace,.report-grid{grid-template-columns:1fr}.case-sidebar{max-height:260px}.authoring-surface{min-height:720px}.agent-panel{min-height:600px}.decision-grid,.touchpoint-grid,.material-editor{grid-template-columns:1fr}}@media (width<=680px){.teacher-heading,.build-header,.section-heading{flex-direction:column;align-items:stretch}.heading-actions,.build-status{width:100%;overflow-x:auto}.teacher-metrics,.summary-grid,.node-stat-strip,.report-meta{grid-template-columns:repeat(2,1fr)}.library-layout{grid-template-columns:1fr}.case-sidebar{max-height:240px}.graph-body{grid-template-columns:1fr}.graph-inspector{border-top:1px solid #dce5e9;border-left:0;max-height:420px}.authoring-surface{min-height:900px}.insight-grid{grid-template-columns:1fr}.experience-panel{overflow-x:auto}.build-header h1{max-width:100%}.bar-list>div{grid-template-columns:1fr 2rem}.bar-list>div>div{grid-column:1/-1}.bar-list em{display:none}}.knowledge-panel .knowledge-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;display:grid}.knowledge-panel article{background:#fff;border:1px solid #dbe8db;border-radius:12px;gap:.5rem;padding:.9rem 1rem;display:grid}.knowledge-panel article header{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.knowledge-panel article header strong{color:#2f6b3c}.knowledge-panel article header span{color:#71848b;font-size:.74rem}.knowledge-levels{flex-wrap:wrap;gap:.4rem;display:flex}.knowledge-levels span{color:#2f6b3c;background:#e6f4e6;border-radius:99px;padding:.18rem .5rem;font-size:.74rem;font-weight:700}.knowledge-panel p b{color:#8a6320;margin-right:.4rem}.agent-messages article.pending{opacity:.72}.agent-messages article.pending small{color:#6c7b76;font-size:.7rem}.agent-message-image{margin-top:.3rem}.agent-image-preview div{gap:.15rem;min-width:0;display:grid}.agent-image-preview span{color:#5d716b;text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;line-height:1.35;overflow:hidden}.agent-image-preview button{margin-left:auto}.agent-image-button{color:#2c6e68;cursor:pointer;background:#f2f9f7;border:1px solid #bcd6d1;border-radius:7px;align-items:center;padding:.32rem .55rem;font-size:.8rem;display:inline-flex}.teacher-build-page{gap:.55rem;height:calc(100dvh - 122px);min-height:560px;overflow:hidden}.build-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:.7rem;min-height:0}.authoring-surface{min-height:0}.agent-panel{grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.build-header{gap:.6rem}.build-status{flex-wrap:nowrap}.build-status button{white-space:nowrap}.agent-head{justify-content:flex-start;align-items:center;gap:.55rem;display:flex}.agent-head-avatar{border-radius:50%;flex:none;width:32px;height:32px}.agent-head>div{gap:.05rem;min-width:0;display:grid}.agent-head strong{font-size:.92rem}.agent-head small{color:#6b7d77;font-size:.72rem;line-height:1.3}.agent-dot{display:none}.agent-messages{flex-direction:column;gap:.7rem;padding:.8rem;display:flex}.agent-message{align-items:flex-start;gap:.45rem;max-width:100%;display:flex}.agent-message.teacher{flex-direction:row-reverse}.agent-avatar{border-radius:50%;flex:none;width:26px;height:26px;margin-top:.1rem}.agent-bubble{background:#fff;border:1px solid #e2ebe9;border-radius:10px;gap:.3rem;max-width:calc(100% - 42px);padding:.55rem .7rem;display:grid;box-shadow:0 1px 3px #23332e10}.agent-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.agent-bubble ul{color:#536761;margin:.05rem 0 0;padding-left:1rem;font-size:.78rem;line-height:1.45}.agent-bubble small{color:#7a8a85;font-size:.7rem}.agent-message.pending .agent-bubble{opacity:.72}.agent-review{color:#6d571f;background:#fff9e8;border:1px solid #ead9a7;border-radius:7px;gap:.2rem;margin-top:.15rem;padding:.45rem .5rem;display:grid}.agent-review strong{font-size:.74rem}.agent-message-image img{border-radius:7px;max-width:100%;max-height:200px;display:block}.agent-composer{border-top:1px solid #dae5e2;gap:.4rem;padding:.6rem;display:grid}.agent-composer textarea{resize:vertical;min-height:64px;max-height:160px;font:inherit;border:1px solid #c3d0d8;border-radius:8px;padding:.55rem .6rem;line-height:1.5}.agent-composer-bar{align-items:center;gap:.5rem;display:flex}.agent-composer-bar .hint{color:#6c7b76;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.72rem;overflow:hidden}.agent-composer-bar .primary{white-space:nowrap;padding:.42rem 1.15rem}.agent-image-button{color:#2c6e68;cursor:pointer;white-space:nowrap;background:#f2f9f7;border:1px solid #bcd6d1;border-radius:8px;align-items:center;padding:.34rem .6rem;font-size:.78rem;display:inline-flex}.agent-image-button input{display:none}.agent-image-preview{background:#f2f8f6;border:1px solid #cfe0dc;border-radius:8px;align-items:center;gap:.55rem;padding:.45rem;display:flex}.agent-image-preview img{object-fit:cover;border-radius:6px;width:48px;height:48px}.agent-image-preview>div{gap:.1rem;min-width:0;display:grid}.agent-image-preview strong{font-size:.76rem}.agent-image-preview span{color:#5d716b;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;line-height:1.3;display:block;overflow:hidden}.agent-image-preview button{white-space:nowrap;margin-left:auto}@media (width<=1180px){.build-workspace{grid-template-columns:minmax(0,1fr) minmax(300px,340px)}}@media (width<=980px){.teacher-build-page{height:auto;min-height:0;overflow:visible}.build-workspace{grid-template-columns:1fr}.authoring-surface{min-height:600px}.agent-panel{min-height:520px}}.agent-message.failed .agent-bubble{background:#fff3f1;border-color:#e3b7b1}.agent-retry{color:#8e2e27;cursor:pointer;background:#fff;border:1px solid #e3b7b1;border-radius:7px;justify-self:start;margin-top:.15rem;padding:.3rem .6rem;font-size:.74rem}.teacher-page{width:min(100%,1320px);height:100%;box-shadow:none;color:var(--xy-text);background:0 0;border:0;border-radius:0;gap:1rem;padding:clamp(1rem,2vw,1.5rem) clamp(.4rem,1.2vw,.8rem)}.teacher-build-page{width:min(100%,1760px)}.teacher-heading{color:#ffffffeb;box-shadow:var(--xy-shadow);background:radial-gradient(720px 340px at 92% -20%,#28e3974d,#0000 62%),radial-gradient(520px 320px at -6% 118%,#02a36b75,#0000 64%),linear-gradient(150deg,#0c2619,#11402a 68%,#0a1c12);border-radius:22px;align-items:flex-end;padding:clamp(1.2rem,2.4vw,1.8rem) clamp(1.2rem,2.8vw,2rem);position:relative;overflow:visible}.teacher-heading:after{content:"";opacity:.2;pointer-events:none;border-radius:inherit;background-image:radial-gradient(#ffffff24 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.teacher-heading>*{z-index:1;position:relative}.teacher-heading h1{color:#f3faf6;white-space:nowrap}.teacher-heading p:not(.eyebrow){color:#ffffffa8}.teacher-heading .eyebrow{color:#4fd99e}.teacher-heading .heading-actions button{color:#fff;background:#ffffff1a;border-color:#ffffff3d}.teacher-heading .heading-actions button:hover:not(:disabled){color:#fff;background:#fff3;border-color:#ffffff75}.teacher-heading .heading-actions button.primary{border-color:var(--xy-green);background:var(--xy-green);box-shadow:0 12px 26px #02a36b61}.teacher-heading .heading-actions button.primary:hover:not(:disabled){background:#059466;border-color:#059466}.teacher-metrics article{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:18px}.teacher-metrics strong{color:var(--xy-green);font-size:1.8rem}.graph-inspector>.primary{justify-self:start;padding:.5rem 1.3rem}.teacher-panel{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:20px}.teacher-panel .panel-title h2{color:var(--xy-green-ink)}.compact-list>button{border:1px solid var(--xy-line);background:var(--xy-card);border-radius:14px;padding:.8rem .9rem}.compact-list>button:hover:not(:disabled){background:#f3faf6;border-color:#02a36b66}.compact-list small,.compact-list em{color:var(--xy-muted)}.case-sidebar{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:20px}.case-sidebar button{border-radius:12px}.case-sidebar button.selected{color:#fff;border-color:var(--xy-green-deep);background:var(--xy-green-deep)}.sidebar-title span{color:var(--xy-green-deep);background:#e2f5ea}.library-empty{border-color:var(--xy-line-strong);color:var(--xy-muted);background:#ffffffa6;border-radius:20px}.library-empty>span{color:var(--xy-green)}.teacher-modal form{border-radius:20px}.teacher-modal{background:#0818108c}.build-header{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:18px;padding:.75rem 1rem}.build-status>span{color:var(--xy-muted)}.build-notice{color:#6b5519;border-color:#e6d59f;border-radius:12px}.authoring-surface{border:1px solid var(--xy-line);box-shadow:var(--xy-shadow-soft);border-radius:18px}.workspace-tabs{border-bottom:1px solid var(--xy-line);background:#f3f9f5}.workspace-tabs button.selected{color:var(--xy-green-deep);border-bottom-color:var(--xy-green);background:#fff}.graph-toolbar{border-bottom:1px solid var(--xy-line)}.graph-body{background:#f6faf7}.graph-node{border:1px solid var(--xy-line-strong);background:#fff;border-radius:12px;box-shadow:0 6px 16px #0f2f1f14}.graph-node.selected{border-color:var(--xy-green);box-shadow:0 0 0 2px #02a36b38,0 8px 20px #0f2f1f1a}.graph-inspector{border-left:1px solid var(--xy-line);background:#fff}.agent-panel{border:1px solid var(--xy-line);box-shadow:var(--xy-shadow-soft);border-radius:18px}.agent-head{border-bottom:1px solid var(--xy-line);background:linear-gradient(90deg,#f2faf5,#fff)}.agent-messages{background:#f5faf6}.agent-bubble{border:1px solid var(--xy-line);border-radius:12px}.agent-message.teacher .agent-bubble{background:#ddf3e6;border-color:#c6e8d5}.agent-composer{border-top:1px solid var(--xy-line)}.agent-image-button{color:var(--xy-green-deep);background:#f2f9f5;border:1px solid #bcdcc9;border-radius:8px}.agent-image-preview{border:1px solid var(--xy-line);background:#f4faf6;border-radius:10px}.scope-notice,.pending-report{border-radius:12px}.pdf-policy{color:var(--xy-green-deep);background:#f2f8f4;border-color:#cde1d4;border-radius:12px}.node-stat-strip span{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);color:var(--xy-muted);border-radius:16px;gap:.2rem;padding:.85rem 1rem;font-size:.82rem;display:grid}.node-stat-strip strong{color:var(--xy-green-ink);font-size:1.45rem}.class-report-page .report-hero{color:var(--xy-text);background:var(--xy-card);border:1px solid var(--xy-line);box-shadow:var(--xy-shadow-soft);border-radius:20px}.class-report-page .report-hero .eyebrow{color:var(--xy-green)}.class-report-page .report-hero h2{color:var(--xy-green-ink)}.class-report-page .report-hero p{color:var(--xy-text)}.class-report-page .report-hero small{color:var(--xy-muted)}.class-report-page .report-meta span{color:var(--xy-muted);background:var(--xy-soft);border-radius:12px}.class-report-page .report-meta strong{color:var(--xy-green)}.insight-grid article{border:1px solid var(--xy-line);background:var(--xy-card);box-shadow:var(--xy-shadow-soft);border-radius:16px}.insight-grid article>span{color:var(--xy-green)}.insight-grid article footer{border-top:1px solid var(--xy-line);color:var(--xy-green-deep)}.decision-grid article,.touchpoint-grid article,.trajectory-grid article{border:1px solid var(--xy-line);background:var(--xy-card);border-radius:16px}.teacher-build-page{height:100%;min-height:460px}.landing-frame-root{background:#fff;width:100%;height:100%}.landing-frame{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:0;width:100%;height:100%;display:block}@media (width<=650px){.landing-frame-root{height:100dvh}}.showcase-live{--safe-top:96px;--safe-bottom:168px;color:#173246;perspective:1900px;background:radial-gradient(circle at 12% 0,#fbfefe,#eaf2f4 72%);width:100vw;height:100vh;font-family:system-ui,Microsoft YaHei,sans-serif;position:relative;overflow:hidden}.showcase-live *{box-sizing:border-box}.showcase-live-screen{transform-origin:43% 48%;will-change:transform;width:100%;height:100%;transition:transform 1.05s cubic-bezier(.18,.78,.2,1),filter .7s,opacity .5s;animation:.65s cubic-bezier(.18,.78,.2,1) both showcase-screen-in;overflow:hidden}.showcase-live-screen.screen-student,.showcase-live-screen.screen-teacher,.showcase-live-screen.screen-report,.showcase-live-screen.screen-class{padding:var(--safe-top) 54px var(--safe-bottom);background:radial-gradient(circle at 18% 0,#fbfefe,#eaf2f4 76%);place-items:center;display:grid}.showcase-live-screen :where(small,label,button,input,textarea,select),.showcase-live-screen :where(.muted,.hint,.eyebrow,.section-kicker,.meta,.caption){font-size:max(.82rem,1em)}.showcase-live-screen.screen-student .formal-experience{width:min(1640px,100vw - 112px);height:calc(100vh - var(--safe-top) - var(--safe-bottom));transform-origin:50% 48%;min-height:0;transform:scale(1.04)}.showcase-live-screen.screen-teacher .teacher-build-page{width:min(1660px,100vw - 108px);height:calc(100vh - var(--safe-top) - var(--safe-bottom));transform-origin:50% 48%;max-height:none;transform:scale(1.05)}.showcase-live-screen.screen-report .student-page,.showcase-live-screen.screen-class .teacher-page{scroll-behavior:auto;align-self:center;width:min(1600px,100vw - 150px);height:min(68vh,720px);max-height:min(68vh,720px)}.showcase-live[data-scene-id=his-tour] .his-page{animation:.58s cubic-bezier(.16,.8,.25,1) both showcase-document-in}.showcase-live[data-camera=report-overview] .camera-report-overview,.showcase-live[data-camera=report-focus] .camera-report-focus,.showcase-live[data-camera=teachback] .camera-teachback,.showcase-live[data-camera=class-overview] .camera-class-overview,.showcase-live[data-camera=class-focus] .camera-class-focus{filter:saturate(.94)drop-shadow(0 34px 44px #18384527);transform:translate3d(-10.5%,-1.5%,-52px)rotateY(7deg)rotateX(1deg)scale(.88)}.showcase-live[data-scene-id=report-overview] .report-page>.report-hero,.showcase-live[data-scene-id=report-overview] .report-page>.profile-panel,.showcase-live[data-scene-id=report-overview] .report-page>.practice-panel,.showcase-live[data-scene-id=report-overview] .report-page>.teach-back-panel,.showcase-live[data-scene-id=report-overview] .report-page>.report-panel:not(.trajectory-panel):not(.profile-panel):not(.practice-panel):not(.teach-back-panel),.showcase-live[data-scene-id=report-overview] .report-page>.student-actions,.showcase-live[data-scene-id=report-focus] .report-page>.report-hero,.showcase-live[data-scene-id=report-focus] .report-page>.report-stats,.showcase-live[data-scene-id=report-focus] .report-page>.trajectory-panel,.showcase-live[data-scene-id=report-focus] .report-page>.profile-panel,.showcase-live[data-scene-id=report-focus] .report-page>.practice-panel,.showcase-live[data-scene-id=report-focus] .report-page>.teach-back-panel,.showcase-live[data-scene-id=report-focus] .report-page>.student-actions,.showcase-live[data-scene-id=report-focus] .report-page .moment-card:not(:first-child){display:none}.showcase-live[data-scene-id=report-focus] .report-page .moment-grid{grid-template-columns:minmax(0,1fr)}.showcase-live[data-scene-id=teachback] .report-page>.report-hero,.showcase-live[data-scene-id=teachback] .report-page>.report-stats,.showcase-live[data-scene-id=teachback] .report-page>.report-panel:not(.teach-back-panel),.showcase-live[data-scene-id=teachback] .report-page>.student-actions,.showcase-live[data-scene-id=class-overview] .class-report-page>.teacher-heading,.showcase-live[data-scene-id=class-overview] .class-report-page>.teacher-panel,.showcase-live[data-scene-id=class-overview] .class-report-page>.report-grid,.showcase-live[data-scene-id=class-overview] .class-report-page>details,.showcase-live[data-scene-id=class-focus] .class-report-page>.teacher-heading,.showcase-live[data-scene-id=class-focus] .class-report-page>.report-hero,.showcase-live[data-scene-id=class-focus] .class-report-page>.insight-section,.showcase-live[data-scene-id=class-focus] .class-report-page>.teacher-panel:not(.decision-panel),.showcase-live[data-scene-id=class-focus] .class-report-page>details,.showcase-live[data-scene-id=class-focus] .class-report-page .decision-grid article:first-child{display:none}.showcase-live[data-scene-id=class-focus] .class-report-page .decision-grid{grid-template-columns:minmax(0,1fr)}.showcase-live[data-scene-id=teacher-graph] .graph-node{animation:2.8s ease-in-out infinite showcase-node-breathe}.showcase-live[data-scene-id=teacher-graph] .graph-node:nth-child(2n){animation-delay:.35s}.showcase-live[data-scene-id=continuity] .event-card{animation:.9s cubic-bezier(.16,.8,.25,1) both showcase-event-arrive,2.6s ease-in-out 1s infinite showcase-event-glow}.showcase-live[data-scene-id=report-overview] .trajectory-list li{animation:.7s both showcase-row-rise}.showcase-live[data-scene-id=report-overview] .trajectory-list li:nth-child(2){animation-delay:.13s}.showcase-live[data-scene-id=report-overview] .trajectory-list li:nth-child(3){animation-delay:.26s}.showcase-live[data-scene-id=report-focus] .moment-card:first-child{animation:.9s cubic-bezier(.16,.8,.25,1) both showcase-evidence-in}.showcase-live[data-scene-id=teachback] .understanding-result>div{animation:.65s both showcase-row-rise}.showcase-live[data-scene-id=teachback] .understanding-result>div:nth-child(2){animation-delay:.16s}.showcase-live[data-scene-id=class-overview] .insight-grid article{animation:.75s both showcase-row-rise}.showcase-live[data-scene-id=class-overview] .insight-grid article:nth-child(2){animation-delay:.14s}.showcase-live[data-scene-id=class-overview] .insight-grid article:nth-child(3){animation-delay:.28s}.showcase-live[data-scene-id=class-focus] .decision-bar i{transform-origin:0;animation:1.15s cubic-bezier(.16,.8,.25,1) both showcase-bar-grow}.showcase-live[data-scene-id=class-focus] .discussion-list li{animation:.65s both showcase-row-rise}.showcase-scene-label{z-index:34;color:#173e4b;grid-template-columns:auto 1fr;align-items:center;gap:13px;max-width:760px;animation:.45s both showcase-label-in;display:grid;position:absolute;top:24px;left:32px}.showcase-scene-label>small{color:#0d7d87;letter-spacing:.08em;background:#f8fcfccc;border:1px solid #c7dadd;border-radius:99px;padding:7px 10px;font-size:.75rem;font-weight:850}.showcase-scene-label>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;display:grid}.showcase-scene-label span{color:#126f79;letter-spacing:.12em;font-size:.82rem;font-weight:850}.showcase-scene-label strong{color:#49666e;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:650;overflow:hidden}.showcase-live[data-camera=background] .showcase-scene-label span,.showcase-live[data-camera=title] .showcase-scene-label span,.showcase-live[data-camera=architecture] .showcase-scene-label span,.showcase-live[data-camera=closing] .showcase-scene-label span{color:#8ee3da}.showcase-live[data-camera=background] .showcase-scene-label strong,.showcase-live[data-camera=title] .showcase-scene-label strong,.showcase-live[data-camera=architecture] .showcase-scene-label strong,.showcase-live[data-camera=closing] .showcase-scene-label strong{color:#c7e3e3}.showcase-live-progress{z-index:35;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#102f3d7d;border:1px solid #ffffff52;border-radius:99px;gap:5px;padding:7px 9px;display:flex;position:absolute;top:28px;right:32px}.showcase-live-progress i{background:#ffffff45;border-radius:99px;width:11px;height:3px;transition:all .35s}.showcase-live-progress i.active{background:#8ce2d8;width:21px}.screen-title{padding:0}.showcase-title{color:#effbfa;text-align:center;background:radial-gradient(circle at 50% 42%,#167783,#0a4255 52%,#061f33 88%);align-content:center;justify-items:center;gap:18px;width:100%;height:100%;padding:130px 90px 180px;display:grid;position:relative;overflow:hidden}.showcase-title:before{content:"";border:1px solid #8ee3da18;border-radius:50%;width:72vw;height:72vw;animation:30s linear infinite showcase-orbit;position:absolute;box-shadow:0 0 0 9vw #8ee3da08,0 0 0 18vw #8ee3da04}.showcase-title>*{z-index:2;position:relative}.showcase-title span{color:#8ce2d8;letter-spacing:.2em;font-size:1rem;font-weight:900}.showcase-title h1{justify-items:center;gap:16px;margin:0;line-height:1.02;display:grid}.showcase-title h1 strong{letter-spacing:-.075em;font-size:clamp(5.2rem,7.4vw,7.7rem)}.showcase-title h1 small{color:#effbfa;letter-spacing:-.035em;font-size:clamp(2.15rem,3.15vw,3.35rem);font-weight:850;line-height:1.22}.showcase-title p{color:#c6e3e3;letter-spacing:.08em;margin:0;font-size:1.35rem;font-weight:700}.showcase-title i{background:linear-gradient(90deg,#7bdad0,#f0b15e);border-radius:99px;width:120px;height:4px;margin-top:12px;animation:1.4s .3s both showcase-bar-grow}.showcase-live[data-camera=title] .showcase-scene-label,.showcase-live[data-camera=title] .showcase-live-progress{display:none}.showcase-director-card{z-index:30;color:#173e4b;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#f9fdfdf0;border:1px solid #d2e3e6c7;border-radius:22px;gap:12px;width:min(31vw,430px);padding:27px 28px;animation:.75s cubic-bezier(.16,.8,.25,1) both showcase-card-in;display:grid;position:absolute;top:22%;right:4.6%;box-shadow:0 28px 70px #173b4931}.showcase-director-card:before{content:"";background:linear-gradient(#11a0a8,#efad54);border-radius:22px 0 0 22px;width:4px;position:absolute;inset:0 auto 0 0}.showcase-director-card>span{color:#12808a;letter-spacing:.18em;font-size:.66rem;font-weight:850}.showcase-director-card h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2.35vw,2.25rem);line-height:1.25}.showcase-director-card>p{color:#587079;margin:0;font-size:.94rem;line-height:1.65}.showcase-director-metric{border-top:1px solid #dce8ea;grid-template-columns:auto 1fr;align-items:end;gap:8px 12px;margin-top:8px;padding-top:15px;display:grid;position:relative}.showcase-director-metric strong{color:#0f7b86;font-size:2.25rem;line-height:1}.showcase-director-metric small{color:#60757c;line-height:1.35}.showcase-director-metric i{transform-origin:0;background:linear-gradient(90deg,#11939d 0 72%,#dbe8ea 72%);border-radius:99px;grid-column:1/-1;height:3px;animation:1.1s .35s both showcase-bar-grow}.showcase-report-context{z-index:31;color:#173e4b;text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8fcfce8;border:1px solid #c9dfe2d6;border-radius:15px;justify-items:center;gap:3px;min-width:330px;padding:10px 22px 11px;animation:.65s both showcase-label-in;display:grid;position:absolute;top:92px;left:34%;transform:translate(-50%);box-shadow:0 15px 34px #173b4924}.showcase-report-context span{color:#11818b;letter-spacing:.16em;font-size:.65rem;font-weight:900}.showcase-report-context strong{letter-spacing:.04em;font-size:1.16rem}.showcase-report-context.context-teacher{border-color:#e4d5bdd6}.showcase-report-context.context-teacher span{color:#a76824}.screen-background{padding:0}.showcase-background{color:#eefafa;background:linear-gradient(125deg,#08283b 0%,#0c5160 55%,#16746e 100%);grid-template-rows:auto 1fr auto;gap:clamp(24px,3.5vh,40px);width:100%;height:100%;padding:116px 92px 168px;display:grid;position:relative;overflow:clip}.showcase-background:before{content:"";border:1px solid #ffffff12;border-radius:50%;height:110%;animation:24s linear infinite showcase-orbit;position:absolute;inset:-35% 35% auto -20%;box-shadow:0 0 0 9vw #ffffff07,0 0 0 18vw #ffffff04}.showcase-background header{z-index:2;gap:10px;max-width:1040px;display:grid;position:relative}.showcase-background header span{color:#8ee4db;letter-spacing:.2em;font-size:.76rem;font-weight:850}.showcase-background header h1{letter-spacing:-.055em;margin:0;font-size:clamp(3rem,5.1vw,5.1rem);line-height:1.08}.showcase-background header p{color:#c7e5e5;margin:0;font-size:1.15rem;font-weight:700}.background-topics{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px;display:grid;position:relative}.background-topics article{background:#ffffff10;border:1px solid #ffffff2b;border-radius:24px;grid-template-columns:auto 1fr;align-content:end;gap:6px 12px;min-height:260px;padding:22px;animation:.75s both showcase-row-rise;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 55px #0419273d}.background-topics article:nth-child(2){animation-delay:.12s}.background-topics article:nth-child(3){animation-delay:.24s}.background-image-slot{opacity:.55;position:absolute;inset:0}.background-image-slot:after{content:"";background:linear-gradient(#0b304012,#092938e8 78%);position:absolute;inset:0}.background-image-slot img{object-fit:cover;width:100%;height:100%}.background-topics article:first-child .background-image-slot img{object-position:50% 48%}.background-topics article:nth-child(2) .background-image-slot img{object-position:50% 55%}.background-topics article:nth-child(3) .background-image-slot img{object-position:50% 52%}.background-image-slot i{border:1px solid #a8ece342;border-radius:50%;width:92px;height:92px;position:absolute;top:22%;left:50%;transform:translate(-50%);box-shadow:0 0 0 30px #8bded514,0 0 0 60px #8bded50b}.background-image-slot b{color:#b7eee8;font-size:2rem;position:absolute;top:20%;left:50%;transform:translate(-50%,50%)}.background-topics article>span,.background-topics article>h2,.background-topics article>p{z-index:2;position:relative}.background-topics article>span{color:#7fdad1;grid-row:1/3;font-size:.8rem;font-weight:900}.background-topics h2{margin:0;font-size:1.5rem}.background-topics p{color:#cfe7e7;grid-column:2;margin:0;line-height:1.6}.showcase-background footer{z-index:2;color:#cbe7e6;letter-spacing:.08em;align-items:center;gap:16px;font-size:.82rem;display:flex;position:relative}.showcase-background footer i{background:#9be2db66;width:44px;height:1px}.showcase-background footer strong{color:#fff;margin-left:auto;font-size:1.05rem}.screen-architecture{padding:0}.showcase-architecture{color:#eaf8f7;background:radial-gradient(circle at 48% 42%,#176d77,#0c3a4d 50%,#071f32 82%);grid-template-rows:auto auto auto;align-content:center;gap:28px;width:100%;height:100%;padding:118px 76px 170px;display:grid;position:relative;overflow:hidden}.showcase-architecture:before{content:"";border:1px solid #ffffff0d;border-radius:50%;animation:28s linear infinite showcase-orbit;position:absolute;inset:-55%;box-shadow:0 0 0 10vw #ffffff05,0 0 0 20vw #ffffff03}.showcase-architecture>header{z-index:2;text-align:center;gap:7px;display:grid;position:relative}.showcase-architecture>header span{color:#8fe0d8;letter-spacing:.18em;font-size:.92rem;font-weight:850}.showcase-architecture>header h1{letter-spacing:-.055em;margin:0;font-size:clamp(3.3rem,5.35vw,5.5rem);line-height:1.02}.showcase-architecture>header p{color:#b9d8db;margin:0;font-size:1.08rem}.architecture-system{z-index:2;grid-template-columns:.9fr 1.55fr .9fr;align-items:stretch;gap:22px;width:min(100%,1500px);margin:0 auto;display:grid;position:relative}.architecture-system>section{background:#ffffff0c;border:1px solid #ffffff20;border-radius:24px;min-width:0;padding:24px;box-shadow:0 22px 50px #020f1930}.architecture-system small{color:#79d7cf;letter-spacing:.15em;font-size:.78rem;font-weight:850}.architecture-system h2{margin:6px 0 18px;font-size:1.55rem}.architecture-inputs>div{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.architecture-inputs span{color:#d9efee;background:#ffffff0b;border:1px solid #ffffff16;border-radius:16px;place-items:center;min-height:86px;font-size:1.05rem;font-weight:750;display:grid}.architecture-engine{background:linear-gradient(145deg,#1a7b8144,#ffffff0a)!important}.architecture-engine>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.architecture-engine article{min-height:112px;animation:showcase-agent-rise .65s calc(var(--agent-index) * .1s) both;background:#071f2d4f;border:1px solid #8cded329;border-radius:16px;align-content:center;gap:6px;padding:15px 14px 15px 32px;display:grid;position:relative;overflow:hidden}.architecture-engine article i{background:linear-gradient(#75ddd3,#e5a75e);border-radius:99px;width:6px;height:38px;position:absolute;left:14px}.architecture-engine article strong{font-size:1.08rem}.architecture-engine article span{color:#a9ccce;font-size:.82rem;line-height:1.4}.architecture-engine footer{background:#061c29a8;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:14px;padding:13px 15px;display:grid}.architecture-engine footer b{color:#8ee2da;font-size:1.03rem}.architecture-engine footer span{color:#b7d4d5;font-size:.72rem}.architecture-outputs>div{gap:11px;display:grid}.architecture-outputs article{background:#ffffff0b;border:1px solid #ffffff16;border-radius:16px;align-content:center;gap:4px;min-height:86px;padding:15px 18px;display:grid}.architecture-outputs b{color:#e9f8f7}.architecture-outputs span{color:#a9ccce;font-size:.88rem}.architecture-loop{z-index:2;color:#c3dfe0;letter-spacing:.08em;justify-content:center;align-items:center;gap:15px;font-size:.92rem;font-weight:750;display:flex;position:relative}.architecture-loop i{background:linear-gradient(90deg,#7edbd200,#7edbd2,#7edbd200);width:64px;height:1px;animation:2.4s linear infinite showcase-flow;overflow:hidden}.screen-pdf{padding:0}.pdf-report-showcase{color:#173b49;background:radial-gradient(circle at 88% 15%,#fff,#e7f0f2 65%,#d9e7e9);grid-template-columns:minmax(410px,.78fr) minmax(920px,1.45fr);gap:42px;width:100%;height:100%;padding:112px 70px 166px 82px;display:grid;position:relative;overflow:clip}.pdf-report-showcase:before{content:"";border:1px solid #0f859316;border-radius:50%;width:65vw;height:65vw;position:absolute;bottom:-50%;right:-18%;box-shadow:0 0 0 7vw #0f859307,0 0 0 14vw #0f859305}.pdf-report-copy{z-index:3;align-content:center;gap:16px;display:grid;position:relative}.pdf-report-copy>span{color:#0b838e;letter-spacing:.18em;font-size:.75rem;font-weight:900}.pdf-report-copy h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.8rem,4.3vw,4.7rem);line-height:1.08}.pdf-report-copy>p{color:#5b747c;max-width:570px;margin:0;font-size:1.05rem;line-height:1.65}.pdf-report-points{gap:10px;margin-top:4px;display:grid}.pdf-report-points article{background:#ffffffa8;border:1px solid #cbdcdf;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:13px;padding:13px 15px;display:grid;box-shadow:0 12px 28px #173b4910}.pdf-report-points i{color:#0b7e88;background:#e0f1f1;border-radius:50%;place-items:center;width:39px;height:39px;font-size:.72rem;font-style:normal;font-weight:900;display:grid}.pdf-report-points div{gap:3px;display:grid}.pdf-report-points strong{font-size:.95rem}.pdf-report-points span{color:#668087;font-size:.76rem}.pdf-report-decks{z-index:2;transform-origin:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:24px;display:grid;position:relative;transform:perspective(1500px)rotateY(-7deg)rotateX(1deg)translate(1.5%)}.pdf-deck{transform-origin:top;gap:10px;animation:1.15s cubic-bezier(.16,.8,.25,1) both showcase-page-turn;display:grid}.pdf-teacher-deck{animation-delay:90ms}.pdf-deck header{justify-content:space-between;align-items:end;padding:0 4px;display:flex}.pdf-deck header div{gap:2px;display:grid}.pdf-deck header span{color:#0c8490;letter-spacing:.15em;font-size:.59rem;font-weight:900}.pdf-deck header strong{font-size:1.02rem}.pdf-deck header b{color:#688087;letter-spacing:.08em;font-size:.72rem}.pdf-paper{background:#fff;border:1px solid #cbdadd;border-radius:10px;overflow:hidden;box-shadow:0 28px 55px #173b4930}.pdf-paper img{aspect-ratio:595.28/841.89;object-fit:cover;width:100%;display:block}.screen-closing{padding:0}.showcase-summary{color:#effafa;background:radial-gradient(circle at 18% 20%,#126979,#082d42 52%,#061e31 86%);grid-template-rows:auto auto auto;align-content:center;gap:40px;width:100%;height:100%;padding:132px 96px 176px;display:grid;position:relative;overflow:hidden}.showcase-summary:before{content:"";border:1px solid #9de2da16;border-radius:50%;width:70vw;height:70vw;animation:30s linear infinite reverse showcase-orbit;position:absolute;bottom:-45%;right:-12%;box-shadow:0 0 0 8vw #9de2da08,0 0 0 16vw #9de2da05}.showcase-summary header{z-index:2;text-align:center;gap:10px;max-width:1250px;margin:0 auto;display:grid;position:relative}.showcase-summary header span{color:#8ee3da;letter-spacing:.19em;font-size:.9rem;font-weight:900}.showcase-summary header h1{letter-spacing:-.055em;margin:0;font-size:clamp(3.5rem,5.5vw,5.8rem);line-height:1.04}.showcase-summary header p{color:#bad9dc;margin:0;font-size:1.15rem}.summary-grid{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));align-self:center;gap:22px;display:grid;position:relative}.summary-grid article{background:#ffffff0d;border:1px solid #ffffff24;border-radius:24px;align-content:center;gap:8px;min-height:218px;padding:28px;animation:.72s both showcase-row-rise;display:grid;box-shadow:0 24px 55px #020f1930}.summary-grid article:nth-child(2){animation-delay:.13s}.summary-grid article:nth-child(3){animation-delay:.26s}.summary-grid i{color:#7edbd2;font-size:.92rem;font-style:normal;font-weight:900}.summary-grid span{color:#173e4b;letter-spacing:.1em;font-size:.88rem;font-weight:850}.summary-grid h2{margin:0;font-size:1.8rem}.summary-grid p{color:#c2dcdd;margin:0;font-size:1.02rem;line-height:1.6}.showcase-summary footer{z-index:2;text-align:center;border-top:1px solid #ffffff1e;justify-items:center;gap:4px;padding-top:20px;display:grid;position:relative}.showcase-summary footer span{color:#78d9d0;letter-spacing:.16em;font-size:.78rem;font-weight:900}.showcase-summary footer strong{letter-spacing:.02em;font-size:2.2rem}.showcase-summary footer p{color:#d7ebeb;margin:0;font-size:1rem;font-weight:750}@keyframes showcase-screen-in{0%{opacity:0;filter:blur(7px)}to{opacity:1;filter:blur()}}@keyframes showcase-document-in{0%{opacity:.2;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes showcase-label-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes showcase-card-in{0%{opacity:0;transform:translate(38px)rotateY(-7deg)}to{opacity:1;transform:translate(0)rotateY(0)}}@keyframes showcase-row-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes showcase-evidence-in{0%{opacity:0;transform:translate(-20px,20px)scale(.97)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes showcase-agent-rise{0%{opacity:0;transform:translateY(13px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes showcase-page-turn{0%{opacity:.1;transform:translateY(52px)rotateX(-16deg)}to{opacity:1;transform:translateY(0)rotateX(0)}}@keyframes showcase-node-breathe{0%,to{filter:drop-shadow(0 5px 10px #0e778414)}50%{filter:drop-shadow(0 10px 22px #0e8e9b42)}}@keyframes showcase-event-arrive{0%{opacity:0;transform:translateY(28px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes showcase-event-glow{0%,to{box-shadow:0 10px 22px #0e596613}50%{box-shadow:0 14px 32px #1498a343}}@keyframes showcase-bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes showcase-orbit{to{transform:rotate(360deg)}}@keyframes showcase-flow{0%{background-position:-64px 0}to{background-position:64px 0}}@media (width<=1280px){.showcase-live{--safe-top:72px;--safe-bottom:112px}.showcase-live-screen.screen-student,.showcase-live-screen.screen-teacher,.showcase-live-screen.screen-report,.showcase-live-screen.screen-class{padding-left:40px;padding-right:40px}.showcase-background,.showcase-architecture,.showcase-summary{padding-left:54px;padding-right:54px}.architecture-system{grid-template-columns:.8fr 1.5fr .8fr;gap:13px}.pdf-report-showcase{grid-template-columns:420px 1fr;gap:20px;padding-left:54px;padding-right:38px}.pdf-report-decks{gap:12px}.showcase-director-card{width:34vw;right:3%}}.showcase-live .pdf-download-panel,.showcase-live .knowledge-panel,.showcase-live[data-scene-id=class-overview] .class-report-page>.pdf-policy,.showcase-live[data-scene-id=class-overview] .class-report-page>.pending-report,.showcase-live[data-scene-id=class-overview] .class-report-page>.notice,.showcase-live[data-scene-id=class-focus] .class-report-page>.pdf-policy,.showcase-live[data-scene-id=class-focus] .class-report-page>.pending-report,.showcase-live[data-scene-id=class-focus] .class-report-page>.notice{display:none}.showcase-live-screen.screen-report .report-page,.showcase-live-screen.screen-class .class-report-page{overflow:hidden}.showcase-live[data-scene-id=dialogue] .formal-experience .advance-button,.showcase-live[data-scene-id=continuity] .formal-experience .advance-button,.showcase-live[data-scene-id=his-tour] .formal-experience .advance-button{display:none}:root{--xy-green:#02a36b;--xy-green-bright:#1cb870;--xy-green-deep:#0f5c3b;--xy-green-ink:#10241a;--xy-text:#2f4338;--xy-muted:#66796d;--xy-line:#122e201a;--xy-line-strong:#122e2033;--xy-bg:#f2f6f2;--xy-card:#fff;--xy-soft:#eef6f0;--xy-shadow:0 16px 42px #0f2f1f14;--xy-shadow-soft:0 8px 22px #0f2f1f0f;--xy-radius:16px;--xy-font:"Noto Sans SC", "Microsoft YaHei", "PingFang SC", "Source Han Sans CN", system-ui, sans-serif}html,body{font-family:var(--xy-font)}body{color:var(--xy-text);background:var(--xy-bg)}.app-main{background:radial-gradient(1100px 460px at 88% -12%,#1cb8701a,#0000 62%),radial-gradient(820px 420px at -8% 106%,#02a36b12,#0000 60%)}h1,h2,h3{color:var(--xy-green-ink)}button{border:1px solid var(--xy-line-strong);color:var(--xy-text);background:#fff;border-radius:10px;transition:border-color .2s,background-color .2s,color .2s,box-shadow .2s}button:where(:hover:not(:disabled)){color:var(--xy-green-deep);background:#f3faf6;border-color:#02a36b80}button.primary{border-color:var(--xy-green);color:#fff;background:var(--xy-green);box-shadow:0 10px 22px #02a36b3d}button.primary:hover:not(:disabled){color:#fff;background:#059466;border-color:#059466}button.danger{color:#a33a2c;border-color:#a33a2c52}button.danger:hover:not(:disabled){color:#fff;background:#b64530;border-color:#a33a2c}input,select,textarea{border:1px solid var(--xy-line-strong);color:var(--xy-text);background:#fff;border-radius:10px}input:focus,select:focus,textarea:focus{border-color:var(--xy-green);outline-offset:1px;outline:2px solid #02a36b40}.eyebrow{color:var(--xy-green);letter-spacing:.14em;text-transform:none}.intro{color:var(--xy-muted)}.notice{color:#a33a2c}.hint{color:var(--xy-muted)}.teacher-modal{z-index:70}.check-dialog{z-index:75}.page-state{border:1px solid var(--xy-line);border-radius:var(--xy-radius);background:var(--xy-card);width:min(100%,620px);box-shadow:var(--xy-shadow-soft);text-align:center;align-self:center}.page-state h1{margin:0 0 .6rem}.auth-gate{border:1px solid var(--xy-line);background:var(--xy-card);width:min(100%,1180px);max-height:100%;box-shadow:var(--xy-shadow);border-radius:22px;grid-template-columns:minmax(320px,.95fr) minmax(400px,1.05fr);align-self:center;display:grid;overflow:hidden}.auth-visual{color:#ffffffeb;background:radial-gradient(720px 420px at 88% -8%,#28e39757,#0000 60%),radial-gradient(560px 380px at -12% 108%,#02a36b80,#0000 62%),linear-gradient(158deg,#0c2619,#0f3d27 62%,#0b1f14);align-content:center;gap:1.1rem;padding:clamp(2rem,4vw,3.4rem);display:grid;position:relative}.auth-visual:after{content:"";opacity:.18;pointer-events:none;background-image:radial-gradient(#ffffff29 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0}.auth-visual>*{z-index:1;position:relative}.auth-visual-brand{align-items:center;gap:14px;display:flex}.auth-visual-icon{width:auto;height:46px}.auth-visual-brand div{gap:3px;display:grid}.auth-visual-brand strong{color:#fff;letter-spacing:.04em;font-size:1.22rem}.auth-visual-brand span{color:#ffffff9e;font-size:.8rem}.auth-visual h2{color:#f4fbf7;margin:1rem 0 0;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.55}.auth-visual ul{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.auth-visual li{color:#ffffffc7;padding-left:1.3rem;font-size:.86rem;line-height:1.6;position:relative}.auth-visual li:before{content:"";background:#2fe093;border-radius:50%;width:7px;height:7px;position:absolute;top:.5em;left:0;box-shadow:0 0 0 4px #2fe09324}.auth-visual-foot{color:#ffffff6b;margin:1.2rem 0 0;font-size:.74rem}.auth-page{border:0;border-radius:0;align-self:stretch;width:auto;height:auto;max-height:100%;padding:clamp(1.6rem,3.4vw,2.8rem);overflow:auto}.auth-card-head{gap:.35rem;display:grid}.auth-card-head h1{font-size:clamp(1.5rem,2.4vw,1.95rem)}.auth-lead{color:var(--xy-muted);margin:0;font-size:.9rem;line-height:1.7}.auth-page .button-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;display:grid}.auth-page .button-row .primary{grid-column:1/-1}.auth-role-hint{margin:.2rem 0 0;line-height:1.7}.auth-notice-area{display:grid}.auth-notice-area>p{grid-area:1/1;margin:0;line-height:1.65}.auth-notice-space{visibility:hidden;pointer-events:none}.auth-notice-message{align-self:start;animation:.5s ease-out auth-notice-emphasis}@keyframes auth-notice-emphasis{0%,50%{opacity:.35}25%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.auth-notice-message{animation:none}}.auth-password-field{gap:.4rem;display:grid}.auth-password-input{min-width:0;position:relative}.auth-password-input input{width:100%;min-width:0;padding-right:4.5rem}.auth-password-toggle{color:#8a8a8a;background:0 0;border-color:#0000;padding:.35rem .65rem;font-size:.85rem;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.auth-password-toggle svg{width:20px;height:20px;display:block}.auth-password-toggle:focus-visible{outline:2px solid var(--xy-green);outline-offset:-2px}.role-switch{border-color:var(--xy-line);background:var(--xy-soft)}.role-switch-thumb{background:var(--xy-green);box-shadow:0 10px 22px #02a36b4d}.role-switch.role-teacher .role-switch-thumb{background:var(--xy-green-deep)}.role-switch button.active{color:#fff}@media (width<=860px){.auth-gate{grid-template-columns:1fr;align-self:stretch;max-height:none;overflow:visible}.auth-visual{display:none}.auth-page{overflow:visible}}
