/* v31.1: one set of signs — «+», bin, pencil */
.ico-btn{display:inline-grid!important;place-items:center;min-width:34px;min-height:34px;padding:0!important;gap:0!important;border-radius:10px;line-height:0}
.ico-btn .ico{width:18px;height:18px;flex:none}
.ico-btn .ico-label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.ico-btn{position:relative}
.ico-btn.ico-del:hover{color:#b3261e}
.primary-btn.ico-btn{min-width:38px;min-height:38px}
.ico-menu{position:absolute;z-index:60;display:flex;flex-direction:column;min-width:150px;padding:6px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.ico-menu button{border:0;background:none;color:var(--text);font:inherit;font-size:14px;text-align:start;padding:9px 12px;border-radius:8px;cursor:pointer}
.ico-menu button:hover,.ico-menu button:focus-visible{background:var(--surface-2);outline:none}
button[hidden]{display:none!important}
/* a ticked box instead of «منجزة» */
.ico-check{display:inline-block!important;width:18px;height:18px;border-radius:5px;background:var(--text);vertical-align:middle;padding:0!important;border:0!important;flex:none;position:relative}
.ico-check:after{content:'';position:absolute;left:6px;top:2.5px;width:5px;height:10px;border:solid var(--surface);border-width:0 2px 2px 0;transform:rotate(45deg)}

/* v31.4 the «open details» sign */
.ico-open{display:inline-grid;place-items:center;min-width:32px;min-height:32px;padding:0;color:var(--muted)}
.ico-open:hover{color:var(--text)}

/* v31.7 — one look for the small signs inside the pages (checked page by page):
   • «+» inside a card: 34×34, thin border, no fill, the text colour. The big filled «+» stays only for a page's own main add (primary).
   • pencil, bin and «open details»: 32×32, no border, no fill, muted; on hover a soft background.
   The send-style «+» next to a field (water, weight, sleep) keeps its fill, because it saves what was typed. */
#main-content :is(:is(.ico-add,.f30-plus,.sweek-day-plus,.sp-line-add,.ml-add):not(.primary-btn),:is(.card,[class*="card"],[class*="panel"],[data-home-section]) .primary-btn.ico-add):not(.gl-add):not(.v29-plus):not(.sp-hl-dot):not([hidden]){
 box-sizing:border-box!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;
 display:inline-grid!important;place-items:center!important;border:1px solid color-mix(in srgb,currentColor 28%,transparent)!important;border-radius:10px!important;
 background:transparent!important;box-shadow:none!important;color:var(--text)}
#main-content .f30-inv .f30-plus{color:var(--bg)}
#main-content :is(:is(.ico-add,.f30-plus,.sweek-day-plus,.sp-line-add,.ml-add):not(.primary-btn),:is(.card,[class*="card"],[class*="panel"],[data-home-section]) .primary-btn.ico-add):not(.gl-add):not(.v29-plus):not(.sp-hl-dot):not([hidden]):hover{background:color-mix(in srgb,currentColor 10%,transparent)!important}
#main-content :is(.ico-add,.f30-plus,.sweek-day-plus,.sp-line-add,.ml-add) svg{width:17px;height:17px}
#main-content :is(.ico-edit,.ico-del,.ico-open,.health-open-icon,[data-ui-action="edit"],[data-ui-action="delete"]):not(.ui-action-label):not([hidden]):not([data-ico-dup]){
 box-sizing:border-box!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important;
 display:inline-grid!important;place-items:center!important;border:0!important;border-radius:9px!important;background:transparent!important;box-shadow:none!important;color:var(--muted)}
#main-content :is(.ico-edit,.ico-open,.health-open-icon,[data-ui-action="edit"]):not(.ui-action-label):hover{background:var(--surface-2)!important;color:var(--text)}
#main-content :is(.ico-del,[data-ui-action="delete"]):not(.ui-action-label):hover{background:color-mix(in srgb,#b3261e 12%,transparent)!important;color:#b3261e}
#main-content :is(.ico-edit,.ico-del,.ico-open,.health-open-icon) svg{width:17px;height:17px}
/* a card shows «open details» once */
#main-content .ico-open[data-ico-dup]{display:none!important}
/* «open details» is always the last sign of a card's head, the «+» right before it */
#main-content .f30-tools .f30-all{order:9}
/* v31.9 — the «+» has no box, like the pencil and the bin; the signs of a row sit side by side (no empty places between them) */
#main-content :is(:is(.ico-add,.f30-plus,.sweek-day-plus,.sp-line-add,.ml-add):not(.primary-btn),:is(.card,[class*="card"],[class*="panel"],[data-home-section]) .primary-btn.ico-add):not(.gl-add):not(.v29-plus):not(.sp-hl-dot):not([hidden]){border-color:transparent!important;border-radius:9px!important;color:var(--muted)}
#main-content :is(:is(.ico-add,.f30-plus,.sweek-day-plus,.sp-line-add,.ml-add):not(.primary-btn),:is(.card,[class*="card"],[class*="panel"],[data-home-section]) .primary-btn.ico-add):not(.gl-add):not(.v29-plus):not(.sp-hl-dot):not([hidden]):hover{color:var(--text);background:var(--surface-2)!important}
#main-content .f30-inv .f30-plus{color:var(--bg)!important}
#main-content summary.f30-plus{border-color:transparent!important}
.d30-act.is-gap{display:none!important}

/* v31.13 a card's «+» sits close to «فتح التفاصيل» */
#main-content .ico-add[data-ico-moved]:not([hidden]):has(~ :is(.ico-open,.health-open-icon,.health-open)){margin-inline-end:-12px!important}
