:root{--app-bg: #050a12;--app-bg-deep: #03070d;--app-surface: #080f19;--app-surface-soft: #0b121d;--app-surface-elevated: #101722;--app-sidebar-bg: #0a1018;--app-topbar-bg: #070d15;--brand-gold: #c58e3b;--brand-gold-soft: #e1b766;--brand-gold-muted: #8f7345;--brand-gold-bg: rgba(197, 142, 59, .12);--brand-gold-border: rgba(197, 142, 59, .35);--text-primary: #f0f2ef;--text-secondary: #b7bab6;--text-muted: #7d837f;--text-disabled: #565c59;--text-gold: #d7b35f;--border-subtle: rgba(255, 255, 255, .08);--border-medium: rgba(255, 255, 255, .12);--border-gold: rgba(197, 142, 59, .28);--shadow-card: 0 16px 36px rgba(0, 0, 0, .28);--shadow-soft: 0 8px 24px rgba(0, 0, 0, .22);--shadow-gold: 0 12px 28px rgba(197, 142, 59, .18);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--layout-sidebar-width: 308px;--layout-topbar-height: 82px;--layout-content-max-width: 1280px;--layout-content-padding-x: 36px;--layout-content-padding-y: 30px;--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;--font-family-base: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 22px;--font-size-2xl: 30px;--font-size-3xl: 34px;--line-height-tight: 1.15;--line-height-base: 1.45;--line-height-relaxed: 1.65;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--sidebar-width: 308px;--sidebar-padding-x: 28px;--sidebar-padding-y: 28px;--sidebar-nav-gap: 10px;--sidebar-item-height: 52px;--sidebar-item-radius: var(--radius-sm);--sidebar-item-active-bg: rgba(255, 255, 255, .06);--sidebar-item-active-border: 3px solid var(--brand-gold);--header-height: 82px;--header-padding-x: 36px;--header-border: 1px solid var(--border-subtle);--metric-card-height: 104px;--metric-card-radius: var(--radius-sm);--metric-card-padding: 24px;--metric-card-bg: var(--app-surface);--metric-card-border: 1px solid var(--border-medium);--edition-card-height: 132px;--edition-card-radius: 10px;--edition-card-padding: 32px;--edition-card-bg: linear-gradient( 135deg, rgba(197, 142, 59, .12), rgba(8, 15, 25, .96) 48%, rgba(197, 142, 59, .08) );--edition-card-border: 1px solid var(--border-gold);--module-card-height: 124px;--module-card-radius: var(--radius-sm);--module-card-padding: 24px;--module-card-bg: var(--app-surface);--module-card-border: 1px solid var(--border-medium);--icon-box-size: 52px;--icon-box-radius: 999px;--icon-box-bg: rgba(197, 142, 59, .1);--icon-size: 22px;--button-height: 46px;--button-radius: var(--radius-sm);--button-padding-x: 24px;--button-primary-bg: #c58e3b;--button-primary-text: #ffffff;--button-primary-hover-bg: #d49d48;--button-secondary-bg: transparent;--button-secondary-border: 1px solid var(--border-medium);--button-secondary-text: var(--text-primary)}*,*:before,*:after{box-sizing:border-box;margin:0}body{font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-base);background:var(--app-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--brand-gold);text-decoration:none}a:hover{color:var(--brand-gold-soft)}h1,h2,h3{margin:0;font-weight:var(--font-weight-bold)}h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}h2{font-size:var(--font-size-xl);line-height:var(--line-height-tight)}h3{font-size:var(--font-size-lg);line-height:var(--line-height-tight)}.admin-layout{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) 1fr;background:var(--app-bg);color:var(--text-primary);font-family:var(--font-family-base)}.admin-main{min-width:0;background:var(--app-bg-deep)}.admin-header{height:var(--header-height);padding:0 var(--header-padding-x);border-bottom:var(--header-border);display:flex;align-items:center;justify-content:space-between;background:var(--app-topbar-bg)}.admin-header-title{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.admin-content{width:100%;padding:var(--layout-content-padding-y) var(--layout-content-padding-x)}.sidebar{width:var(--sidebar-width);background:var(--app-sidebar-bg);border-right:var(--header-border);display:flex;flex-direction:column;padding:var(--sidebar-padding-y) var(--sidebar-padding-x);overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-8);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-6)}.sidebar-brand-icon{width:40px;height:40px;display:flex;align-items:center;flex-shrink:0}.sidebar-brand-icon img{width:auto;height:80px;margin:0 auto;display:block}.sidebar-brand-text{display:flex;flex-direction:column}.sidebar-brand-name{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:.3px;line-height:1.2}.sidebar-brand-sub{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--brand-gold);text-transform:uppercase;letter-spacing:1.5px}.sidebar-nav{display:flex;flex-direction:column;gap:var(--sidebar-nav-gap);flex:1}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);height:var(--sidebar-item-height);padding:0 var(--space-4);border-radius:var(--sidebar-item-radius);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background .15s,color .15s;text-decoration:none}.sidebar-link:hover{background:var(--sidebar-item-active-bg);color:var(--text-primary)}.sidebar-link.active{background:var(--sidebar-item-active-bg);color:var(--brand-gold);border-left:var(--sidebar-item-active-border);font-weight:var(--font-weight-semibold)}.sidebar-link-icon{width:20px;height:20px;flex-shrink:0;opacity:.7}.sidebar-link.active .sidebar-link-icon{opacity:1}.sidebar-foot{margin-top:auto;padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.sidebar-user{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);cursor:default}.sidebar-user-avatar{width:36px;height:36px;border-radius:var(--icon-box-radius);background:var(--brand-gold-bg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--brand-gold);flex-shrink:0}.sidebar-user-info{display:flex;flex-direction:column;min-width:0}.sidebar-user-email{font-size:var(--font-size-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:var(--font-size-xs);color:var(--text-muted)}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.header-notification{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:background .15s}.header-notification:hover{background:var(--sidebar-item-active-bg);color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--button-height);padding:0 var(--button-padding-x);border-radius:var(--button-radius);font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background .15s,border-color .15s,color .15s;border:none;background:var(--button-primary-bg);color:var(--button-primary-text)}.btn:hover{background:var(--button-primary-hover-bg)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{background:var(--button-secondary-bg);color:var(--button-secondary-text);border:var(--button-secondary-border)}.btn.ghost:hover{background:var(--sidebar-item-active-bg)}.btn.danger{background:transparent;color:#e76f5a;border:1px solid rgba(231,111,90,.3)}.btn.danger:hover{background:#e76f5a1a}.btn.sm{height:36px;padding:0 var(--space-4);font-size:var(--font-size-xs)}.btn-icon{width:var(--icon-box-size);height:var(--icon-box-size);padding:0;border-radius:var(--icon-box-radius);background:var(--icon-box-bg);border:none;color:var(--brand-gold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.btn-icon:hover{background:#c58e3b2e}.btn-icon svg{width:var(--icon-size);height:var(--icon-size)}.section-header{margin-bottom:var(--space-6)}.section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-1)}.section-subtitle{font-size:var(--font-size-md);color:var(--text-muted)}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.metric-card{height:var(--metric-card-height);padding:var(--metric-card-padding);border-radius:var(--metric-card-radius);background:var(--metric-card-bg);border:var(--metric-card-border);display:flex;align-items:center;gap:var(--space-4);transition:border-color .15s}.metric-card:hover{border-color:var(--brand-gold-border)}.metric-icon{width:var(--icon-box-size);height:var(--icon-box-size);border-radius:var(--icon-box-radius);background:var(--icon-box-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon svg{width:var(--icon-size);height:var(--icon-size);color:var(--brand-gold)}.metric-info{display:flex;flex-direction:column;min-width:0}.metric-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:var(--space-1)}.metric-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:var(--line-height-tight)}.metric-detail{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.edition-card{min-height:var(--edition-card-height);padding:var(--edition-card-padding);border-radius:var(--edition-card-radius);background:var(--edition-card-bg);border:var(--edition-card-border);display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);position:relative;overflow:hidden}.edition-card:before{content:"";position:absolute;top:0;right:0;width:300px;height:100%;background:repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(197,142,59,.04) 8px,rgba(197,142,59,.04) 16px);pointer-events:none}.edition-info{display:flex;flex-direction:column;gap:var(--space-2);position:relative;z-index:1}.edition-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--brand-gold);text-transform:uppercase;letter-spacing:1px}.edition-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-gold);box-shadow:0 0 8px #c58e3b80}.edition-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.edition-meta{display:flex;align-items:center;gap:var(--space-6);font-size:var(--font-size-sm);color:var(--text-secondary)}.edition-meta-item{display:flex;align-items:center;gap:var(--space-2)}.edition-meta-item svg{width:16px;height:16px;color:var(--text-muted)}.modules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.module-card{height:var(--module-card-height);padding:var(--module-card-padding);border-radius:var(--module-card-radius);background:var(--module-card-bg);border:var(--module-card-border);display:flex;align-items:center;gap:var(--space-4);text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s;cursor:pointer}.module-card:hover{border-color:var(--brand-gold-border);box-shadow:var(--shadow-soft)}.module-icon{width:var(--icon-box-size);height:var(--icon-box-size);border-radius:var(--icon-box-radius);background:var(--icon-box-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.module-icon svg{width:var(--icon-size);height:var(--icon-size);color:var(--brand-gold)}.module-info{display:flex;flex-direction:column;min-width:0;flex:1}.module-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:2px}.module-desc{font-size:var(--font-size-xs);color:var(--text-muted);line-height:var(--line-height-relaxed)}.module-arrow{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.input,textarea,select{background:var(--app-surface-soft);border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:10px var(--space-3);color:var(--text-primary);font-size:var(--font-size-sm);font-family:var(--font-family-base);transition:border-color .15s}.input:focus,textarea:focus,select:focus{outline:none;border-color:var(--brand-gold-border)}.input::placeholder,textarea::placeholder{color:var(--text-disabled)}textarea{min-height:90px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%237d837f' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--border-subtle)}.table th{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.6px}.table td{font-size:var(--font-size-sm);color:var(--text-primary)}.tag{display:inline-flex;align-items:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--brand-gold)}.tag.draft{color:#e76f5a}.muted{color:var(--text-muted);font-size:var(--font-size-sm)}.notice{border:1px solid var(--border-medium);background:var(--app-surface);border-radius:var(--radius-sm);padding:var(--space-3);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.notice.error{border-color:#e76f5a4d;color:#f0a090}.row{display:flex;align-items:center;gap:var(--space-3)}.spread{justify-content:space-between}.code-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--app-surface-soft);border:1px solid var(--brand-gold-border);color:var(--brand-gold);padding:var(--space-2) var(--space-3);border-radius:var(--radius-xs);letter-spacing:1px;font-size:var(--font-size-sm)}.login-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-5);background:var(--app-bg)}.login-card{width:100%;max-width:400px;background:var(--app-surface);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--space-8)}
