/* Saros v30.5 layer */
/* point 1: one + in the month day window */
.v305-dm-foot{justify-content:space-between;align-items:center}
.v305-plus-wrap{position:relative}
.v305-plus{width:42px;height:42px;border-radius:50%;border:1px solid var(--border);background:var(--text);color:var(--bg);font:500 22px/1 var(--latin);display:grid;place-items:center;cursor:pointer}
.v305-plus:hover{transform:translateY(-1px)}
.v305-plus-menu{position:absolute;bottom:calc(100% + 8px);inset-inline-start:0;display:grid;gap:2px;min-width:130px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);z-index:5}
.v305-plus-menu button{all:unset;cursor:pointer;padding:8px 12px;border-radius:8px;font-weight:600;font-size:13px;text-align:start}
.v305-plus-menu button:hover,.v305-plus-menu button:focus-visible{background:var(--surface-2)}
.v305-ask p{margin:0 0 4px}
.v305-ask-btns{display:flex;gap:10px;flex-wrap:wrap}
.v305-ask-btns button{flex:1;min-width:140px}
/* point 2: a multi-hour event is one solid block — hour lines never show through, and no box inside a box */
.sweek-slot{z-index:3}
.sweek-event{border:0!important;border-inline-start:3px solid var(--text)!important;border-radius:6px!important;box-shadow:none!important;background:var(--surface-3,var(--surface-2))!important;opacity:1!important}
.sweek-event:hover,.sweek-event:focus-visible{box-shadow:0 2px 10px rgba(0,0,0,.18)!important}
.sweek-event.is-complete{opacity:1!important;background:var(--surface-2)!important;border-inline-start-color:var(--muted)!important}
.sweek-event.is-complete,.sweek-event.is-complete *{color:var(--muted)!important}
.sweek-event.sweek-course-event{border-inline-start-style:dashed!important}
/* point 9: habits menu items line up; trash under the table */
.habit-v269-menu-options>button{justify-content:flex-start;gap:8px}
.habit-v269-menu-options>button svg{flex:none;width:16px;height:16px}
.v305-links{margin:0 0 6px;padding-inline-start:18px;line-height:1.9}
.v305-trash{margin-top:16px;padding:14px 18px}
.v305-trash summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;list-style:none;font-weight:700}
.v305-trash summary::-webkit-details-marker{display:none}
.v305-trash summary span{display:inline-flex;align-items:center;gap:8px}
.v305-trash summary small{font-weight:500;color:var(--muted)}
.v305-trash-list{display:grid;gap:8px;margin-top:12px}
.v305-trash-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px}
.v305-trash-row small{display:block;color:var(--muted);font-size:11.5px}
.v305-trash-actions{display:flex;gap:8px;flex-wrap:wrap}
/* point 8: one hours:minutes field */
.v305-hm{font-variant-numeric:tabular-nums;letter-spacing:.02em;text-align:center;min-width:76px}
.v305-hm:invalid{border-color:var(--text)}
form[data-v29-log="sleep"] .v305-hm{max-width:92px}
/* point 4: alarm and «بارزة» */
.v305-time-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.v305-time-row>input[type=time]{flex:1;min-width:110px}
.v305-alarm{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.v305-bell{width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}
.v305-bell.is-on{background:var(--text);color:var(--bg);border-color:var(--text)}
.v305-alarm-panel{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.v305-alarm-panel[hidden]{display:none}
.v305-alarm-panel select,.v305-alarm-at input{min-height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);padding:6px 8px}
.v305-alarm-at{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.v305-alarm-at[hidden]{display:none}
.v305-star{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;margin-top:-4px}
.v305-star input{accent-color:var(--text)}
.v305-star:has(input:checked){color:var(--text)}
.v305-star:has(input:checked) svg{fill:currentColor}
.v305-mark{display:inline-grid;place-items:center;margin-inline-end:4px;color:var(--muted);vertical-align:middle}
.v305-mark svg{width:13px;height:13px}
#v305-remind{position:fixed;inset-inline-end:16px;top:16px;z-index:90;display:flex;align-items:center;gap:12px;max-width:380px;padding:14px 16px;background:var(--surface);color:var(--text);border:1.5px solid var(--text);border-radius:16px;box-shadow:0 14px 34px rgba(0,0,0,.22);line-height:1.6}
.v305-remind-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--text);color:var(--bg);flex:none}
.v305-remind-txt{flex:1}
.v305-remind-txt small{color:var(--muted)}
/* appointment rows: edit and trash side by side */
.v28-appt{grid-template-columns:auto minmax(0,1fr) auto auto}
.habit-v269-section:has(details[open]){overflow:visible}

/* v30.6: small bits for the health logic fixes (no layout change) */
.v305-hm::placeholder{color:var(--muted);opacity:.7}
.v29-hfoot:has(.v306-cups){flex-wrap:wrap}
.v306-cups{display:flex;flex-wrap:wrap;gap:6px;width:100%}
.v306-date-ar{font-size:13px;color:var(--muted);white-space:nowrap}
.v306-past{margin:6px 0 0;font-size:13px;color:var(--muted)}
