.Sidebar_sidebar__v6daX{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background-color:var(--color-primary);display:flex;flex-direction:column;z-index:100;overflow:hidden}.Sidebar_brand__qFBGg{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-5);border-bottom:1px solid hsla(0,0%,100%,.1);min-height:var(--header-height)}.Sidebar_brandIconWrap__u11bV{width:40px;height:40px;background:#fff;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:4px}.Sidebar_brandIcon__V_Doh{height:28px;width:auto}.Sidebar_brandText__q8eMc{display:flex;flex-direction:column;gap:1px}.Sidebar_brandName__P9WVI{color:#fff;font-weight:700;font-size:var(--text-base);letter-spacing:.02em;line-height:1.2}.Sidebar_brandLabel__DkTW_{color:var(--color-accent);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.Sidebar_nav__KAd3g{flex:1 1;padding:var(--space-4) 0;overflow-y:auto}.Sidebar_navList__nWoUt{list-style:none;margin:0;padding:0}.Sidebar_navItem__5OSJs{margin:var(--space-1) var(--space-3)}.Sidebar_navLink__c8YY_{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);color:hsla(0,0%,100%,.7);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:background-color .15s ease,color .15s ease;cursor:pointer}.Sidebar_navLink__c8YY_:hover{background-color:hsla(0,0%,100%,.08);color:#fff;text-decoration:none}.Sidebar_navLinkActive__SzlsZ{background-color:var(--color-accent);color:#fff}.Sidebar_navLinkActive__SzlsZ:hover{background-color:var(--color-accent-hover);color:#fff}.Sidebar_navIcon__t_YT4{width:20px;height:20px;flex-shrink:0;opacity:.85}.Sidebar_navLinkActive__SzlsZ .Sidebar_navIcon__t_YT4{opacity:1}.Sidebar_navLabel__hTBCp{flex:1 1}.Sidebar_footer__hB5Gl{padding:var(--space-4) var(--space-5);border-top:1px solid hsla(0,0%,100%,.1)}.Sidebar_footerText___rrTq{color:hsla(0,0%,100%,.3);font-size:var(--text-xs);text-align:center}.NotificationBell_bellButton__PKB6r,.NotificationBell_container__aZxXW{position:relative;display:flex;align-items:center}.NotificationBell_bellButton__PKB6r{justify-content:center;width:36px;height:36px;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease;padding:0}.NotificationBell_bellButton__PKB6r:hover{background-color:var(--color-surface-alt);color:var(--color-text)}.NotificationBell_bellIcon__ALAAB{width:20px;height:20px;flex-shrink:0}.NotificationBell_badge__kc_vg{position:absolute;top:2px;right:2px;min-width:16px;height:16px;background-color:var(--color-accent);color:#fff;font-size:10px;font-weight:700;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;pointer-events:none}.NotificationBell_dropdown___Nlxr{position:absolute;top:calc(100% + 8px);right:0;width:340px;background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:200;overflow:hidden;display:flex;flex-direction:column}.NotificationBell_dropdownHeader__F5X7j{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface-alt)}.NotificationBell_dropdownTitle__uM6PH{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.NotificationBell_dropdownEmpty__JLzZU,.NotificationBell_dropdownLoading__q_h00{padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--color-text-secondary)}.NotificationBell_notificationList__SBbvK{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto}.NotificationBell_notificationItem__MW9MC{width:100%;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:none;border-bottom:1px solid var(--color-border);background:none;cursor:pointer;text-align:left;transition:background-color .1s ease}.NotificationBell_notificationItem__MW9MC:last-of-type{border-bottom:none}.NotificationBell_notificationItem__MW9MC:hover{background-color:var(--color-surface-alt)}.NotificationBell_notificationUnread__bFaRj{background-color:var(--color-accent-light)}.NotificationBell_notificationUnread__bFaRj:hover{background-color:#ffe0d6}.NotificationBell_notificationContent__2upmA{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.NotificationBell_notificationTitle__pNLdl{font-size:var(--text-sm);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.NotificationBell_notificationMessage__aqMDB{font-size:var(--text-xs);color:var(--color-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.NotificationBell_notificationTime__JQ2O9{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.NotificationBell_unreadDot__qaEb7{width:8px;height:8px;background-color:var(--color-accent);border-radius:50%;flex-shrink:0;margin-top:4px}.NotificationBell_dropdownFooter__h18zs{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface-alt);display:flex;justify-content:center}.NotificationBell_viewAllLink__une1x{font-size:var(--text-sm);font-weight:500;color:var(--color-accent);text-decoration:none;transition:color .15s ease}.NotificationBell_viewAllLink__une1x:hover{text-decoration:underline}.Header_header__MvnS2{position:fixed;top:0;left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));height:var(--header-height);background-color:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);z-index:90;box-shadow:var(--shadow-sm)}.Header_left__MKmhq{display:flex;align-items:center;gap:var(--space-3)}.Header_logo__j7oID{height:28px;width:auto}.Header_right__WChiD{gap:var(--space-4)}.Header_notificationSlot__OvJvk,.Header_right__WChiD,.Header_userInfo__bC4JS{display:flex;align-items:center}.Header_userInfo__bC4JS{gap:var(--space-2)}.Header_userAvatar__RIpAU{width:36px;height:36px;background-color:var(--color-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;flex-shrink:0}.Header_userName__xX6C5{font-size:var(--text-sm);font-weight:500;color:var(--color-text);max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Header_roleBadge__fukWp{display:inline-flex;align-items:center;padding:.15em .55em;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.05em;background-color:rgba(1,97,110,.1);color:var(--color-primary-light)}.Header_logoutBtn__0mHyf{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:color .15s ease,background-color .15s ease;margin-left:var(--space-1)}.Header_logoutBtn__0mHyf:hover{color:var(--color-accent);background-color:var(--color-accent-light)}.AppShell_shell__YCowG{min-height:100vh}.AppShell_main__NYoit{margin-left:var(--sidebar-width);margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0 Q40 0 40 40 Q40 0 80 0' fill='none' stroke='%230A4A52' stroke-width='0.5' opacity='0.04'/%3E%3Cpath d='M0 40 Q40 40 40 80 Q40 40 80 40' fill='none' stroke='%230A4A52' stroke-width='0.5' opacity='0.04'/%3E%3C/svg%3E");background-size:80px 80px}.AppShell_content__InPW3{padding:var(--space-6);max-width:100%}:root{--color-primary:#022b30;--color-primary-light:#01616e;--color-primary-dark:#011e21;--color-accent:#ff5b37;--color-accent-light:#fff0ec;--color-accent-hover:#e54e2e;--color-success:#1a7a3a;--color-warning:#e68a00;--color-error:#d42b2b;--color-info:#01616e;--color-mint:#aadfd2;--color-light-orange:#f3ad7b;--color-bg:#f1f5f5;--color-surface:#fff;--color-surface-alt:#e4ebec;--color-border:#d1ddde;--color-text:#022b30;--color-text-secondary:#01616e;--color-text-muted:#7a9599;--color-text-inverse:#fff;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-sans:"Neue Montreal","Inter","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 3px rgba(2,43,48,.08);--shadow-md:0 4px 12px rgba(2,43,48,.1);--shadow-lg:0 10px 24px rgba(2,43,48,.12);--sidebar-width:240px;--header-height:64px}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-weight:400;color:var(--color-text);background:var(--color-bg);line-height:1.5}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit;background:var(--color-surface-alt);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text)}input::placeholder,textarea::placeholder{color:var(--color-text-secondary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent)}