*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--color-bg: #0a0a0a;--color-bg-card: #161618;--color-bg-elevated: #1e1e22;--color-primary: #e63946;--color-primary-hover: #d62839;--color-accent: #f4a261;--color-text: #f1f1f1;--color-text-secondary: #a0a0a8;--color-text-muted: #6b6b75;--color-border: #2a2a30;--color-success: #2ecc71;--color-error: #e74c3c;--color-warning: #f39c12;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow-x:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#app{width:100%;min-height:100vh;min-height:100dvh}.app-root{max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh;position:relative}.player-container{width:100%;height:100vh;height:100dvh;position:relative;background:#000;overflow:hidden}.video-wrapper{width:100%;height:100%;position:relative;cursor:pointer}.video-element{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#000}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:10}.play-indicator{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:10;animation:fadeOut .5s ease forwards}.icon-play-large{width:64px;height:64px;color:#fffc}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.overlay-top{position:absolute;top:0;left:0;right:0;padding:calc(var(--safe-top) + 12px) 16px 40px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 0%,transparent 100%);display:flex;align-items:center;gap:12px;z-index:5}.btn-back{width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#fff;background:#ffffff1a;border:none;border-radius:50%;cursor:pointer;flex-shrink:0}.btn-back svg{width:20px;height:20px}.drama-info-top{display:flex;align-items:center;gap:8px;overflow:hidden}.episode-badge{background:var(--color-primary);color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;flex-shrink:0}.drama-title-text{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overlay-bottom{position:absolute;bottom:0;left:0;right:0;padding:40px 16px calc(var(--safe-bottom) + 16px);background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 100%);z-index:5}.progress-container{width:100%;height:20px;display:flex;align-items:center;cursor:pointer;margin-bottom:8px}.progress-bar{width:100%;height:3px;background:#fff3;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .1s linear}.bottom-controls{display:flex;justify-content:space-between;align-items:center}.left-controls,.right-controls{display:flex;align-items:center;gap:8px}.btn-control{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;background:none;border:none;cursor:pointer}.btn-control svg{width:20px;height:20px}.time-display{font-size:12px;color:#ffffffb3;font-variant-numeric:tabular-nums}.episode-drawer{position:fixed;inset:0;background:#00000080;z-index:100;display:flex;align-items:flex-end}.drawer-content{width:100%;max-height:60vh;background:var(--color-bg-elevated);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:20px;overflow-y:auto}.drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.drawer-header h3{font-size:18px;font-weight:600}.btn-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background:none;border:none;cursor:pointer}.btn-close svg{width:20px;height:20px}.episode-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.episode-btn{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:14px;cursor:pointer;position:relative;transition:all .2s}.episode-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.episode-btn.locked{opacity:.5}.lock-icon{position:absolute;bottom:2px;right:2px;width:10px;height:10px;color:var(--color-text-muted)}.drama-list-page{padding:0 0 calc(var(--safe-bottom) + 20px)}.app-header{display:flex;justify-content:space-between;align-items:center;padding:calc(var(--safe-top) + 12px) 16px 12px;position:sticky;top:0;background:var(--color-bg);z-index:20}.header-logo{display:flex;align-items:baseline;gap:4px}.logo-text{font-size:22px;font-weight:800;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-sub{font-size:12px;color:var(--color-text-muted);font-weight:500}.btn-coins{display:flex;align-items:center;gap:4px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:6px 14px;color:var(--color-accent);font-size:14px;font-weight:600;cursor:pointer}.coin-icon{width:16px;height:16px}.genre-tabs{display:flex;gap:8px;padding:0 16px 12px;overflow-x:auto;scrollbar-width:none}.genre-tabs::-webkit-scrollbar{display:none}.genre-tab{padding:6px 16px;border-radius:var(--radius-xl);background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:13px;white-space:nowrap;cursor:pointer;transition:all .2s}.genre-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.drama-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 16px}.drama-card{cursor:pointer;transition:transform .2s}.drama-card:active{transform:scale(.97)}.card-cover{aspect-ratio:2/3;border-radius:var(--radius-md);overflow:hidden;position:relative;background:var(--color-bg-card)}.card-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.card-overlay{position:absolute;bottom:0;left:0;right:0;padding:4px 8px;background:linear-gradient(to top,rgba(0,0,0,.8),transparent)}.episode-count{font-size:11px;color:#fffc;font-weight:500}.card-info{padding:8px 0}.card-title{font-size:13px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-desc{font-size:11px;color:var(--color-text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-meta{display:flex;align-items:center;gap:6px;margin-top:4px}.view-count{display:flex;align-items:center;gap:2px;font-size:11px;color:var(--color-text-muted)}.icon-sm{width:12px;height:12px}.free-badge{font-size:10px;color:var(--color-success);background:#2ecc711a;padding:1px 6px;border-radius:4px}.payment-page{padding:calc(var(--safe-top) + 16px) 16px calc(var(--safe-bottom) + 20px);min-height:100vh;min-height:100dvh}.page-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.page-header h1{font-size:20px;font-weight:700;flex:1}.balance-badge{display:flex;align-items:center;gap:4px;background:var(--color-bg-elevated);padding:6px 12px;border-radius:var(--radius-xl);font-size:14px;font-weight:600;color:var(--color-accent)}.currency-selector{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none}.currency-selector::-webkit-scrollbar{display:none}.currency-btn{padding:6px 16px;border-radius:var(--radius-xl);background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}.currency-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.package-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.package-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 16px;text-align:center;cursor:pointer;position:relative;transition:all .2s}.package-card.selected{border-color:var(--color-primary);background:#e639460d}.package-card.popular{border-color:var(--color-accent)}.bonus-badge{position:absolute;top:-8px;right:8px;background:var(--color-accent);color:#000;font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}.pkg-coins{font-size:28px;font-weight:800;color:var(--color-text)}.pkg-label{font-size:12px;color:var(--color-text-muted);margin-top:2px}.pkg-price{font-size:16px;font-weight:700;color:var(--color-primary);margin-top:8px}.section-title{font-size:16px;font-weight:600;margin-bottom:12px}.payment-methods{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.method-btn{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:all .2s}.method-btn.active{border-color:var(--color-primary)}.method-name{font-size:15px;font-weight:600;color:var(--color-text)}.method-desc{font-size:12px;color:var(--color-text-muted)}.btn-pay{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}.btn-pay:disabled{opacity:.5;cursor:not-allowed}.btn-pay:not(:disabled):hover{background:var(--color-primary-hover)}.btn-loading{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-message{margin-top:16px;padding:12px;border-radius:var(--radius-md);font-size:14px;text-align:center}.status-message.success{background:#2ecc711a;color:var(--color-success)}.status-message.error{background:#e74c3c1a;color:var(--color-error)}.status-message.info{background:#3498db1a;color:#3498db}.paywall-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.paywall-card{background:var(--color-bg-elevated);border-radius:var(--radius-lg);padding:32px 24px;width:100%;max-width:360px;position:relative;text-align:center}.paywall-card .btn-close{position:absolute;top:12px;right:12px}.lock-icon-wrapper{margin-bottom:16px}.lock-icon{width:48px;height:48px;color:var(--color-primary)}.paywall-title{font-size:20px;font-weight:700;margin-bottom:8px}.paywall-desc{font-size:14px;color:var(--color-text-secondary);margin-bottom:20px}.paywall-cost{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-bg-card);border-radius:var(--radius-md);margin-bottom:12px}.cost-label{color:var(--color-text-secondary);font-size:14px}.cost-value{font-size:18px;font-weight:700;color:var(--color-accent)}.paywall-balance{font-size:13px;color:var(--color-text-muted);margin-bottom:20px}.btn-unlock,.btn-get-coins{width:100%;padding:14px;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}.btn-unlock{background:var(--color-primary);color:#fff}.btn-unlock:disabled{opacity:.5}.btn-get-coins{background:var(--color-accent);color:#000}.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:380px;text-align:center}.login-title{font-size:28px;font-weight:800;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.login-desc{font-size:14px;color:var(--color-text-secondary);margin-bottom:32px}.login-form{display:flex;flex-direction:column;gap:16px}.input-group{text-align:left}.input-group label{display:block;font-size:13px;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px}.input-group input{width:100%;padding:12px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:15px;outline:none;transition:border-color .2s}.input-group input:focus{border-color:var(--color-primary)}.btn-login{width:100%;padding:14px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.btn-login:disabled{opacity:.5}.divider{display:flex;align-items:center;gap:12px;margin:24px 0;color:var(--color-text-muted);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.btn-google{width:100%;padding:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.btn-google:disabled{opacity:.4;cursor:not-allowed}.google-icon{width:18px;height:18px}.webview-notice{margin-top:16px;font-size:12px;color:var(--color-text-muted);font-style:italic}.payment-result-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px}.result-card{text-align:center;max-width:360px}.success-icon,.pending-icon,.failed-icon{margin-bottom:20px}.success-icon svg,.failed-icon svg{width:64px;height:64px}.success-icon svg{color:var(--color-success)}.failed-icon svg{color:var(--color-error)}.result-card h1{font-size:24px;font-weight:700;margin-bottom:8px}.result-card p{font-size:14px;color:var(--color-text-secondary);margin-bottom:32px}.result-actions{display:flex;flex-direction:column;gap:12px}.btn-primary{padding:14px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer}.btn-secondary{padding:14px;background:var(--color-bg-card);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer}.drama-detail-page{min-height:100vh;min-height:100dvh}.detail-header{padding:calc(var(--safe-top) + 12px) 16px}.detail-cover{width:100%;aspect-ratio:16/9;overflow:hidden}.detail-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.detail-info{padding:20px 16px}.detail-info h1{font-size:22px;font-weight:700;margin-bottom:8px}.detail-meta{display:flex;gap:16px;font-size:13px;color:var(--color-text-muted);margin-bottom:12px}.detail-desc{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin-bottom:16px}.detail-genres{display:flex;gap:8px;margin-bottom:24px}.genre-tag{padding:4px 12px;background:var(--color-bg-card);border-radius:var(--radius-xl);font-size:12px;color:var(--color-text-secondary)}.btn-watch{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:700;cursor:pointer}.admin-page{display:flex;min-height:100vh}.admin-sidebar{width:220px;background:var(--color-bg-card);border-right:1px solid var(--color-border);padding:20px 0;position:fixed;height:100vh;overflow-y:auto}.sidebar-logo{padding:0 20px 20px;border-bottom:1px solid var(--color-border);margin-bottom:12px}.sidebar-logo h2{font-size:18px;font-weight:700;color:var(--color-primary)}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.nav-item{padding:10px 20px;color:var(--color-text-secondary);text-decoration:none;font-size:14px;transition:all .2s}.nav-item:hover{background:var(--color-bg-elevated);color:var(--color-text)}.nav-item.active{background:#e639461a;color:var(--color-primary);border-right:3px solid var(--color-primary)}.admin-main{flex:1;margin-left:220px;padding:24px}.page-title{font-size:24px;font-weight:700;margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;text-align:center}.stat-value{font-size:28px;font-weight:800;color:var(--color-text)}.stat-label{font-size:13px;color:var(--color-text-muted);margin-top:4px}.section{margin-bottom:32px}.section h2{font-size:18px;font-weight:600;margin-bottom:16px}.revenue-list{display:flex;flex-direction:column;gap:8px}.revenue-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--color-bg-card);border-radius:var(--radius-md)}.revenue-currency{font-weight:700;font-size:16px;min-width:48px}.revenue-amount{font-size:18px;font-weight:700;color:var(--color-success)}.revenue-count{font-size:13px;color:var(--color-text-muted);margin-left:auto}.table-wrapper{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;padding:10px 12px;background:var(--color-bg-card);color:var(--color-text-muted);font-weight:500;border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}.cell-mono{font-family:monospace;font-size:12px}.status-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.paid{background:#2ecc711a;color:var(--color-success)}.status-badge.pending{background:#f39c121a;color:var(--color-warning)}.status-badge.failed{background:#e74c3c1a;color:var(--color-error)}.status-badge.draft{background:#95a5a61a;color:#95a5a6}.status-badge.published{background:#2ecc711a;color:var(--color-success)}.role-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.role-badge.admin{background:#e639461a;color:var(--color-primary)}.role-badge.user{background:#3498db1a;color:#3498db}.page-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.search-bar,.filter-bar{display:flex;gap:8px;margin-bottom:16px}.search-bar input,.filter-bar select{padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:14px;outline:none}.search-bar input{flex:1}.btn-sm{padding:4px 10px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);font-size:12px;cursor:pointer;margin-right:4px}.btn-danger{color:var(--color-error);border-color:#e74c3c4d}.empty-state,.empty-text{text-align:center;padding:40px;color:var(--color-text-muted);font-size:14px}.loading-state{display:flex;justify-content:center;padding:40px}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.toast-container{position:fixed;top:calc(var(--safe-top) + 16px);left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;max-width:360px;width:calc(100% - 32px)}.toast-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--radius-md);font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast-item.success{background:#2ecc71e6;color:#fff}.toast-item.error{background:#e74c3ce6;color:#fff}.toast-item.info{background:#3498dbe6;color:#fff}.toast-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;opacity:.7}.toast-enter-active,.toast-leave-active{transition:all .3s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(-20px)}@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-sidebar{width:60px}.sidebar-logo h2{font-size:12px}.nav-item{font-size:11px;padding:10px 8px;text-align:center}.admin-main{margin-left:60px;padding:16px}}
