/* Rainy Day planner v1: home-aligned blue glass and fast planning UI. */
html[data-ui-preset="rainy"][data-rainy-view="planner"]{
  --ink:#003f7d;
  --ink-soft:#076fae;
  --ink-faint:#4d8fb7;
  --accent:#00a9eb;
  --accent-rgb:0,169,235;
  --accent-deep:#007dc3;
  --accent-soft:rgba(0,169,235,.18);
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] body{background:#3ca9ed}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .shell{
  background:
    linear-gradient(112deg,rgba(0,87,174,.24),rgba(80,202,255,.1) 46%,rgba(0,117,202,.18)),
    var(--rainy-hero) center/cover no-repeat;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .side{
  background:linear-gradient(180deg,rgba(3,43,89,.96),rgba(5,68,122,.91) 58%,rgba(4,58,107,.8));
  border-right-color:rgba(143,218,255,.3);
  box-shadow:14px 0 42px rgba(0,47,91,.2),inset -1px 0 rgba(199,239,255,.14);
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .main{
  position:relative;
  isolation:isolate;
  overflow:hidden auto;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .main-content.wide{
  position:relative;
  z-index:1;
  width:100%;
  max-width:1600px;
  padding-right:30px;
  padding-left:30px;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-card,
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-nav button,
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-today-button{
  border-color:rgba(142,218,255,.74);
  background:linear-gradient(145deg,rgba(225,246,255,.97),rgba(171,222,250,.94));
  box-shadow:0 18px 43px rgba(0,76,132,.16),inset 0 1px rgba(255,255,255,.86);
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-head h1{color:#003f7e}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-head>div>span{color:#006da9}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-nav strong{color:#075483}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-primary{
  background:linear-gradient(135deg,#00b8ef,#007fc6);
  box-shadow:0 10px 22px rgba(0,123,187,.24);
}
.rd-week-nav{position:relative}
.rd-today-button{
  width:auto!important;
  min-width:58px;
  padding:0 10px!important;
  color:#0877ad!important;
  font-size:10px!important;
  font-weight:800;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-main{
  grid-template-columns:365px minmax(720px,1fr);
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-selected-day{order:-1}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-board{min-height:500px}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-day{
  position:relative;
  grid-template-rows:88px 1fr;
  padding-bottom:42px;
  border-right-color:rgba(38,130,180,.15);
  transition:background .16s ease,box-shadow .16s ease;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-day.today{background:rgba(113,207,246,.14)}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-day.selected{box-shadow:inset 0 3px 0 #00aee9,inset 0 0 28px rgba(55,187,234,.08)}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-day.drag-over{
  background:rgba(88,211,250,.24);
  box-shadow:inset 0 0 0 2px #20bce8;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-day-head{
  padding:10px 5px 8px;
  border-bottom-color:rgba(38,130,180,.15);
  background:rgba(206,239,252,.42);
}
.rd-day-meta{
  display:block;
  margin-top:5px;
  color:#568daa;
  font-size:7.5px;
  font-weight:680;
  white-space:nowrap;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-day-add{
  position:absolute;
  right:7px;
  bottom:7px;
  left:7px;
  height:30px;
  border:1px dashed rgba(24,137,191,.3);
  border-radius:8px;
  background:rgba(214,242,253,.5);
  color:#1287bb;
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans{gap:8px;padding:9px 7px}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans>button{
  min-height:63px;
  border-color:rgba(53,145,190,.18);
  background:rgba(229,246,253,.74);
  box-shadow:0 5px 12px rgba(0,91,144,.07);
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans>button:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(0,91,144,.12)}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans>button.dragging{opacity:.32}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans>button.floating small{color:#1389b8}

.rd-selected-day{padding:22px 20px!important}
.rd-day-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px;margin:9px 0 2px}
.rd-day-progress>i{height:5px;overflow:hidden;border-radius:999px;background:rgba(42,142,187,.14)}
.rd-day-progress>i>b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#27c8ef,#0789c8)}
.rd-day-progress>span{color:#3c82a5;font:750 8px var(--font-num)}
.rd-quick-add{
  margin:14px -2px 3px;
  padding:14px;
  border:1px solid rgba(46,154,204,.22);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(231,249,255,.72),rgba(165,222,248,.38));
}
.rd-quick-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.rd-quick-title label{color:#0b6798;font-size:10px;font-weight:850}
.rd-quick-title small{color:#6b97ad;font-size:7px;line-height:1.4;text-align:right}
.rd-quick-row{display:grid;grid-template-columns:1fr 48px;gap:7px}
.rd-quick-row input{
  min-width:0;
  height:40px;
  padding:0 12px;
  border:1px solid rgba(35,138,188,.28);
  border-radius:11px;
  outline:0;
  background:rgba(242,252,255,.8);
  color:#064f7b;
  font:650 10.5px var(--font);
}
.rd-quick-row input:focus{border-color:#00a8e7;box-shadow:0 0 0 3px rgba(0,168,231,.1)}
.rd-quick-row>button{
  border:0;
  border-radius:10px;
  background:linear-gradient(135deg,#20c8f4,#0086c9);
  color:#fff;
  font-size:9px;
  font-weight:850;
  box-shadow:0 7px 15px rgba(0,129,190,.2);
  cursor:pointer;
}
.rd-recent-books{display:flex;align-items:center;gap:7px;margin-top:9px}
.rd-recent-books>span{flex:0 0 auto;color:#5689a4;font-size:7.5px;font-weight:760}
.rd-recent-books>div{display:flex;min-width:0;gap:4px;overflow:hidden}
.rd-recent-books button{
  max-width:92px;
  height:23px;
  overflow:hidden;
  padding:0 7px;
  border:1px solid rgba(45,143,189,.2);
  border-radius:999px;
  background:rgba(229,247,254,.7);
  color:#23779f;
  font-size:7.5px;
  font-weight:750;
  text-overflow:ellipsis;
  white-space:nowrap;
  cursor:pointer;
}
.rd-book-picker{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:7px;margin-top:9px}
.rd-book-picker label,.rd-plan-values label{min-width:0;color:#4a86a5;font-size:7.5px;font-weight:720}
.rd-book-picker label>span,.rd-plan-values label>span{display:block;margin:0 0 4px 1px}
.rd-book-picker select,.rd-plan-values input{
  width:100%;
  height:32px;
  min-width:0;
  border:1px solid rgba(45,143,189,.2);
  border-radius:9px;
  background:rgba(237,250,255,.75);
  color:#266f95;
  font:650 8.5px var(--font);
}
.rd-manual-subject[hidden],.rd-unit-field[hidden]{display:none}
.rd-book-summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 7px;
  min-height:32px;
  margin-top:8px;
  padding:7px 9px;
  border-radius:9px;
  background:rgba(225,246,254,.58);
  color:#5488a2;
  font-size:7.5px;
  line-height:1.45;
}
.rd-book-summary strong{max-width:100%;overflow:hidden;color:#126f9e;text-overflow:ellipsis;white-space:nowrap}
.rd-book-summary b{color:#007fb7;font-weight:800}
.rd-book-summary b.overdue{color:#b56c3a}
.rd-book-summary button{
  margin-left:auto;
  padding:3px 6px;
  border:1px solid rgba(20,139,190,.25);
  border-radius:6px;
  background:rgba(240,252,255,.8);
  color:#087eaf;
  font:750 7px var(--font);
  cursor:pointer;
}
.rd-plan-values{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:8px}
.rd-plan-values label>div{display:flex;align-items:center}
.rd-plan-values label>div input{border-radius:9px 0 0 9px}
.rd-plan-values em{
  display:grid;
  height:32px;
  min-width:30px;
  place-items:center;
  padding:0 5px;
  border:1px solid rgba(45,143,189,.2);
  border-left:0;
  border-radius:0 9px 9px 0;
  background:rgba(225,246,254,.72);
  color:#377c9e;
  font-size:7.5px;
  font-style:normal;
}
.rd-quick-hint{margin:7px 1px 0;color:#6798b1;font-size:7px;line-height:1.45}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-check-list{margin-top:10px;overflow:auto}
.rd-plan-group{display:block;margin-top:9px}
.rd-plan-group>h3,.rd-plan-group>summary{
  margin:0;
  padding:5px 1px;
  color:#3181a8;
  font-size:8px;
  font-weight:850;
  list-style:none;
}
.rd-plan-group>summary{cursor:pointer}
.rd-plan-group>div{
  display:grid;
  grid-template-columns:25px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:50px;
  border-bottom:1px solid rgba(47,139,181,.12);
}
.rd-plan-group.next>div{
  margin:0 -6px 4px;
  padding:3px 6px;
  border:1px solid rgba(23,159,207,.16);
  border-radius:10px;
  background:linear-gradient(135deg,rgba(68,200,239,.16),rgba(210,242,253,.3));
}
.rd-check-copy small{display:flex!important;flex-wrap:wrap;align-items:center;gap:3px;color:#5a8ca5!important}
.rd-check-copy small i{font-style:normal;opacity:.45}
.rd-check-copy small span{white-space:nowrap}
.rd-check-copy .floating-badge{
  padding:2px 5px;
  border-radius:999px;
  background:rgba(99,145,168,.12);
  color:#53829a;
  font-size:7px;
  font-weight:750;
}
.rd-task-actions{display:flex;gap:3px;opacity:0;transition:opacity .14s ease}
.rd-plan-group>div:hover .rd-task-actions,.rd-plan-group>div:focus-within .rd-task-actions{opacity:1}
.rd-task-actions button{
  height:25px;
  padding:0 6px;
  border:1px solid rgba(38,140,186,.18);
  border-radius:7px;
  background:rgba(234,249,255,.82);
  color:#367f9f;
  font-size:7px;
  font-weight:760;
  cursor:pointer;
}
.rd-task-actions button:first-child{color:#008bc4}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-text-add{display:none}

.rd-head-kicker{margin-left:-3px;color:#6699b2;font-size:8px;font-weight:650}
.rd-goal-lines>button{position:relative;padding-right:49px}
.rd-goal-lines small{font-size:8px}
.rd-goal-seed{
  position:absolute;
  top:0;
  right:0;
  padding:3px 5px;
  border:1px solid rgba(37,143,190,.18);
  border-radius:6px;
  color:#1d86b2;
  font-size:7px;
  font-weight:760;
}
.rd-dual-legend{display:flex;justify-content:flex-end;gap:10px;margin-top:7px;color:#5a8aa3;font-size:7.5px}
.rd-dual-legend span{display:flex;align-items:center;gap:4px}
.rd-dual-legend i{width:7px;height:7px;border-radius:2px}
.rd-dual-legend .planned{background:#8bcce6}.rd-dual-legend .actual{background:#008fc9}
.rd-dual-chart>div>i{display:flex!important;align-items:flex-end!important;justify-content:center;gap:2px}
.rd-dual-chart>div>i>b{position:static!important;width:6px!important}
.rd-dual-chart>div>i>b.planned{background:linear-gradient(180deg,#b7e5f3,#6ebbd9)!important;box-shadow:none!important}
.rd-dual-chart>div>i>b.actual{background:linear-gradient(180deg,#27cdf4,#007dbb)!important}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-bottom>.rd-character{
  background:linear-gradient(150deg,rgba(225,247,255,.95),rgba(153,215,249,.9));
}
html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-character-scene p{font-size:10px;line-height:1.6}

@media(max-width:1320px){
  html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-main{grid-template-columns:340px minmax(680px,1fr)}
  .rd-quick-title small{display:none}
}
@media(max-width:1180px){
  html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-planner-main{grid-template-columns:1fr}
  .rd-selected-day{min-height:410px}
}
@media(max-width:760px){
  html[data-ui-preset="rainy"][data-rainy-view="planner"] .main-content.wide{padding-right:13px;padding-left:13px}
  .rd-week-nav{flex-wrap:wrap}
  .rd-task-actions{opacity:1}
  .rd-plan-group>div{grid-template-columns:25px minmax(0,1fr)}
  .rd-task-actions{grid-column:2;justify-content:flex-end;margin-top:-7px;margin-bottom:6px}
  .rd-book-picker{grid-template-columns:1fr}
  .rd-plan-values{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){
  html[data-ui-preset="rainy"][data-rainy-view="planner"] .rd-week-plans>button{transition:none}
}
