/* Family Planner styles layered on top of the DashLite distribution. */
.fp-brand{display:inline-block;color:#fff;font-size:1.08rem;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.nk-header .fp-brand,.nk-auth-container .fp-brand{color:#364a63}
.fp-welcome-card{overflow:hidden}
.fp-welcome-card .card-inner-lg{padding:2.5rem}
.fp-calendar-mark{width:150px;height:150px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef1ff;color:#6576ff;font-size:5rem}
.fp-feature-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin-bottom:1.1rem}
.fp-next-step{display:flex;align-items:flex-start;gap:.55rem;color:#6576ff;margin-top:1.25rem}
.fp-next-step .icon{font-size:1.15rem;margin-top:.1rem}
.fp-member-list{border:1px solid #dbdfea;border-radius:4px;overflow:hidden}
.fp-member-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid #dbdfea}
.fp-member-row:last-child{border-bottom:0}
.fp-member-row .text-soft{font-size:.875rem}
.fp-invite-form{padding-top:1rem;border-top:1px solid #dbdfea}
@media(max-width:767.98px){.fp-welcome-card .card-inner-lg{padding:1.35rem}.fp-brand{font-size:1rem}.fp-member-row{align-items:flex-start;flex-direction:column}}
@media print{.nk-sidebar,.nk-header,.nk-mobile-sidebar-trigger,.nk-footer,.nk-block-head-content .btn{display:none!important}.nk-wrap{margin-left:0!important}.nk-content{padding:0!important}}
/* Keep Yii's development log panel inside the phone viewport. */
table.yiiLog{display:block!important;box-sizing:border-box;max-width:calc(100vw - 20px)!important;width:calc(100vw - 20px)!important;max-height:35vh;overflow:auto}
table.yiiLog pre{white-space:pre-wrap;overflow-wrap:anywhere}
.fp-child-list{display:flex;flex-direction:column}
.fp-child-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #dbdfea}
.fp-child-row:first-child{padding-top:0}
.fp-child-row:last-child{padding-bottom:0;border-bottom:0}
.fp-child-main{display:flex;align-items:center;gap:1rem;min-width:0}
.fp-child-avatar{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#eef1ff;color:#6576ff;font-size:1.2rem}
.fp-child-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem}
.fp-inline-form{display:inline-flex;margin:0}
.fp-child-color-fieldset{border:0;padding:0;margin-left:0;margin-right:0}
.fp-child-color-fieldset legend{float:none;width:auto;margin-bottom:.5rem}
.fp-child-color-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem}
.fp-child-color-option{display:flex;align-items:center;gap:.55rem;min-height:42px;padding:.45rem .6rem;border:1px solid #dbdfea;border-radius:4px;margin:0;cursor:pointer}
.fp-child-color-option:focus-within{outline:2px solid #6576ff;outline-offset:2px}
.fp-child-color-option input{margin:0;accent-color:#6576ff}
.fp-child-color-option:has(input:checked){border-color:#6576ff;box-shadow:0 0 0 1px #6576ff}
.fp-child-color-swatch{display:inline-block;width:1.15rem;height:1.15rem;flex:0 0 1.15rem;border-radius:50%;border:1px solid rgba(31,41,55,.18)}
.fp-child-color-0{--fp-child-bg:#E9D5FF;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#c4a7e6!important;color:var(--fp-child-fg)!important}
.fp-child-color-1{--fp-child-bg:#DBEAFE;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#a9c8f2!important;color:var(--fp-child-fg)!important}
.fp-child-color-2{--fp-child-bg:#CCFBF1;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#8edccc!important;color:var(--fp-child-fg)!important}
.fp-child-color-3{--fp-child-bg:#DCFCE7;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#a4e5b8!important;color:var(--fp-child-fg)!important}
.fp-child-color-4{--fp-child-bg:#FEF3C7;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#e8d889!important;color:var(--fp-child-fg)!important}
.fp-child-color-5{--fp-child-bg:#FFEDD5;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#edc89e!important;color:var(--fp-child-fg)!important}
.fp-child-color-6{--fp-child-bg:#FFE4E6;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#efb3bc!important;color:var(--fp-child-fg)!important}
.fp-child-color-7{--fp-child-bg:#E2E8F0;--fp-child-fg:#1F2937;background-color:var(--fp-child-bg)!important;border-color:#b9c3d0!important;color:var(--fp-child-fg)!important}
.fp-child-color-0 .fc-title,.fp-child-color-1 .fc-title,.fp-child-color-2 .fc-title,.fp-child-color-3 .fc-title,.fp-child-color-4 .fc-title,.fp-child-color-5 .fc-title,.fp-child-color-6 .fc-title,.fp-child-color-7 .fc-title{color:var(--fp-child-fg)!important}
.fp-child-color-0 .fp-child-color-swatch,.fp-child-color-0.fp-child-color-swatch{background-color:#E9D5FF!important}
.fp-child-color-1 .fp-child-color-swatch,.fp-child-color-1.fp-child-color-swatch{background-color:#DBEAFE!important}
.fp-child-color-2 .fp-child-color-swatch,.fp-child-color-2.fp-child-color-swatch{background-color:#CCFBF1!important}
.fp-child-color-3 .fp-child-color-swatch,.fp-child-color-3.fp-child-color-swatch{background-color:#DCFCE7!important}
.fp-child-color-4 .fp-child-color-swatch,.fp-child-color-4.fp-child-color-swatch{background-color:#FEF3C7!important}
.fp-child-color-5 .fp-child-color-swatch,.fp-child-color-5.fp-child-color-swatch{background-color:#FFEDD5!important}
.fp-child-color-6 .fp-child-color-swatch,.fp-child-color-6.fp-child-color-swatch{background-color:#FFE4E6!important}
.fp-child-color-7 .fp-child-color-swatch,.fp-child-color-7.fp-child-color-swatch{background-color:#E2E8F0!important}
.fp-empty-state{text-align:center;padding:2.5rem 1rem}
.fp-empty-state>.icon{font-size:2.5rem;color:#6576ff}
.fp-choice-group{display:flex;flex-wrap:wrap;gap:.5rem}
.fp-choice-button.btn{border:1px solid #c8ced8!important;border-radius:4px!important;background:#fff;color:#526484;box-shadow:none}
.fp-choice-button.btn:hover,.fp-choice-button.btn:focus{border-color:#aeb7c4!important;background:#f5f6f8;color:#364a63;box-shadow:none}
.fp-choice-button.btn.is-selected{border-color:#aeb7c4!important;background:#e9edf2;color:#364a63}
.fp-empty-state h5{margin-top:.75rem}
@media(max-width:767.98px){.fp-child-row{align-items:flex-start;flex-direction:column}.fp-child-actions{justify-content:flex-start;width:100%}.fp-child-actions .btn{white-space:nowrap}}
@media(max-width:767.98px){.fp-child-page-head{align-items:flex-start!important;flex-direction:column}.fp-child-page-head .nk-block-head-content{max-width:100%}}
/* Calendar */
#fp-calendar { min-height: 560px; }
.fp-calendar-legend { display: flex; align-items: center; gap: .55rem; margin-top: 1rem; color: #8091a7; font-size: .82rem; }
.fp-overlap-swatch { width: 1rem; height: 1rem; border: 1px solid #e85347; border-radius: 3px; background: #fff0ef; }
.fc-event.fp-calendar-overlap { border-color: #e85347!important; box-shadow: inset 3px 0 #e85347,0 0 0 1px #e85347; }
.fp-event-child { font-weight: 700; }
.dark-mode .fp-child-color-0{--fp-child-bg:#3B2D5C;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#70589e!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-1{--fp-child-bg:#1E3A5F;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#426c9e!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-2{--fp-child-bg:#154744;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#31796f!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-3{--fp-child-bg:#1E4637;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#397c61!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-4{--fp-child-bg:#4A3B1C;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#907631!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-5{--fp-child-bg:#4A3020;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#9a6038!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-6{--fp-child-bg:#4A2934;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#975267!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-7{--fp-child-bg:#344052;--fp-child-fg:#F8FAFC;background-color:var(--fp-child-bg)!important;border-color:#647995!important;color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-0 .fc-title,.dark-mode .fp-child-color-1 .fc-title,.dark-mode .fp-child-color-2 .fc-title,.dark-mode .fp-child-color-3 .fc-title,.dark-mode .fp-child-color-4 .fc-title,.dark-mode .fp-child-color-5 .fc-title,.dark-mode .fp-child-color-6 .fc-title,.dark-mode .fp-child-color-7 .fc-title{color:var(--fp-child-fg)!important}
.dark-mode .fp-child-color-option{border-color:#384d69}
@media (max-width: 767.98px) { #fp-calendar { min-height: 420px; } .fc-toolbar { display: flex; flex-wrap: wrap; gap: .5rem; } .fc-toolbar-chunk { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; } .fc-toolbar-title { font-size: 1rem; } }
@media (max-width: 575.98px) { .fp-family-head { display: block !important; margin: 0 !important; } .fp-family-actions { flex: 0 0 100%; width: 100%; gap: .5rem; margin-top: .75rem; margin-bottom: .75rem; } }
.fp-notification-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #dbdfea}.fp-notification-row:last-child{border-bottom:0}.fp-notification-row.is-unread{border-left:3px solid #6576ff;padding-left:1rem}.fp-notification-row form{margin:0;flex:0 0 auto}@media(max-width:767.98px){.fp-notification-row{align-items:flex-start;flex-direction:column}.fp-notification-row form{align-self:flex-start}}
.fp-print-day{margin-bottom:1.5rem}.fp-print-day h4{border-bottom:2px solid #364a63;padding-bottom:.45rem}.fp-print-table{width:100%;table-layout:fixed}.fp-print-table th:nth-child(1){width:16%}.fp-print-table th:nth-child(2){width:20%}.fp-print-table th:nth-child(4){width:24%}
@media print{html,body,.nk-app-root,.nk-main,.nk-wrap,.nk-content,.nk-content-inner,.nk-content-body,.container-fluid{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important;overflow:visible!important;background:#fff!important}.fp-print-controls,.fp-print-controls .btn,.fp-calendar-legend,.nk-sidebar,.nk-mobile-sidebar-trigger,.nk-footer{display:none!important}.fp-print-day{break-inside:avoid;margin-bottom:1rem}.fp-print-table{width:100%!important;table-layout:fixed!important}.fp-print-table th:nth-child(1){width:16%}.fp-print-table th:nth-child(2){width:20%}.fp-print-table th:nth-child(3){width:40%}.fp-print-table th:nth-child(4){width:24%}.fp-print-table th,.fp-print-table td{padding:.35rem .5rem!important;font-size:10pt;overflow-wrap:anywhere}.fp-print-schedule{width:100%!important}.fp-print-day h4{font-size:13pt;color:#000}}
