.pwa-top-banner{position:fixed;top:0;left:0;right:0;z-index:12000;padding:0 8px}.pwa-top-banner-offset{top:48px}.pwa-banner{margin:6px auto 0;max-width:960px;min-height:38px;border-radius:10px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;line-height:1.4;font-size:13px;box-shadow:0 6px 18px #0000002e}.pwa-banner-dismissible{gap:10px}.pwa-banner-close{border:1px solid rgba(255,255,255,.22);background:#ffffff14;color:inherit;border-radius:8px;padding:4px 10px;cursor:pointer;white-space:nowrap;font-size:12px}.pwa-banner-close:hover{background:#ffffff29}.pwa-banner-warning{background:#392b0cf0;border:1px solid rgba(220,186,106,.45);color:#ffe4a3}.pwa-banner-info{background:#142b4ff0;border:1px solid rgba(108,158,224,.45);color:#d6e9ff}.pwa-install-card{position:fixed;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom,0px));z-index:12000;background:#071626f2;border:1px solid rgba(201,168,76,.35);border-radius:12px;box-shadow:0 8px 24px #00000059;padding:10px 12px;color:#f5f8fc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pwa-install-title{font-size:13px;line-height:1.4;margin-bottom:8px}.pwa-install-actions{display:flex;justify-content:flex-end;gap:8px}.pwa-btn{border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffff14;color:#f5f8fc;font-size:12px;line-height:1;padding:8px 12px;cursor:pointer}.pwa-btn:hover{background:#ffffff29}.pwa-btn:disabled{opacity:.75;cursor:not-allowed}.pwa-btn-primary{border-color:#c9a84cad;background:linear-gradient(135deg,#d4b366,#b1842e);color:#231600;font-weight:600}.pwa-online-hint{position:fixed;right:12px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:12000;font-size:12px;color:#82cc96;background:#061c0de6;border:1px solid rgba(130,204,150,.35);border-radius:999px;padding:4px 10px;display:inline-flex;align-items:center;gap:6px}.pwa-toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:13000;min-width:220px;max-width:min(92vw,480px);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.4;box-shadow:0 6px 20px #00000047}.pwa-toast-success{background:#194b26f2;border:1px solid rgba(130,204,150,.45);color:#cff5d7}.pwa-toast-warning{background:#52350cf2;border:1px solid rgba(226,185,106,.48);color:#ffe6ad}.pwa-toast-info{background:#172f57f2;border:1px solid rgba(122,169,233,.45);color:#d8eaff}@media (min-width: 769px){.pwa-install-card{left:auto;right:20px;width:380px;bottom:20px}}:root:not([data-theme=dark]) .pwa-banner-warning{background:#fff4dcf5;border-color:#d2a74f73;color:#7a5200}:root:not([data-theme=dark]) .pwa-banner-info{background:#e5f0fff5;border-color:#739ddb6b;color:#274c8a}:root:not([data-theme=dark]) .pwa-banner-close{border-color:#2f497533;background:#ffffffe6;color:#385f98}:root:not([data-theme=dark]) .pwa-banner-close:hover{background:#eaf3fff2}:root:not([data-theme=dark]) .pwa-install-card{background:#fffffff5;border-color:#c9a84c59;color:#24364a}:root:not([data-theme=dark]) .pwa-btn{border-color:#1b345a33;background:#ffffffeb;color:#27384f}:root:not([data-theme=dark]) .pwa-btn:hover{background:#e9f1fcf5}:root:not([data-theme=dark]) .pwa-online-hint{color:#1f6f2f;background:#e8f7ecf2;border-color:#4aa35f61}:root:not([data-theme=dark]) .pwa-toast-success{background:#e8f7ecf7;border-color:#469e5d6b;color:#1c6a2d}:root:not([data-theme=dark]) .pwa-toast-warning{background:#fff4dffa;border-color:#d4aa5c75;color:#7a5200}:root:not([data-theme=dark]) .pwa-toast-info{background:#e6f1fffa;border-color:#709fe175;color:#27508f}:root{--wm-safe-top: env(safe-area-inset-top, 0px);--wm-safe-bottom: env(safe-area-inset-bottom, 0px)}html,body{overscroll-behavior-y:contain;-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (display-mode: standalone){html,body,#root{min-height:100dvh}body{padding-top:var(--wm-safe-top);padding-bottom:var(--wm-safe-bottom);overscroll-behavior-y:none}}@supports (-webkit-touch-callout: none){@media (display-mode: standalone){body{min-height:-webkit-fill-available}}}@media (max-width: 768px){.ant-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.ant-table{min-width:600px}.ant-card{border-radius:8px!important}.ant-card-body{padding:12px!important}.ant-card-head{padding:0 12px!important;min-height:40px!important}.ant-card-head-title{font-size:13px!important}.ant-statistic-title{font-size:11px!important}.ant-statistic-content,.ant-statistic-content-value{font-size:18px!important}.ant-modal{max-width:calc(100vw - 16px)!important;margin:0 auto!important;top:auto!important;bottom:0!important;padding-bottom:0!important}.ant-modal .ant-modal-content{border-radius:16px 16px 0 0!important}.ant-drawer-content-wrapper{width:100%!important}.ant-tag{font-size:11px!important;padding:0 4px!important;line-height:18px!important}.ant-btn{min-height:36px}.ant-typography h4{font-size:16px!important}.ant-typography h5{font-size:14px!important}.ant-select{min-width:100px!important}.admin-dashboard .stat-card{min-height:80px}.recharts-wrapper{font-size:10px}.ant-list-item{padding:8px 0!important}.ant-list-item-meta-title{font-size:13px!important}.ant-list-item-meta-description{font-size:11px!important}.ant-badge{font-size:10px}.ant-input,.ant-input-number,.ant-picker{font-size:14px!important}}@media (max-width: 375px){.ant-card-body{padding:8px!important}.ant-statistic-content-value{font-size:16px!important}.tabbar-label{font-size:9px}.tabbar-icon{font-size:18px}}@media (max-width: 768px){.ant-tabs-nav-list{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.ant-list-item{flex-direction:column;align-items:flex-start!important}.ant-list-item-action{margin-left:0!important;margin-top:8px;width:100%;text-align:right;border-top:1px dashed rgba(255,255,255,.06);padding-top:8px}.ant-list-item-action>li{padding:0 8px;width:100%;text-align:right}.ant-list-item-meta-avatar .anticon{font-size:32px!important;margin-right:8px}.ant-upload-wrapper,.ant-upload{width:100%;display:block}.ant-upload .ant-btn{width:100%}}:root{--app-bg-main: #f5f7fb;--app-bg-card: #ffffff;--app-bg-elevated: #ffffff;--app-bg-sidebar: #ffffff;--app-text-primary: #1f2f46;--app-text-secondary: #5f6f85;--app-border: #dbe3ee;--app-border-secondary: #e8eef6;--app-accent-gold: #c9a84c;--app-table-header-bg: #f7f9fc;--app-table-row-hover: #f8fafc;--app-panel-soft-bg: #fbfcfe;--app-state-warn-bg: rgba(201, 168, 76, .1);--app-state-warn-border: rgba(201, 168, 76, .28);--app-state-success-bg: rgba(77, 184, 122, .12);--app-state-success-border: rgba(77, 184, 122, .28);--app-state-danger-bg: rgba(212, 96, 74, .12);--app-state-danger-border: rgba(212, 96, 74, .3);--muted: #5f6f85;--login-overlay: linear-gradient(135deg, rgba(245, 247, 251, .9) 0%, rgba(255, 255, 255, .82) 100%);--login-card-bg: rgba(255, 255, 255, .85);--login-input-bg: rgba(0, 0, 0, .03);--login-input-border: rgba(0, 0, 0, .1);--login-theme-btn-bg: rgba(255, 255, 255, .92);--login-theme-btn-border: rgba(0, 0, 0, .14);--login-theme-btn-text: #1f2f46;--login-card-shadow: 0 18px 40px rgba(27, 42, 66, .16);--login-tab-active-bg: rgba(201, 168, 76, .22);--login-tab-active-border: rgba(162, 127, 42, .42)}:root[data-theme=dark]{--app-bg-main: #071321;--app-bg-card: #0d2035;--app-bg-elevated: #10263d;--app-bg-sidebar: #0d2035;--app-text-primary: #d4e3f2;--app-text-secondary: #93acc2;--app-border: rgba(255, 255, 255, .12);--app-border-secondary: rgba(255, 255, 255, .08);--app-accent-gold: #c9a84c;--app-table-header-bg: #0b1d30;--app-table-row-hover: rgba(201, 168, 76, .08);--app-panel-soft-bg: #0a1a2c;--app-state-warn-bg: rgba(201, 168, 76, .14);--app-state-warn-border: rgba(201, 168, 76, .36);--app-state-success-bg: rgba(77, 184, 122, .14);--app-state-success-border: rgba(77, 184, 122, .34);--app-state-danger-bg: rgba(212, 96, 74, .16);--app-state-danger-border: rgba(212, 96, 74, .4);--muted: #93acc2;--login-overlay: linear-gradient(135deg, rgba(7, 19, 33, .9) 0%, rgba(13, 32, 53, .82) 100%);--login-card-bg: rgba(13, 32, 53, .85);--login-input-bg: rgba(255, 255, 255, .05);--login-input-border: rgba(255, 255, 255, .1);--login-theme-btn-bg: rgba(255, 255, 255, .08);--login-theme-btn-border: rgba(255, 255, 255, .12);--login-theme-btn-text: var(--app-text-primary);--login-card-shadow: 0 18px 40px rgba(0, 0, 0, .28);--login-tab-active-bg: rgba(201, 168, 76, .16);--login-tab-active-border: rgba(201, 168, 76, .35)}body{background-color:var(--app-bg-main);color:var(--app-text-primary);transition:background-color .3s ease,color .3s ease}.ant-card{transition:background-color .3s ease,border-color .3s ease}
