@charset "UTF-8";:root{--primary: #4b1fd0;--primary-hover: #3d17b0;--primary-50: #f4f1ff;--primary-100: #ece7fd;--primary-200: #d9d0fb;--primary-300: #b9a8f6;--navy-top: #18205f;--navy-bottom: #0d1342;--navy-active: #5a3be0;--bg: #f5f6fb;--card: #ffffff;--border: #e3e5ee;--border-strong: #cfd3df;--text: #11142d;--text-2: #3b3f57;--muted: #6b7088;--green: #16a34a;--green-600: #15803d;--green-bg: #e3f6ea;--green-border: #b7e4c7;--amber: #e69500;--amber-700: #b45309;--amber-bg: #fff4dc;--amber-border: #fbd78a;--red: #dc2626;--red-bg: #fde8e8;--red-border: #f6b8b8;--blue: #2563eb;--blue-bg: #e3edfd;--teal: #0f9d8a;--teal-bg: #dff5f1;--gray-bg: #eef0f4;--radius: 8px;--radius-lg: 12px;--shadow: 0 1px 2px rgba(16, 24, 64, .06), 0 2px 8px rgba(16, 24, 64, .05);--shadow-lg: 0 10px 40px rgba(16, 24, 64, .18)}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,p{margin:0}a{color:var(--primary);text-decoration:none;cursor:pointer}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}lucide-icon,lucide-angular{display:inline-flex;flex-shrink:0}.req{color:var(--red);margin-left:2px}.muted{color:var(--muted)}.small{font-size:12px}.xs{font-size:11px}.bold{font-weight:600}.text-primary{color:var(--primary)}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-amber{color:var(--amber-700)}.row{display:flex;align-items:center;gap:8px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:8px}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1;min-width:0}.wrap{flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 18px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 18px}.page{padding:20px 24px 24px}.page-title{font-size:28px;font-weight:800;letter-spacing:-.3px;color:var(--text)}.page-sub{color:var(--text-2);margin-top:4px;font-size:14px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:16px 18px}.card-title{font-size:17px;font-weight:700;display:flex;align-items:center;gap:10px}.card-sub{color:var(--muted);font-size:12.5px;margin-top:2px}.section-head{display:flex;align-items:center;gap:10px;background:var(--primary-50);border-radius:var(--radius);padding:8px 12px;font-weight:700;font-size:16px;color:var(--text)}.section-head lucide-icon{color:var(--primary)}.divider{height:1px;background:var(--border);margin:12px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 16px;border-radius:var(--radius);border:1.5px solid transparent;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;background:transparent}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-outline{border-color:var(--primary);color:var(--primary);background:#fff}.btn-outline:hover:not(:disabled){background:var(--primary-50)}.btn-soft{background:var(--primary-100);color:var(--primary);border-color:var(--primary-200)}.btn-soft:hover:not(:disabled){background:var(--primary-200)}.btn-secondary{border-color:var(--border-strong);color:var(--text);background:#fff}.btn-secondary:hover:not(:disabled){background:#f6f7fa}.btn-danger-outline{border-color:var(--red-border);color:var(--red);background:var(--red-bg)}.btn-ghost{color:var(--primary);padding:0 8px}.btn-ghost:hover{background:var(--primary-50)}.btn-sm{height:30px;padding:0 10px;font-size:12.5px;gap:6px}.btn-lg{height:46px;padding:0 22px;font-size:16px}.btn-block{width:100%}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:var(--muted)}.icon-btn:hover{background:var(--gray-bg)}.icon-btn.edit{color:var(--primary)}.icon-btn.del{color:var(--red)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label,.label{font-weight:600;font-size:13px;color:var(--text)}.input,.select,.textarea{width:100%;height:38px;border:1px solid var(--border-strong);border-radius:6px;background:#fff;padding:0 12px;outline:none;transition:border-color .15s,box-shadow .15s}.textarea{height:auto;min-height:70px;padding:8px 12px;resize:vertical;line-height:1.45}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.select{appearance:none;-webkit-appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2311142d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}.input.valid,.select.valid{border-color:var(--green)}.input.invalid{border-color:var(--red)}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>.input,.input-wrap>.select{flex:1}.input-wrap>.lead{position:absolute;left:11px;color:var(--muted);pointer-events:none}.input-wrap>.lead~.input,.input-wrap>.lead~.select{padding-left:36px}.input-wrap>.trail{position:absolute;right:11px;color:var(--muted)}.input-wrap>.trail.ok{color:var(--green);pointer-events:none}.input-wrap>.select~.trail.ok{right:32px}.input-wrap:has(>.trail)>.input{padding-right:34px}.hint{font-size:12px;color:var(--muted)}.hint.ok{color:var(--green-600);display:inline-flex;align-items:center;gap:4px}.hint.err{color:var(--red)}.counter{font-size:11px;color:var(--muted);text-align:right}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:17px;height:17px;cursor:pointer;margin:0}.check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px}.switch{position:relative;display:inline-block;width:40px;height:22px}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#cdd0db;border-radius:22px;transition:.2s;cursor:pointer}.switch span:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:before{transform:translate(18px)}.radio-card{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius);background:var(--primary-50);border:1px solid var(--primary-100);cursor:pointer}.dropzone{border:1.5px dashed var(--primary-300);border-radius:var(--radius);background:#fbfaff;padding:14px;text-align:center;cursor:pointer;transition:background .15s}.dropzone:hover,.dropzone.drag{background:var(--primary-50)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;line-height:1.4}.badge.green{background:var(--green-bg);color:var(--green-600)}.badge.amber{background:var(--amber-bg);color:var(--amber-700)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.purple{background:var(--primary-100);color:var(--primary)}.badge.gray{background:var(--gray-bg);color:var(--text-2)}.badge.teal{background:var(--teal-bg);color:var(--teal)}.badge.square{border-radius:6px}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--navy-active);color:#fff;font-size:11.5px;font-weight:700}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:600;font-size:12.5px;color:var(--text);background:#f3f4f8;padding:10px 12px;border-bottom:1px solid var(--border)}.table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover{background:#fafaff}.table tbody tr.selected{background:var(--primary-50)}.kv{display:grid;grid-template-columns:150px 14px 1fr;row-gap:8px;font-size:13.5px}.kv>.k{color:var(--text-2)}.kv>.v{color:var(--text);font-weight:500}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border)}.tab{padding:10px 14px;cursor:pointer;font-weight:500;color:var(--text-2);border:none;background:none;border-bottom:2.5px solid transparent;margin-bottom:-1px}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.chip{display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:8px;border:1px solid var(--border-strong);background:#fff;font-weight:500;cursor:pointer;white-space:nowrap}.chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.chip.pill{border-radius:999px}.alert{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--radius);font-size:13px}.alert.green{background:var(--green-bg);color:#14532d}.alert.amber{background:var(--amber-bg);color:#713f12}.alert.red{background:var(--red-bg);color:#7f1d1d}.alert.purple{background:var(--primary-50);color:var(--text);border:1px solid var(--primary-200)}.modal-backdrop{position:fixed;inset:0;background:#0f143c73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:14px;box-shadow:var(--shadow-lg);padding:24px 28px;width:420px;max-width:calc(100vw - 32px)}.toast-host{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:2000}.toast{display:flex;align-items:center;gap:10px;min-width:260px;max-width:420px;background:#11142d;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow-lg);font-size:13.5px;animation:toast-in .2s ease-out}.toast.success lucide-icon{color:#4ade80}.toast.error lucide-icon{color:#f87171}.toast.info lucide-icon{color:#a5b4fc}@keyframes toast-in{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}.action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px}.timeline{position:relative;display:flex;flex-direction:column;gap:14px}.tl-item{display:flex;gap:12px;position:relative}.tl-dot{width:18px;height:18px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;z-index:1;background:#fff;border:2px solid #c3c6d1}.tl-dot.done{background:var(--green);border-color:var(--green);color:#fff}.tl-dot.current{border-color:var(--primary)}.tl-item:not(:last-child):after{content:"";position:absolute;left:8px;top:20px;bottom:-14px;width:2px;background:#d6d8e1}.tl-item.done:not(:last-child):after{background:var(--green)}
