:root{--ink:#263e33;--mint:#396650;--line:#d7e0d6;background:#345247}body{background:0 0;min-height:100svh}html,body,:root,body{background:#2f4c3d}.workspace,#main{background:0 0!important}.dashboard-chrome{z-index:300;position:relative}.workspace{z-index:1;position:relative}#learning-studio{z-index:0;pointer-events:none;background:#2f4c3d;position:fixed;inset:0;overflow:hidden}#learning-studio>img,#learning-studio>picture,#learning-studio>canvas{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}#learning-studio>canvas{opacity:0}#learning-studio.is-ready>canvas{opacity:1}.dashboard-chrome .top-navbar{display:none!important}#dashboard-chrome-sidebar{backdrop-filter:blur(18px);background:#f8faf2ed;border-right:1px solid #fff6}.refresh-nav a[aria-current]{color:#396650;background:#deebda}#main{max-width:none;min-height:calc(100svh - 68px);padding:12px 48px 32px}.forest-heading{color:#fff9e8;justify-content:space-between;align-items:center;gap:20px;display:flex}.forest-heading h1{letter-spacing:.04em;text-shadow:0 2px 12px #183328;margin:0;font-size:26px;font-weight:650}.forest-heading p{text-shadow:0 1px 6px #122e22;margin-top:9px;font-size:12px}#studio-motion{color:#fff;cursor:pointer;backdrop-filter:blur(12px);background:#203d3599;border:1px solid #ffffff60;border-radius:24px;padding:9px 15px;font-size:12px}.forest-items{max-width:1500px;height:calc(100svh - 205px);min-height:540px;margin:auto;position:relative}.forest-item{text-align:left;color:#294435;backdrop-filter:blur(14px);cursor:pointer;background:#fbfff1db;border:1px solid #ffffffe6;border-radius:24px;align-items:center;gap:18px;width:340px;min-height:110px;padding:24px;transition:background .2s,box-shadow .2s;animation:8s ease-in-out infinite forest-float;display:flex;position:absolute;box-shadow:0 20px 45px #102c3333,inset 0 1px #fff}.forest-item:hover{background:#fffef5f5;box-shadow:0 24px 55px #102c3355}.forest-item:focus-visible{outline-offset:6px;outline:3px solid #f9d782}.forest-item--resume{width:390px;animation-delay:-1s;top:14%;left:5%}.forest-item--records{animation-delay:-3s;top:30%;right:3%}.forest-item--courses{animation-delay:-5s;bottom:23%;left:13%}.forest-item--notices{animation-delay:-7s;bottom:11%;right:13%}.forest-item-icon{color:#54734b;background:#e4ecda;border-radius:18px;flex:0 0 50px;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.forest-item-icon svg{stroke-width:1.5px;width:25px;height:25px}.forest-item--resume .forest-item-icon{color:#917448;background:#f4e8cd}.forest-item--records .forest-item-icon{color:#4a7d70;background:#e1eee8}.forest-item--notices .forest-item-icon{color:#9a7457;background:#efe5d9}.forest-item-copy{min-width:0}.forest-item strong{letter-spacing:.03em;font-size:19px;font-weight:650;display:block}.forest-item small{-webkit-line-clamp:2;color:#5c7264;-webkit-box-orient:vertical;margin-top:7px;font-size:12px;line-height:1.7;display:-webkit-box;overflow:hidden}.forest-open{color:#78917d;margin-left:auto;font-size:24px;font-weight:300}#forest-panel{color:#263e33;backdrop-filter:blur(24px);background:#f7faf4f5;border:1px solid #ffffffc9;border-radius:24px;width:min(1440px,100vw - 70px);max-width:none;max-height:88svh;padding:28px;overflow:auto;box-shadow:0 35px 100px #102a3155}#forest-panel::backdrop{backdrop-filter:blur(6px);background:#102c2d50}.forest-panel-head{border-bottom:1px solid #dce4d8;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;display:flex}.forest-panel-head h2{margin:0;font-size:23px}.forest-panel-head button{color:#3d5646;cursor:pointer;background:#e8eee2;border:0;border-radius:50%;width:38px;height:38px;font-size:26px;line-height:1}#forest-panel .panel{box-shadow:none;background:0 0;border:0;margin-bottom:0;padding:0}#forest-panel #home-resume{background:#edf3e5;border:1px solid #d7e2ce;border-radius:16px;flex-wrap:wrap;margin:0;padding:24px}#forest-panel #home-resume .resume-copy h2{color:#2b4c38}.course-row .course-thumbnail-empty{flex:0 0 100px;min-width:100px}#forest-panel .day-strip{grid-template-columns:repeat(7,minmax(145px,1fr));overflow:auto}.forest-still .forest-item{animation:none}@keyframes forest-float{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@media (width<=1200px){#main{padding:12px 28px}.forest-item{gap:12px;width:290px;padding:20px}.forest-item--resume{width:330px;left:0}.forest-item--courses{left:3%}.forest-item--records{right:0}.forest-item--notices{right:3%}}@media (width<=900px){.forest-item{width:260px}.forest-item--resume{width:290px}.forest-item strong{font-size:17px}.forest-item-icon{flex-basis:42px;width:42px;height:42px}.forest-item--resume{top:8%}.forest-item--records{top:33%}.forest-item--courses{bottom:26%}.forest-item--notices{bottom:3%}}@media (width<=780px){#learning-studio{left:0}#main{padding:12px 20px}.forest-heading h1{font-size:23px}.forest-items{min-height:600px}.forest-item{width:min(300px,85%);min-height:100px}.forest-item--resume{top:6%;left:0}.forest-item--records{top:30%;right:0}.forest-item--courses{bottom:26%;left:0}.forest-item--notices{bottom:2%;right:0}#forest-panel{border-radius:18px;width:calc(100vw - 24px);max-height:92svh;padding:18px}.forest-panel-head h2{font-size:20px}.forest-heading{align-items:start}#studio-motion{padding:8px 10px;font-size:10px}}@media (prefers-reduced-motion:reduce){.forest-item{transition:none;animation:none}}#forest-learning:has(#home-resume:not([hidden])) .forest-learning-empty,#forest-learning:has(#home-status:not([hidden])) .forest-learning-empty{display:none}.forest-learning-empty{padding:20px;line-height:2}.forest-learning-empty a{margin-left:12px}.forest-items{gap:18px;max-width:1320px;height:auto;min-height:0;margin:40px auto 60px;display:grid}.forest-accordion{backdrop-filter:blur(18px);background:#fcfff4ed;border:1px solid #ffffffe6;border-radius:20px;overflow:hidden;box-shadow:0 14px 40px #102b3024}.forest-items .forest-item{width:100%;min-height:112px;box-shadow:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;gap:22px;padding:24px 30px;animation:none;position:static;transform:none}.forest-item strong{font-size:22px}.forest-item small{margin-top:8px;font-size:14px}.forest-item-icon{flex-basis:58px;width:58px;height:58px}.forest-item-copy{flex:1}.forest-open{font-size:28px}.forest-item:focus-visible{outline-offset:-4px}.forest-accordion.is-expanded{background:#fcfff8f7}.is-expanded>.forest-item{border-bottom:1px solid #dbe5d6}.forest-accordion-body>section:not([hidden]){padding:26px 30px;animation:.2s ease-out forest-reveal}.forest-accordion-body .panel{box-shadow:none;background:0 0;border:0;margin:0}.forest-accordion-body #home-resume{background:#ecf3e4;border:1px solid #d9e4ce;border-radius:14px;flex-wrap:wrap;margin-bottom:0;padding:24px}.forest-accordion-body .day-strip{grid-template-columns:repeat(7,minmax(145px,1fr));overflow-x:auto}.forest-accordion-body .panel-head h2{font-size:18px}.forest-settings{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}#forest-shuffle{color:#35513e;cursor:pointer;background:#fbfff2eb;border:1px solid #fff9;border-radius:24px;padding:11px 19px;font-size:13px;box-shadow:0 3px 14px #172b2430}#forest-shuffle:disabled{opacity:.6}#forest-background-count{text-shadow:0 1px 6px #182c23;background:#183a3866;border-radius:12px;padding:7px 11px;font-size:12px}@keyframes forest-reveal{0%{opacity:.4;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (width<=780px){.forest-items{gap:14px;min-height:0;margin:28px 0}.forest-items .forest-item{gap:14px;min-height:108px;padding:21px 18px}.forest-item strong{font-size:19px}.forest-item small{font-size:12px}.forest-item-icon{flex-basis:44px;width:44px;height:44px}.forest-accordion-body>section:not([hidden]){padding:18px 14px}.forest-heading{flex-wrap:wrap}.forest-settings{justify-content:flex-start;gap:8px}#forest-background-count{font-size:10px}#forest-shuffle{padding:8px 13px}.forest-accordion-body #home-resume{padding:16px}}@media (prefers-reduced-motion:reduce){.forest-accordion-body>section:not([hidden]){animation:none}}.forest-items{grid-template-columns:minmax(0,1fr)}.forest-accordion,.forest-accordion-body{min-width:0}#main .forest-items{margin-top:16px}#studio-motion{left:calc(var(--sidebar) + 16px);z-index:20;padding:7px 11px;font-size:10px;position:fixed;bottom:16px}@media (width<=780px){#studio-motion{left:16px}}#main .forest-items{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:30px 24px;margin-top:clamp(60px,14vh,160px)}.forest-items .forest-accordion{display:contents}.forest-items .forest-item{color:#fffaf0;background:0 0;border:0;border-radius:24px;flex-direction:column;grid-row:1;justify-content:center;justify-self:center;gap:8px;width:min(100%,210px);min-height:170px;padding:12px;animation:7s ease-in-out infinite quiet-float;display:flex}.forest-items .forest-item:hover{box-shadow:none;background:#ffffff12}.forest-accordion:nth-child(2)>.forest-item{animation-delay:-2s}.forest-accordion:nth-child(3)>.forest-item{animation-delay:-4s}.forest-accordion:nth-child(4)>.forest-item{animation-delay:-1s}.forest-item-art{filter:drop-shadow(0 5px 7px #10251b55);flex:0 0 104px;width:104px;height:104px;display:block}.forest-item-art svg{width:100%;height:100%;display:block}.forest-items .forest-item-copy{text-align:center;flex:0}.forest-items .forest-item strong{color:#fffaf0;letter-spacing:.06em;text-shadow:0 2px 5px #10251b,0 0 14px #10251b;background:#18382a55;border-radius:16px;padding:6px 12px;font-size:17px;font-weight:600}.forest-items .forest-item small,.forest-items .forest-open{display:none}.forest-items .is-expanded>.forest-item{background:#ffffff18;border:0;animation-play-state:paused}.forest-accordion-body{grid-area:2/1/auto/-1;min-width:0}.forest-accordion-body:not(:has(>section:not([hidden]))){display:none}.forest-accordion-body>section:not([hidden]){background:#fcfff8f5;border:1px solid #fff8;border-radius:20px;margin:0;padding:28px;animation:none;overflow:hidden;box-shadow:0 14px 40px #102b3030}.forest-items .forest-item:focus-visible{outline-offset:4px;outline:3px solid #ffe4a6}@keyframes quiet-float{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-10px)rotate(1deg)}}@media (width<=900px){#main .forest-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px;margin-top:40px}.forest-items .forest-item{grid-row:auto;min-height:150px}.forest-accordion:nth-child(-n+2)>.forest-item{grid-row:1}.forest-accordion:nth-child(n+3)>.forest-item{grid-row:2}.forest-accordion-body{grid-row:3}.forest-item-art{flex-basis:90px;width:90px;height:90px}.forest-items .forest-item strong{font-size:15px}.forest-accordion-body>section:not([hidden]){padding:18px 14px}}.forest-still .forest-items .forest-item{animation:none}@media (prefers-reduced-motion:reduce){.forest-items .forest-item{animation:none}}.report-entry-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}@media (width<=900px){.forest-accordion:nth-child(n+3)>.forest-item{grid-row:2}.forest-accordion-body{grid-row:3}}.forest-accordion-body>section{scroll-margin-top:90px}.forest-detail-close{color:#294435;cursor:pointer;font:inherit;background:#fff;border:1px solid #cad7c8;border-radius:18px;margin:0;padding:8px 16px;display:block}.forest-detail-close:focus-visible{outline-offset:3px;outline:3px solid #396650}@media (width<=900px){#main .forest-items:has(.forest-accordion:nth-child(-n+2).is-expanded) .forest-accordion-body{grid-row:2}#main .forest-items:has(.forest-accordion:nth-child(-n+2).is-expanded) .forest-accordion:nth-child(n+3)>.forest-item{grid-row:3}#main .forest-items:has(.forest-accordion:nth-child(-n+2).is-expanded) .forest-accordion:nth-child(5)>.forest-item{grid-row:4}#main .forest-items:has(.forest-accordion:nth-child(3).is-expanded,.forest-accordion:nth-child(4).is-expanded) .forest-accordion-body{grid-row:3}#main .forest-items:has(.forest-accordion:nth-child(3).is-expanded,.forest-accordion:nth-child(4).is-expanded) .forest-accordion:nth-child(5)>.forest-item{grid-row:4}.forest-accordion-body>section{scroll-margin-top:80px}}.forest-accordion-body .forest-detail-head{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-bottom:18px;display:grid}.forest-detail-head>h2{grid-area:1/1;min-width:0;margin:0}.forest-detail-head>.forest-detail-close{white-space:nowrap;grid-area:1/3}@media (width<=780px){.forest-accordion-body .forest-detail-head{grid-template-columns:minmax(0,1fr) auto;gap:10px}.forest-detail-head>.forest-detail-close{grid-area:1/2;padding:7px 12px}.forest-detail-head>:not(h2):not(.forest-detail-close){grid-area:2/1/auto/-1;justify-self:start}}#home-days[hidden],#home-month[hidden]{display:none}#home-month .calendar{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}#home-month .calendar-day{min-width:0;padding:10px;overflow:hidden}#home-month .calendar-scroll{max-width:100%;overflow-x:auto}#home-month .calendar-item-count{color:#396650;margin:5px 0;font-size:11px;display:block}@media (width<=780px){#home-month .calendar{gap:3px}#home-month .calendar-day{min-height:65px;padding:5px 2px}#home-month .calendar-day .activity-list,#home-month .calendar-day .more-count{display:none}#home-month .calendar-day .day-heading{font-size:11px;display:block}#home-month .calendar-item-count{font-size:10px}}#forest-notices #home-notifications{gap:0;display:grid}#forest-notices #home-notifications .notice{background:#f4f7ef;border:0;border-radius:0;margin:0;padding:16px 18px}#forest-notices #home-notifications .notice:nth-child(2n){background:#e7eee3}#forest-notices #home-notifications .notice:last-child{border:0}#forest-notices #home-notifications strong{color:#263e33;font-size:16px;font-weight:700;line-height:1.7}#forest-notices #home-notifications p{color:#4d6358;margin:8px 0;font-size:14px;line-height:1.7}#forest-notices #home-notifications a{color:#376c51;font-size:14px;font-weight:700}#forest-courses .course-row strong,#forest-reports .panel p,#forest-reports .report-entry-actions a{font-size:16px;line-height:1.7}#forest-courses .course-row p,#forest-courses .course-progress span{color:#4d6358;font-size:14px;line-height:1.6}#forest-courses .course-row{gap:18px;padding:18px 8px}#forest-reports .panel p{color:#4d6358}#forest-reports .report-entry-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}#forest-reports .report-entry-actions .button{min-height:44px;font-size:15px}.forest-item-art{position:relative}.forest-unread-badge{z-index:2;color:#fff;text-align:center;pointer-events:none;background:#e24b4b;border-radius:999px;min-width:26px;height:26px;padding:0 7px;font:800 13px/26px Hiragino Sans,Noto Sans JP,sans-serif;position:absolute;top:-6px;left:-8px;box-shadow:0 2px 8px #7a1d1d55}#forest-notices #home-notifications .notice.is-unread{box-shadow:inset 4px 0 #e24b4b}#forest-records #home-resume.resume-compact{color:#1f3d2c;background:linear-gradient(90deg,#e8f6df,#f7fbee);border:2px solid #7db389;border-radius:14px;flex-wrap:nowrap;align-items:center;gap:14px;min-height:0;margin:0 0 18px;padding:14px 16px;text-decoration:none;display:flex;box-shadow:0 6px 18px #2c5a3320}#forest-records #home-resume.resume-compact[hidden]{display:none}#forest-records #home-resume.resume-compact .resume-compact-mark{color:#fff;background:#2f8a4c;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:13px;display:grid;box-shadow:0 3px 8px #1d5a3228}#forest-records #home-resume.resume-compact .resume-compact-copy{flex:1;gap:2px;min-width:0;display:grid}#forest-records #home-resume.resume-compact .resume-eyebrow{letter-spacing:.12em;color:#2f8a4c;margin:0;font-size:11px;font-weight:800;display:block}#forest-records #home-resume.resume-compact strong{color:#1c3b28;font-size:16px;font-weight:800;line-height:1.4}#forest-records #home-resume.resume-compact small{color:#4d6a58;font-size:12px}#forest-records #home-resume.resume-compact .resume-compact-go{color:#fff;background:#2f8a4c;border-radius:999px;flex:none;margin-left:auto;padding:8px 14px;font-size:13px;font-weight:800}#forest-records #home-resume.resume-compact:hover{color:#1f3d2c;background:linear-gradient(90deg,#dff3d4,#f3fbe8)}#home-status[hidden]{display:none}.activity-list .record-title-link{-webkit-line-clamp:2;color:#2466ea;-webkit-box-orient:vertical;font-size:12px;font-weight:700;line-height:1.6;text-decoration:none;display:-webkit-box;overflow:hidden}.activity-list .record-title-link:hover{text-decoration:underline}.day-column .day-heading,.day-column .more-count{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;padding:0}.day-column .more-count{color:var(--blue);margin-top:auto;padding-top:15px;font-size:12px;display:block}.record-detail-activity .record-title-link{color:#2466ea;font-weight:700;text-decoration:none}.record-detail-activity .record-title-link:hover{text-decoration:underline}@media (width<=780px){#forest-records #home-resume.resume-compact{flex-wrap:wrap;gap:10px;padding:12px}#forest-records #home-resume.resume-compact .resume-compact-go{text-align:center;width:100%}}#forest-notices .notice-title-link{color:#2466ea;text-underline-offset:3px;text-decoration:underline}#forest-notices .notice-title-link:hover{color:#124cb6}#forest-reports #home-last-report{gap:10px;display:grid}#forest-reports .last-report-card{color:#294435;background:#f7fbf2;border:1px solid #d9e4ce;border-radius:14px;gap:6px;padding:16px 18px;text-decoration:none;display:grid}#forest-reports .last-report-card:hover{color:#294435;background:#eef6e6}#forest-reports .last-report-card small{color:#5d7268;font-size:12px}#forest-reports .last-report-card strong{font-size:16px;font-weight:700;line-height:1.6}#forest-reports .last-report-card p{color:#4d6358;margin:0;font-size:13px;line-height:1.6}#forest-records .day-strip,#forest-records .learning-calendar-panel .day-strip,.forest-accordion-body .day-strip{grid-template-columns:repeat(7,minmax(140px,1fr));margin:0}#forest-records .day-column{padding-left:18px}#forest-records .day-heading time{align-items:baseline;gap:4px;padding-left:2px;display:flex}#forest-records .record-month,#forest-records .record-date{color:#18212f;font-size:16px;font-weight:750;line-height:1.2}#forest-records .record-weekday{font-size:12px}#forest-records .record-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}#forest-records .record-head-actions .button{min-height:36px;padding:6px 12px;font-size:13px}
