@import "https://fonts.googleapis.com/css2?family=Gowun+Dodum&family=Nanum+Myeongjo:wght@700&display=swap";
:root{--ink:#373a45;--muted:#9697a4;--line:#eee9e4;--cream:#fcfaf7}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);margin:0;font-family:Gowun Dodum,sans-serif}button{font:inherit;color:inherit}.shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fffdfb;flex-direction:column;width:250px;padding:34px 25px 24px;display:flex}.brand{color:#41404a;align-items:center;gap:10px;display:flex}.brand-mark{color:#9b6d36;background:#f4d09c;border-radius:12px;place-items:center;width:34px;height:34px;font-size:23px;display:grid}.brand b{font-size:15px;display:block}.brand small,.profile small{color:var(--muted);margin-top:3px;font-size:11px;display:block}nav{gap:8px;margin-top:68px;display:grid}nav a{color:#9999a3;border-radius:12px;padding:13px 15px;font-size:14px}nav a span{width:28px;font-size:17px;display:inline-block}nav .active{color:#45434d;background:#f9eee8;font-weight:700}.side-note{color:#8d785a;background:#fff6e7;border-radius:16px;margin-top:auto;padding:17px;font-size:12px}.side-note p{color:#a78f70;margin:12px 0 0;line-height:1.7}.profile{align-items:center;gap:10px;padding-top:27px;display:flex}.avatar{color:#fff;background:#eab68f;border-radius:50%;place-items:center;width:35px;height:35px;font-weight:700;display:grid}.profile b{font-size:13px}.dots{color:#bbb;margin-left:auto}.content{width:min(100%,1060px);padding:40px 65px 70px}.topbar{justify-content:space-between;align-items:flex-start;display:flex}.eyebrow{color:#a4a0a0;margin:0 0 8px;font-size:12px}.topbar h1{color:#353640;margin:0;font-family:Nanum Myeongjo,serif;font-size:28px}.parent-btn{color:#7f7d86;background:#fff;border:1px solid #e6e1dc;border-radius:22px;padding:9px 16px;font-size:12px}.hero{background:#f4e6d7;border-radius:22px;justify-content:space-between;min-height:205px;margin-top:38px;padding:31px 38px;display:flex;overflow:hidden}.pill{color:#b27853;background:#fff2e3;border-radius:20px;padding:6px 10px;font-size:11px}.hero h2{margin:16px 0 7px;font-family:Nanum Myeongjo,serif;font-size:27px;line-height:1.45}.hero h2 em{color:#d77e5b;font-style:normal}.hero p{color:#a98d7d;font-size:13px}.plate{width:250px;height:170px;position:relative}.plate:before{content:"";background:#fff9f1;border:9px solid #ead6bd;border-radius:50%;width:190px;height:190px;position:absolute;top:-18px;right:2px;box-shadow:0 8px #ddc7ac}.plate div{text-align:center;color:#a89178;z-index:2;font-size:12px;position:absolute;top:51px;right:40px}.plate b{color:#ce9471;font-size:14px}.plate span{z-index:3;font-size:32px;position:absolute}.plate span:first-child{top:17px;left:14px}.plate span:nth-child(2){top:99px;left:20px}.plate span:nth-child(3){top:6px;right:5px}.plate span:nth-child(4){bottom:1px;right:8px}.section-heading{justify-content:space-between;align-items:end;margin:38px 0 18px;display:flex}.section-heading.compact{margin:0 0 12px}.section-heading h3,.card-head h3{margin:0;font-size:18px}.section-heading p,.card-head p{color:var(--muted);margin:6px 0 0;font-size:12px}.count{color:#d68160;background:#fff0e9;border-radius:20px;padding:7px 11px;font-size:12px}.progress-wrap{border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px 17px}.progress-label{color:#999;justify-content:space-between;font-size:11px;display:flex}.progress-label b{color:#db8667}.progress{background:#f0e9e4;border-radius:9px;height:7px;margin-top:9px;overflow:hidden}.progress span,.mini-progress span{background:#e9936f;border-radius:9px;height:100%;transition:width .3s;display:block}.subject-progress{margin-top:28px}.subject-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.subject-card{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:11px;display:flex}.subject-card .task-icon{width:34px;height:34px;font-size:15px}.subject-copy{flex:1;min-width:0}.subject-copy b{font-size:12px;display:block}.subject-copy small{color:#aaa;margin-top:4px;font-size:10px;display:block}.subject-card>strong{color:#db8667;font-size:11px}.mini-progress{background:#f1ece8;border-radius:9px;height:5px;margin-top:7px;overflow:hidden}.task-list{gap:9px;margin-top:12px;display:grid}.task{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:14px;width:100%;padding:13px 15px;transition:all .2s;display:flex}.task:hover{transform:translateY(-1px);box-shadow:0 5px 18px #eadfd966}.task.completed{background:#fffdfa}.task-number{color:#b8b0ac;text-align:center;width:20px;font-size:11px}.completed .task-number{color:#e9936f}.task-icon{border-radius:13px;place-items:center;width:42px;height:42px;font-size:19px;font-weight:700;display:grid}.peach{color:#de936d;background:#fbe3d3}.lavender{color:#8279b7;background:#e9e6f7}.mint{color:#5d9b85;background:#dff1e9}.yellow{color:#d4a34b;background:#fff0c9}.task-copy{flex:1;gap:5px;display:grid}.task-copy b{font-size:13px}.task-copy i{color:#c8c2c0;font-style:normal}.task-copy small{color:#a4a0a0;font-size:11px}.check{color:#fff;border:1px solid #dbd5d0;border-radius:50%;place-items:center;width:23px;height:23px;font-size:13px;display:grid}.completed .check{background:#e9936f;border-color:#e9936f}.completed .task-copy b{color:#858187}.bottom-grid{grid-template-columns:1.25fr .75fr;gap:13px;margin-top:13px;display:grid}.week-card,.cheer-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px}.card-head{justify-content:space-between;display:flex}.week-percent{color:#dd896a;font-family:Nanum Myeongjo,serif;font-size:22px}.week-days{justify-content:space-around;margin:23px 0 13px;display:flex}.day{text-align:center;color:#aaa;font-size:10px}.day i{color:#fff;border:1px dashed #dfd7d0;border-radius:50%;place-items:center;width:24px;height:24px;margin-top:8px;font-size:12px;font-style:normal;display:grid}.day i.filled{background:#ecad80;border-style:solid;border-color:#ecad80}.table-art{text-align:center;border-top:1px solid #f1ece8;padding-top:12px;font-size:22px}.cheer-card{background:#f5eee7;position:relative;overflow:hidden}.sparkle{color:#e7a66f;font-size:22px}.cheer-card h3{margin:10px 0;font-family:Nanum Myeongjo,serif;font-size:17px;line-height:1.5}.cheer-card p{color:#a69991;font-size:11px;line-height:1.7}.mini-seed{opacity:.8;font-size:32px;position:absolute;bottom:15px;right:22px}@media (max-width:800px){.sidebar{width:74px;padding:24px 12px}.brand div,nav a:not(.active):after,nav a{font-size:0}.brand-mark{margin:auto}nav{margin-top:50px}nav a{text-align:center;padding:13px 12px}nav a span{width:auto;font-size:20px}.side-note,.profile div:not(.avatar),.dots{display:none}.profile{justify-content:center}.content{padding:30px 20px}.hero{padding:25px}.plate{margin-right:-45px;transform:scale(.75)}.bottom-grid{grid-template-columns:1fr}.subject-grid{grid-template-columns:repeat(2,1fr)}.topbar h1{font-size:23px}}.auth-shell{background:var(--cream);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(100%,420px);padding:34px;box-shadow:0 12px 36px #eadfd944}.auth-card h1{margin:0 0 10px;font-family:Nanum Myeongjo,serif;font-size:28px}.auth-card>p:not(.eyebrow):not(.auth-note){color:var(--muted);margin:0 0 26px;font-size:13px}.auth-form{gap:16px;display:grid}.auth-form label{color:#6f6b72;gap:7px;font-size:12px;display:grid}.auth-form input{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fffdfb;border-radius:11px;padding:12px}.auth-form button{color:#fff;cursor:pointer;background:#e9936f;border:0;border-radius:12px;padding:13px}.auth-note{color:#aaa;margin:18px 0 0;font-size:11px;line-height:1.6}.module-shell{max-width:1100px;min-height:100vh;margin:0 auto;padding:52px 28px 80px}.module-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px;display:flex}.module-header h1{margin:0 0 8px;font-family:Nanum Myeongjo,serif;font-size:34px}.module-header>div>p:last-child{color:var(--muted);margin:0;font-size:13px}.module-header-links{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.module-link{white-space:nowrap;color:#7f7d86;background:#fff;border:1px solid #e6e1dc;border-radius:22px;padding:10px 16px;font-size:12px;text-decoration:none}.textbook-card,.lesson-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:30px}.module-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-kicker{color:#d68160;margin:0 0 8px;font-size:11px}.textbook-card h2,.lesson-card h2{margin:0;font-family:Nanum Myeongjo,serif;font-size:24px}.status-chip{color:#5c9270;background:#eaf4ed;border-radius:20px;padding:7px 11px;font-size:11px}.module-muted{color:var(--muted);font-size:13px;line-height:1.7}.day-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px;display:grid}.day-card{border:1px solid var(--line);background:#fffdfb;border-radius:16px;min-height:175px;padding:18px}.day-card.is-complete{background:#f6fbf6;border-color:#dceee0}.day-number{color:#d68160;font-size:11px}.day-card h3{margin:22px 0 8px;font-size:16px}.day-card p{color:var(--muted);margin:0 0 18px;font-size:12px}.day-card a,.disabled-link{color:#b9795e;font-size:12px;text-decoration:none}.disabled-link{color:#aaa}.lesson-shell{max-width:820px}.lesson-card{max-width:720px;margin:0 auto}.lesson-icon{color:#de936d;background:#fbe3d3;border-radius:17px;place-items:center;width:56px;height:56px;margin-bottom:24px;font-size:22px;font-weight:700;display:grid}.lesson-example{background:#fff9f3;border:1px solid #f1e5d9;border-radius:16px;margin:24px 0;padding:20px}.lesson-example span{color:#a98d7d;margin-bottom:8px;font-size:11px;display:block}.lesson-example strong{margin-bottom:16px;font-size:15px;display:block}.lesson-example textarea{resize:vertical;width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #e6ddd5;border-radius:11px;padding:12px}.lesson-actions{justify-content:flex-end;gap:10px;display:flex}.secondary-action,.primary-action{font:inherit;cursor:pointer;border-radius:12px;padding:11px 16px;font-size:12px;text-decoration:none}.secondary-action{border:1px solid var(--line);color:#8d8784;background:#fff}.primary-action{color:#fff;background:#e9936f;border:1px solid #e9936f}.success-notice{color:#5c9270;background:#eef8f0;border-radius:12px;margin:18px 0 0;padding:12px 14px;font-size:12px;line-height:1.6}@media (max-width:700px){.module-shell{padding:32px 18px 60px}.module-header{display:block}.module-header-links{justify-content:flex-start}.module-link{margin-top:18px;display:inline-block}.day-grid{grid-template-columns:repeat(2,1fr)}.textbook-card,.lesson-card{padding:22px}.module-header h1{font-size:28px}}.admin-summary{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.admin-summary>div,.admin-card,.empty-panel{border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px}.admin-summary span,.admin-summary small{color:var(--muted);font-size:11px;display:block}.admin-summary strong{color:#d68160;margin:10px 0 5px;font-family:Nanum Myeongjo,serif;font-size:28px;display:block}.admin-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.admin-card{min-height:180px;color:inherit;cursor:pointer;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:block}.admin-card:hover,.admin-card:focus-visible{border-color:#d9a58d;outline:none;transform:translateY(-2px);box-shadow:0 10px 26px #b9795e24}.admin-card h2{margin:28px 0 8px;font-family:Nanum Myeongjo,serif;font-size:21px}.admin-card p,.empty-panel p{color:var(--muted);font-size:13px;line-height:1.7}.admin-card-open{color:#b9795e;font-size:12px}.empty-panel{max-width:720px}.empty-panel h2{font-family:Nanum Myeongjo,serif;font-size:23px}@media (max-width:700px){.admin-summary{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}}.auth-form select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fffdfb;border-radius:11px;padding:12px}.auth-secondary-link{text-align:center;color:#b9795e;margin-top:18px;font-size:11px;text-decoration:none;display:block}.role-choice-list{gap:8px;display:grid}.role-choice{border:1px solid var(--line);cursor:pointer;border-radius:11px;flex-direction:row;align-items:center;gap:10px;padding:11px;grid-template-columns:none!important;display:flex!important}.role-choice.selected{background:#fff8f2;border-color:#e9936f}.role-choice input{accent-color:#e9936f;width:auto!important}.role-choice span{gap:3px;display:grid}.role-choice strong{font-size:12px}.role-choice small{color:var(--muted);font-size:10px}.mode-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0;display:grid}.mode-card{border:1px solid var(--line);cursor:pointer;border-radius:16px;gap:8px;padding:18px;display:grid}.mode-card.selected{background:#fff8f2;border-color:#e9936f}.mode-card input{accent-color:#e9936f}.mode-card strong{font-size:15px}.mode-card span{color:var(--muted);font-size:12px;line-height:1.6}.connection-field{color:#6f6b72;gap:8px;margin-bottom:18px;font-size:12px;display:grid}.connection-field input{border:1px solid var(--line);font:inherit;border-radius:11px;padding:12px}.student-row-card{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:14px;margin-bottom:16px;padding:18px;display:flex}.student-row-copy{flex:1;gap:5px;display:grid}.student-row-copy strong{font-size:16px}.student-row-copy span{color:var(--muted);font-size:12px}.student-row-card a{color:#b9795e;font-size:12px;text-decoration:none}@media (max-width:700px){.mode-grid{grid-template-columns:1fr}.student-row-card{flex-wrap:wrap}.student-row-card a{width:100%;margin-left:49px}}.today-summary{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.today-summary>div{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px}.today-summary span{color:var(--muted);font-size:11px;display:block}.today-summary strong{color:#d68160;margin-top:9px;font-family:Nanum Myeongjo,serif;font-size:25px;display:block}.api-task-list{gap:10px;margin-top:26px;display:grid}.api-task{border:1px solid var(--line);background:#fffdfb;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;padding:17px;display:flex}.api-task.is-complete{background:#f6fbf6;border-color:#dceee0}.api-task h3{margin:8px 0 5px;font-size:15px}.api-task p{color:var(--muted);margin:0;font-size:12px}.api-task-actions{white-space:nowrap;justify-items:end;gap:8px;display:grid}.api-task-actions a{color:#b9795e;font-size:11px;text-decoration:none}.done-label{color:#5c9270;font-size:12px}@media (max-width:700px){.today-summary{grid-template-columns:1fr}.api-task{display:block}.api-task-actions{justify-content:space-between;align-items:center;margin-top:15px;display:flex}}.request-list{gap:10px;margin-top:24px;display:grid}.request-row{border:1px solid var(--line);background:#fffdfb;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:15px;display:flex}.request-row div{gap:5px;display:grid}.request-row span{color:var(--muted);font-size:11px}.request-actions{align-items:center;gap:7px;display:flex}.request-actions .secondary-action{padding:9px 12px}.content-form{gap:15px;margin-top:22px;display:grid}.content-form label{color:#6f6b72;gap:7px;font-size:12px;display:grid}.content-form input,.content-form textarea{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fffdfb;border-radius:11px;padding:12px}.lesson-input-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.content-list-card{margin-top:16px}.content-list-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 0;display:flex}.content-list-row>div{gap:5px;display:grid}.content-list-row span:not(.status-chip){color:var(--muted);font-size:11px}@media (max-width:700px){.lesson-input-grid{grid-template-columns:repeat(2,1fr)}}.code-grid-card{margin-bottom:16px}.code-grid-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.code-grid-controls label{color:#6f6b72;gap:7px;font-size:12px;display:grid}.code-grid-controls input{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fffdfb;border-radius:11px;padding:12px}.code-grid-scroll{margin-top:22px;overflow:auto}.code-grid-table{border-collapse:collapse;width:100%;min-width:850px;font-size:12px}.code-grid-table th,.code-grid-table td{text-align:left;vertical-align:top;border:1px solid #d7d1ca;padding:9px 10px}.code-grid-table thead th{color:#5f5752;background:#fff9f3}.code-grid-table tbody th{white-space:nowrap;color:#7c716b;background:#fffdfb}.code-grid-table td span{white-space:nowrap;min-width:125px;display:block}.code-grid-table small{color:var(--muted);margin-top:5px;font-size:10px;font-weight:400;display:block}.shared-code{color:#a96f52}.code-grid-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.code-review-panel{background:#fff9f3;border:1px solid #edcdbb;border-radius:14px;margin-top:18px;padding:16px}.code-review-panel h3{margin:0 0 7px;font-size:15px}.code-review-panel p{color:var(--muted);font-size:12px;line-height:1.7}.form-error{color:#b34f48;margin:12px 0 0;font-size:12px}@media (max-width:700px){.code-grid-controls{grid-template-columns:1fr}.code-grid-actions{justify-content:stretch;display:grid}.code-grid-actions .primary-action{width:100%}}.camp-list{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.camp-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px}.camp-card-top{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.camp-card h2{margin:26px 0 9px;font-family:Nanum Myeongjo,serif;font-size:22px}.camp-card p{color:var(--muted);min-height:44px;font-size:13px;line-height:1.7}.camp-meta{color:#9a8174;border-top:1px solid var(--line);gap:14px;margin:18px 0;padding-top:14px;font-size:11px;display:flex}.camp-card .primary-action{display:block}@media (max-width:700px){.camp-list{grid-template-columns:1fr}}.board-layout{grid-template-columns:190px 1fr;gap:16px;display:grid}.board-tabs{align-content:start;gap:7px;display:grid}.board-tabs button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:11px;padding:12px;font-size:12px}.board-tabs button.active{color:#b9795e;background:#fff1e8;border-color:#f0c6ad;font-weight:700}.board-content{gap:14px;display:grid}.post-list,.resource-list{gap:10px;display:grid}.post-card,.post-form,.resource-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px}.post-card h2,.resource-card h2{margin:0 0 8px;font-size:16px}.post-card p,.resource-card p{color:var(--muted);font-size:12px;line-height:1.7}.post-card small{color:#aaa;font-size:10px}.post-form{gap:9px;display:grid}.post-form input,.post-form textarea{border:1px solid var(--line);font:inherit;border-radius:10px;padding:11px}.resource-list{grid-template-columns:repeat(2,1fr)}.resource-card a{color:#b9795e;font-size:12px;text-decoration:none}@media (max-width:700px){.board-layout{grid-template-columns:1fr}.board-tabs{grid-template-columns:repeat(3,1fr)}.resource-list{grid-template-columns:1fr}}.board-shell{max-width:900px}.board-mode-tabs{background:#fff9f3;border:1px solid #f1e5d9;border-radius:14px;gap:8px;margin:0 0 16px;padding:6px;display:flex}.board-mode-tabs button{color:#8d8784;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:11px 14px;font-size:13px}.board-mode-tabs button.active{color:#b9795e;background:#fff;font-weight:700;box-shadow:0 2px 8px #775c4b14}.board-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.board-toolbar>p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.board-search{flex:none;gap:7px;display:flex}.board-search input,.board-compose select,.board-compose input,.board-compose textarea,.board-edit-form input,.board-edit-form textarea,.board-reply-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fffdfb;border-radius:10px;padding:11px;font-size:13px}.board-search input{width:180px}.post-card{transition:border-color .16s,box-shadow .16s}.post-card:hover{border-color:#e5b79e;box-shadow:0 8px 20px #b9795e1a}.post-card-top,.board-detail-meta{justify-content:space-between;align-items:center;gap:9px;margin-bottom:10px;display:flex}.post-card h2 a{color:inherit;text-decoration:none}.post-private-copy{color:#9a8174!important}.board-badge{color:#bc7658;background:#fff1e8;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-block}.board-more-button{justify-self:center}.board-compose{margin-top:18px;padding:22px}.board-compose h2,.board-reply-section>h2{margin:0;font-family:Nanum Myeongjo,serif;font-size:22px}.board-compose label,.board-edit-form label,.board-reply-form label{color:#6f6b72;gap:7px;font-size:12px;display:grid}.board-compose-actions,.board-detail-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.board-compose-actions small{color:#aaa;font-size:10px}.board-access-note{color:#8d786b;background:#fff9f3;border-radius:12px;margin:16px 0 0;padding:13px 15px;font-size:12px;line-height:1.65}.board-detail-shell{max-width:860px}.board-detail-card,.board-reply-section{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px}.board-detail-card h2{margin:0 0 18px;font-family:Nanum Myeongjo,serif;font-size:26px;line-height:1.45}.board-detail-content{white-space:pre-wrap;color:#4f4a47;font-size:14px;line-height:1.9}.board-detail-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:22px;padding-top:16px}.board-edit-form{gap:12px;display:grid}.board-reply-section{gap:14px;margin-top:16px;display:grid}.board-comment{border-top:1px solid var(--line);padding:14px 0}.board-comment:first-child{border-top:0;padding-top:0}.board-comment strong{color:#b9795e;font-size:12px}.board-comment p{white-space:pre-wrap;color:#4f4a47;margin:7px 0;font-size:13px;line-height:1.75}.board-comment small{color:#aaa;font-size:10px}.board-comment.mine strong{color:#5c9270}.board-reply-form{background:#fcfaf7;margin-top:4px;padding:16px}@media (max-width:700px){.board-toolbar{display:grid}.board-search{width:100%}.board-search input{flex:1;width:auto}.board-compose,.board-detail-card,.board-reply-section{padding:18px}.board-detail-card h2{font-size:22px}.board-compose-actions .primary-action{width:100%}.board-detail-actions .secondary-action{flex:1}.board-mode-tabs{z-index:5;position:sticky;top:8px}}.growth-balance{background:#f5eee7;border:1px solid #efdfd0;border-radius:20px;margin-bottom:16px;padding:28px}.growth-balance span,.growth-balance small{color:#a98d7d;font-size:12px;display:block}.growth-balance strong{color:#d68160;margin:10px 0;font-family:Nanum Myeongjo,serif;font-size:48px;display:block}.growth-amount{color:#d68160;font-size:18px}.notification-list{gap:10px;display:grid}.notification-card{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.notification-card.read{opacity:.65}.notification-card h2{margin:8px 0 6px;font-size:16px}.notification-card p{color:var(--muted);margin:0 0 8px;font-size:12px}.notification-card small{color:#aaa;font-size:10px}.public-shell{background:#fcfaf7;min-height:100vh}.public-nav{justify-content:space-between;align-items:center;max-width:1160px;height:76px;margin:auto;padding:0 28px;display:flex}.public-brand{color:var(--ink);align-items:center;gap:9px;text-decoration:none;display:flex}.public-brand span{color:#9b6d36;background:#f4d09c;border-radius:12px;place-items:center;width:34px;height:34px;display:grid}.public-brand strong{font-size:15px}.public-nav>div{align-items:center;gap:22px;display:flex}.public-nav a{color:#807b7a;font-size:12px;text-decoration:none}.public-nav .nav-login{border:1px solid var(--line);background:#fff;border-radius:20px;padding:9px 15px}.public-hero{justify-content:space-between;align-items:center;gap:40px;max-width:1160px;margin:0 auto;padding:76px 70px 82px;display:flex}.public-hero h1{margin:15px 0;font-family:Nanum Myeongjo,serif;font-size:48px;line-height:1.35}.public-hero h1 em{color:#d77e5b;font-style:normal}.public-hero>div>p:not(.eyebrow){color:#9b8e88;font-size:15px;line-height:1.8}.public-actions{gap:9px;margin-top:25px;display:flex}.public-actions a{text-decoration:none}.public-actions .primary-action,.public-actions .secondary-action{display:inline-block}.public-plate{text-align:center;color:#a89178;background:#f4e6d7;border:13px solid #ead6bd;border-radius:50%;place-items:center;width:300px;height:300px;display:grid;box-shadow:0 12px #ddc7ac}.public-plate span{color:#e7a66f;font-size:35px}.public-plate strong{color:#ce9471;font-family:Nanum Myeongjo,serif;font-size:22px;line-height:1.45}.public-plate small{font-size:12px;line-height:1.7}.public-section{max-width:1060px;margin:0 auto;padding:72px 28px}.public-section h2{margin:12px 0 28px;font-family:Nanum Myeongjo,serif;font-size:29px}.service-grid,.role-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.service-grid article,.public-role{border:1px solid var(--line);background:#fff;border-radius:18px;padding:23px}.service-grid b,.public-role strong{font-size:17px}.service-grid p,.public-role span{color:var(--muted);font-size:13px;line-height:1.7;display:block}.public-role{color:var(--ink);gap:8px;text-decoration:none;display:grid}.public-role small{color:#b9795e;font-size:11px}.public-footer{text-align:center;color:#aaa;border-top:1px solid var(--line);padding:25px;font-size:11px}@media (max-width:700px){.public-nav{padding:0 18px}.public-nav>div a:not(.nav-login){display:none}.public-hero{padding:50px 24px;display:block}.public-hero h1{font-size:36px}.public-plate{width:240px;height:240px;margin:40px auto 0}.service-grid,.role-grid{grid-template-columns:1fr}.public-section{padding:52px 20px}}.demo-banner{z-index:20;color:#92754b;text-align:center;background:#fff3d9;border-bottom:1px solid #f0d8a8;padding:8px 14px;font-size:11px;position:relative}.demo-banner span{color:#ad7c37;margin-right:8px;font-weight:700}.account-bar{z-index:19;border-bottom:1px solid var(--line);color:#8d8784;background:#fff;justify-content:flex-end;align-items:center;gap:12px;padding:8px 24px;font-size:11px;display:flex;position:relative}.account-bar strong{color:var(--ink)}.account-bar button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:16px;padding:6px 11px;font-size:11px}@media (max-width:700px){.account-bar{padding:8px 14px}}.worksheet-answer-review{background:#fbfffb;border:1px solid #e1eee2;border-radius:14px;gap:12px;margin:18px 0 14px;padding:16px;display:grid}.worksheet-answer-review .card-kicker{color:#6f9b78;margin:0;font-size:11px;font-weight:700}.worksheet-answer-summary{color:#6f7f72;margin:0;font-size:11px}.worksheet-answer-list{gap:8px;max-height:420px;display:grid;overflow:auto}.worksheet-answer-item{background:#f1f8f1;border-radius:10px;grid-template-columns:minmax(100px,auto) 1fr;align-items:start;gap:10px;padding:9px 10px;font-size:12px;line-height:1.55;display:grid}.worksheet-answer-item strong{color:#527a5a}.worksheet-answer-item span{overflow-wrap:anywhere;color:#4b514c;min-width:0}.worksheet-answer-correct{color:#dc4a4a;margin-left:7px;font-style:normal;font-weight:700;display:inline-block}.worksheet-answer-image{object-fit:contain;background:#fff;border:1px solid #dce8de;border-radius:10px;max-width:100%;max-height:220px;display:block}.worksheet-answer-review .compact-action{white-space:nowrap;justify-self:start}.day-card .worksheet-answer-review+.primary-action{width:100%;margin-top:2px}@media (max-width:700px){.worksheet-answer-review{padding:13px}.worksheet-answer-item{grid-template-columns:1fr;gap:3px}}.admin-users-shell{max-width:1180px}.admin-toolbar{border:1px solid var(--line);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:12px;display:flex}.admin-tabs{gap:5px;display:flex}.admin-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:11px;padding:10px 14px;font-size:12px}.admin-tabs button.active{color:#b9795e;background:#fff1e8;font-weight:700}.admin-tabs b{margin-left:5px;font-size:10px}.admin-filters{align-items:center;gap:8px;display:flex}.admin-search input,.admin-filters select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fffdfb;border-radius:10px;padding:10px 12px;font-size:12px}.admin-search input{width:210px}.admin-filters select{min-width:115px}.admin-management-card{padding:26px 30px}.admin-record-list{margin-top:20px;display:grid}.admin-record{border-top:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.record-avatar{color:#d68160;background:#fbe3d3;border-radius:14px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.record-main{flex:1;gap:5px;min-width:0;display:grid}.record-main strong{font-size:14px}.record-main span,.record-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.record-main small{color:#aaa;font-size:10px}.record-main em{font-style:normal}.record-status.pending,.record-status.requested{color:#c58b45}.record-status.active{color:#5c9270}.record-status.rejected,.record-status.ended{color:#bd7770}.record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.compact-action{padding:8px 11px;font-size:11px}.danger-action{color:#bd7770}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-backdrop{z-index:50;background:#373a4555;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.edit-modal{background:#fff;border-radius:22px;width:min(100%,520px);padding:28px;box-shadow:0 20px 60px #373a4533}.edit-modal-header{justify-content:space-between;align-items:flex-start;display:flex}.edit-modal h2{margin:0;font-family:Nanum Myeongjo,serif;font-size:24px}.modal-close{color:#aaa;cursor:pointer;background:0 0;border:0;font-size:25px;line-height:1}.edit-participants{grid-template-columns:1fr 1fr;gap:10px;margin:22px 0;display:grid}.edit-participants div{background:#fff9f3;border:1px solid #f1e5d9;border-radius:12px;padding:13px}.edit-participants span{color:#a98d7d;margin-bottom:6px;font-size:10px;display:block}.edit-participants strong{font-size:13px}.edit-modal-actions{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.edit-modal-actions button:disabled{opacity:.6;cursor:wait}@media (max-width:700px){.admin-toolbar{display:block}.admin-filters{grid-template-columns:1fr 1fr;margin-top:12px;display:grid}.admin-search{grid-column:1/-1}.admin-search input{width:100%}.admin-filters .secondary-action{grid-column:1/-1}.admin-record{align-items:flex-start}.record-actions{margin-left:auto}.edit-participants{grid-template-columns:1fr}.admin-management-card{padding:22px 18px}}.review-note-label{color:#6f7f72;gap:6px;margin:12px 0;font-size:11px;font-weight:700;display:grid}.review-note-label textarea{resize:vertical;width:100%;min-height:76px;color:var(--ink);font:inherit;background:#fff;border:1px solid #dce8de;border-radius:10px;padding:10px;font-size:12px;line-height:1.5}.review-note-label textarea:focus{outline-offset:1px;outline:2px solid #b8dcc1}.guardian-confirm-card{background:linear-gradient(135deg,#fffaf1,#fff4e5);border:1px solid #f0dfc8;border-radius:16px;grid-template-columns:auto 1fr minmax(180px,1.4fr) auto;align-items:center;gap:12px;margin-top:16px;padding:14px;display:grid}.guardian-confirm-seal{color:#d68160;background:#fff;border:3px solid #e7a56f;border-radius:50%;place-items:center;width:42px;height:42px;font-size:22px;font-weight:900;display:grid;box-shadow:0 3px #f0d0b0}.guardian-confirm-copy{gap:4px;display:grid}.guardian-confirm-copy strong{color:#9b6848;font-size:13px}.guardian-confirm-copy span{color:#aa8b79;font-size:10px;line-height:1.4}.guardian-confirm-card .review-note-label{margin:0}.guardian-confirm-button{white-space:nowrap}@media (max-width:760px){.guardian-confirm-card{grid-template-columns:auto 1fr}.guardian-confirm-card .review-note-label{grid-column:1/-1}.guardian-confirm-button{grid-column:1/-1;width:100%}}.notification-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.notification-actions .compact-action{white-space:nowrap}.guardian-push-card{gap:12px;display:grid}.guardian-push-card p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.65}.guardian-push-card .notice-modal-label{color:#d68160;margin:0;font-weight:700}.guardian-push-button{cursor:pointer;border:0;width:100%}.guardian-push-button:disabled{opacity:.55;cursor:not-allowed}.guardian-push-card .push-help{color:#9a735b;background:#fff8ef;border-radius:10px;padding:9px 10px}.guardian-push-card .push-status{color:#6f7f72}.push-target-submission{outline-offset:4px;outline:3px solid #e7a56f;box-shadow:0 12px 30px #d6816033}.temporary-password-panel{background:#fff9f3;border:1px solid #f0d8c9;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:8px 14px;padding:16px;display:grid}.temporary-password-panel span,.temporary-password-panel small{grid-column:1/-1}.temporary-password-panel span{color:#8c6c5b;font-size:11px}.temporary-password-panel strong{letter-spacing:.08em;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:20px}.temporary-password-panel small{color:#9b8174;font-size:10px;line-height:1.6}@media (max-width:700px){.temporary-password-panel{grid-template-columns:1fr}.temporary-password-panel span,.temporary-password-panel small{grid-column:auto}}.weekly-release-record{align-items:flex-start}.weekly-release-record .record-main{gap:7px}.release-date-input{color:var(--muted);gap:5px;margin-top:8px;font-size:11px;display:grid}.release-date-input input{border:1px solid var(--line);background:#fff;border-radius:9px;max-width:240px;padding:8px}.review-action-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.release-review-history{background:#fcfaf7;border-radius:14px;margin-top:18px;padding:16px}.release-review-history>strong{font-size:13px}.release-review-history p{gap:4px;margin:10px 0 0;font-size:12px;display:grid}.release-review-history p span{color:var(--muted);font-size:11px}.atelier-study-home{z-index:12000;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#142343eb;border:1px solid #ffffffb8;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-size:15px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex;position:fixed;top:16px;left:16px;box-shadow:0 8px 24px #0f172a38}.admin-support-shell{min-height:0;padding-bottom:0}.admin-support-shell .admin-management-card+.admin-management-card{margin-top:16px}.atelier-study-home:hover,.atelier-study-home:focus-visible{color:#fff;outline-offset:3px;background:#315adf;outline:3px solid #5b86ff59}@media (max-width:640px){.atelier-study-home{min-height:38px;padding:0 14px;font-size:14px;top:10px;left:10px}}
