/* Step207.62 — 星のカレンダーと予定・日記。日記の旧キーはそのまま利用します。 */
#hoshiDailyView .hoshi-calendar, #hoshiDailyView .hoshi-schedule, #hoshiDailyView .hoshi-journal{
  overflow:visible;min-width:0;
}
#hoshiDailyView .hoshi-calendar{
  background:linear-gradient(155deg,#fffafd,#fcf9ff 55%,#f9f8ff);border:1px solid #e9d5eb;
}
#hoshiDailyView .hoshi-calendar h3,#hoshiDailyView .hoshi-schedule h3{color:#854a89}
.hoshi-calendar-toolbar{display:flex;align-items:center;gap:10px;margin:19px 0 14px;flex-wrap:wrap}
#hoshiDailyView .hoshi-calendar-toolbar h4{font-size:clamp(17px,2.7vw,22px);color:#7d4e86;line-height:1.3;text-align:center;margin:0 auto;min-width:130px}
#hoshiDailyView .hoshi-cal-step,#hoshiDailyView .hoshi-cal-today{border:1px solid #e5cbe5;background:white;color:#854a89;box-shadow:0 4px 12px #b88cb217;border-radius:13px;cursor:pointer;font-weight:800;min-height:43px}
#hoshiDailyView .hoshi-cal-step{width:43px;font-size:24px;padding:0}
#hoshiDailyView .hoshi-cal-today{padding:8px 16px;min-width:61px}
.hoshi-calendar-weekdays,.hoshi-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.hoshi-calendar-weekdays{margin:0 0 8px;text-align:center}
.hoshi-calendar-weekdays span{color:#87748d;font-size:12px;font-weight:800;padding:8px 0}
.hoshi-calendar-weekdays span:nth-child(6){color:#7392bf}
.hoshi-calendar-weekdays span:nth-child(7){color:#c5789d}
#hoshiDailyView .hoshi-cal-day{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;min-width:0;min-height:77px;padding:12px 3px 7px;border:1px solid #eddfef;border-radius:14px;background:#fff;color:#624d70;cursor:pointer;box-shadow:none;line-height:1.15;transition:background .15s,border-color .15s;position:relative}
#hoshiDailyView .hoshi-cal-day:hover{background:#fff5fb;border-color:#dfb1d0}
#hoshiDailyView .hoshi-cal-day[aria-pressed="true"]{background:linear-gradient(135deg,#e998c5,#b886c8);border-color:#b67cc2;color:white;box-shadow:0 6px 14px #ba84b14d}
#hoshiDailyView .hoshi-cal-day.is-today:not([aria-pressed="true"]){border:2px solid #ca82bb;background:#fff6fc;padding-top:11px}
.hoshi-cal-day-number{display:block;font-size:16px;font-weight:800}
.hoshi-cal-icons{display:flex;align-items:center;justify-content:center;gap:5px;min-height:11px;max-width:100%}
.hoshi-cal-icons i,.hoshi-cal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.hoshi-cal-icons .is-note,.hoshi-cal-dot.is-note{background:#dc7da9}
.hoshi-cal-icons .is-event,.hoshi-cal-dot.is-event{background:#9179d2}
#hoshiDailyView .hoshi-cal-day[aria-pressed="true"] .hoshi-cal-icons i{background:white;border:1px solid #fff}
.hoshi-cal-placeholder{min-width:0;min-height:77px}
.hoshi-calendar-legend{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;margin-top:15px;color:#8b728f;font-size:12px}
.hoshi-calendar-legend span{display:inline-flex;align-items:center;gap:6px}
#hoshiDailyView .hoshi-calendar-selected{margin-left:auto;color:#795182;font-weight:800}
.hoshi-mini-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}
#hoshiDailyView .hoshi-mini-heading h4{font-size:14px;margin:0;color:#875a89}
.hoshi-mini-heading span{font-size:11px;color:#9b899d}
.hoshi-history,.hoshi-upcoming{border-top:1px solid #eee1ed;margin-top:18px;padding-top:16px}
.hoshi-history-list,.hoshi-upcoming-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
#hoshiDailyView .hoshi-history-item,#hoshiDailyView .hoshi-upcoming-item{min-width:0;display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;background:#fff;border:1px solid #eddfe9;border-radius:14px;padding:11px 13px;cursor:pointer;color:#775877;box-shadow:none}
#hoshiDailyView .hoshi-history-item:hover,#hoshiDailyView .hoshi-upcoming-item:hover{background:#fff3f9}
.hoshi-history-item strong,.hoshi-upcoming-item strong{font-size:13px;line-height:1.5}
.hoshi-history-item span,.hoshi-upcoming-item span{font-size:12px;color:#897a8b;line-height:1.6;overflow-wrap:anywhere}
#hoshiDailyView .hoshi-planner-empty{color:#9b8999;font-size:12px;line-height:1.8;margin:8px 0}
#hoshiDailyView .hoshi-journal .daily-card-heading p{font-weight:750;color:#976c94}
#hoshiDailyView .hoshi-event-list{display:grid;gap:10px;margin:15px 0 18px}
.hoshi-event-entry{border:1px solid #e9d8eb;background:linear-gradient(110deg,#fff,#fffafd);border-radius:16px;padding:14px;display:flex;gap:12px;justify-content:space-between;align-items:flex-start;min-width:0}
.hoshi-event-content{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.hoshi-event-content strong{font-size:15px;color:#765377;overflow-wrap:anywhere;line-height:1.55}
#hoshiDailyView .hoshi-event-content p{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#8b778a}
.hoshi-event-meta{display:flex;gap:6px;flex-wrap:wrap;color:#8a7991;font-size:12px}
.hoshi-event-category{background:#f6ebfa;border-radius:999px;padding:4px 8px;color:#8b5c9a;font-weight:750}
.hoshi-event-category[data-kind="大切な日"]{background:#ffeff6;color:#ad588c}
.hoshi-event-category[data-kind="勉強・仕事"]{background:#ecf3ff;color:#6e82b8}
.hoshi-event-category[data-kind="お出かけ"]{background:#e9f7f3;color:#428c80}
.hoshi-event-controls{display:flex;flex-wrap:wrap;gap:6px;justify-content:end;flex:0 0 auto}
#hoshiDailyView .hoshi-event-edit,#hoshiDailyView .hoshi-event-delete{border:1px solid #e5d3e5;border-radius:10px;background:#fff;color:#845c85;padding:8px 10px;font-size:12px;font-weight:750;cursor:pointer;min-height:38px}
#hoshiDailyView .hoshi-event-delete{color:#aa526f;border-color:#f0cbd7}
.hoshi-event-form{border-top:1px solid #f1e3ec;padding-top:14px;display:grid;gap:11px}
#hoshiDailyView .hoshi-event-form h4{margin:0;color:#855b90;font-size:16px}
#hoshiDailyView .hoshi-event-form label{display:grid;gap:5px;color:#7a627e;font-size:13px;font-weight:750;min-width:0}
#hoshiDailyView .hoshi-event-form :is(input,textarea,select){font:inherit;font-size:16px;border-radius:12px;border:1px solid #e7cfdf;background:#fff;color:#654767;min-width:0;width:100%;padding:10px 12px;box-sizing:border-box;box-shadow:none}
#hoshiDailyView .hoshi-event-form textarea{resize:vertical;line-height:1.65}
.hoshi-event-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#hoshiDailyView .hoshi-required{color:#ac648b;font-size:11px}
.hoshi-event-actions,.hoshi-backup-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#hoshiDailyView .hoshi-event-actions button,#hoshiDailyView .hoshi-backup-actions button{flex:1 1 160px;margin:0}
#hoshiDailyView .hoshi-inline-status{margin:10px 0 0;padding:0;color:#946c8d;font-size:12px;min-height:18px;white-space:pre-wrap;overflow-wrap:anywhere}
.hoshi-backup{margin-top:19px;background:#fdf8ff;border-radius:16px;padding:14px;border:1px dashed #e6d1e9}
#hoshiDailyView .hoshi-backup h4{margin:0 0 8px;color:#875b8d;font-size:14px}
#hoshiDailyView .hoshi-backup p{margin:0 0 12px;font-size:12px}
#hoshiDailyView .hoshi-backup .hoshi-inline-status{margin:10px 0 0}
@media(max-width:640px){
 .hoshi-calendar-weekdays,.hoshi-calendar-grid{gap:4px}
 #hoshiDailyView .hoshi-cal-day{min-height:65px;border-radius:11px;padding:10px 2px 6px;gap:3px}
 #hoshiDailyView .hoshi-cal-day.is-today:not([aria-pressed="true"]){padding-top:9px}
 .hoshi-cal-placeholder{min-height:65px}
 .hoshi-cal-day-number{font-size:14px}
 .hoshi-calendar-toolbar{gap:6px}
 #hoshiDailyView .hoshi-calendar-toolbar h4{font-size:16px;min-width:105px}
 #hoshiDailyView .hoshi-cal-step{width:38px;min-height:39px}
 #hoshiDailyView .hoshi-cal-today{min-height:39px;min-width:48px;padding:6px 9px}
 .hoshi-event-entry{flex-direction:column;gap:9px}
 .hoshi-event-controls{width:100%;justify-content:flex-start}
 #hoshiDailyView .hoshi-event-controls button{flex:1 1 auto}
 .hoshi-history-list,.hoshi-upcoming-list{grid-template-columns:1fr}
 #hoshiDailyView .hoshi-calendar-selected{width:100%;margin-left:0}
}
/* Keep native file picker hidden until the dedicated restore button is used. */
#hoshiPlannerFile[hidden]{display:none!important}
