@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100svh}a{color:var(--color-link)}h1,h2,h3{line-height:var(--leading-tight)}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);height:100svh;display:grid;overflow:hidden}.app-sidebar{background:var(--color-sidebar-bg);color:var(--color-sidebar-text);flex-direction:column;height:100svh;display:flex;overflow:hidden}.app-sidebar .brand{margin:0 var(--space-3);flex-shrink:0}.app-sidebar__scroll{scrollbar-width:thin;min-height:0;padding:0 var(--space-3);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.app-sidebar .brand{color:var(--color-text-strong);padding:20px var(--space-2);letter-spacing:-.5px;font-size:20px}.app-sidebar__group{border-top:1px solid var(--color-sidebar-border);padding-top:var(--space-3);flex-direction:column;gap:2px;display:flex}.app-sidebar__group:first-of-type{border-top:none;padding-top:0}.app-sidebar__group-title{margin:var(--space-2) 0 var(--space-1);padding:0 var(--space-2) 0 24px;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-sidebar-muted)}.app-sidebar__link{align-items:center;gap:var(--space-3);border-radius:var(--radius-badge);min-height:44px;color:var(--color-sidebar-text);font-size:var(--text-nav);font-weight:var(--font-medium);transition:background var(--transition-fast);padding:0 16px 0 24px;text-decoration:none;display:flex}.app-sidebar__link:hover{background:var(--color-hover-bg)}.app-sidebar__link[aria-current=page]{background:var(--color-sidebar-active-bg);color:var(--color-sidebar-active-text);font-weight:var(--font-semibold)}.app-sidebar__link .ui-badge{margin-left:auto}.app-sidebar__footer{border-top:1px solid var(--color-sidebar-border);padding:var(--space-3);gap:var(--space-2);flex-direction:column;flex-shrink:0;display:flex}.app-sidebar__user{padding:0 var(--space-2);font-size:var(--text-xs);color:var(--color-sidebar-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-main{flex-direction:column;min-width:0;height:100svh;display:flex;overflow:hidden}.app-topbar{align-items:center;gap:var(--space-3);min-height:var(--topbar-height);padding:0 var(--space-5);z-index:var(--z-sticky);background:0 0;flex-shrink:0;display:flex}.app-topbar__spacer{flex:1}.app-topbar__iconlink{border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-text);justify-content:center;align-items:center;display:inline-flex;position:relative}.app-topbar__iconlink:hover{background:var(--color-hover-bg)}.app-topbar__dot{border-radius:var(--radius-full);background:var(--color-danger);color:#fff;min-width:16px;height:16px;font-size:10px;font-weight:var(--font-bold);justify-content:center;align-items:center;padding:0 3px;display:inline-flex;position:absolute;top:8px;right:8px}.app-content{scrollbar-width:thin;flex:1;min-height:0;overflow-y:auto}.app-content__inner{width:100%;max-width:var(--container-max);padding:var(--space-5);margin:0 auto}.app-menu-button,.app-shell__backdrop{display:none}.public-shell{flex-direction:column;min-height:100svh;display:flex}.public-topbar{align-items:center;gap:var(--space-4);min-height:var(--topbar-height);padding:0 var(--space-5);border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:var(--z-sticky);display:flex;position:sticky;top:0}.public-topbar .brand{color:var(--color-text-strong);letter-spacing:-.5px;font-size:20px}.public-topbar nav{gap:var(--space-1);margin-left:auto;display:flex}.public-topbar nav a{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);min-height:44px;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;display:inline-flex}.public-topbar nav a:hover{background:var(--color-hover-bg)}.public-topbar nav a[aria-current=page]{color:var(--color-primary);background:var(--color-primary-soft)}.public-content{width:100%;max-width:var(--container-max);padding:var(--space-5);flex:1;margin:0 auto}.catalog-card{gap:var(--space-2);flex-direction:column;display:flex}.catalog-card__cover{object-fit:cover;border-radius:var(--radius-md);width:100%;height:8rem}.catalog-card__title{color:inherit;text-decoration:none}.catalog-card__title:hover{color:var(--color-primary)}.catalog-card__footer{padding-top:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:auto;display:flex}.catalog-card__price{font-weight:var(--font-bold);color:var(--color-text-strong);font-variant-numeric:tabular-nums}.detail-layout{gap:var(--space-4);flex-direction:column;display:flex}.detail-layout__side,.detail-layout__main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}@media (width>=1024px){.detail-layout{grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);align-items:start;display:grid}.detail-layout__main{order:0}.detail-layout__side{top:var(--space-4);order:1;position:sticky}}.hub-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}@media (width<=1024px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-sidebar{width:min(84vw, var(--sidebar-width));z-index:var(--z-overlay);transition:transform var(--transition-base);box-shadow:var(--shadow-lg);position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.app-shell[data-nav-open=true] .app-sidebar{transform:none}.app-shell__backdrop{display:none}.app-shell[data-nav-open=true] .app-shell__backdrop{background:var(--color-backdrop);z-index:calc(var(--z-overlay) - 1);border:none;padding:0;display:block;position:fixed;inset:0}.app-menu-button{border-radius:var(--radius-md);cursor:pointer;width:44px;height:44px;color:var(--color-text);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.app-menu-button:hover{background:var(--color-hover-bg)}}@media (width<=640px){.app-content__inner,.public-content{padding:var(--space-3)}.app-topbar,.public-topbar{padding:0 var(--space-3)}.public-topbar nav{-webkit-overflow-scrolling:touch;overflow-x:auto}.public-topbar nav a{white-space:nowrap}}@media (prefers-reduced-motion:reduce){.app-sidebar{transition:none}}@media (width<=380px){.app-content__inner,.public-content{padding:var(--space-2)}.hub-grid,.stat-grid{grid-template-columns:1fr}.ui-pageheader__actions{width:100%}.ui-pageheader__actions .ui-button{flex:1}}
