/* ===== 365夜 ===== */

/* --- 统一头图卡片 --- */
.s365-cover-card{padding:16px 20px}
.s365-cover-row{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.s365-cover-thumb{flex:0 0 232px;height:132px;border-radius:10px;overflow:hidden;
  background:#f6f3ee;border:1px solid #ece5d9;display:flex;align-items:center;
  justify-content:center}
.s365-cover-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.s365-cover-empty{font-size:13px;color:#a99a86}
.s365-cover-info{flex:1 1 300px;min-width:0;padding-top:2px}
.s365-cover-title{font-size:15px;font-weight:700;color:#3b342b;margin-bottom:7px;
  display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.s365-cover-desc{font-size:13px;color:#6b6357;line-height:1.65;margin-bottom:11px;
  word-break:break-all}
.s365-cover-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.s365-cover-btn{position:relative;overflow:hidden;cursor:pointer}
.s365-cover-btn input[type=file]{display:none}
.s365-cover-hint{font-size:12px;color:#a99a86;margin-top:9px;line-height:1.6}
.s365-ok{color:#2e9e5b;font-weight:700}
.s365-warn{color:#d98028;font-weight:700}

.s365-topbar{display:flex;gap:16px;flex-wrap:wrap;align-items:stretch;margin-bottom:16px}
.s365-today{flex:1 1 420px;background:linear-gradient(135deg,#fff8ee 0%,#fff 60%);
  border:1px solid #f0e2cf;border-radius:14px;padding:18px 20px;
  box-shadow:0 2px 10px rgba(180,140,80,.07)}
.s365-today-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.s365-today-date{font-size:15px;font-weight:700;color:#b4772a}
.s365-today-label{font-size:12px;color:#9a8b76;background:#f6ede0;border-radius:10px;padding:2px 9px}
.s365-today-name{font-size:22px;font-weight:700;margin:6px 0 8px;color:#2f2a22}
.s365-today-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.s365-today-sum{font-size:14px;color:#5d564c;line-height:1.65;margin-bottom:8px}
.s365-today-holiday{font-size:13px;color:#a07940;background:#fdf6ea;border-radius:8px;
  padding:6px 10px;margin-bottom:12px}
.s365-legend{flex:0 0 220px;display:flex;flex-direction:column;gap:8px;justify-content:center;
  background:#fbfbfb;border:1px solid #eee;border-radius:14px;padding:16px 18px}
.s365-lg-item{font-size:13px;color:#5d564c;display:flex;align-items:center;gap:8px}
.s365-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:0 0 9px}
.s365-dot.is-cn{background:#e07b39}
.s365-dot.is-world{background:#4a86c8}
.s365-months{display:flex;gap:6px;flex-wrap:wrap}
.s365-mbtn{border:1px solid #e6ded2;background:#fff;color:#6b6357;border-radius:9px;
  padding:4px 11px;font-size:13px;cursor:pointer;transition:all .15s}
.s365-mbtn:hover{border-color:#d9b98a;color:#b4772a}
.s365-mbtn.is-active{background:#b4772a;border-color:#b4772a;color:#fff;font-weight:600}
.s365-holiday-bar{font-size:13px;color:#7a6a52;background:#fdfaf5;border:1px dashed #ecdcc4;
  border-radius:10px;padding:9px 13px;margin-bottom:12px;line-height:1.6}
.s365-ratio{float:right;color:#a07940}
.s365-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.s365-cell{text-align:left;border:1px solid #eee7dc;background:#fff;
  border-radius:10px;padding:8px 9px 9px;min-height:62px;cursor:pointer;
  transition:all .15s;display:flex;flex-direction:column;gap:2px;font-family:inherit}
.s365-cell.is-empty{border-style:dashed;opacity:.35;cursor:default;background:#fcfcfc}
.s365-cell.is-click:hover{border-color:#d9b98a;box-shadow:0 2px 8px rgba(180,140,80,.13);transform:translateY(-1px)}
.s365-cell.is-sel{border-color:#b4772a;background:#fffaf2;box-shadow:0 0 0 2px rgba(180,119,42,.16)}
/* 头部行：日期 + 圆点，用 flex 靠两端，避免 absolute 在 flex 容器里定位错乱 */
.s365-cell .s365-head{display:flex;align-items:center;justify-content:space-between;
  gap:6px;line-height:1}
.s365-d{font-size:12px;font-weight:700;color:#b4772a}
.s365-dot.is-cn{background:#e07b39}
.s365-dot.is-world{background:#4a86c8}
.s365-name{font-size:12px;color:#4b443a;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.s365-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
  padding-bottom:14px;border-bottom:1px solid #f1ece3;margin-bottom:14px;flex-wrap:wrap}
.s365-detail-date{font-size:13px;font-weight:700;color:#b4772a}
.s365-detail-name{font-size:20px;font-weight:700;margin:5px 0 7px;color:#2f2a22}
.s365-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.s365-fact{background:#fbfaf8;border-radius:10px;padding:11px 13px}
.s365-fact label{display:block;font-size:12px;color:#9a8b76;margin-bottom:4px}
.s365-fact p{margin:0;font-size:13.5px;color:#4b443a;line-height:1.65}
.s365-tip{font-size:12.5px;color:#9a8b76;font-weight:400;
  text-align:right;flex:0 1 auto;min-width:0;max-width:62%;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 「妈妈讲读稿」那行：标题不收缩，提示靠右且可省略 */
.s365-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.s365-card-head > span:first-child{flex:0 0 auto}
.gzh-textarea.s365-script{min-height:340px;line-height:1.85;font-size:14px;
  font-family:inherit;white-space:pre-wrap}
@media (max-width:760px){
  .s365-today{flex:1 1 100%}
  .s365-legend{flex:1 1 100%;flex-direction:row;flex-wrap:wrap}
  .s365-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
}

/* 2026-10-02 「已生成」标记（睡前故事 → 学生端联动） */
.s365-chip-ok{color:#16a34a !important;font-weight:600;}
