.kug-hfc,
.kug-hfc * { box-sizing: border-box; }
.kug-hfc {
	--kug-hfc-main-title-size: 20px;
	--kug-hfc-detail-title-size: 20px;
	--kug-hfc-category-icon-size: 52px;
	--kug-hfc-category-count-size: 26px;
	--kug-hfc-category-label-size: 14px;
	--kug-hfc-item-icon-size: 52px;
	--kug-hfc-item-name-size: 15px;
	--kug-hfc-item-type-size: 12px;
	--kug-hfc-item-progress-size: 11px;
	display: block;
	width: 100%;
	height: auto;
	flex: none;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	box-shadow: none;
}
.kug-hfc__main-title,
.kug-hfc__detail-title { margin: 0; color: inherit; font-family: inherit; font-style: inherit; font-weight: 700; line-height: 1.2; }
.kug-hfc__main-title { font-size: var(--kug-hfc-main-title-size); }
.kug-hfc__detail-title { font-size: var(--kug-hfc-detail-title-size); }
.kug-hfc__header p { margin: 5px 0 0; color: inherit; font: inherit; }
.kug-hfc > .kug-hfc__form { display: block; width: 100%; margin: 0; padding: 0; }
.kug-hfc__content { display: block; width: 100%; }
.kug-hfc__view { display: flex; width: 100%; flex-direction: column; gap: 18px; }
.kug-hfc__view[hidden] { display: none !important; }
.kug-hfc__categories { display: flex; width: 100%; max-width: 410px; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0 auto; }
.kug-hfc__category { width: calc(50% - 5px); max-width: 200px; flex: 0 1 calc(50% - 5px); }
.kug-hfc__category { position: relative; display: flex !important; aspect-ratio: 1 / 1; align-items: center; justify-content: center; padding: 16px !important; border: 1px solid currentColor !important; border-radius: 10px !important; background: #fff !important; background-image: none !important; color: inherit !important; box-shadow: none !important; cursor: pointer; font: inherit; text-align: center; }
.kug-hfc__category-plus { position: absolute; right: 12px; bottom: 10px; font: inherit; font-size: 1.25em; }
.kug-hfc__category-count { display: flex; width: 100%; flex-direction: column; align-items: center; gap: 6px; }
.kug-hfc__category-icon { display: block; width: var(--kug-hfc-category-icon-size); height: var(--kug-hfc-category-icon-size); object-fit: contain; }
.kug-hfc__category-count > strong { color: inherit; font: inherit; font-size: var(--kug-hfc-category-count-size); font-weight: 700; line-height: 1; }
.kug-hfc__category-count > span { max-width: 100%; color: inherit; font: inherit; font-size: var(--kug-hfc-category-label-size); line-height: 1.2; overflow-wrap: anywhere; white-space: normal; }
.kug-hfc__detail-header { width: 100%; }
.kug-hfc__detail-title { margin-top: 4px; }
.kug-hfc__cards-row { display: flex; width: 100%; max-width: 410px; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0 auto; }
.kug-hfc__footer { display: flex; width: 100%; max-width: 410px; flex: 0 0 100%; align-items: center; justify-content: space-between; gap: 14px; margin: 8px auto 0; }
.kug-hfc__footer--main { justify-content: flex-end; }
.kug-hfc__back,
.kug-hfc__item,
.kug-hfc__category-add,
.kug-hfc__add-main,
.kug-hfc__add-confirm button { appearance: none; border: 1px solid currentColor !important; border-radius: 8px !important; background: #fff !important; background-image: none !important; color: inherit !important; box-shadow: none !important; font: inherit; cursor: pointer; }
.kug-hfc__back { min-height: 28px; padding: 3px 0; border: 0 !important; background: transparent !important; font-weight: 700; }
.kug-hfc__item { position: relative; display: flex !important; width: calc(50% - 5px); max-width: 200px; aspect-ratio: 1 / 1; flex: 0 1 calc(50% - 5px); flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 16px !important; text-align: center; white-space: normal; }
.kug-hfc__item:hover,
.kug-hfc__item:focus-visible { background: #f3f3f3 !important; }
.kug-hfc__item-avatar { display: inline-flex; width: var(--kug-hfc-item-icon-size); height: var(--kug-hfc-item-icon-size); flex: 0 0 var(--kug-hfc-item-icon-size); align-items: center; justify-content: center; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; font-size: var(--kug-hfc-item-name-size); font-weight: 800; }
.kug-hfc__item-body { display: grid; width: 100%; min-width: 0; gap: 4px; }
.kug-hfc__item-body strong { max-width: 100%; color: inherit; font: inherit; font-size: var(--kug-hfc-item-name-size); font-weight: 700; line-height: 1.2; overflow-wrap: anywhere; white-space: normal; }
.kug-hfc__item-body small { max-width: 100%; color: inherit; font: inherit; font-size: var(--kug-hfc-item-type-size); line-height: 1.25; overflow-wrap: anywhere; white-space: normal; }
.kug-hfc__item .kitupgo-household-card__progress { width: auto; max-width: 100%; min-height: 28px; justify-content: center; padding: 4px 8px; border: 1px solid currentColor; border-radius: 999px; background: transparent; color: inherit; font: inherit; font-size: var(--kug-hfc-item-progress-size); line-height: 1.15; overflow-wrap: anywhere; white-space: normal; }
.kug-hfc__item-arrow { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); color: inherit; font: inherit; font-size: 1.4em; }
.kug-hfc__category-add,
.kug-hfc__add-main { display: block; min-height: 30px; margin: 0; padding: 4px 0; border: 0 !important; background: transparent !important; color: inherit !important; font-weight: 700; }
.kug-hfc__category-add:hover,
.kug-hfc__category-add:focus-visible,
.kug-hfc__add-main:hover,
.kug-hfc__add-main:focus-visible { background: transparent !important; color: inherit !important; text-decoration: underline; }
.kug-hfc__add-confirm { position: fixed; z-index: 100010; inset: 0; display: grid; place-items: center; padding: 18px; background: rgba(0, 0, 0, .45); }
.kug-hfc__add-confirm[hidden] { display: none !important; }
.kug-hfc__add-confirm > div { width: min(360px, 100%); padding: 20px; border: 1px solid currentColor; border-radius: 12px; background: #fff; }
.kug-hfc__add-confirm h3 { margin: 0 0 8px; color: inherit; font: inherit; font-weight: 700; }
.kug-hfc__add-confirm p { margin: 0; color: inherit; font: inherit; line-height: 1.5; }
.kug-hfc__add-options { display: grid; gap: 7px; margin-top: 15px; }
.kug-hfc__add-options label { display: flex; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid currentColor; border-radius: 7px; cursor: pointer; }
.kug-hfc__add-options label[hidden] { display: none; }
.kug-hfc__add-options input { width: 16px; height: 16px; margin: 0; accent-color: currentColor; }
.kug-hfc__add-confirm-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }
.kug-hfc__add-confirm button { min-height: 36px; padding: 7px 12px; }
.kug-hfc__add-confirm button[type="submit"] { background: #111 !important; color: #fff !important; }
.kug-hfc__add-confirm button:disabled { opacity: .45; cursor: not-allowed; }
@media (max-width: 340px) {
	.kug-hfc__category,.kug-hfc__item { gap: 7px; padding: 10px !important; }
	.kug-hfc { --kug-hfc-category-icon-size: 42px; --kug-hfc-item-icon-size: 42px; }
}
.kug-hfc__object-dashboard{display:block;width:100%}.kug-hfc__object-dashboard[hidden]{display:none!important}
.kug-hfc__object-header{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:20px}.kug-hfc__object-header .kug-hfc__item-avatar{width:52px;height:52px}.kug-hfc__object-header small{color:#667085}.kug-hfc__object-modify{min-height:36px;padding:7px 13px;border:1px solid #17191b;border-radius:8px;background:#fff;color:#17191b;font:inherit;font-weight:700;cursor:pointer}
.kug-hfc__object-sections{display:grid;gap:18px}.kug-hfc__object-sections>section>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid #dfe4e7;text-transform:uppercase}.kug-hfc__object-sections>section>header span{color:#667085;font-size:12px}.kug-hfc__object-cards{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.kug-hfc__object-cards button{display:flex;width:64px;height:64px;align-items:center;justify-content:center;padding:12px;border:var(--kug-object-border-width,0) solid var(--kug-object-border,#17191b);border-radius:10px;background:var(--kug-object-fill,#f7c75f);color:var(--kug-object-ink,#111);cursor:pointer}.kug-hfc__object-cards button>span{display:flex;width:38px;height:38px}.kug-hfc__object-cards button img{width:100%;height:100%;object-fit:contain;filter:var(--kug-object-filter,brightness(0))}.kug-hfc__object-cards button.is-action-todo{--kug-object-fill:var(--kug-state-action-todo,#f7c75f);--kug-object-ink:var(--kug-state-action-todo-ink,#111);--kug-object-filter:var(--kug-state-action-todo-filter,brightness(0));--kug-object-border:var(--kug-state-action-todo-border-color,#17191b);--kug-object-border-width:var(--kug-state-action-todo-border-width,0)}.kug-hfc__object-cards button.is-action-done{--kug-object-fill:var(--kug-state-action-done,#a9c77d);--kug-object-ink:var(--kug-state-action-done-ink,#111);--kug-object-filter:var(--kug-state-action-done-filter,brightness(0));--kug-object-border:var(--kug-state-action-done-border-color,#17191b);--kug-object-border-width:var(--kug-state-action-done-border-width,0)}.kug-hfc__object-cards button.is-shopping-todo{--kug-object-fill:var(--kug-state-shopping-todo,#bc91cc);--kug-object-filter:var(--kug-state-shopping-todo-filter,brightness(0))}.kug-hfc__object-cards button.is-shopping-done{--kug-object-fill:var(--kug-state-shopping-done,#80b8ae);--kug-object-filter:var(--kug-state-shopping-done-filter,brightness(0))}
@media(max-width:480px){.kug-hfc__object-header{grid-template-columns:44px minmax(0,1fr) auto}.kug-hfc__object-header .kug-hfc__item-avatar{width:44px;height:44px}.kug-hfc__object-modify{padding:6px 9px}.kug-hfc__object-cards button{width:58px;height:58px;padding:10px}}
