@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap";:root{--tea-50: #f6fde9;--tea-100: #eaf7d8;--tea-200: #d3efbd;--tea-300: #bee79f;--tea-700: #4e6d3b;--ink-900: #1f2a24;--ink-700: #3f4f44;--ink-500: #657468;--paper: #f7f9f4;--line: rgba(63, 79, 68, .18)}html,body,#root{width:100%;min-height:100%;height:100%}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Manrope,sans-serif;color:var(--ink-900);background:linear-gradient(160deg,#edf5e6,#f8fbf2 55%,#e7f3d8)}a{color:inherit;text-decoration:none}.reading-root{min-height:100dvh;height:100dvh;padding:0;position:relative;overflow:hidden}.ambient-layer{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 8% 10%,rgba(211,239,189,.72),transparent 35%),radial-gradient(circle at 95% 12%,rgba(186,231,158,.45),transparent 26%),radial-gradient(circle at 80% 98%,rgba(195,231,169,.4),transparent 32%)}.app-shell{width:100%;max-width:none;margin:0;border:0;border-radius:0;background:#ffffffd1;display:grid;grid-template-columns:240px minmax(0,1fr) 300px;height:100%;overflow:hidden;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.left-nav{border-right:1px solid var(--line);padding:24px 18px;display:flex;flex-direction:column;gap:20px;background:linear-gradient(180deg,#fafff4f2,#f3fbe9bf);height:100%;min-height:0}.brand-mark{display:flex;align-items:center;gap:10px}.brand-mark .dot{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,#b5df93,#7bb76c);box-shadow:0 0 0 5px #b3dc9540}.brand-mark strong{display:block;font-family:Sora,sans-serif;font-size:14px;letter-spacing:.02em}.brand-mark small{color:var(--ink-500);font-size:12px}.menu-list{display:grid;gap:8px;align-content:start}.menu-link{border:1px solid transparent;border-radius:14px;padding:11px 12px;font-size:14px;font-weight:700;color:var(--ink-700);transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.menu-link:hover{border-color:var(--line);background:#fff;transform:translate(2px)}.menu-link.active{background:linear-gradient(135deg,var(--tea-200) 0%,var(--tea-300) 100%);border-color:#6574683d;color:#1c3020}.support-zone{display:grid;gap:8px}.left-footer{margin-top:auto;display:grid;gap:12px}.muted-link{color:var(--ink-500);font-weight:600}.upgrade-card{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fcfff7;display:grid;gap:10px}.upgrade-card h3{margin:0;font-size:15px;font-family:Sora,sans-serif}.upgrade-card p{margin:0;color:var(--ink-500);font-size:13px;line-height:1.45}.black-btn{justify-self:start;border:0;border-radius:999px;background:#18241e;color:#fff;padding:10px 14px;font-weight:700;font-size:13px}.updates-fab{position:fixed;right:20px;bottom:20px;z-index:50;display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:999px;background:#fff;border:1px solid #18241e;color:#18241e;font-size:13px;font-weight:800;box-shadow:0 10px 22px #121e1726}.updates-fab:hover{background:#f8fdf1}.main-column{padding:22px;display:flex;flex-direction:column;gap:16px;overflow:auto;min-width:0}.dashboard-stack{display:grid;gap:16px;align-content:start;min-width:0}.topbar{display:flex;justify-content:space-between;gap:14px;align-items:center}.topbar-title h1{margin:0;font-family:Sora,sans-serif;font-size:30px;line-height:1.1}.topbar-title p{margin:6px 0 0;color:var(--ink-500)}.topbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.search-box{min-width:280px;width:100%}.search-box input{width:100%;border-radius:999px;border:1px solid var(--line);padding:10px 14px;font-size:14px;background:#fff}.icon-btn,.ghost-btn,.primary-cta,.mini-cta{border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink-900);font-weight:700;cursor:pointer;font-family:inherit}.icon-btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;line-height:1;min-height:38px;padding:0 14px;font-size:13px}.access-banner{border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#f4fcecf0;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}.access-banner strong{font-family:Sora,sans-serif;font-size:13px}.access-banner span{color:var(--ink-700)}.access-banner.warning{background:#fff5e9;border-color:#c78c4859}.ghost-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;font-size:13px}.card{border:1px solid var(--line);border-radius:22px;background:#ffffffe0;padding:18px}.hero-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;background:linear-gradient(145deg,#1b2620,#2f4236 45%,#40594a);color:#fff;border-color:#121e1799;position:relative;overflow:hidden;animation:riseIn .55s ease}.hero-copy{display:grid;gap:10px;align-content:start}.hero-copy h1{margin:0;font-family:Sora,sans-serif;font-size:clamp(26px,3vw,40px);line-height:1.12}.hero-copy p{margin:0;max-width:52ch;color:#ffffffdb}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:#d8f2c6}.primary-cta{justify-self:start;border:0;background:var(--tea-200);padding:11px 16px}.hero-note{color:#ffffffd1;font-size:12px}.hero-art{min-height:200px;border-radius:18px;position:relative;background:radial-gradient(circle at 30% 20%,rgba(217,245,185,.26),transparent 58%)}.wave{position:absolute;border-radius:999px;filter:blur(.2px)}.wave.one{width:190px;height:190px;background:#d3efbd99;bottom:0;right:14px}.wave.two{width:130px;height:130px;background:#bae79e66;top:14px;right:90px}.wave.three{width:78px;height:78px;background:#ffffff47;top:45px;right:22px}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.kpi{display:grid;gap:6px}.kpi span{color:var(--ink-500);font-size:13px}.kpi strong{font-size:28px;font-family:Sora,sans-serif}.kpi small{font-size:12px;color:var(--tea-700)}.class-table table{width:100%;border-collapse:collapse}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.section-head h2{margin:0;font-family:Sora,sans-serif;font-size:24px}.class-table th{text-align:left;color:var(--ink-500);font-size:12px;font-weight:700;padding-bottom:10px}.class-table td{padding:12px 0;border-top:1px solid rgba(101,116,104,.12);vertical-align:top}.class-table td strong{display:block}.class-table td small{display:block;margin-top:5px;color:var(--ink-500)}.progress-row{display:grid;gap:6px;min-width:220px}.track{height:10px;border-radius:999px;background:#edf2e8;overflow:hidden}.fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--tea-200),var(--tea-300));transition:width .5s ease}.pill{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.pill.live{background:#eaf7d8;color:#39552b}.pill.done{background:#d4f3c5;color:#295f2c}.pill.muted{background:#f1f4ec;color:#647267}.section-stack{animation:riseIn .45s ease}.set-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.set-card,.task-card,.community-item,.report-row,.event-row{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff}.set-card h3,.task-card h3,.community-item h3,.report-row h3,.event-row h3{margin:8px 0 4px;font-size:17px;font-family:Sora,sans-serif}.set-card p,.community-item p{margin:0;color:var(--ink-500);font-size:14px}.set-meta{display:flex;justify-content:space-between;color:var(--ink-500);margin:8px 0;font-size:12px}.mini-cta{margin-top:10px;background:var(--tea-200);border:0;padding:8px 12px;font-size:12px}.tag{display:inline-flex;background:#edf7dc;border-radius:999px;font-size:11px;padding:4px 9px;font-weight:700}.task-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.task-card{display:grid;gap:6px}.priority{justify-self:start;border-radius:999px;font-size:11px;font-weight:700;padding:4px 9px}.priority.low{background:#eef5e3}.priority.medium{background:#e7f7d2}.priority.high{background:#d9efbd}.community-list,.report-list,.event-list{display:grid;gap:10px}.community-item,.report-row,.event-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.report-row small,.event-row small{color:var(--ink-500)}.report-metric{display:grid;justify-items:end}.report-metric strong{font-family:Sora,sans-serif}.trend{font-size:12px;font-weight:700}.trend.up{color:#2f6e2c}.trend.flat{color:var(--ink-500)}.right-panel{border-left:1px solid var(--line);padding:22px 16px;background:#f9fdf2d1;display:grid;align-content:start;gap:12px;min-width:0;overflow:auto}.right-panel .card{min-width:0}.profile-card{text-align:center;display:grid;gap:10px}.profile-card h2{margin:0;text-align:left;font-family:Sora,sans-serif}.avatar{width:90px;height:90px;margin:4px auto;border-radius:50%;display:grid;place-items:center;font-family:Sora,sans-serif;font-size:26px;border:5px solid #edf8dd;background:#f7ffed}.profile-card strong{font-size:16px;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.profile-email{margin:0;font-size:12px;color:var(--ink-500);max-width:100%;overflow-wrap:anywhere;word-break:break-word}.profile-card small{color:var(--ink-500);max-width:100%;overflow-wrap:anywhere;word-break:break-word}.activity-card .bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:end;min-height:160px}.bar-col{display:grid;justify-items:center;gap:6px}.bar-track{width:100%;height:130px;border-radius:999px;background:#edf2e7;overflow:hidden;display:flex;align-items:end}.bar-fill{width:100%;background:linear-gradient(180deg,#c4e5aa,#94ca76);border-radius:999px;animation:growBar .55s ease}.bar-col span{font-size:11px;color:var(--ink-500)}.task-list-card ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.task-list-card li{border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px}.task-list-card li>div{min-width:0;flex:1}.task-list-card strong{display:block;font-size:14px;overflow-wrap:anywhere;word-break:break-word}.task-list-card small{color:var(--ink-500);overflow-wrap:anywhere;word-break:break-word}.priority-dot{width:10px;height:10px;border-radius:999px}.priority-dot.low{background:#8abf68}.priority-dot.medium{background:#6ea949}.priority-dot.high{background:#3f6f25}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes growBar{0%{height:0}}@media(max-width:1200px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.right-panel{grid-column:1 / -1;border-left:0;border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}}@media(max-width:920px){.reading-root{height:auto;overflow:visible}.app-shell{grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.left-nav{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr;height:auto}.menu-list{grid-template-columns:repeat(3,minmax(0,1fr))}.upgrade-card{display:none}.main-column{padding:16px}.topbar{flex-direction:column;align-items:stretch}.search-box{min-width:0;flex:1 1 100%}.topbar-actions{display:flex;flex-wrap:wrap;gap:8px}.topbar-actions .icon-btn{flex:1 1 calc(50% - 4px);min-width:132px}.hero-card,.kpi-grid,.set-grid,.task-board{grid-template-columns:1fr}.class-table{overflow:auto}.progress-row{min-width:150px}.right-panel{grid-template-columns:1fr;padding:12px 16px 18px}}@media(max-width:640px){.menu-list{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head,.community-item,.report-row,.event-row{flex-direction:column;align-items:flex-start}}.arena-full-view{position:absolute;inset:0;display:flex;background:#fff;z-index:100;animation:arenaEnter .6s cubic-bezier(.16,1,.3,1)}@keyframes arenaEnter{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.arena-main-stage{flex:1;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 120%,rgba(211,239,189,.1),transparent 70%);position:relative;overflow:hidden}.arena-header{padding:24px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.04);background:#fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:20}.back-link{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink-500);background:none;border:0;cursor:pointer}.back-link svg{width:16px;height:16px}.article-title-stack{text-align:center;position:relative}.article-title-stack h1{margin:0;font-family:Sora,sans-serif;font-size:20px;letter-spacing:-.01em}.load-pacer{height:2px;background:var(--tea-300);position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;transition:width .4s ease;border-radius:999px;box-shadow:0 0 10px #bee79f80}.compress-btn{background:#000;color:#fff;border:0;padding:6px 14px;border-radius:6px;font-size:11px;font-weight:800;letter-spacing:.1em;cursor:pointer}.reading-canvas{flex:1;overflow-y:auto;padding:80px 10%;scroll-behavior:smooth}.text-container{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:32px;transition:gap .5s ease}.text-container.compressed{gap:8px}.sentence-block{padding:16px;border-radius:12px;position:relative;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);border:1px solid transparent}.sentence-block:hover{background:#d3efbd14}.sentence-block.focused{background:#fff;box-shadow:0 30px 60px #0000000f;border-color:#00000008;transform:scale(1.02);z-index:50}.boundary-edge{margin-top:40px}.meaning-boundary{position:absolute;top:-40px;left:0;right:0;display:flex;align-items:center;gap:16px;pointer-events:none}.meaning-boundary:before,.meaning-boundary:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}.meaning-boundary span{font-size:9px;font-weight:800;color:var(--ink-500);background:var(--tea-50);padding:2px 8px;border-radius:999px;letter-spacing:.12em}.content-line{margin:0;font-size:21px;line-height:1.7;color:var(--ink-900);transition:color .3s}.word-unit{display:inline-block;white-space:pre-wrap;padding:0 1px;border-radius:4px}.heavy-word{color:var(--tea-700);font-weight:700;text-decoration:underline decoration-thickness(2px) underline-offset(4px) rgba(78,109,59,.2)}.reconstruction .word-unit:not(:hover){opacity:.15;filter:blur(2px)}.arena-sidebar-controls{height:100%;display:flex;flex-direction:column;gap:40px;padding:24px;background:#fbfcf9}.control-group label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;color:var(--ink-500);margin-bottom:20px;letter-spacing:.1em}.depth-track{display:flex;flex-direction:column;gap:12px;position:relative}.depth-track:before{content:"";position:absolute;left:11px;top:10px;bottom:10px;width:2px;background:var(--line)}.depth-node{display:flex;align-items:flex-start;gap:16px;background:none;border:0;padding:0;text-align:left;cursor:pointer;transition:all .3s}.depth-node .dot{width:24px;height:24px;border-radius:50%;border:2px solid var(--line);background:#fbfcf9;z-index:2;transition:all .3s;display:flex;align-items:center;justify-content:center}.depth-node.active .dot{border-color:#000;background:#000;box-shadow:0 0 0 4px #0000001a}.depth-node .label{padding-top:2px}.depth-node strong{display:block;font-size:14px;color:var(--ink-700)}.depth-node small{display:block;font-size:12px;color:var(--ink-500);margin-top:4px;line-height:1.4;max-width:180px}.depth-node.active strong{color:#000}.toggle-list{display:grid;gap:8px}.toggle-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.toggle-item.on{border-color:#000;background:#f9fff4}.toggle-item .status{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--tea-700);opacity:.5}.toggle-item.on .status{opacity:1}.terrain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.terrain-cell{aspect-ratio:1;background:#eee;border-radius:6px;transition:all .3s}.terrain-cell.marked{background:#faa;box-shadow:0 0 10px #faa6}.terrain-cell.focus{transform:scale(1.1);border:2px solid #000;background:#fff}.isolation-active .arena-main-stage:after{content:"";position:absolute;inset:0;background:#ffffffb3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:30;animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sentence-block.focused{z-index:100!important}.reading-canvas::-webkit-scrollbar{width:4px}.reading-canvas::-webkit-scrollbar-track{background:transparent}.reading-canvas::-webkit-scrollbar-thumb{background:#0000000d;border-radius:999px}
