.dialog-overlay[data-v-89483ecd]{z-index:1200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1411286b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog-card[data-v-89483ecd]{text-align:left;background:#fff;border-radius:16px;width:min(420px,100%);padding:26px 24px 20px;box-shadow:0 30px 70px -30px #1411288c}.dialog-icon[data-v-89483ecd]{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:14px;display:inline-flex}.variant-info[data-v-89483ecd]{color:var(--od-brand,#4438a8);background:#efeafb}.variant-success[data-v-89483ecd]{color:#1b7a46;background:#e3f3e9}.variant-warning[data-v-89483ecd]{color:#8a5a00;background:#fdf0dc}.variant-danger[data-v-89483ecd]{color:#b3261e;background:#fce9e7}.dialog-title[data-v-89483ecd]{color:var(--od-ink,#25213f);margin:0 0 8px;font-size:18px}.dialog-message[data-v-89483ecd]{color:var(--md-on-surface-variant,#5b5573);white-space:pre-line;margin:0 0 6px;font-size:14px;line-height:1.6}.dialog-field[data-v-89483ecd]{margin-top:14px}.dialog-field label[data-v-89483ecd]{color:var(--md-on-surface-variant,#5b5573);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.dialog-actions[data-v-89483ecd]{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.btn-danger-solid[data-v-89483ecd]{background:var(--md-error,#b3261e);color:#fff}.btn-danger-solid[data-v-89483ecd]:hover:not(:disabled){background:#96201a}.dialog-enter-active[data-v-89483ecd],.dialog-leave-active[data-v-89483ecd]{transition:opacity .16s}.dialog-enter-active .dialog-card[data-v-89483ecd],.dialog-leave-active .dialog-card[data-v-89483ecd]{transition:transform .18s,opacity .18s}.dialog-enter-from[data-v-89483ecd],.dialog-leave-to[data-v-89483ecd]{opacity:0}.dialog-enter-from .dialog-card[data-v-89483ecd],.dialog-leave-to .dialog-card[data-v-89483ecd]{opacity:0;transform:translateY(8px)scale(.98)}:root{--od-brand:#4438a8;--od-ink:#25213f;--od-lavender:#ddd6f7;--od-surface:#faf7f0;--od-accent:#a99ade;--od-white:#fff;--md-primary:var(--od-brand);--md-on-primary:var(--od-white);--md-primary-container:var(--od-lavender);--md-on-primary-container:var(--od-ink);--md-secondary:var(--od-accent);--md-secondary-container:var(--od-lavender);--md-on-secondary-container:var(--od-ink);--md-surface:var(--od-surface);--md-card:var(--od-white);--md-surface-container:#f4eff5;--md-surface-container-high:#ede7f6;--md-surface-container-low:#fbf9f4;--md-on-surface:var(--od-ink);--md-on-surface-variant:#5b5573;--md-outline:#9c95b5;--md-outline-variant:#e6e1f2;--md-error:#b3261e;--md-on-error:#fff;--md-error-container:#fce9e7;--md-on-error-container:#410e0b;--md-success:#1b7a46;--md-success-container:#e3f3e9;--md-warning:#8a5a00;--md-warning-container:#fdf0dc;--md-elev-1:0 1px 2px #0000004d, 0 1px 3px 1px #00000026;--md-elev-2:0 1px 2px #0000004d, 0 2px 6px 2px #00000026;--md-elev-3:0 4px 8px 3px #00000026, 0 1px 3px #0000004d;--radius:16px;--radius-sm:8px;--radius-full:999px;--font-heading:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--color-primary:var(--md-primary);--color-primary-dark:#372c8c;--color-primary-light:var(--md-primary-container);--color-surface:var(--md-card);--color-bg:var(--md-surface);--color-bg-hover:var(--md-surface-container-high);--color-border:var(--md-outline-variant);--color-text:var(--md-on-surface);--color-muted:var(--md-on-surface-variant);--color-danger:var(--md-error);--color-success:var(--md-success);--color-warning:var(--md-warning);--shadow-sm:var(--md-elev-1);--shadow-md:var(--md-elev-2)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--md-surface);color:var(--md-on-surface);margin:0;font-size:15px;line-height:1.5}h1,h2,h3,h4{font-weight:600;line-height:1.25;font-family:var(--font-heading);margin:0 0 12px}a{color:var(--md-primary);text-decoration:none}a:hover{text-decoration:underline}.btn{border-radius:var(--radius-sm);font-size:14px;font-weight:500;font-family:var(--font);letter-spacing:.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 20px;text-decoration:none;transition:background .18s,box-shadow .18s,transform 50ms;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn-primary{background:var(--md-primary);color:var(--md-on-primary);box-shadow:var(--md-elev-1)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--md-elev-2)}.btn-secondary{background:var(--md-secondary-container);color:var(--md-on-secondary-container)}.btn-secondary:hover:not(:disabled){background:#cfc4f2}.btn-danger{color:var(--md-error);border:1px solid var(--md-outline-variant);background:0 0}.btn-danger:hover:not(:disabled){background:var(--md-error-container)}.btn-success{background:var(--md-success);color:#fff}.btn-success:hover:not(:disabled){background:#16653a}.btn-warning{background:var(--md-warning-container);color:var(--md-warning);border:1px solid #efd9b4}.btn-warning:hover:not(:disabled){background:#f8e7cb}.btn-ghost{color:var(--md-primary);background:0 0}.btn-sm{min-height:32px;padding:6px 14px;font-size:13px}.btn-block{width:100%}.form-group{margin-bottom:18px}.form-group label{color:var(--md-on-surface-variant);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-group .hint{color:var(--md-on-surface-variant);margin-top:4px;font-size:12px}.input,.select,.textarea{border:1px solid var(--md-outline-variant);border-radius:var(--radius);width:100%;font-size:15px;font-family:var(--font);background:var(--md-surface);color:var(--md-on-surface);-webkit-tap-highlight-color:transparent;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--md-primary);outline:none;box-shadow:0 0 0 2px #00696e33}.textarea{resize:vertical;min-height:96px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{border-collapse:collapse;background:var(--md-surface);width:100%}.table th{text-align:left;background:var(--md-surface-container);text-transform:uppercase;letter-spacing:.05em;color:var(--md-on-surface-variant);border-bottom:1px solid var(--md-outline-variant);white-space:nowrap;padding:12px 14px;font-size:12px}.table td{border-bottom:1px solid var(--md-outline-variant);padding:12px 14px;font-size:14px}.table tbody tr{transition:background .12s}@media (max-width:767px),(hover:none) and (pointer:coarse){.table-scroll{margin:0;padding:0;overflow:visible}.table{min-width:0}.table thead{display:none}.table,.table tbody,.table tr,.table td{width:100%;display:block}.table tbody{flex-direction:column;gap:12px;display:flex}.table tr{background:var(--md-surface);border:1px solid var(--md-outline-variant);box-shadow:var(--md-elev-1);border-radius:12px;margin:0;padding:4px 14px}.table td{border:none;border-bottom:1px solid var(--md-outline-variant);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 14px;padding:9px 0;font-size:14px;display:flex}.table td:last-child{border-bottom:none}.table td>.flex{flex-wrap:wrap;min-width:0}.table td:before{content:attr(data-label);color:var(--md-on-surface-variant);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;font-size:12px;font-weight:600}.table td[data-label=""]{justify-content:flex-end}.table td[data-label=""]:before{display:none}.table td[colspan]{padding:12px 0;display:block}.table td[colspan]:before{display:none}.table td[colspan]{border-bottom:none}.table td .input,.table td .select,.table td textarea{min-width:0;max-width:100%}}.list-cards{flex-direction:column;gap:10px;display:flex}.list-card{background:var(--md-surface);border:1px solid var(--md-outline-variant);box-shadow:var(--md-elev-1);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;transition:box-shadow .15s,transform .15s;display:flex}.list-card:hover{box-shadow:var(--md-elev-2);transform:translateY(-1px)}.list-card-main{flex-direction:column;gap:3px;min-width:0;display:flex}.list-card-main .text-sm{font-size:13px}.list-card-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 18px;display:grid}.info-grid>div{flex-direction:column;gap:2px;font-size:14px;display:flex}.info-label{text-transform:uppercase;letter-spacing:.05em;color:var(--md-on-surface-variant);font-size:11px;font-weight:600}.card{background:var(--md-card);border:1px solid var(--md-outline-variant);border-radius:var(--radius);box-shadow:var(--md-elev-1);padding:20px}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.card-title{margin:0;font-size:17px;font-weight:600}.badge{border-radius:var(--radius-full);padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.badge-success{color:#0d5522;background:#d3f0dc}.badge-warning{color:#7a5400;background:#ffedd1}.badge-danger{background:var(--md-error-container);color:var(--md-on-error-container)}.badge-info{color:#005197;background:#d3e9ff}.badge-muted{background:var(--md-surface-container);color:var(--md-on-surface-variant)}.modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--md-surface);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--md-elev-3);border-radius:24px;padding:24px;animation:.2s slideUp;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{margin:0;font-size:18px}.modal{background:var(--md-surface);width:100%;max-width:680px;max-height:90vh;box-shadow:var(--md-elev-3);border-radius:24px;padding:24px;animation:.2s slideUp;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:24px;display:grid}.stat-card{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--radius);box-shadow:var(--md-elev-1);flex-direction:column;justify-content:space-between;gap:6px;min-height:96px;padding:16px 18px;display:flex}.stat-card .stat-label{color:var(--md-on-surface-variant);font-size:12px;font-weight:500;line-height:1.35;display:block}.stat-card .stat-value{font-family:var(--font-heading);color:var(--md-primary);white-space:nowrap;font-size:24px;font-weight:700;line-height:1.15;display:block}.pagination{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.page-btn{border:1px solid var(--md-outline-variant);background:var(--md-surface);border-radius:var(--radius-full);cursor:pointer;font-family:var(--font);min-height:36px;padding:8px 14px}.page-btn.active{background:var(--md-primary);color:var(--md-on-primary);border-color:var(--md-primary)}.page-btn:disabled{opacity:.5;cursor:default}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.ml-2{margin-left:8px}.w-full{width:100%}.text-muted{color:var(--md-on-surface-variant)}.text-sm{font-size:13px}.text-lg{font-size:17px}.font-bold{font-weight:600}.alert{border-radius:var(--radius);margin-bottom:16px;padding:14px 16px;font-size:14px}.alert-danger{background:var(--md-error-container);color:var(--md-on-error-container)}.alert-success{color:#0d5522;background:#d3f0dc}@media (max-width:767px){body{font-size:15px}.card{border-radius:12px;padding:16px}.card-header{flex-direction:column;align-items:stretch}.card-header .btn{width:100%}.form-row{grid-template-columns:1fr;gap:0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:14px}.stat-card .stat-value{font-size:22px}.btn{min-height:44px}.btn-sm{min-height:36px}.modal-overlay{align-items:flex-end;padding:12px}.modal-card{border-radius:20px 20px 0 0;max-height:92vh;padding:20px 16px 24px}.pagination{justify-content:center}}@media (max-width:380px){.stats-grid{grid-template-columns:1fr}}.card .card{box-shadow:none;border:none;border-top:1px solid var(--md-outline-variant);background:0 0;border-radius:0;margin:18px 0 0;padding:16px 0 0}.card .card>.card-title,.card .card>.card-header .card-title{margin:0 0 12px}.card .card .card-header{padding:0}.card .stat-card{box-shadow:none;background:0 0;border:none;border-radius:0;padding:4px 0}.card .list-card{box-shadow:none;border:none;border-bottom:1px solid var(--md-outline-variant);background:0 0;border-radius:0;padding:12px 0}.card .list-card:hover{box-shadow:none;transform:none}.card .list-cards .list-card:last-child{border-bottom:none}.modal-overlay .card,.modal-overlay .stat-card,.modal-overlay .list-card{background:var(--md-surface);border:1px solid var(--md-outline-variant);box-shadow:var(--md-elev-1);border-radius:var(--radius);margin:0;padding:18px}.modal-overlay .list-card{border-bottom:1px solid var(--md-outline-variant);padding:14px 16px}.modal-overlay .stat-card{padding:14px}@media (hover:none) and (pointer:coarse){input,select,textarea{font-size:16px!important}}.card.dialog-form{z-index:1100;border:1px solid var(--md-outline-variant);border-top:1px solid var(--md-outline-variant);background:#fff;border-radius:16px;width:min(720px,94vw);max-height:90vh;margin:0;padding:22px 24px;animation:.16s dialog-form-in;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #14112873,0 30px 70px -30px #1411288c}@keyframes dialog-form-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}:root{--elev-soft:0 1px 2px #25213f0d, 0 2px 8px #25213f0d;--elev-hover:0 2px 4px #25213f0f, 0 8px 20px #25213f14;--elev-float:0 24px 60px -24px #25213f59;--ring:0 0 0 3px #4438a829;--field-h:40px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}body{-webkit-font-smoothing:antialiased;font-size:14.5px}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--od-brand);outline-offset:2px;border-radius:8px}.btn{min-height:var(--field-h);letter-spacing:.01em;border-radius:10px;font-weight:600;transition:background .15s,box-shadow .15s,transform 60ms,border-color .15s}.btn-sm{border-radius:8px;min-height:32px;font-size:12.5px}.btn-ghost:hover:not(:disabled){background:var(--md-surface-container)}.btn-secondary{border:1px solid var(--md-outline-variant);color:var(--md-on-surface);background:#fff}.btn-secondary:hover:not(:disabled){border-color:var(--od-accent);box-shadow:var(--elev-soft);background:#fcfaff}.input,.select,.textarea{min-height:var(--field-h);border-color:var(--md-outline-variant);border-radius:10px;transition:border-color .15s,box-shadow .15s,background .15s}.input:hover:not(:disabled),.select:hover:not(:disabled),.textarea:hover:not(:disabled){border-color:#cfc7e6}.input:focus,.select:focus,.textarea:focus{border-color:var(--od-brand);box-shadow:var(--ring);outline:none}.form-group label{color:var(--md-on-surface-variant);letter-spacing:.01em;margin-bottom:6px;font-size:12.5px;font-weight:600}.card{border-color:var(--md-outline-variant);box-shadow:var(--elev-soft);border-radius:16px}.card-header{border-bottom:1px solid var(--md-outline-variant);gap:12px;padding:16px 20px}.card-title{letter-spacing:-.01em;font-size:16px;font-weight:700}.card>form,.card>.table-scroll{padding:4px 0}.card>h2.card-title,.card>h3.card-title{margin-bottom:12px;padding:18px 20px 0}.table-scroll{border:1px solid var(--md-outline-variant);background:#fff;border-radius:12px}.table{border-collapse:separate;border-spacing:0}.table thead th{z-index:2;background:var(--md-surface-container-low,#fbf9f4);text-transform:uppercase;letter-spacing:.06em;color:var(--md-on-surface-variant);border-bottom:1px solid var(--md-outline-variant);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:700;position:sticky;top:0}.table tbody td{border-bottom:1px solid var(--md-outline-variant);vertical-align:middle;padding:11px 14px}.table tbody tr:hover{background:#faf8fe}.table tbody tr:last-child td{border-bottom:0}.table td.actions{white-space:nowrap}.table td.actions .btn{min-height:30px}.badge{border-radius:var(--radius-full);letter-spacing:.01em;padding:3px 10px;font-size:11.5px;font-weight:600}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-head h1{letter-spacing:-.02em;margin:0 0 3px;font-size:22px;line-height:1.25}.page-head p{color:var(--md-on-surface-variant);margin:0;font-size:13.5px}*{scrollbar-width:thin;scrollbar-color:#d8d1ea transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d8d1ea padding-box content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#c3b9e0 padding-box content-box}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.toolbar .input{flex:260px}.toolbar .btn{flex:none}
