@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Serif+SC:wght@500;600&display=swap";:root{color:#242823;font-synthesis:none;--ink:#20251f;--muted:#747970;--line:#deded6;--paper:#fbfaf7;--green:#405c4b;--pale:#e8eee8;background:#f4f3ee;font-family:DM Sans,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,textarea{font:inherit}button{color:inherit}.app-shell{grid-template-columns:244px 1fr;min-height:100vh;display:grid}.sidebar{z-index:20;background:#eeeee8;border-right:1px solid #dcddd6;flex-direction:column;width:244px;padding:30px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 36px;font-family:Noto Serif SC,serif;font-size:16px;font-weight:600;display:flex}.brand small{letter-spacing:.12em;color:#8b8e87;margin-top:3px;font-family:inherit;font-size:10px;font-weight:400;display:block}.brand-mark{border:1.5px solid #405c4b;border-radius:50% 45% 55% 42%;width:34px;height:34px;position:relative;transform:rotate(-8deg)}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";border:1px solid #405c4b;border-radius:50%;position:absolute}.brand-mark:before{width:19px;height:11px;top:10px;left:6px;transform:rotate(25deg)}.brand-mark:after{background:#405c4b;width:5px;height:5px;top:13px;left:14px}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:11px 13px;font-size:14px;display:flex}.sidebar nav button:hover{background:#e5e6df}.sidebar nav button.selected{color:#324a3b;background:#dfe5de;font-weight:600}.sidebar nav button em{color:#fff;background:#405c4b;border-radius:20px;margin-left:auto;padding:2px 7px;font-size:10px;font-style:normal}.studio-note{color:#59675b;background:#f4f4ef;border:1px solid #d9d9d1;border-radius:10px;gap:10px;margin-top:auto;padding:13px;display:flex}.studio-note p{margin:0}.studio-note b,.studio-note span{font-size:11px;display:block}.studio-note span{color:#777c75;margin-top:5px;line-height:1.5}.profile{border-top:1px solid #dadbd4;align-items:center;gap:10px;margin-top:15px;padding:18px 8px 0;display:flex}.avatar,.mini-avatar{color:#fff;background:#5b6e60;border-radius:50%;place-items:center;width:34px;height:34px;font-family:Noto Serif SC,serif;display:grid}.profile b,.profile small{font-size:12px;display:block}.profile small{color:#8a8d86;margin-top:2px}.profile button{cursor:pointer;background:0 0;border:0;margin-left:auto}.mobile-close{display:none}.app-shell>main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f3eeeb;justify-content:flex-end;align-items:center;height:64px;padding:0 46px;display:flex;position:sticky;top:0}.role-switch{background:#e9e9e3;border-radius:8px;align-items:center;padding:3px;font-size:11px;display:flex}.role-switch span{color:#858980;padding:0 9px}.role-switch button{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 12px}.role-switch button.on{background:#fff;font-weight:600;box-shadow:0 1px 5px #00000010}.page{max-width:1180px;margin:auto;padding:50px 52px 80px}.hello{justify-content:space-between;align-items:center;padding:8px 0 39px;display:flex}.hello p,.page-heading p{letter-spacing:.12em;text-transform:uppercase;color:#82877d;margin:0 0 12px;font-size:11px}.hello h1,.page-heading h1,.detail-heading h1{letter-spacing:.02em;margin:0 0 9px;font-family:Noto Serif SC,serif;font-size:32px;font-weight:600}.hello>div>span,.page-heading>div>span{color:#797e75;font-size:14px}.ink-orbit{width:85px;height:56px;position:relative}.ink-orbit:after{content:"";border:1px solid #aeb8af;border-radius:50%;width:66px;height:35px;position:absolute;top:9px;transform:rotate(-11deg)}.ink-orbit i{z-index:2;background:#405c4b;border-radius:50%;width:4px;height:4px;position:absolute}.ink-orbit i:first-child{top:25px;left:8px}.ink-orbit i:nth-child(2){top:9px;left:56px}.ink-orbit i:nth-child(3){top:42px;left:44px}.metrics{border:1px solid var(--line);background:#f9f8f4;border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:42px;display:grid}.metrics div{border-right:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;padding:20px 24px;display:grid}.metrics div:last-child{border:0}.metrics span{color:#73786f;font-size:12px}.metrics b{grid-row:span 2;font-family:Noto Serif SC;font-size:25px;font-weight:500}.metrics small{color:#a0a39c;margin-top:6px;font-size:10px}.home-grid{grid-template-columns:minmax(0,1fr) 270px;gap:46px;display:grid}.section-title{justify-content:space-between;align-items:center;margin:0 0 15px;display:flex}.section-title h2{font-size:15px;font-weight:600}.section-title button{color:#70766d;cursor:pointer;background:0 0;border:0;font-size:11px}.featured-course{background:var(--paper);cursor:pointer;border:1px solid #ddddd5;border-radius:14px;grid-template-columns:42% 1fr;gap:24px;margin-bottom:34px;padding:13px;display:grid;box-shadow:0 4px 20px #41433d08}.course-art,.lesson-cover{background:#d5d2c4;border-radius:9px;min-height:218px;position:relative;overflow:hidden}.course-art:before,.lesson-cover:before{content:"";background:linear-gradient(145deg,#bbc3b5,#e2ddd0 48%,#b9b5a8);position:absolute;inset:0}.course-art label{letter-spacing:.18em;background:#f4f1e8cc;border-radius:4px;padding:5px 8px;font-size:8px;position:absolute;bottom:14px;left:15px}.perspective{position:absolute;inset:0;overflow:hidden}.perspective b{background:#485b4c;border-radius:50%;width:5px;height:5px;position:absolute;top:44%;left:64%}.perspective span{transform-origin:100%;background:#6c776c;width:80%;height:1px;position:absolute;right:36%}.perspective span:first-child{top:44%;transform:rotate(21deg)}.perspective span:nth-child(2){top:44%;transform:rotate(-18deg)}.perspective span:nth-child(3){top:44%;transform:rotate(8deg)}.perspective span:nth-child(4){top:44%;transform:rotate(-7deg)}.featured-copy{padding:12px 15px 10px 0}.badge{color:#70746c;white-space:nowrap;background:#eeeee9;border-radius:20px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;display:inline-flex}.badge i{background:#999;border-radius:50%;width:5px;height:5px}.badge.active{color:#3d5c48;background:#e7eee8}.badge.active i{background:#4f735c}.badge.done{color:#676b65;background:#ecebe5}.badge.done i{background:#798078}.meta{color:#9a9d96;margin-left:10px;font-size:10px}.featured-copy h2{margin:18px 0 10px;font-family:Noto Serif SC;font-size:25px}.featured-copy p{color:#777c74;margin:0;font-size:12px;line-height:1.75}.progress{align-items:center;gap:10px;margin-top:25px;display:flex}.progress>span{background:#e2e3dc;flex:1;height:3px}.progress i{background:#506753;width:60%;height:100%;display:block}.progress small{color:#8d9189;font-size:9px}.featured-copy>button{color:#425948;background:0 0;border:0;margin-top:19px;padding:0;font-size:11px;font-weight:600}.assignment-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr auto auto;align-items:center;gap:15px;padding:17px 5px;display:grid}.assignment-icon{color:#6a685e;background:#eee9df;border-radius:9px;place-items:center;width:47px;height:47px;display:grid}.assignment-icon svg{width:19px}.assignment-row h3{margin:6px 0 3px;font-size:13px}.assignment-row p{color:#8a8e86;margin:0;font-size:10px}.due{color:#8c7460;gap:5px;font-size:10px;display:flex}.arrow{color:#858a82}.activity-column{border-left:1px solid var(--line);padding-left:27px}.activity{gap:11px;padding-bottom:21px;display:flex;position:relative}.activity:not(:last-child):after{content:"";background:#dcded7;width:1px;height:calc(100% - 25px);position:absolute;top:29px;left:14px}.activity-dot{color:#4b6653;background:#e5eae4;border-radius:50%;flex:none;place-items:center;width:29px;height:29px;display:grid}.dot-1{color:#766b5b;background:#eee8dd}.dot-2{color:#5c6576;background:#e4e6eb}.activity p{margin:4px 0;font-size:11px;line-height:1.6}.activity small{color:#a2a59e;margin-top:3px;font-size:9px;display:block}.quote{color:#5f655c;background:#eae9e3;border-radius:10px;margin-top:25px;padding:21px;font-family:Noto Serif SC;font-size:12px;line-height:1.9}.quote small{color:#989b94;margin-top:10px;font-family:sans-serif;font-size:9px;display:block}.page-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;padding-bottom:32px;display:flex}.page-heading h1{font-size:34px}.primary-button{color:#fff;cursor:pointer;background:#405c4b;border:0;border-radius:8px;align-items:center;gap:7px;padding:11px 16px;font-size:12px;display:flex}.primary-button:hover{background:#344c3d}.filter-row{gap:4px;padding:22px 0;display:flex}.filter-row button{cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 13px;font-size:11px}.filter-row button.on{color:#35503f;background:#e2e7e1;font-weight:600}.filter-row span{opacity:.6;margin-left:4px}.course-list{border-top:1px solid var(--line)}.course-list article{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:74px 1fr;min-height:124px;display:grid}.course-list article:hover{background:#f8f7f3}.course-number{color:#9a9e96;padding:29px 18px;font-family:Noto Serif SC;font-size:17px}.course-main{justify-content:space-between;align-items:center;padding:25px 17px 25px 0;display:flex}.course-main>div>span{color:#8d9289;letter-spacing:.12em;font-size:9px}.course-main h2{margin:5px 0 7px;font-family:Noto Serif SC;font-size:19px}.course-main p{color:#888c84;margin:0;font-size:11px}.course-end{align-items:center;gap:30px;display:flex}.back{color:#71766d;cursor:pointer;background:0 0;border:0;align-items:center;margin-bottom:28px;padding:0;font-size:12px;display:flex}.detail-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;padding-bottom:28px;display:flex}.detail-heading>div>span{letter-spacing:.14em;color:#7a8178;font-size:9px}.detail-heading p{color:#858a81;margin:7px 0 0;font-size:12px}.detail-grid{grid-template-columns:minmax(0,1fr) 285px;gap:55px;padding-top:35px;display:grid}.lesson-body{font-size:13px;line-height:1.9}.lesson-cover{height:320px;margin-bottom:38px}.lesson-cover>div:last-child{z-index:2;color:#fff;text-shadow:0 1px 8px #0005;position:absolute;bottom:31px;left:35px}.lesson-cover small,.lesson-cover strong{display:block}.lesson-cover small{letter-spacing:.2em;margin-bottom:8px;font-size:8px}.lesson-cover strong{font-family:Noto Serif SC;font-size:22px;line-height:1.5}.lesson-body>h2,.lesson-body>h3{font-family:Noto Serif SC}.lesson-body>h2{font-size:22px}.lesson-body>p{color:#646a61}.lesson-body blockquote{color:#4c5e50;background:#ecefe9;border-left:2px solid #58705d;margin:26px 0;padding:11px 19px;font-family:Noto Serif SC}.check-list{padding:0;list-style:none}.check-list li{border-bottom:1px solid #e1e1da;align-items:center;gap:10px;padding:8px 0;display:flex}.check-list svg{color:#4c6854;width:16px}.related>h3{margin:0 0 13px;font-size:12px}.related-card{border:1px solid var(--line);cursor:pointer;background:#faf9f5;border-radius:11px;margin-bottom:12px;padding:17px}.related-card.accent{background:#f5f8f3;border-color:#afbdaf}.related-card>span{letter-spacing:.08em;color:#7b8178;align-items:center;gap:8px;font-size:9px;display:flex}.related-card h4{margin:15px 0 6px;font-family:Noto Serif SC;font-size:14px}.related-card p{color:#92958f;font-size:10px}.related-card>div{justify-content:space-between;align-items:center;margin-top:13px;display:flex}.related-card a{color:#4a6351;font-size:10px}.assignment-layout{border-top:0;grid-template-columns:230px 1fr;min-height:600px;display:grid}.assignment-list{border-right:1px solid var(--line);padding:27px 25px 0 0}.assignment-list h3{text-transform:uppercase;letter-spacing:.1em;color:#858a82;margin:0 0 10px;font-size:10px}.assignment-list h3:not(:first-child){margin-top:28px}.assignment-list h3 span{float:right}.assignment-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;width:100%;margin:3px 0;padding:13px;display:flex}.assignment-list>button.current{background:#e6eae4}.assignment-list button b{margin:9px 0 4px;font-size:12px}.assignment-list button>span:last-child{color:#8a8f86;font-size:9px}.assignment-detail{max-width:730px;padding:32px 0 40px 42px}.assignment-head h2{margin:7px 0;font-family:Noto Serif SC;font-size:25px}.assignment-head>div>span{color:#878d84;font-size:9px}.assignment-head p{color:#8b8f87;align-items:center;gap:5px;font-size:10px;display:flex}.teacher-brief{background:#ecefe9;border-radius:10px;gap:13px;margin:28px 0;padding:20px;display:flex}.mini-avatar{flex:none;width:31px;height:31px;font-size:11px}.teacher-brief b{font-size:11px}.teacher-brief p{color:#626a61;margin:6px 0 0;font-size:12px;line-height:1.8}.submission{border-top:1px solid var(--line);padding-top:25px}.submission h3{font-size:13px}.submission h3 small{float:right;color:#999;font-weight:400}.upload-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.upload-box{cursor:pointer;color:#777d73;background:#f8f7f3;border:1px dashed #bdc1b9;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:145px;display:flex}.upload-box svg{width:21px}.upload-box b{font-size:11px}.upload-box span{color:#a0a49d;font-size:8px}.preview{min-height:145px;position:relative}.preview img{object-fit:cover;border-radius:9px;width:100%;height:145px}.preview button{cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;width:25px;height:25px;display:grid;position:absolute;top:6px;right:6px}.submission label{margin-top:19px;font-size:11px;font-weight:600;display:block}.submission textarea{resize:vertical;background:#faf9f6;border:1px solid #d8d9d2;border-radius:8px;outline:none;width:100%;min-height:82px;margin-top:7px;padding:12px;font-size:11px;display:block}.submission textarea:focus{border-color:#718575}.submit-button{margin:17px 0 0 auto}.empty-submit{text-align:center;color:#92978e;border:1px dashed #cbcdc6;border-radius:10px;padding:45px}.empty-submit svg{margin-bottom:8px}.empty-submit b,.empty-submit p{font-size:11px;display:block}.empty-submit p{font-size:10px}.submitted-images{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.submitted-images img{object-fit:cover;border-radius:8px;width:100%;height:170px}.student-note{background:#f8f7f3;border-radius:8px;margin-top:15px;padding:16px}.student-note b{font-size:10px}.student-note p{color:#70766d;margin:6px 0 14px;font-size:11px}.feedback{background:#e8eee8;border-left:2px solid #4c6854;margin-top:20px;padding:16px}.feedback span{color:#4b6150;font-size:10px}.feedback p{font-family:Noto Serif SC;font-size:13px}.resource-grid{grid-template-columns:repeat(3,1fr);gap:18px;padding-top:28px;display:grid}.resource-grid article{border:1px solid var(--line);background:#faf9f6;border-radius:11px;padding:10px 10px 17px}.resource-art{color:#73776e;background:#dedbd1;border-radius:7px;place-items:center;height:145px;margin-bottom:15px;display:grid;position:relative}.resource-art>span{z-index:2;background:#f8f7f3;border-radius:4px;padding:4px 7px;font-size:8px;position:absolute;top:9px;left:9px}.resource-art .perspective{width:100%;height:100%;position:relative}.art-1{background:#dad6c9}.art-2{background:#cbd3c9}.art-3{background:#ded9d4}.resource-grid article>span{color:#667466;font-size:9px}.resource-grid h3{margin:8px 0;font-family:Noto Serif SC;font-size:14px}.resource-grid p{color:#888c85;font-size:10px;line-height:1.6}.resource-grid small{color:#a0a39d;font-size:8px}.question-list{max-width:800px;padding-top:15px}.question-list article{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;padding:24px 7px;display:flex}.question-list h3{margin:10px 0 5px;font-family:Noto Serif SC;font-size:15px}.question-list p{color:#777d74;font-size:11px}.question-list small{color:#9a9d97;font-size:9px}.timeline{grid-template-columns:70px 1fr;gap:0 22px;max-width:750px;padding:35px 0;display:grid}.timeline-date{border-right:1px solid #cdd0c8;gap:6px;padding-top:4px;display:flex}.timeline-date b{font-family:Noto Serif SC;font-size:22px}.timeline-date span{color:#888d84;font-size:8px;line-height:1.5}.timeline article{padding:0 0 45px}.timeline article>span{color:#516554;font-size:9px}.timeline h3{margin:8px 0;font-family:Noto Serif SC;font-size:17px}.timeline p{color:#70766d;font-size:11px}.timeline blockquote{color:#59655a;background:#e9ece6;border-radius:7px;margin:14px 0 0;padding:13px;font-size:10px}.timeline .muted{opacity:.55}.muted-entry{opacity:.65}.bottom-nav,.menu-button,.mobile-brand{display:none}@media (width<=900px){.app-shell{display:block}.sidebar{transition:all .25s;transform:translate(-100%)}.sidebar.open{transform:none;box-shadow:10px 0 30px #0002}.mobile-close{background:0 0;border:0;margin-left:auto;display:block}.scrim{z-index:15;background:#0005;position:fixed;inset:0}.app-shell>main{padding-bottom:64px}.topbar{justify-content:space-between;height:56px;padding:0 20px}.menu-button{background:0 0;border:0;display:block}.mobile-brand{font-family:Noto Serif SC;font-weight:600;display:block}.role-switch>span{display:none}.page{padding:32px 22px 55px}.home-grid{grid-template-columns:1fr}.activity-column{border:0;padding:0}.featured-course{grid-template-columns:1fr}.course-art{min-height:190px}.bottom-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:12;background:#f8f7f3ee;grid-template-columns:repeat(5,1fr);height:62px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#81867d;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:9px;display:flex}.bottom-nav button.selected{color:#405c4b;font-weight:600}.detail-grid{grid-template-columns:1fr}.related{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.related h3{grid-column:1/-1}.assignment-layout{grid-template-columns:1fr}.assignment-list{border-right:0;border-bottom:1px solid var(--line);gap:7px;padding-right:0;display:flex;overflow-x:auto}.assignment-list h3{display:none}.assignment-list>button{min-width:160px}.assignment-detail{padding-left:0}.resource-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.hello{padding-bottom:28px}.hello h1,.page-heading h1{font-size:27px}.ink-orbit{display:none}.metrics{grid-template-columns:repeat(3,1fr)}.metrics div{flex-direction:column;padding:15px 12px;display:flex}.metrics b{order:-1;font-size:22px}.metrics small{display:none}.featured-copy{padding:7px}.assignment-row{grid-template-columns:auto 1fr auto}.assignment-row .due{display:none}.page-heading{align-items:flex-start}.page-heading .primary-button{padding:9px;font-size:0}.page-heading .primary-button svg{margin:0}.course-list article{grid-template-columns:49px 1fr}.course-number{padding-left:8px}.course-main p{display:none}.course-end{gap:8px}.detail-page{padding-left:18px;padding-right:18px}.detail-grid{gap:25px}.lesson-cover{height:235px}.related{grid-template-columns:1fr}.assignment-detail{padding-top:22px}.upload-grid,.submitted-images{grid-template-columns:repeat(2,1fr)}.resource-grid{grid-template-columns:1fr}.activity-column{display:none}.home-grid{display:block}.role-switch button{padding:6px 10px}}.icon-button{border:1px solid var(--line);cursor:pointer;background:#f8f7f3;border-radius:7px;place-items:center;width:31px;height:31px;display:grid}.detail-actions{align-items:center;gap:9px;display:flex}.secondary-button{cursor:pointer;background:#faf9f5;border:1px solid #d3d5ce;border-radius:8px;align-items:center;gap:6px;padding:9px 13px;font-size:11px;display:flex}.markdown-view>h2,.markdown-view>h3{font-family:Noto Serif SC}.markdown-view>h2{margin-top:0;font-size:22px}.markdown-view>h3{margin-top:28px;font-size:16px}.markdown-view>p{color:#646a61}.markdown-view blockquote{color:#4c5e50;background:#ecefe9;border-left:2px solid #58705d;margin:26px 0;padding:11px 19px;font-family:Noto Serif SC}.md-list{border-bottom:1px solid #e1e1da;align-items:center;gap:9px;padding:7px 0;display:flex}.md-list svg{color:#4c6854}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;background:#20251f66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.editor-modal{background:#f8f7f3;border-radius:14px;width:min(720px,100%);max-height:92vh;overflow:auto;box-shadow:0 24px 80px #0003}.editor-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:24px 27px 20px;display:flex}.editor-modal header small{letter-spacing:.12em;color:#848a81;font-size:9px}.editor-modal h2{margin:6px 0 0;font-family:Noto Serif SC;font-size:21px}.editor-modal header button{cursor:pointer;background:0 0;border:0}.editor-fields{padding:22px 27px}.editor-fields label{margin-bottom:16px;font-size:10px;font-weight:600;display:block}.editor-fields label>small{float:right;color:#8a8e86;font-weight:400}.editor-fields input,.editor-fields select,.editor-fields textarea{background:#fff;border:1px solid #d5d7cf;border-radius:8px;outline:none;width:100%;margin-top:7px;padding:11px 12px;font-size:12px;display:block}.editor-fields input:focus,.editor-fields select:focus,.editor-fields textarea:focus{border-color:#68806e}.field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.editor-fields .content-editor{resize:vertical;min-height:240px;line-height:1.7}.editor-modal footer{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;padding:16px 27px;display:flex}@media (width<=600px){.field-row{grid-template-columns:1fr}.editor-modal{max-height:95vh}.editor-fields{padding:18px}.editor-modal header,.editor-modal footer{padding-left:18px;padding-right:18px}}.editor-modal.compact{width:min(560px,100%)}.editor-fields textarea{resize:vertical;min-height:90px}.file-picker{color:#647068;cursor:pointer;background:#f3f4ef;border:1px dashed #bfc4bb;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:78px;display:flex!important}.resource-art img{object-fit:cover;border-radius:7px;width:100%;height:100%}.resource-grid article{cursor:pointer;transition:transform .18s,box-shadow .18s}.resource-grid article:hover{transform:translateY(-2px);box-shadow:0 10px 24px #2731280d}.resource-viewer{background:#f8f7f3;border-radius:14px;width:min(820px,100%);max-height:92vh;padding:12px;position:relative;overflow:auto}.resource-viewer>button{z-index:2;cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:23px;right:23px;box-shadow:0 2px 10px #0002}.resource-viewer>img{object-fit:contain;background:#e5e4de;border-radius:10px;width:100%;max-height:62vh}.resource-viewer>div:last-child{padding:22px 25px 27px}.resource-viewer h2{margin:13px 0 7px;font-family:Noto Serif SC}.resource-viewer p{color:#747a71;font-size:12px}.resource-viewer a{color:#405c4b;margin-top:12px;font-size:11px;display:inline-block}.file-hero{color:#697168;background:#e5e5df;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:11px;height:250px;display:flex}.file-hero svg{width:30px;height:30px}.login-screen{background:radial-gradient(circle at 18% 20%,#dfe5dd 0,#0000 32%),#f2f1ec;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fbfaf7;border:1px solid #dcddd5;border-radius:16px;width:min(410px,100%);padding:42px;box-shadow:0 22px 70px #31372f12}.login-mark{color:#fff;background:#405c4b;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:24px;display:grid}.login-card>small{letter-spacing:.18em;color:#848a81;font-size:9px}.login-card h1{margin:8px 0;font-family:Noto Serif SC;font-size:29px}.login-card>p{color:#777d74;margin-bottom:26px;font-size:12px;line-height:1.7}.login-card label{margin:15px 0;font-size:10px;font-weight:600;display:block}.login-card input{background:#fff;border:1px solid #d4d6cf;border-radius:8px;outline:none;width:100%;margin-top:7px;padding:12px;display:block}.login-card input:focus{border-color:#5a725f}.login-card form>button{color:#fff;cursor:pointer;background:#405c4b;border:0;border-radius:8px;width:100%;margin-top:8px;padding:13px}.login-card footer{text-align:center;color:#9a9e96;margin-top:24px;font-size:9px}.form-error{color:#934d43;background:#f3e5e2;border-radius:7px;margin:10px 0;padding:10px;font-size:10px}.setup-screen{text-align:center;color:#677067;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100vh;padding:25px;display:flex}.setup-screen h1,.setup-screen h2{color:#2f3830;margin:3px;font-family:Noto Serif SC}.setup-screen p{font-size:12px}.setup-screen code{background:#e6e7e1;border-radius:6px;padding:9px 12px;font-size:10px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.signed-in{align-items:center;gap:8px;font-size:11px;display:flex}.signed-in small{color:#405c4b;background:#e2e7e1;border-radius:20px;padding:4px 8px}.related-add{color:#405c4b;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-top:12px;padding:0;font-size:11px;font-weight:600;display:inline-flex}.related-add:hover{color:#263d30}.metrics button{border:0;border-right:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:1fr auto;align-items:end;padding:20px 24px;display:grid}.metrics button:last-child{border-right:0}.metrics button:hover{background:#f1f3ed}.related-card-button{text-align:left;width:100%;display:block}.related-card-button>b{color:#405c4b;margin-top:12px;font-size:10px;display:block}.related-item{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;width:100%;padding:10px 0;font-size:10px;display:flex}.related-item:hover{color:#405c4b}
