:root{--color-bg: #FAF9F5;--color-surface: #FFFFFF;--color-logo-bg: #0C2242;--color-primary: #D4A394;--color-primary-hover: #C28D7D;--color-dot: #F0B806;--color-text-main: #1A1A1A;--color-text-sub: #5F6368;--color-border: #EFECE0;--color-accent-bg: #F2EFE8;--color-card: #FFFFFF;--color-text: #1A1A1A;--color-text-muted: #5F6368;--color-input-bg: #FFFFFF;--color-primary-rgb: 212, 163, 148;--font-serif: "Libre Baskerville", "Georgia", serif;--font-sans: "Source Sans 3", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-xl: 20px;--radius-lg: 16px;--radius-md: 10px;--radius-sm: 6px;--shadow-soft: 0 10px 15px -3px rgba(0, 0, 0, .04), 0 4px 6px -2px rgba(0, 0, 0, .02);--shadow-hover: 0 20px 25px -5px rgba(0, 0, 0, .06), 0 10px 10px -5px rgba(0, 0, 0, .03);--transition: .3s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-main);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:700;margin-top:0;letter-spacing:-.02em;color:var(--color-text-main)}p{margin-top:0;color:var(--color-text-sub)}a{color:inherit;text-decoration:none;transition:var(--transition)}button{cursor:pointer;border:none;font-family:var(--font-sans);transition:var(--transition)}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--color-border);box-shadow:var(--shadow-soft);transition:var(--transition)}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover)}.btn-primary{background:var(--color-primary);color:#fff;padding:.8rem 1.8rem;border-radius:var(--radius-lg);font-weight:600;display:inline-flex;align-items:center;gap:.6rem;transition:var(--transition)}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .6s ease forwards}.app-container{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.main-content{flex:1;padding:4rem 2rem;max-width:1200px;margin:0 auto;width:100%}.auth-required-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition);border:none;text-decoration:none;line-height:1.4;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.btn-primary{background:var(--color-primary);color:#fff}.btn.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn.btn-outline{background:transparent;color:var(--color-text-main);border:1.5px solid var(--color-border)}.btn.btn-outline:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.btn.btn-sm{padding:.4rem .85rem;font-size:.85rem;border-radius:var(--radius-sm)}.btn.btn-accent{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn.btn-accent:hover:not(:disabled){background:var(--color-accent-bg)}.btn.btn-danger{background:transparent;color:#e74c3c;border:1.5px solid #e74c3c}.btn.btn-danger:hover:not(:disabled){background:#e74c3c14}.publish-input,.publish-textarea,.publish-select{width:100%;padding:.6rem .75rem;background:var(--color-surface);color:var(--color-text-main);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color .2s;box-sizing:border-box}.publish-input:focus,.publish-textarea:focus,.publish-select:focus{border-color:var(--color-primary)}.publish-input::placeholder,.publish-textarea::placeholder{color:#a0aec0}.skeleton-loading{padding:4rem 0;display:flex;flex-direction:column;gap:1rem}.skeleton-line{background:linear-gradient(90deg,var(--color-accent-bg) 25%,#ede9e0 50%,var(--color-accent-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm);height:1.25rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease forwards}.fade-in-up{animation:fadeInUp .5s ease forwards;opacity:0}.dashboard-container{max-width:900px;margin:0 auto;width:100%}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;gap:1rem;flex-wrap:wrap}.header-titles h1{font-size:2rem;margin-bottom:.25rem}.header-titles .subtitle{color:var(--color-text-muted);font-size:1rem;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.25rem;margin-bottom:2.5rem}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow-soft)}.stat-icon{font-size:1.5rem;line-height:1}.stat-info{display:flex;flex-direction:column;gap:.2rem}.stat-value{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--color-text-main);line-height:1}.stat-label{font-size:.78rem;color:var(--color-text-muted);font-weight:500}.loading-state{text-align:center;padding:5rem 0;color:var(--color-text-muted)}.spinner{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}.empty-dashboard{text-align:center;padding:6rem 2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.empty-icon{font-size:3.5rem;margin-bottom:1.5rem}.empty-dashboard h2{font-size:1.75rem;margin-bottom:.75rem}.empty-dashboard p{color:var(--color-text-muted);max-width:420px;margin:0 auto 2rem}.dashboard-list{display:flex;flex-direction:column;gap:1rem}.dashboard-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;align-items:flex-start;gap:1.25rem;box-shadow:var(--shadow-soft);transition:var(--transition)}.dashboard-item:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.item-icon{width:48px;height:48px;background:var(--color-accent-bg);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--color-primary);flex-shrink:0}.item-main{flex:1;min-width:0}.item-title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.4rem}.item-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:700;color:var(--color-text-main)}.status-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .55rem;border-radius:4px;border:1px solid currentColor}.maturity-stable{color:#16a34a;background:#16a34a14}.maturity-beta{color:#d97706;background:#d9770614}.maturity-experimental{color:#7c3aed;background:#7c3aed14}.maturity-deprecated{color:#9ca3af;background:#9ca3af14}.status-active{color:#16a34a;background:#16a34a14}.status-archived{color:#d97706;background:#d9770614}.status-banned{color:#dc2626;background:#dc262614}.item-desc{font-size:.9rem;color:var(--color-text-muted);margin-bottom:.75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.item-metrics{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.82rem;color:var(--color-text-muted)}.item-metrics .metric strong{color:var(--color-text-main);font-weight:600}.item-metrics .metric.category{background:var(--color-accent-bg);color:var(--color-primary);padding:.15rem .55rem;border-radius:100px;font-weight:600}.item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0;flex-wrap:wrap}.filter-dropdown{color:var(--color-text-main)}.error-page{text-align:center;padding:6rem 0}.error-page h2{font-size:1.75rem;margin-bottom:1rem}
