*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #1a1d23;--bg-secondary: #23272e;--bg-tertiary: #2d3139;--text-primary: #ffffff;--text-secondary: #aaaaaa;--accent: #5a6fd6;--accent-hover: #6b7fe6;--danger: #d65a5a;--success: #5ad65a;--warning: #d6a85a}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{background:var(--bg-tertiary);cursor:not-allowed}.btn-danger{background:var(--danger);color:#fff}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}input,textarea,select{background:var(--bg-tertiary);border:1px solid #444;border-radius:6px;padding:10px 14px;color:var(--text-primary);font-size:14px;width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}.container{max-width:1400px;margin:0 auto;padding:0 20px}.app-layout{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--bg-secondary);padding:20px;position:fixed;height:100vh;overflow-y:auto}.main-content{flex:1;margin-left:240px;padding:20px}.nav-logo{font-size:24px;font-weight:700;color:var(--accent);margin-bottom:30px;display:block}.nav-menu{list-style:none}.nav-item{margin-bottom:5px}.nav-link{display:block;padding:12px 15px;border-radius:8px;color:var(--text-secondary);transition:all .2s}.nav-link:hover,.nav-link.active{background:var(--bg-tertiary);color:var(--text-primary)}.nav-link.active{border-left:3px solid var(--accent)}.user-info{position:absolute;bottom:20px;left:20px;right:20px;padding:15px;background:var(--bg-tertiary);border-radius:8px}.user-name{font-weight:500;margin-bottom:5px}.user-role{font-size:12px;color:var(--accent);text-transform:uppercase}.card{background:var(--bg-secondary);border-radius:12px;padding:20px;margin-bottom:20px}.card-title{font-size:18px;margin-bottom:15px;color:var(--text-primary)}.form-group{margin-bottom:15px}.form-label{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:14px}.form-row{display:flex;gap:15px}.form-row>*{flex:1}.image-container{background:var(--bg-tertiary);border-radius:8px;min-height:200px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.image-container img{max-width:100%;max-height:400px;object-fit:contain}.image-placeholder{color:var(--text-secondary);text-align:center;padding:40px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.status-bar{background:var(--bg-tertiary);padding:10px 15px;border-radius:6px;margin-top:15px;font-size:14px;color:var(--text-secondary)}.status-bar.loading{color:var(--warning)}.status-bar.success{color:var(--success)}.status-bar.error{color:var(--danger)}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.auth-card{background:var(--bg-secondary);padding:40px;border-radius:16px;width:100%;max-width:400px}.auth-title{font-size:28px;text-align:center;margin-bottom:30px}.auth-footer{text-align:center;margin-top:20px;color:var(--text-secondary)}@media (max-width: 1024px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.sidebar{width:100%;height:auto;position:relative}.main-content{margin-left:0}.app-layout{flex-direction:column}.grid-2,.grid-3{grid-template-columns:1fr}.form-row{flex-direction:column}.user-info{position:relative;bottom:auto;left:auto;right:auto;margin-top:20px}}.spinner{width:40px;height:40px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.file-upload{border:2px dashed var(--bg-tertiary);border-radius:8px;padding:30px;text-align:center;cursor:pointer;transition:all .2s}.file-upload:hover{border-color:var(--accent);background:#5a6fd61a}.file-upload input{display:none}
