/* ─── Plan 페이지 ─── */
.plan-body{display:flex;flex:1;overflow:hidden;gap:14px;padding:16px;}
.plan-left{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;}
.plan-right{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto;}
.plan-right::-webkit-scrollbar{width:4px;}
.plan-right::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px;}
.plan-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r3);padding:14px 16px;flex-shrink:0;}
.plan-card-title{font-size:12px;font-weight:700;color:var(--tx3);letter-spacing:.5px;text-transform:uppercase;margin-bottom:0;display:flex;align-items:center;gap:6px;padding:10px 0;}
.plan-sermon-item{padding:10px 12px;border-radius:var(--r2);background:var(--surface2);margin-bottom:7px;cursor:pointer;transition:background .15s;}
.plan-sermon-item:hover{background:rgba(28,107,90,.08);}
.plan-sermon-date{font-size:11px;color:var(--tx3);margin-bottom:3px;}
.plan-sermon-title{font-size:13px;font-weight:600;color:var(--tx1);margin-bottom:2px;}
.plan-sermon-ref{font-size:11.5px;color:var(--primary);}
.plan-today-item{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);}
.plan-today-item:last-child{border-bottom:none;}
.plan-today-time{font-size:11px;color:var(--primary);font-weight:700;min-width:38px;flex-shrink:0;padding-top:1px;}
.plan-today-text{font-size:12.5px;color:var(--tx1);line-height:1.5;}
.plan-today-empty{font-size:12.5px;color:var(--tx4);font-style:italic;padding:8px 0;}
.plan-cal-wrap{flex:1;border-radius:var(--r3);overflow:hidden;background:white;position:relative;}
.plan-cal-iframe{width:100%;height:100%;border:none;display:block;}
.plan-cal-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--tx3);font-size:13px;text-align:center;padding:20px;}
.plan-cal-placeholder svg{opacity:.3;}
.plan-link-row{display:flex;gap:7px;align-items:center;margin-bottom:8px;}
.plan-link-inp{flex:1;font-size:12px;padding:7px 11px;border:1.5px solid var(--border);border-radius:var(--r2);font-family:var(--sans);outline:none;color:var(--tx1);background:var(--surface);}
.plan-link-inp:focus{border-color:var(--primary);}
.plan-link-inp::placeholder{color:var(--tx4);}
.plan-link-hint{font-size:11px;color:var(--tx4);line-height:1.6;}

