@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box}body{color:#263c36;background:#f7f8f2;margin:0;font-family:Noto Sans KR,sans-serif}button{font:inherit;cursor:pointer;border:0}button:focus-visible{outline-offset:3px;outline:3px solid #e8ac58}main{max-width:680px;margin:auto;padding:32px 22px}header{padding:10px 0 28px;position:relative}.eyebrow{letter-spacing:2px;color:#77958b;font-size:10px;font-weight:700}h1{letter-spacing:-1.5px;margin:24px 0 12px;font-size:36px;line-height:1.4}h1 em{color:#3c8268;font-style:normal}p{color:#718078;font-size:14px;line-height:1.7}.share{color:#547966;background:0 0;border:1px solid #d9e3d9;border-radius:20px;padding:9px 12px;font-size:12px;position:absolute;top:0;right:0}nav{background:#e9eee4;border-radius:18px;gap:5px;padding:5px;display:flex}nav button{color:#778678;background:0 0;border-radius:13px;flex:1;padding:13px 5px;font-weight:600}nav .active{color:#356b55;background:#fff;box-shadow:0 2px 5px #263c3608}.daynav{justify-content:space-between;gap:8px;margin:25px 0;display:flex}.daynav button{color:#718078;background:#fff;border:1px solid #e7ecdf;border-radius:16px;flex:1;padding:10px 0;font-size:18px}.daynav small{margin-top:4px;font-size:10px;display:block}.daynav .selected{color:#fff;background:#3c765e;border-color:#3c765e}.sectionhead{justify-content:space-between;align-items:center;margin:22px 0 13px;display:flex}.sectionhead h2{margin:0;font-size:18px}.sectionhead span{color:#87968a;font-size:11px}article{background:#fff;border:1px solid #e3e9de;border-radius:20px;padding:5px 18px;overflow:hidden}.row{border-bottom:1px solid #eef1e9;align-items:center;gap:14px;min-height:72px;display:flex}.row:last-child{border:0}.time{color:#7c9182;min-width:82px;max-width:82px;font-size:11px}.row strong{flex:1;font-size:15px;font-weight:600}.check{color:#6a966f;background:#f1f5ec;border-radius:50%;flex-shrink:0;width:34px;height:34px;font-size:22px}.check:disabled{opacity:.5}.done strong{color:#92a193;text-decoration:line-through}.done .check{color:#fff;background:#4a8668}.notice{color:#926736;background:#fff0d6;border-radius:12px;padding:12px 15px;font-size:12px}.end{background:#e8f0e1;border-radius:16px;gap:12px;margin-top:15px;padding:18px;font-size:14px;display:flex}.end span{color:#70826d;margin-left:auto;font-size:12px}.hint{font-size:11px}footer{text-align:center;color:#9ca99b;padding:38px 0 12px;font-size:11px}aside{background:#e6eee0;border-radius:16px;margin-bottom:20px;padding:18px}aside button{color:#fff;background:#3c765e;border-radius:10px;padding:10px 14px}aside p{font-size:12px}@media (min-width:650px){main{padding:48px 36px}h1{font-size:44px}.row{min-height:78px}}@media (max-width:350px){main{padding:25px 14px}.time{min-width:65px;max-width:65px}.row{gap:10px}.row strong{font-size:13px}}.announcement{background:#fff1d8;border:1px solid #f0dfb9;border-radius:18px;margin:0 0 22px;padding:18px 20px}.announcement-top{color:#8a6b35;justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.announcement-top small{color:#9a8051;background:#fff8e9;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:500}.announcement h2{letter-spacing:-.4px;color:#65502e;margin:12px 0 6px;font-size:18px;line-height:1.5}.announcement p{color:#96805b;margin:0;font-size:12px;line-height:1.7}.admin a{color:#4c7b64}.admin fieldset{border:0;margin:0;padding:0}.editcard{margin-bottom:15px;padding:20px}.editcard label{color:#5b7566;margin-bottom:14px;font-size:12px;display:block}.editcard input,.editcard textarea,.editcard select{color:#263c36;width:100%;font:inherit;background:#fafcf7;border:1px solid #d8e1d5;border-radius:10px;margin-top:7px;padding:12px;font-size:14px;display:block}.editcard textarea{resize:vertical;min-height:90px}.formrow{gap:12px;display:flex}.formrow label{flex:1;min-width:0}.editcard small{color:#87968a;font-size:11px}.admin .sectionhead button{color:#3c765e;background:#e3eddc;border-radius:10px;padding:9px 12px;font-size:12px}.delete{color:#a36257;background:0 0;margin-top:14px;padding:5px 0;font-size:12px;display:block}.savebar{background:#fff;border:1px solid #dce5d5;border-radius:16px;justify-content:space-between;align-items:center;margin-top:24px;padding:14px;display:flex;position:sticky;bottom:12px;box-shadow:0 4px 24px #263c3615}.savebar span{color:#87968a;font-size:11px}.savebar button{color:#fff;background:#3c765e;border-radius:12px;padding:13px 18px}.admin button:disabled{opacity:.5}footer a{color:#87968a;font-size:11px}.rowtext{flex:1;min-width:0}.row-note{white-space:pre-wrap;color:#587164;overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;font-weight:400;line-height:1.6}.weekpicker{color:#587164;justify-content:flex-end;margin:14px 0;font-size:13px;display:flex}.weekpicker input{color:#254a38;background:#fff;border:1px solid #cfddd4;border-radius:8px;margin-left:8px;padding:7px}.editcard summary{cursor:pointer;padding:8px 0;font-weight:700}.lessonedit{border-bottom:1px solid #dce7df;padding:12px 0}.checkboxlabel{align-items:center;gap:8px;display:flex!important}.checkboxlabel input{width:auto!important}a.share{color:inherit;text-decoration:none;display:inline-block}.admin-tabs{background:#edf3ee;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:4px 0 22px;padding:6px;display:grid}.admin-tabs button{color:#587164;white-space:nowrap;background:0 0;border:0;border-radius:10px;margin:0;padding:12px 4px;font-size:14px}.admin-tabs button.active{color:#fff;background:#2e6650}.admin [role=tabpanel][hidden]{display:none}.admin [role=tabpanel]{padding-bottom:16px}.admin-tabs button:focus-visible{outline-offset:2px;outline:3px solid #dba960}@media (max-width:380px){.admin-tabs button{font-size:12px}}.admin-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.admin-tabs button{font-size:12px}.savebar[hidden]{display:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.photo-card{text-align:left;color:#263c36;background:#fff;border:1px solid #dce6d9;border-radius:18px;padding:0;overflow:hidden}.photo-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.photo-card>div{padding:14px}.photo-card small,.photo-dialog small{color:#87968a;font-size:11px}.photo-card h3{overflow-wrap:anywhere;margin:7px 0;font-size:15px}.photo-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;display:-webkit-box;overflow:hidden}.gallery-empty{text-align:center;background:#eff4e9;border:1px dashed #cddcc8;border-radius:20px;margin-top:22px;padding:45px 15px}.gallery-empty>span{font-size:36px}.gallery-empty h3{font-size:18px}.photo-dialog{color:#263c36;background:#f7f8f2;border:0;border-radius:20px;width:calc(100% - 28px);max-width:900px;max-height:90vh;padding:16px}.photo-dialog::backdrop{background:#172e27cc}.photo-dialog img{object-fit:contain;border-radius:12px;width:100%;max-height:65vh;display:block}.photo-dialog>div{padding:12px}.photo-close{color:#356b55;background:#e3eddc;border-radius:10px;margin:0 0 12px auto;padding:9px 14px;display:block}.upload-preview{border-radius:12px;max-width:100%;max-height:300px;margin:10px auto 18px;display:block}.gallery-action{color:#fff;background:#3c765e;border-radius:10px;margin:10px 10px 0 0;padding:11px 17px}@media (max-width:380px){.admin-tabs button{padding:12px 2px;font-size:11px}nav button{font-size:12px}.gallery-grid{gap:10px}.photo-card>div{padding:10px}}.gallery-upload{background:#edf3e9;border:1px solid #dce6d9;border-radius:16px;margin:18px 0 24px;padding:14px}.gallery-upload summary{cursor:pointer;color:#356b55;font-size:14px;font-weight:700}.gallery-upload fieldset{border:0;margin:12px 0 0;padding:0}.gallery-upload .editcard{margin:0}.gallery-upload button:disabled{opacity:.5}.photo-delete{border-top:1px solid #dce6d9;margin-top:22px;padding-top:14px}.photo-delete summary{cursor:pointer;color:#a36257;font-size:12px}.photo-delete label{margin-top:16px;font-size:12px;display:block}.photo-delete input{border:1px solid #d8e1d5;border-radius:10px;width:100%;margin-top:8px;padding:12px;display:block}.upload-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.upload-grid img{aspect-ratio:1;object-fit:cover;border-radius:10px;width:100%}.upload-grid button{color:#a36257;background:0 0;margin:5px auto 0;font-size:11px;display:block}.guestbook fieldset{border:0;margin:0;padding:0}.guestbook .sectionhead button{color:#356b55;background:#e3eddc;border-radius:8px;padding:8px 10px;font-size:11px}.guest-entry{margin-bottom:14px;padding:20px}.guest-meta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.guest-meta strong{overflow-wrap:anywhere;font-size:14px}.guest-meta time{color:#87968a;flex-shrink:0;font-size:10px}.guest-delete{padding-top:14px}.guest-delete label{font-size:12px}.guest-delete input{border:1px solid #d8e1d5;border-radius:10px;width:100%;margin-top:8px;padding:10px;display:block}.guest-delete>button{margin-right:12px;display:inline-block}.guestbook button:disabled{opacity:.5}.admin-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}nav{flex-wrap:wrap}nav button{white-space:nowrap;min-width:65px}@media (max-width:380px){nav button{font-size:11px}.guest-meta{flex-direction:column;align-items:flex-start;gap:5px}}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.stat-card{padding:20px}.stat-card span{color:#718078;font-size:12px}.stat-card strong{color:#356b55;margin-top:8px;font-size:32px;display:block}.stats-table{padding:8px 16px}.stats-table table{border-collapse:collapse;width:100%;font-size:13px}.stats-table th,.stats-table td{text-align:right;border-bottom:1px solid #eef1e9;padding:14px 6px}.stats-table th:first-child,.stats-table td:first-child{text-align:left}.stats-table th{color:#87968a;font-size:11px}.stats-table tr:last-child td{border-bottom:0}nav[hidden]{display:none}.admin-links{justify-content:space-between;gap:14px;margin-bottom:16px;font-size:13px;display:flex}.reminders{background:#e0f0e4;border:1px solid #b9d8c1;border-radius:16px;margin:0 0 22px;padding:18px 20px}.reminders h2{margin:0 0 10px;font-size:16px}.reminder+.reminder{border-top:1px solid #b9d8c1;margin-top:12px;padding-top:12px}.reminder time{color:#587366;font-size:13px;font-weight:600}.reminder p{white-space:pre-wrap;color:#52675a;margin:5px 0 0;font-size:16px;line-height:1.8}.install-app{text-align:center;max-width:680px;margin:0 auto 28px;padding:0 24px}.install-app button{color:#315f4c;background:#e0f0e4;border:1px solid #b9d8c1;border-radius:12px;padding:11px 18px;font-size:12px;font-weight:600}.install-app p{color:#587366;font-size:12px;line-height:1.7}
