#app{min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-dark: #050507;--primary-deep: #07070a;--stone-gray: #151517;--stone-slab: #1b1b1e;--stone-edge: #2a2a2e;--vein-light: #f3f3f3;--text-primary: #f5f5f5;--text-secondary: #b7b7b9;--border-color: #343438;--hover-color: #4a4a4e;--danger: #d32f2f;--success: #388e3c;--warning: #f57c00;--primary-light-blue: #283593;--accent-blue: #3949ab}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background-color:var(--primary-dark);background-image:url(/marble.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;color:var(--text-primary);min-height:100vh;overflow-x:hidden;position:relative}#app{min-height:100vh;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='no'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.16'/%3E%3C/svg%3E");mix-blend-mode:soft-light;opacity:.6}.app-content{position:relative;z-index:1;min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--primary-dark)}::-webkit-scrollbar-thumb{background:var(--primary-light-blue);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-blue)}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:#18181a;color:var(--text-primary);box-shadow:inset 0 1px #ffffff08,inset 0 -2px #000000e6,0 0 0 1px #404044e6;text-transform:uppercase;letter-spacing:.08em}.btn-primary:hover{background:#1c1c1f;transform:translateY(0);box-shadow:inset 0 1px #ffffff0a,inset 0 -3px #000,0 0 0 1px #606064}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#c62828;transform:translateY(-2px);box-shadow:0 4px 12px #d32f2f66}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#2e7d32;transform:translateY(-2px);box-shadow:0 4px 12px #388e3c66}.btn-secondary{background:#18191d;color:var(--text-primary);border:1px solid #4a4b50}.btn-secondary:hover{background:#222328;border-color:#5b5c63}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;color:var(--text-secondary);font-weight:500;font-size:14px}.form-input,.form-textarea,.form-select{width:100%;padding:12px;background:#111114;border:1px solid rgba(82,82,88,.9);border-radius:4px;color:var(--text-primary);font-size:14px;transition:all .3s ease;box-shadow:inset 0 1px #ffffff05,inset 0 -1px #0009}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#dcdcdee6;box-shadow:inset 0 0 0 1px #dcdcdeb3,0 0 0 1px #18181ae6}.form-textarea{min-height:120px;resize:vertical;font-family:inherit}.card{background:linear-gradient(135deg,#08080b,#050507 40%,#0a0a0e),repeating-linear-gradient(133deg,rgba(243,243,243,.18) 0,rgba(243,243,243,.18) 1px,transparent 1px,transparent 22px),repeating-linear-gradient(58deg,rgba(243,243,243,.12) 0,rgba(243,243,243,.12) 2px,transparent 2px,transparent 30px);border:1px solid rgba(84,84,90,.8);border-radius:6px;padding:24px;box-shadow:0 24px 60px #000000e6,0 0 0 1px #050508;position:relative;overflow:hidden}.table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color)}.table{width:100%;border-collapse:collapse;background:#1a237e33}.table th{background:#28359366;padding:16px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border-color);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.table td{padding:16px;border-bottom:1px solid rgba(48,63,159,.3);color:var(--text-primary);font-size:14px}.table tr:hover{background:#3949ab33}.table tr:last-child td{border-bottom:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a1929e6;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--primary-dark);border:1px solid var(--border-color);border-radius:12px;padding:32px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.modal-title{font-size:24px;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#d32f2f33;color:var(--danger)}.text-center{text-align:center}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mr-1{margin-right:8px}.mr-2{margin-right:16px}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.loading{display:flex;justify-content:center;align-items:center;padding:40px}.spinner{width:40px;height:40px;border:4px solid rgba(57,73,171,.3);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-preview{max-width:100%;border-radius:8px;border:1px solid var(--border-color);margin-top:8px}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-top:16px}.image-item{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.image-item img{width:100%;height:150px;object-fit:cover;display:block}.image-item-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px}.image-item-actions button{background:#0a1929e6;border:none;color:#fff;width:28px;height:28px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.image-item-actions button:hover{background:var(--danger);transform:scale(1.1)}@media (max-width: 768px){body{font-size:14px}.card{padding:16px}.btn{padding:8px 16px;font-size:13px}.form-input,.form-textarea,.form-select{padding:10px;font-size:14px}}@media (max-width: 480px){.card{padding:12px}.btn{padding:6px 12px;font-size:12px}}
