:root{--primary-color: #4F46E5;--secondary-color: #10B981;--accent-color: #F59E0B;--bg-color: #F9FAFB;--card-bg: #FFFFFF;--text-main: #111827;--text-muted: #6B7280;--border-radius: 16px;--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}input{font-family:inherit}.container{max-width:480px;margin:0 auto;min-height:100vh;background-color:var(--bg-color);position:relative}.browser-check-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.browser-check-modal{background:#fff;padding:24px;border-radius:var(--border-radius);text-align:center;max-width:320px}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#4f46e5,#10b981)}.login-card{background:#fffffff2;padding:40px 30px;border-radius:24px;width:100%;max-width:360px;box-shadow:0 20px 40px #00000026;text-align:center}.logo-text{font-size:2.5rem;font-weight:800;color:var(--primary-color);letter-spacing:-1px;margin-bottom:8px}.subtitle{font-size:.9rem;color:var(--text-muted);margin-bottom:40px}.login-form{text-align:left}.input-group{margin-bottom:20px}.input-group label{display:block;font-size:.85rem;font-weight:600;color:var(--text-main);margin-bottom:8px;padding-left:4px}.input-group input{width:100%;padding:14px 18px;border:1px solid #E5E7EB;border-radius:12px;font-size:1rem;transition:all .2s}.input-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #4f46e51a;outline:none}.error-message{color:#ef4444;font-size:.85rem;margin-bottom:15px;font-weight:600;text-align:center}.login-button{width:100%;padding:16px;background-color:var(--primary-color);color:#fff;font-size:1.1rem;font-weight:700;border-radius:14px;margin-top:10px;box-shadow:0 4px 12px #4f46e533}.login-button:active{transform:scale(.98)}.login-footer{margin-top:24px;font-size:.8rem;color:var(--text-muted)}.help-link{color:var(--primary-color);text-decoration:underline;cursor:pointer}.header{position:sticky;top:0;left:0;right:0;height:64px;background-color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:100;border-bottom:1px solid #F3F4F6}.header-logo{font-size:1.5rem;font-weight:800;color:var(--primary-color);letter-spacing:-.5px;cursor:pointer}.header-right{display:flex;align-items:center;gap:12px}.user-name{font-size:.9rem;font-weight:600;color:var(--text-main)}.logout-btn{background:none;color:var(--text-muted);display:flex;align-items:center}.main-content{padding:20px}.home-content{display:flex;flex-direction:column;gap:28px;padding-bottom:40px}.section-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.header-icon{color:var(--primary-color)}.section-header h2{font-size:1.1rem;font-weight:700;flex:1}.view-all{font-size:.85rem;color:var(--text-muted);background:none;font-weight:600}.notice-card{background-color:var(--card-bg);padding:20px;border-radius:var(--border-radius);box-shadow:var(--shadow);text-align:center;border-left:4px solid var(--primary-color)}.notice-card p{font-size:.95rem;color:var(--text-main);word-break:keep-all}.timetable-cards{display:flex;flex-direction:column;gap:12px}.time-card{padding:16px 20px;border-radius:var(--border-radius);box-shadow:var(--shadow);background-color:var(--card-bg);position:relative;overflow:hidden}.time-card.current{background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff}.time-card.current .time-info{color:#fffc}.time-card.current .label{background-color:#fff3;color:#fff}.label{display:inline-block;font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:4px;background-color:#f3f4f6;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase}.time-title{font-size:1.1rem;font-weight:700;margin-bottom:4px}.time-info{font-size:.85rem;color:var(--text-muted)}.nav-grid{display:grid;grid-template-columns:1fr;gap:12px}.nav-card{display:flex;align-items:center;padding:20px;border-radius:var(--border-radius);box-shadow:var(--shadow);text-align:left}.nav-icon{margin-right:16px;display:flex;align-items:center;justify-content:center}.nav-title{flex:1;font-size:1rem;font-weight:700;color:var(--text-main)}.nav-arrow{color:var(--text-muted)}.prayer-page{display:flex;flex-direction:column;gap:20px}.tab-container{display:flex;background-color:#f3f4f6;padding:4px;border-radius:12px;gap:4px}.tab{flex:1;padding:10px;border-radius:8px;font-size:.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;background:none;color:var(--text-muted)}.tab.active{background-color:#fff;color:var(--primary-color);box-shadow:0 2px 4px #0000000d}.input-card{background:#fff;padding:16px;border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.input-card textarea{width:100%;height:100px;padding:12px;border:1px solid #E5E7EB;border-radius:12px;font-family:inherit;font-size:.95rem;resize:none}.send-btn{align-self:flex-end;background-color:var(--primary-color);color:#fff;padding:8px 16px;border-radius:10px;font-weight:700;display:flex;align-items:center;gap:6px}.prayer-list{display:flex;flex-direction:column;gap:12px}.prayer-list h3{font-size:1rem;margin-top:10px}.prayer-item{background:#fff;padding:16px;border-radius:var(--border-radius);box-shadow:var(--shadow)}.prayer-item.mine{border-left:4px solid var(--primary-color)}.item-header{display:flex;justify-content:space-between;margin-bottom:8px}.user-info{font-size:.85rem;font-weight:800;color:var(--text-main)}.heart-icon{color:#ef4444}.prayer-item p{font-size:.95rem;margin-bottom:6px;word-break:keep-all}.prayer-item span{font-size:.75rem;color:var(--text-muted)}.lectures-page{display:flex;flex-direction:column;gap:20px}.page-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.open-badge{font-size:.8rem;font-weight:800;padding:4px 10px;border-radius:20px;background-color:#f3f4f6;color:#6b7280}.open-badge.open{background-color:#ecfdf5;color:#10b981}.header-status{display:flex;align-items:center;gap:8px}.enrolled-label{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:800;color:var(--primary-color)}.lecture-card.enrolled{border:2px solid var(--primary-color)}.enroll-btn{width:100%;padding:12px;border-radius:12px;font-weight:800;font-size:.95rem;background-color:var(--primary-color);color:#fff;margin-top:8px}.enroll-btn.cancel{background-color:#fff;color:#ef4444;border:1px solid #EF4444}.enroll-btn:disabled{background-color:#e5e7eb;color:#9ca3af}.lecture-list{display:flex;flex-direction:column;gap:16px}.lecture-card{background:#fff;padding:20px;border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.card-header{display:flex;justify-content:space-between;align-items:center}.card-header h3{font-size:1.1rem;font-weight:800;color:var(--primary-color)}.status{font-size:.75rem;font-weight:800;padding:4px 8px;border-radius:6px;background-color:#ecfdf5;color:#10b981}.status.full{background-color:#fef2f2;color:#ef4444}.lecturer-info{display:flex;align-items:center;gap:6px;font-size:.9rem;color:var(--text-main);font-weight:600}.description{font-size:.9rem;color:var(--text-muted);line-height:1.5;word-break:keep-all}.capacity-info{display:flex;flex-direction:column;gap:8px;margin-top:4px}.capacity-bar{width:100%;height:8px;background-color:#f3f4f6;border-radius:4px;overflow:hidden}.progress{height:100%;background-color:var(--primary-color);border-radius:4px}.capacity-text{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted);font-weight:600}.timetable-page{padding-bottom:40px}.timeline{display:flex;flex-direction:column;margin-top:20px}.timeline-item{display:flex;gap:20px}.time-col{width:60px;text-align:right;padding-top:4px}.time{font-size:.9rem;font-weight:800;color:var(--primary-color)}.content-col{flex:1;position:relative;padding-bottom:30px;border-left:2px solid #E5E7EB;padding-left:24px}.timeline-item:last-child .content-col{border-left:2px solid transparent}.dot{position:absolute;left:-7px;top:8px;width:12px;height:12px;background-color:var(--primary-color);border:2px solid white;border-radius:50%;z-index:1}.event-card{background:#fff;padding:16px;border-radius:12px;box-shadow:var(--shadow)}.event-card h4{font-size:1rem;font-weight:700;margin-bottom:4px}.event-card p{font-size:.85rem;color:var(--text-muted)}.admin-dashboard{padding-bottom:40px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.admin-menu-card{background:#fff;padding:24px 16px;border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.admin-menu-card span{font-size:.9rem;font-weight:700;color:var(--text-main)}.icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.icon-wrapper svg{width:24px;height:24px}.admin-page{display:flex;flex-direction:column;gap:20px}.add-form{display:flex;flex-direction:column;gap:12px;background:#fff;padding:16px;border-radius:12px;box-shadow:var(--shadow)}.add-form input,.add-form select{padding:12px;border:1px solid #E5E7EB;border-radius:8px}.add-form button{background:var(--primary-color);color:#fff;padding:12px;border-radius:8px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}.list-container{display:flex;flex-direction:column;gap:10px}.list-item{background:#fff;padding:14px 16px;border-radius:12px;box-shadow:var(--shadow);display:flex;justify-content:space-between;align-items:center}.subtext{font-size:.8rem;color:var(--text-muted)}.del-btn{background:none;color:#ef4444}.add-group{display:flex;gap:10px;background:#fff;padding:16px;border-radius:12px;box-shadow:var(--shadow)}.add-group input{flex:1;padding:10px;border:1px solid #E5E7EB;border-radius:8px}.add-group button{background:var(--secondary-color);color:#fff;padding:0 16px;border-radius:8px;font-weight:700;display:flex;align-items:center;gap:4px}.assign-container{display:flex;flex-direction:column;gap:8px}.assign-item{background:#fff;padding:12px 16px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 2px #0000000d}.assign-item span{font-size:.9rem;font-weight:600}.assign-item select{padding:6px;border-radius:6px;border:1px solid #E5E7EB;font-size:.85rem}.notice-history{display:flex;flex-direction:column;gap:12px}.history-item{background:#fff;padding:16px;border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px}.history-item strong{font-size:1rem}.history-item p{font-size:.9rem;color:var(--text-main);white-space:pre-wrap}.history-item span{font-size:.75rem;color:var(--text-muted)}.add-form textarea{min-height:120px;resize:none;padding:12px;border-radius:8px;border:1px solid #E5E7EB;font-family:inherit}.settings-card{background:#fff;padding:40px 20px;border-radius:20px;box-shadow:var(--shadow);text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;border:2px solid #F3F4F6}.settings-card.active{border-color:#ecfdf5;background-color:#f0fdf4}.status-label{display:flex;flex-direction:column;align-items:center;gap:12px}.status-label h3{font-size:1.25rem;font-weight:800}.settings-card p{font-size:.95rem;color:var(--text-muted)}.toggle-btn{width:100%;padding:16px;border-radius:12px;font-weight:800;font-size:1rem;color:#fff}.toggle-btn.open{background-color:var(--primary-color)}.toggle-btn.close{background-color:#ef4444}.counter{font-size:16px;padding:5px 10px;border-radius:5px;color:var(--accent);background:var(--accent-bg);border:2px solid transparent;transition:border-color .3s;margin-bottom:24px}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{inset-inline:0;margin:0 auto}.hero .base{width:170px;position:relative;z-index:0}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;top:34px;height:28px;transform:perspective(2000px) rotate(300deg) rotateX(44deg) rotateY(39deg) scale(1.4)}.hero .vite{z-index:0;top:107px;height:26px;width:auto;transform:perspective(2000px) rotate(300deg) rotateX(40deg) rotateY(39deg) scale(.8)}#center{display:flex;flex-direction:column;gap:25px;place-content:center;place-items:center;flex-grow:1}@media (max-width: 1024px){#center{padding:32px 20px 24px;gap:18px}}#next-steps{display:flex;border-top:1px solid var(--border);text-align:left}#next-steps>div{flex:1 1 0;padding:32px}@media (max-width: 1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{margin-bottom:16px;width:22px;height:22px}@media (max-width: 1024px){#next-steps{flex-direction:column;text-align:center}}#docs{border-right:1px solid var(--border)}@media (max-width: 1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{list-style:none;padding:0;display:flex;gap:8px;margin:32px 0 0}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);font-size:16px;border-radius:6px;background:var(--social-bg);display:flex;padding:6px 12px;align-items:center;gap:8px;text-decoration:none;transition:box-shadow .3s}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{height:18px;width:18px}@media (max-width: 1024px){#next-steps ul{margin-top:20px;flex-wrap:wrap;justify-content:center}#next-steps ul li{flex:1 1 calc(50% - 8px)}#next-steps ul a{width:100%;justify-content:center;box-sizing:border-box}}#spacer{height:88px;border-top:1px solid var(--border)}@media (max-width: 1024px){#spacer{height:48px}}.ticks{position:relative;width:100%}.ticks:before,.ticks:after{content:"";position:absolute;top:-4.5px;border:5px solid transparent}.ticks:before{left:0;border-left-color:var(--border)}.ticks:after{right:0;border-right-color:var(--border)}
