@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,600;0,9..144,700;1,9..144,600&family=Manrope:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@500;600;700&display=swap";:root{--bp-tablet-h:1024px;--bp-tablet-v:768px;--bp-phone:480px;--touch-min:44px;--content-pad-x:clamp(12px, 4vw, 28px);--content-pad-y:clamp(12px, 3vw, 28px);--bg-page:#f7f4ee;--bg-canvas:#efe9df;--bg-card:#fff;--bg-elevated:#fff;--bg-secondary-tint:#ebe6dc;--text-primary:#2c2824;--text-secondary:#6d6860;--border-default:#ded8ce;--border-subtle:#e8e4dc;--berry-500:#756b5f;--berry-400:#948a7c;--berry-600:#5e554b;--berry-soft:#ebe4d8;--berry-deep:#3d3832;--berry-mid:#524a42;--berry-rgb:117, 107, 95;--tint-deep:#e0dbd2;--tint-selected-from:#e2dcd2;--tint-selected-to:#f7f4ef;--success:#1f9d68;--warning:#d97706;--error:#dc2626;--font-display:"Fraunces", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--font-sans:"Plus Jakarta Sans", "Manrope", "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--shadow-soft:0 10px 32px #2c28240f;--shadow-subtle:0 2px 12px #2c28240a;--shadow-nav:4px 0 24px #2c28240a;--ease-out-smooth:cubic-bezier(.22, 1, .36, 1);--transition-fast:.18s var(--ease-out-smooth);--focus-ring:0 0 0 3px rgba(var(--berry-rgb), .28);--login-accent:#756b5f;--login-accent-hover:#5e554b;--login-input-bg:#f5f2eb;--login-input-bg-hover:#ede8df}#root{width:100%;min-height:100vh;margin:0;padding:0}body{background-color:var(--bg-page);background-image:radial-gradient(120% 80% at 100% -10%, rgba(var(--berry-rgb), .08) 0%, transparent 55%), radial-gradient(90% 60% at -5% 110%, #2c28240a 0%, transparent 50%), linear-gradient(180deg, var(--bg-page) 0%, var(--bg-canvas) 100%);min-height:100vh;color:var(--text-primary);font-family:var(--font-sans);font-feature-settings:"kern" 1, "liga" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.ant-layout{background:var(--bg-page)!important}.ant-layout-content{background:0 0!important}.refine-header{border-bottom:1px solid var(--border-default)}.app-topbar{box-sizing:border-box;background:var(--bg-page);border-bottom:none;justify-content:space-between;align-items:center;gap:16px;height:78px;padding:14px 24px;display:flex}.app-topbar-left{flex-direction:column;gap:2px;min-width:0;display:flex}.app-topbar-title-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.app-deployment-tag{flex-shrink:0;margin-inline-end:0!important}.app-topbar-title.ant-typography{letter-spacing:-.02em;font-optical-sizing:auto;line-height:1.25;font-family:var(--font-display)!important;color:var(--text-primary)!important;margin:0!important;font-size:clamp(1.125rem,2.8vw,1.5rem)!important;font-weight:700!important}.app-topbar-subtitle.ant-typography{font-size:13px;color:var(--text-secondary)!important}.app-topbar-right{align-items:center;gap:12px;display:flex}.app-topbar-search.ant-input-affix-wrapper{border:1px solid var(--border-default);width:280px;box-shadow:none;background:#fff;border-radius:12px}.app-topbar-search.ant-input-affix-wrapper:hover,.app-topbar-search.ant-input-affix-wrapper:focus,.app-topbar-search.ant-input-affix-wrapper-focused{border-color:var(--berry-400)}.app-icon-btn.ant-btn{border:1px solid var(--border-default);color:var(--text-primary);background:#fff;border-radius:12px;height:40px}@media (hover:hover){.app-icon-btn.ant-btn:hover{border-color:var(--berry-400);color:var(--berry-600);background:var(--berry-soft)}}.app-icon-btn.ant-btn:active{border-color:var(--berry-400);color:var(--berry-600);background:var(--berry-soft)}.app-profile-btn.ant-btn{border:1px solid var(--border-default);height:40px;color:var(--text-primary);background:#fff;border-radius:12px;align-items:center;gap:8px;padding-inline:10px;display:inline-flex}@media (hover:hover){.app-profile-btn.ant-btn:hover{border-color:var(--berry-400);color:var(--berry-600)}}.app-profile-btn.ant-btn:active{border-color:var(--berry-400);color:var(--berry-600)}.ant-card,.ant-table-wrapper,.ant-statistic{border-radius:var(--radius-lg)}.ant-card{border:1px solid var(--border-default);box-shadow:var(--shadow-subtle);transition:box-shadow var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast)}@media (hover:hover){.ant-card.ant-card-bordered:hover{box-shadow:var(--shadow-soft);border-color:var(--border-subtle)}}.ant-table-wrapper{border:1px solid var(--border-default);background:#fff;overflow:hidden}.ant-table-thead>tr>th{text-transform:uppercase;letter-spacing:.03em;font-size:13px;font-weight:600;color:#463f49!important}.ant-btn-primary{background:var(--berry-500)!important;border-color:var(--berry-500)!important}.ant-btn-primary:hover{background:var(--berry-600)!important;border-color:var(--berry-600)!important}.ant-btn-primary:focus-visible{box-shadow:var(--focus-ring)!important}.app-icon-btn.ant-btn:focus-visible,.app-profile-btn.ant-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (width<=1023px){.app-topbar{height:auto;min-height:72px;padding:52px 16px 12px;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));flex-wrap:wrap;align-items:flex-start;gap:12px}.app-topbar-left{order:1;width:100%}.app-topbar-right{flex-wrap:wrap;order:2;justify-content:flex-start;gap:8px;width:100%}.app-topbar-search.ant-input-affix-wrapper{flex:220px;width:auto;min-width:0;max-width:none}.app-icon-btn.ant-btn,.app-profile-btn.ant-btn{min-height:var(--touch-min);padding-inline:12px}}@media (width<=767px){.app-topbar{padding-top:48px}.app-topbar-subtitle.ant-typography{font-size:12px;line-height:1.35}.app-topbar-right{justify-content:flex-end}.app-topbar-right>.app-topbar-actions.ant-space{order:1;justify-content:flex-end;width:100%}.app-topbar-search.ant-input-affix-wrapper{flex:100%;order:2;max-width:100%}}@media (width<=479px){.app-topbar{padding:44px 12px 10px;padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}.app-profile-btn.ant-btn span:not(.anticon){text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}}.location-row-inactive{background-color:#f3efe6!important}.location-row-inactive:hover>td{background-color:#e8e2d8!important}html{overflow-x:clip}body,#root{max-width:100%;overflow-x:clip}.ant-layout-content>div:first-child{box-sizing:border-box;max-width:100%;padding-left:max(var(--content-pad-x), env(safe-area-inset-left))!important;padding-right:max(var(--content-pad-x), env(safe-area-inset-right))!important;padding-top:max(var(--content-pad-y), env(safe-area-inset-top))!important;padding-bottom:max(var(--content-pad-y), env(safe-area-inset-bottom))!important}@media (width<=1023px){.ant-layout-content>div:first-child{min-height:280px!important}}.ant-table-wrapper{max-width:100%}.ant-table-container{-webkit-overflow-scrolling:touch;overflow:auto hidden}.ant-table-body{overflow-y:visible}img,svg,canvas,video{max-width:100%;height:auto}@media (hover:none){.app-icon-btn.ant-btn:active,.app-profile-btn.ant-btn:active,#root .app-header-shell .app-icon-button-muted.ant-btn:active{border-color:var(--berry-400);color:var(--berry-600);background:var(--berry-soft)}}@media (width>=768px){.login-panel{flex:0 0 550px;padding:44px 42px 44px 64px}}@media (width<=900px){.login-page{flex-direction:column}.login-panel{border-right:none;border-bottom:1px solid var(--border-default);flex:none;min-height:auto;margin-right:0;padding:26px 20px}.login-hero{min-height:42vh;padding:16px}.login-hero-img{border-radius:14px;max-height:35vh}}.app-nav-shell{--app-nav-rail-width:92px;width:var(--app-nav-rail-width);min-width:var(--app-nav-rail-width);background:var(--bg-elevated);border-right:1px solid var(--border-default);height:100vh;min-height:100%;box-shadow:var(--shadow-nav);z-index:1200;position:sticky;top:0}@media (hover:hover){.app-nav-mobile-item:hover{border-color:rgba(var(--berry-rgb), .35);background:var(--berry-soft)}}@media (width<=479px){.app-nav-mobile-grid{grid-template-columns:1fr}}@media (hover:hover){.app-nav-inline-group-btn:hover{background:rgba(var(--berry-rgb), .06)}.app-nav-inline-item:hover{background:var(--berry-soft);color:var(--berry-600)}}@media (hover:hover){.app-nav-inline-logout:hover{background:var(--border-subtle);color:var(--text-primary)}}#root .ant-layout.admin-shell{background:var(--bg-page);flex-direction:row;align-items:stretch;min-height:100vh;display:flex}#root .admin-shell-main.ant-layout{background:var(--bg-page);flex-direction:column;flex:1;min-width:0;display:flex}#root main.admin-shell-body.ant-layout-content{padding:0 0 max(var(--content-pad-y), env(safe-area-inset-bottom));background:0 0;border-radius:0;width:100%;max-width:1480px;margin:0 auto}header.app-header-shell{background:linear-gradient(180deg, var(--bg-card) 0%, var(--bg-page) 100%);border-bottom:1px solid var(--border-default);box-shadow:0 12px 40px #1f17200f}header.app-header-shell:after{content:"";background:linear-gradient(90deg, transparent, var(--berry-500) 18%, rgba(var(--berry-rgb), .35) 52%, transparent);opacity:.85;height:3px;display:block}header.app-header-shell--main.app-header-shell:after{opacity:.55}.app-header-primary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;max-width:1480px;margin:0 auto;padding:12px 22px 10px;display:flex}.app-header-shell--main .app-header-primary{justify-content:flex-end}.app-header-actions--end.ant-space{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.app-header-context{border-top:1px solid var(--border-subtle);background:radial-gradient(120% 80% at 10% 0%, rgba(var(--berry-rgb), .12) 0%, transparent 55%), var(--bg-page);max-width:1480px;margin:0 auto;padding:14px 22px 18px}.app-header-context .app-topbar-title.ant-typography,.app-header-context h3.app-topbar-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);margin:0 0 4px;font-size:22px;font-weight:600}.app-header-context .app-topbar-subtitle{max-width:52ch;color:var(--text-secondary);font-size:13px;display:block}#root .app-header-shell .app-topbar-search.ant-input-affix-wrapper{border:1px solid var(--border-default);width:260px;box-shadow:none;background:#fff;border-radius:12px}#root .app-header-shell .app-topbar-search input::placeholder{color:var(--text-secondary);opacity:.75}#root .app-header-shell .app-topbar-search.ant-input-affix-wrapper-focused,#root .app-header-shell .app-topbar-search.ant-input-affix-wrapper:focus-within{border-color:var(--berry-400);box-shadow:none}#root .app-header-shell .app-cta-button.ant-btn-primary{background:var(--berry-500);border-color:var(--berry-500);color:#fff;box-shadow:none;border-radius:12px}#root .app-header-shell .app-cta-button.ant-btn-primary:hover{background:var(--berry-600);border-color:var(--berry-600)}#root .app-header-shell .app-icon-button-muted.ant-btn{color:var(--text-secondary);border:1px solid var(--border-default);background:#fff;border-radius:12px}@media (hover:hover){#root .app-header-shell .app-icon-button-muted.ant-btn:hover{border-color:var(--berry-400);color:var(--berry-600);background:var(--berry-soft)}}#root .app-header-shell .app-user-avatar.ant-avatar{color:var(--text-secondary);background:var(--bg-secondary-tint)}.app-topbar-user{flex-direction:column;gap:0;display:flex}.app-topbar-user-name{color:var(--text-primary);font-weight:600}.app-topbar-user-role{color:var(--text-secondary);font-size:12px}.admin-page-header{margin-bottom:16px}.admin-page-title.ant-typography{color:var(--text-primary);margin:0 0 4px}#root .admin-users-toolbar.ant-card,#root .admin-users-table-card.ant-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle)}.admin-users-toolbar{margin-bottom:16px}.admin-users-table-card{overflow:hidden}.users-filter-search{width:300px}.users-filter-role{width:140px}.users-pagination-wrap{justify-content:flex-end;margin-top:16px;display:flex}#root .users-avatar.ant-avatar{background:var(--bg-secondary-tint);color:var(--berry-600)}span.users-role-tag.ant-tag,span.users-status-tag.ant-tag{background:var(--bg-secondary-tint);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:99px}span.users-role-tag.users-role-tag-admin.ant-tag{color:#6d3f8b;background:#f3edf8;border-color:#e2d5ee}span.users-role-tag.users-role-tag-client.ant-tag{color:#3f6f49;background:#edf6ef;border-color:#d8eadc}span.users-status-tag.users-status-tag-premium.ant-tag{background:var(--berry-soft);color:var(--berry-600);border-color:var(--berry-soft)}span.users-status-tag.users-status-tag-expired.ant-tag{color:#9a5b00;background:#fff4e5;border-color:#ffe0b2}.admin-user-show .admin-card.ant-card{border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.admin-meals-card .ant-table{border-radius:0 0 12px 12px}.admin-meal-gallery{flex-wrap:wrap;gap:12px;display:flex}.admin-meal-gallery-item{flex-direction:column;align-items:center;gap:6px;display:flex}.meal-photos-page{gap:12px}.meal-photos-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;width:100%;display:grid}@media (width>=768px){.meal-photos-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}}@media (width>=1200px){.meal-photos-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}}.meal-photos-grid-item{aspect-ratio:1;cursor:pointer;background:var(--surface-muted,#f0ebe3);border:none;border-radius:12px;padding:0;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.meal-photos-grid-item:hover{transform:scale(1.02);box-shadow:0 8px 24px #2c28241f}.meal-photos-grid-item img,.meal-photos-grid-item .ant-image,.meal-photos-grid-item .ant-image-img{object-fit:cover;width:100%;height:100%;display:block}.meal-photos-pagination{justify-content:center;padding:8px 0 4px;display:flex}#root .admin-users-toolbar .app-cta-button.ant-btn-primary{background:var(--berry-500);border-color:var(--berry-500);box-shadow:none;border-radius:12px}#root .admin-users-toolbar .app-cta-button.ant-btn-primary:hover{background:var(--berry-600);border-color:var(--berry-600)}.admin-users-table-card .ant-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=991px){#root main.admin-shell-body.ant-layout-content{padding:0 0 20px}.app-header-shell .app-header-primary{padding-top:52px}.app-header-primary,.app-header-context{max-width:none;padding-left:12px;padding-right:12px}.app-header-context .app-topbar-title.ant-typography,.app-header-context h3.app-topbar-title{font-size:20px}#root .app-header-shell .app-topbar-search.ant-input-affix-wrapper{flex:1;width:100%;min-width:0;max-width:100%}.app-header-actions--end.ant-space{justify-content:flex-start;width:100%}.admin-users-toolbar.ant-card .ant-card-body>.ant-space{flex-direction:column;align-items:stretch;gap:12px}.admin-users-toolbar.ant-card .ant-card-body>.ant-space>.ant-space-item:last-child,.admin-users-toolbar.ant-card .ant-card-body>.ant-space>.ant-space-item:last-child .app-cta-button{width:100%}.users-filter-search,.users-filter-role{width:100%;max-width:100%}}@media (width<=576px){.app-header-context .app-topbar-title.ant-typography,.app-header-context h3.app-topbar-title{font-size:18px}.app-header-context .app-topbar-subtitle{font-size:12px}.app-topbar-user{display:none}.users-pagination-wrap{justify-content:center}.users-pagination-wrap .ant-pagination{flex-wrap:wrap;justify-content:center;row-gap:8px}}html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.app-nav-shell{--app-nav-rail-width:92px;width:var(--app-nav-rail-width);min-width:var(--app-nav-rail-width);background:var(--bg-elevated);border-right:1px solid var(--border-default);height:100vh;min-height:100%;box-shadow:var(--shadow-nav);z-index:1200;position:sticky;top:0}.app-nav-rail{flex-direction:column;align-items:center;gap:14px;height:100vh;min-height:100%;padding:12px 8px;display:flex}.app-nav-brand{border-bottom:1px solid var(--border-subtle);justify-content:center;align-items:center;width:100%;height:64px;min-height:64px;padding:0;display:flex}.app-nav-brand-logo{object-fit:cover;border-radius:12px;width:40px;height:40px;display:block}.app-nav-groups{flex-direction:column;flex:1;gap:8px;width:100%;display:flex;overflow:hidden auto}.app-nav-group-btn,.app-nav-logout{width:100%;color:var(--text-secondary);cursor:pointer;min-height:64px;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 0;display:flex;position:relative}.app-nav-group-btn:hover,.app-nav-logout:hover{color:var(--berry-600);background:rgba(var(--berry-rgb), .08)}.app-nav-group-btn.is-active{background:var(--berry-soft);color:var(--berry-600)}.app-nav-group-btn.is-active:before{content:"";background:var(--berry-500);border-radius:3px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.app-nav-group-btn span,.app-nav-logout span{text-align:center;white-space:nowrap;max-width:84px;font-size:11px;line-height:1.1}.app-nav-logout{margin-top:auto;padding-bottom:16px}.app-nav-panel{left:var(--app-nav-rail-width);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:420px;box-shadow:var(--shadow-soft);opacity:0;pointer-events:none;transition:opacity var(--transition-fast), transform var(--transition-fast);z-index:1300;max-height:min(560px,100vh - 24px);margin-left:8px;padding:16px;position:fixed;overflow:auto;transform:translate(-8px)}.app-nav-panel.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.app-nav-panel-head{margin-bottom:14px}.app-nav-panel-head h4{color:var(--text-primary)!important;margin:0!important;font-size:16px!important;font-weight:600!important}.app-nav-panel-head .ant-typography-secondary{color:var(--text-secondary);font-size:12px}.app-nav-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.app-nav-item{background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;min-width:180px;min-height:56px;padding:10px 12px;display:flex}.app-nav-item:hover{border-color:var(--berry-soft);background:var(--berry-soft);color:var(--berry-600)}.app-nav-item.is-active{border-color:rgba(var(--berry-rgb), .35);background:rgba(var(--berry-rgb), .12)}.app-nav-item-icon{color:currentColor;justify-content:center;align-items:center;width:20px;min-width:20px;height:20px;display:inline-flex}.app-nav-item-meta{text-align:left;flex-direction:column;align-items:flex-start;gap:4px;font-size:13px;display:flex}.app-nav-new-pill{background:var(--berry-500);color:#fff;border-radius:20px;justify-content:center;align-items:center;height:16px;padding:2px 6px;font-size:9px;font-weight:700;line-height:1;display:inline-flex}.app-nav-mobile-trigger{left:max(14px, env(safe-area-inset-left));top:max(14px, env(safe-area-inset-top));z-index:1100;min-height:var(--touch-min);min-width:var(--touch-min);border-radius:12px;justify-content:center;align-items:center;padding-inline:14px;display:inline-flex;position:fixed}.app-nav-mobile-wrapper{padding:10px}.app-nav-mobile-group{margin-bottom:14px}.app-nav-mobile-title{align-items:center;gap:8px;margin-bottom:8px;font-weight:600;display:flex}.app-nav-mobile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.app-nav-mobile-item{border:1px solid var(--border-default);background:var(--bg-card);min-height:var(--touch-min);text-align:left;-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-fast), background var(--transition-fast);border-radius:12px;align-items:center;gap:8px;padding:12px;display:flex}@media (hover:hover){.app-nav-mobile-item:hover{border-color:rgba(var(--berry-rgb), .35);background:var(--berry-soft)}}.app-nav-mobile-item:active{border-color:rgba(var(--berry-rgb), .45);background:var(--berry-soft)}@media (width<=479px){.app-nav-mobile-grid{grid-template-columns:1fr}}.app-nav-inline-shell{border-right:1px solid var(--border-default);background:var(--bg-elevated);width:272px;min-width:272px;height:100vh;box-shadow:var(--shadow-nav);z-index:1200;position:sticky;top:0}.app-nav-inline{flex-direction:column;height:100%;display:flex}.app-nav-inline-groups{flex:1;padding:8px;overflow:auto}.app-nav-inline-group{margin-bottom:6px}.app-nav-inline-group-btn{width:100%;min-height:44px;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.app-nav-inline-group-btn.is-active{background:var(--berry-soft);color:var(--berry-600)}.app-nav-inline-group-left{align-items:center;gap:10px;font-weight:600;display:inline-flex}.app-nav-inline-chevron{transition:transform .2s}.app-nav-inline-chevron.is-open{transform:rotate(180deg)}.app-nav-inline-items{border-left:1px solid var(--border-default);flex-direction:column;gap:4px;margin-top:4px;margin-left:8px;padding-left:10px;display:flex}.app-nav-inline-item{min-height:var(--touch-min);color:var(--text-secondary);cursor:pointer;text-align:left;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}@media (hover:hover){.app-nav-inline-group-btn:hover{background:rgba(var(--berry-rgb), .06)}.app-nav-inline-item:hover{background:var(--berry-soft);color:var(--berry-600)}}.app-nav-inline-group-btn:active{background:rgba(var(--berry-rgb), .08)}.app-nav-inline-item:active{background:var(--berry-soft);color:var(--berry-600)}.app-nav-inline-item.is-active{background:rgba(var(--berry-rgb), .12);color:var(--berry-600)}.app-nav-inline-logout{background:var(--bg-secondary-tint);min-height:42px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:8px;padding:8px 10px;display:inline-flex}@media (hover:hover){.app-nav-inline-logout:hover{background:var(--border-subtle);color:var(--text-primary)}}.sales-dashboard-page{flex-direction:column;gap:16px;animation:.35s dashboard-fade-in;display:flex}.sales-dashboard-topbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.sales-dashboard-topbar--actions{justify-content:flex-end;align-items:center}.sales-dashboard-topbar--actions>.ant-space{flex:none}.sales-dashboard-title{margin:0}.sales-dashboard-subtitle{color:var(--text-secondary);font-size:14px}.sales-dashboard-title.ant-typography{letter-spacing:-.02em;font-family:var(--font-display)!important;font-weight:700!important}.sales-dashboard-total-card.ant-card{background:linear-gradient(145deg, var(--berry-deep), var(--berry-mid));color:#fff;min-height:246px;box-shadow:0 12px 40px rgba(var(--berry-rgb), .22);border:none!important}.sales-dashboard-total-card .ant-card-body{flex-direction:column;gap:8px;display:flex}.sales-dashboard-total-head{font-size:17px;font-weight:700}.sales-dashboard-total-period{opacity:.82;font-size:13px}.sales-dashboard-total-value{letter-spacing:-.02em;font-size:44px;font-weight:700;line-height:1.1}.sales-dashboard-total-grid{grid-template-columns:repeat(2,minmax(120px,1fr));gap:14px;margin-top:auto;display:grid}.sales-dashboard-total-label{opacity:.86;font-size:12px}.sales-dashboard-total-metric{font-size:24px;font-weight:700}.sales-dashboard-kpi-card{min-height:115px}.sales-dashboard-kpi-card .ant-statistic-title,.sales-dashboard-kpi-card .ant-typography{color:#000000c7}.kpi-red{background:#e9552e}.kpi-sand{background:#e8c2b7}.kpi-cyan{background:#1db2c8}.sales-donut-wrap{align-items:center;gap:24px;min-height:280px;display:flex}.sales-donut-visual{flex:none;width:260px;height:260px;position:relative}.sales-donut{width:260px;height:260px}.sales-donut-segment{cursor:pointer;transition:stroke-width .2s,opacity .2s}.sales-donut-tooltip{background:#fff;border:1px solid #c7d8ec;border-radius:8px;gap:8px;padding:8px 12px;font-size:14px;line-height:1.2;display:flex;position:absolute;top:30px;right:-8px;box-shadow:0 8px 18px #243c5c29}.sales-donut-tooltip-title{font-weight:700}.sales-donut-legend{flex-direction:column;flex:1;gap:10px;display:flex}.sales-donut-legend-item{border-bottom:1px dashed #dce4ec;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.sales-donut-legend-left{align-items:center;gap:8px;display:flex}.sales-donut-legend-dot{border-radius:999px;flex:none;width:10px;height:10px}.sales-donut-legend-item .ant-btn-link{padding-left:0;font-weight:600}.sales-agents-table .sales-agents-row td{cursor:pointer;transition:background-color .2s}.sales-agents-table .sales-agents-row-selected td{background:var(--berry-soft)}.sales-agent-name-cell{color:var(--text-primary);font-weight:600}.sales-ceo-thin-table .ant-table-tbody>tr>td{cursor:pointer;padding-top:8px;padding-bottom:8px}.sales-dashboard-list .ant-list-item{padding:10px 0}.sales-dashboard-list-compact .ant-list-item{padding:8px 0}.sales-dashboard-list-clickable .ant-list-item{cursor:pointer}@media (width<=1023px){.sales-dashboard-page{gap:12px}.sales-dashboard-total-card{min-height:0}}@media (width<=900px){.sales-donut-wrap{flex-direction:column;align-items:flex-start}.sales-donut,.sales-donut-visual{width:210px;height:210px}.sales-donut-tooltip{margin-top:8px;display:inline-flex;position:static}.sales-dashboard-total-value{font-size:34px}}@media (width<=767px){.sales-dashboard-topbar{flex-direction:column;align-items:stretch}.sales-dashboard-total-value{font-size:clamp(1.75rem,8vw,2.125rem)}.sales-dashboard-total-grid{grid-template-columns:1fr}}@media (width<=576px){.sales-dashboard-subtitle{font-size:13px}.admin-metric-value.ant-typography{font-size:1.5rem}}@media (width<=479px){.sales-donut,.sales-donut-visual{aspect-ratio:1;width:min(100%,240px);max-width:240px;height:auto}}@media (hover:hover){.sales-agents-table .sales-agents-row:hover td{background:rgba(var(--berry-rgb), .06)}.sales-ceo-thin-table .ant-table-tbody>tr:hover>td{background:var(--bg-secondary-tint)}}.sales-agents-table .sales-agents-row:active td{background:rgba(var(--berry-rgb), .1)}.sales-ceo-thin-table .ant-table-tbody>tr:active>td{background:var(--border-subtle)}@keyframes dashboard-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.city-analytics-detail .ant-table-wrapper,.sales-dashboard-page .ant-table-wrapper{overflow:visible}.city-analytics-detail .ant-table-container,.sales-dashboard-page .ant-table-container{overflow:auto hidden}.city-analytics-detail .ant-table-content,.sales-dashboard-page .ant-table-content{overflow:visible}.sales-dashboard-kpi-card.admin-metric-card{color:var(--text-primary);box-shadow:var(--shadow-subtle);transition:box-shadow var(--transition-fast), border-color var(--transition-fast);background:var(--bg-card)!important;border:1px solid var(--border-default)!important}@media (hover:hover){.sales-dashboard-kpi-card.admin-metric-card:hover{box-shadow:var(--shadow-soft);border-color:var(--border-subtle)!important}}.sales-dashboard-kpi-card.admin-metric-card .admin-metric-label,.sales-dashboard-kpi-card.admin-metric-card .admin-metric-trend{color:var(--text-secondary)}.sales-dashboard-kpi-card.admin-metric-card .admin-metric-value.ant-typography{color:var(--text-primary)!important;margin:0!important}.admin-metric-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-metric-icon{background:rgba(var(--berry-rgb), .14);width:36px;height:36px;color:var(--berry-600);border-radius:50%;justify-content:center;align-items:center;font-size:17px;display:flex}.admin-metric-trend.ant-tag{color:var(--berry-600);background:var(--berry-soft);border:none;border-radius:999px;font-weight:600;margin:0!important}.admin-metric-label{color:var(--text-secondary);font-size:13px;font-weight:500;display:block}.admin-metric-value.ant-typography{letter-spacing:-.02em;font-size:clamp(1.75rem,4vw,2rem);font-weight:700;line-height:1.15}.sales-dashboard-chart-card.ant-card{box-shadow:var(--shadow-subtle);border:1px solid var(--border-default)!important}.sales-dashboard-chart-card .ant-card-head{border-bottom:1px solid var(--border-subtle)}.dashboard-chart-wrap{height:220px}.sales-dashboard-page .admin-users-toolbar.ant-card,.sales-dashboard-page .admin-page-header{margin-bottom:0}.sales-dashboard-page--narrow{width:100%;max-width:1100px;margin-inline:auto}.challenges-list-page .challenges-list-table{width:100%}.challenges-list-page .challenges-list-table .ant-table{table-layout:fixed}.challenges-list-page .challenges-list-table .ant-table-container{border-radius:12px;overflow:hidden}.sales-dashboard-page--form{width:100%;max-width:960px;margin-inline:auto}.sales-dashboard-stack{flex-direction:column;gap:16px;display:flex}.challenge-show-page .ant-card:last-of-type .ant-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=767px){.challenge-show-page .sales-dashboard-topbar .ant-btn{width:100%}}.login-page{background:var(--bg-canvas);z-index:9999;align-items:stretch;width:100vw;min-height:100vh;display:flex;position:fixed;inset:0}.login-panel{border-right:1px solid var(--border-default);z-index:1;background:#fff;flex-direction:column;flex:0 0 460px;justify-content:center;align-items:flex-start;gap:28px;margin-right:18px;padding:28px 28px 28px 48px;display:flex}@media (width>=768px){.login-panel{flex:0 0 550px;padding:44px 42px 44px 64px}}.login-brand{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700}.login-brand-accent{color:var(--login-accent)}.login-brand-main{color:var(--text-primary)}.login-title{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:30px;font-weight:700;line-height:1.1}.login-form{width:100%;max-width:380px}.login-form .ant-form-item-label>label{color:var(--text-primary);font-weight:600}.login-form .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:none}.login-form .ant-form-item-label>label.ant-form-item-required:after{color:var(--login-accent);content:"*";margin-left:4px;display:inline-block}.login-input.ant-input,.login-input.ant-input-password{font-size:1rem;background:var(--login-input-bg)!important;border:none!important;border-radius:12px!important;padding:12px 16px!important}.login-input.ant-input:focus,.login-input.ant-input:hover,.login-input.ant-input-password input:focus,.login-input.ant-input-password:hover{background:var(--login-input-bg-hover)!important;box-shadow:none!important;border:none!important}.login-input.ant-input-password .ant-input{background:0 0!important}.login-submit-item{margin-bottom:0;margin-top:var(--space-3);width:100%}.login-submit{background:var(--login-accent)!important;border-color:var(--login-accent)!important;border-radius:12px!important;width:100%!important;height:auto!important;min-height:52px!important;padding:14px 24px!important;font-size:1rem!important;font-weight:600!important}.login-submit:hover{opacity:.95;background:var(--login-accent-hover)!important;border-color:var(--login-accent-hover)!important}.login-hero{background:var(--bg-canvas);flex:1;justify-content:stretch;align-items:stretch;min-height:100vh;display:flex;overflow:hidden}.login-hero-img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=900px){.login-page{flex-direction:column}.login-panel{border-right:none;border-bottom:1px solid var(--border-default);flex:none;min-height:auto;margin-right:0;padding:26px 20px}.login-hero{min-height:42vh;padding:16px}.login-hero-img{border-radius:14px;max-height:35vh}}
