@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{height:100%;font-family:DM Sans,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--surface-bg);transition:background-color .2s ease}*{font-family:DM Sans,sans-serif}button,input,a{font-family:inherit}:focus:not(:focus-visible){outline:none}:root{--vivid-pink: #E32475;--pink: #E32475;--soft-pink: #FCABF6;--deep-violet: #33285C;--purple: #29203A;--text: #1a1230;--text-mid: #3d3560;--text-light: #59526e;--border: #ecddf3;--sidebar-width: 248px;--topbar-height: 68px;--surface-bg: #e4ddf1;--surface-solid: #ffffff;--surface-alt: #f1ecf9;--glass-1: rgba(255, 255, 255, .5);--glass-2: rgba(255, 255, 255, .65);--glass-3: rgba(255, 255, 255, .78);--glass-strong: rgba(255, 255, 255, .92);--glass-border: rgba(255, 255, 255, .95);--glass-shadow: rgba(180, 100, 200, .1);--glass-inset: rgba(255, 255, 255, .9);--surface-overlay: rgba(255, 255, 255, .88);--danger: #c0143c;--success-bg: #e8f8f0;--success-fg: #1a6a3e;--danger-bg: #ffeaea;--danger-fg: #c0143c;--info-bg: #eeedfe;--info-fg: #3c3489;--warn-bg: #fdf0e8;--warn-fg: #8a4a1a;--neutral-bg: #f0eef5;--neutral-fg: #59526e;--pink-accent: #c0186a}:root[data-theme=dark]{--text: #F9FAFB;--text-mid: #C0C7D2;--text-light: #9ca3af;--border: rgba(255, 255, 255, .12);--surface-bg: #111827;--surface-solid: #1F2937;--surface-alt: #374151;--glass-1: rgba(255, 255, 255, .05);--glass-2: rgba(255, 255, 255, .08);--glass-3: rgba(255, 255, 255, .11);--glass-strong: rgba(255, 255, 255, .16);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: rgba(0, 0, 0, .22);--glass-inset: rgba(255, 255, 255, .05);--surface-overlay: rgba(31, 41, 55, .94);--danger: #ff8fa8;--success-bg: rgba(52, 211, 153, .16);--success-fg: #6ee7b7;--danger-bg: rgba(255, 107, 139, .16);--danger-fg: #ff9db1;--info-bg: rgba(124, 111, 224, .2);--info-fg: #b9b1f5;--warn-bg: rgba(230, 126, 34, .18);--warn-fg: #f0b27a;--neutral-bg: rgba(255, 255, 255, .1);--neutral-fg: #C0C7D2;--pink-accent: #ff6fa3}.glass{background:var(--glass-1);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--glass-border);box-shadow:0 8px 32px var(--glass-shadow),0 1px 0 var(--glass-inset) inset;border-radius:20px}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.error-banner{background:#fff0f0;color:#c0392b;border:1px solid #f5c6c6;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:600;margin-bottom:16px;flex-shrink:0}.table-shell{flex:1;min-height:0;overflow-y:auto;background:var(--glass-3);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:20px;border:1px solid var(--glass-border);box-shadow:0 4px 24px var(--glass-shadow)}.table-shell::-webkit-scrollbar{width:5px}.table-shell::-webkit-scrollbar-thumb{background:#e3247540;border-radius:10px}.kpi-table{width:100%;border-collapse:collapse;font-size:13.5px}.kpi-table thead{position:sticky;top:0;z-index:2;background:var(--glass-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.kpi-table th{padding:14px 20px;text-align:left;font-size:11px;font-weight:700;color:var(--text-mid);text-transform:uppercase;letter-spacing:.07em;border-bottom:1.5px solid var(--border);white-space:nowrap}.kpi-table th.col-actions{text-align:right}.kpi-row{transition:background .15s}.kpi-row:hover{background:#e324751a}.kpi-table td{padding:14px 20px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.kpi-row:last-child td{border-bottom:none}.cell-name{font-weight:600;color:var(--text)}.cell-desc{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cell-actions{text-align:right}.action-btn{width:32px;height:32px;border-radius:999px;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:background .15s,color .15s,transform .12s;margin-left:5px}.btn-edit{background:#e8f4fd;color:#1a6fa8}.btn-edit:hover{background:#1a6fa8;color:#fff;transform:scale(1.08)}.btn-archive{background:#fff3e0;color:#95500e}.btn-archive:hover{background:#e67e22;color:#fff;transform:scale(1.08)}.btn-update{background:#eeedfe;color:#3c3489}.btn-update:hover{background:#3c3489;color:#fff;transform:scale(1.08)}.empty-row{text-align:center;padding:60px 20px!important;color:var(--text-light)}.empty-icon{font-size:36px;opacity:.25;display:block;margin-bottom:12px;color:var(--vivid-pink)}.empty-row p{margin:0;font-size:14px}.row-count{margin-top:10px;font-size:12px;color:var(--text-light);padding-left:4px;flex-shrink:0}.toolbar-row{display:flex;align-items:center;gap:8px;margin-bottom:18px;flex-shrink:0;flex-wrap:wrap}.search-wrap{position:relative;flex:1 1 180px;min-width:140px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-light);font-size:13px;opacity:.6;pointer-events:none}.search-input{width:100%;padding:8px 16px 8px 38px;border:2px solid var(--soft-pink);border-radius:50px;font-size:13px;color:var(--text);background:var(--surface-solid);outline:none;box-sizing:border-box;font-family:DM Sans,sans-serif;transition:border-color .2s}.search-input::placeholder{color:var(--text-light)}.search-input:focus{border-color:var(--vivid-pink)}.filter-select{flex:0 0 auto;padding:7px 32px 7px 14px;border:2px solid var(--soft-pink);border-radius:50px;background:var(--surface-solid);font-size:12px;font-weight:600;color:var(--text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%22292.4%22 height%3D%22292.4%22%3E%3Cpath fill%3D%22%2329203A%22 d%3D%22M287 69.4a17.6 17.6 0 0 0-13-5.4H18.4c-5 0-9.3 1.8-12.9 5.4A17.6 17.6 0 0 0 0 82.2c0 5 1.8 9.3 5.4 12.9l128 127.9c3.6 3.6 7.8 5.4 12.8 5.4s9.2-1.8 12.8-5.4L287 95c3.5-3.5 5.4-7.8 5.4-12.8 0-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 10px top 50%;background-size:9px auto;outline:none;font-family:DM Sans,sans-serif}:root[data-theme=dark] .filter-select{background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%22292.4%22 height%3D%22292.4%22%3E%3Cpath fill%3D%22%23F9FAFB%22 d%3D%22M287 69.4a17.6 17.6 0 0 0-13-5.4H18.4c-5 0-9.3 1.8-12.9 5.4A17.6 17.6 0 0 0 0 82.2c0 5 1.8 9.3 5.4 12.9l128 127.9c3.6 3.6 7.8 5.4 12.8 5.4s9.2-1.8 12.8-5.4L287 95c3.5-3.5 5.4-7.8 5.4-12.8 0-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E")}.btn-create{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;background:var(--vivid-pink);color:#fff;border:none;padding:8px 18px;border-radius:999px;font-weight:700;font-size:12px;white-space:nowrap;cursor:pointer;font-family:DM Sans,sans-serif;transition:opacity .2s;box-shadow:0 4px 14px #e3247547}.btn-create:hover{opacity:.88}.btn-archive-toggle{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1.5px solid var(--deep-violet);border-radius:999px;background:var(--surface-solid);font-size:12px;font-weight:600;color:var(--text);cursor:pointer;font-family:DM Sans,sans-serif;white-space:nowrap;transition:border-color .2s,background .2s,color .2s}.btn-archive-toggle:hover{border-color:var(--vivid-pink);color:var(--vivid-pink)}.btn-archive-toggle.active{background:var(--vivid-pink);color:#fff;border-color:var(--vivid-pink)}.modal-overlay{position:fixed;inset:0;background:#29203a52;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:400;padding:20px}.modal-card{background:var(--surface-overlay);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--glass-border);border-radius:26px;padding:32px 40px 28px;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);overflow-y:auto;position:relative;box-shadow:0 24px 64px #33285c24}.modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:var(--surface-alt);border:none;font-size:14px;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.modal-close:hover{background:var(--vivid-pink);color:#fff}.modal-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--vivid-pink),#33285C);display:flex;align-items:center;justify-content:center;margin-bottom:12px;box-shadow:0 4px 14px #e3247547}.modal-icon i{font-size:20px;color:#fff}.modal-title{font-size:20px;font-weight:800;margin:0 0 4px;color:var(--text)}.modal-sub{font-size:13px;color:var(--text-light);margin:0 0 1.25rem}.f-group{margin-bottom:12px;display:flex;flex-direction:column;gap:6px}.f-group label{display:block;font-size:12px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.05em}.f-group input,.f-group select,.f-group textarea{width:100%;padding:11px 16px;border:2px solid var(--soft-pink);border-radius:12px;font-size:13.5px;color:var(--text);background:var(--surface-solid);outline:none;box-sizing:border-box;font-family:DM Sans,sans-serif;transition:border-color .2s}.f-group input:focus,.f-group select:focus,.f-group textarea:focus{border-color:var(--vivid-pink)}.f-group select{appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%22292.4%22 height%3D%22292.4%22%3E%3Cpath fill%3D%22%2329203A%22 d%3D%22M287 69.4a17.6 17.6 0 0 0-13-5.4H18.4c-5 0-9.3 1.8-12.9 5.4A17.6 17.6 0 0 0 0 82.2c0 5 1.8 9.3 5.4 12.9l128 127.9c3.6 3.6 7.8 5.4 12.8 5.4s9.2-1.8 12.8-5.4L287 95c3.5-3.5 5.4-7.8 5.4-12.8 0-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 14px top 50%;background-size:9px auto;cursor:pointer;padding-right:36px}.f-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.field-error{font-size:11.5px;color:var(--vivid-pink);font-weight:500}.input-error{border-color:#e3247580!important}.has-error input,.has-error select{border-color:#e3247580}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.btn-cancel{padding:11px 24px;border-radius:999px;border:1.5px solid var(--deep-violet);background:var(--surface-solid);color:var(--text);font-weight:600;font-size:13px;cursor:pointer;font-family:DM Sans,sans-serif;transition:border-color .15s,background .15s}.btn-cancel:hover{background:var(--glass-2)}.btn-save{padding:11px 28px;border-radius:999px;border:none;background:var(--vivid-pink);color:#fff;font-weight:700;font-size:13px;cursor:pointer;font-family:DM Sans,sans-serif;transition:opacity .2s;box-shadow:0 4px 14px #e3247547}.btn-save:hover:not(:disabled){opacity:.88}.btn-save:disabled{opacity:.45;cursor:not-allowed}.required{color:var(--vivid-pink)}.checkbox-group{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.doc-upload-wrap{display:flex;align-items:center;gap:12px}.doc-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1.5px dashed var(--border);border-radius:10px;font-size:13px;color:var(--vivid-pink);font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .2s}.doc-upload-btn:hover{border-color:var(--vivid-pink);background:var(--glass-2)}.doc-hint{font-size:11px;color:var(--text-light)}.date-input-wrap{position:relative;display:flex;align-items:center}.date-icon{position:absolute;left:12px;color:var(--text);font-size:13px;pointer-events:none;z-index:1}.date-input-wrap input[type=date]{padding-left:36px!important;width:100%;box-sizing:border-box;cursor:pointer}.date-input-wrap input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;filter:invert(40%) sepia(60%) saturate(500%) hue-rotate(240deg)}.success-screen{position:fixed;inset:0;background:#29203ab8;backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);display:flex;align-items:center;justify-content:center;z-index:500;overflow:hidden}.confetti-piece{position:fixed;left:50%;top:50%;border-radius:3px;pointer-events:none;transform-origin:center;animation:confettiBurst 1.4s cubic-bezier(.22,1,.36,1) forwards}@keyframes confettiBurst{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}60%{opacity:1}to{transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) rotate(var(--rot)) scale(.6);opacity:0}}.success-card{background:var(--glass-strong);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1.5px solid var(--glass-border);border-radius:32px;padding:54px 64px 48px;text-align:center;box-shadow:0 24px 64px #29203a47,0 4px 24px #e3247524;z-index:510;position:relative;max-width:460px;width:90%;animation:successCardIn .45s cubic-bezier(.22,1,.36,1) both}@keyframes successCardIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.success-icon{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--vivid-pink),#33285C);display:flex;align-items:center;justify-content:center;margin:0 auto 24px;box-shadow:0 8px 28px #e3247561}.success-icon i{font-size:28px;color:#fff}.success-card h2{font-size:19px;font-weight:800;color:var(--text);margin:0 0 32px;line-height:1.45}.btn-return{background:var(--deep-violet);color:#fff;border:none;padding:13px 44px;border-radius:999px;font-weight:700;font-size:14px;font-family:DM Sans,sans-serif;cursor:pointer;transition:opacity .2s,transform .2s}.btn-return:hover{opacity:.88;transform:translateY(-1px)}.success-close-btn{position:fixed;top:24px;right:28px;z-index:520;width:32px;height:32px;border-radius:50%;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.success-close-btn:hover{background:var(--vivid-pink);border-color:var(--vivid-pink)}.drawer-backdrop{position:fixed;inset:0;background:#29203a40;z-index:200;opacity:0;transition:opacity .3s;pointer-events:none}.drawer-backdrop.visible{opacity:1;pointer-events:all}.side-drawer{position:fixed;top:0;right:0;width:380px;max-width:95vw;height:100%;background:var(--glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-left:1px solid var(--glass-border);box-shadow:-12px 0 48px #0000001f;z-index:300;display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s cubic-bezier(.22,1,.36,1)}.side-drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;gap:12px;padding:24px 24px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.drawer-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--vivid-pink),#33285C);display:flex;align-items:center;justify-content:center;flex-shrink:0}.drawer-icon i{font-size:18px;color:#fff}.drawer-header-text{flex:1;min-width:0}.drawer-title{font-size:16px;font-weight:700;color:var(--text);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-close{width:30px;height:30px;border-radius:50%;background:var(--surface-alt);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text);font-size:13px;flex-shrink:0;transition:background .15s,color .15s}.drawer-close:hover{background:var(--vivid-pink);color:#fff}.drawer-body{flex:1;overflow-y:auto;padding:20px 24px}.detail-row{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-top:1px solid var(--border)}.detail-row:first-child{border-top:none;padding-top:0}.detail-label{font-size:11px;font-weight:700;color:var(--text-mid);text-transform:uppercase;letter-spacing:.07em}.detail-value{font-size:14px;color:var(--text);font-weight:500}.detail-desc{font-weight:400;line-height:1.6;color:var(--text)}.drawer-footer{display:flex;gap:10px;padding:16px 24px;border-top:1px solid var(--border);flex-shrink:0}.btn-drawer-edit{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;background:var(--vivid-pink);color:#fff;border:none;border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;font-family:DM Sans,sans-serif;transition:opacity .2s}.btn-drawer-edit:hover{opacity:.88}.btn-drawer-close{flex:1;display:flex;align-items:center;justify-content:center;padding:11px;background:var(--soft-pink);color:var(--deep-violet);border:none;border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;font-family:DM Sans,sans-serif;transition:background .15s}.btn-drawer-close:hover{background:#eec8e8}.cat-pill{display:inline-block;padding:3px 10px;border-radius:50px;font-size:11px;font-weight:700;letter-spacing:.03em}.cat-technical{background:#e8f4fd;color:#1a6fa8}.cat-soft{background:#fde8f2;color:#c0136e}.cat-leadership{background:#eeedfe;color:#3c3489}.cat-domain{background:#e8fdf0;color:#157a3f}.cat-competency{background:#f3e8ff;color:#6b21a8}.cat-default{background:#f0eef5;color:#59526e}:root[data-theme=dark] .cat-technical{background:#38bdf829;color:#7dd3fc}:root[data-theme=dark] .cat-soft{background:#ff6b8b29;color:#ff9db1}:root[data-theme=dark] .cat-leadership{background:#7c6fe033;color:#b9b1f5}:root[data-theme=dark] .cat-domain{background:#34d39929;color:#6ee7b7}:root[data-theme=dark] .cat-competency{background:#c084fc33;color:#d8b4fe}:root[data-theme=dark] .cat-default{background:#ffffff1a;color:#c0c7d2}.unit-chip{display:inline-block;padding:2px 9px;background:var(--surface-alt);border-radius:50px;font-size:11.5px;font-weight:600;color:var(--text-mid)}.freq-badge{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--text-mid);font-weight:500}.freq-badge i{color:var(--vivid-pink);font-size:11px}.status-badge{display:inline-block;padding:3px 10px;border-radius:50px;font-size:11px;font-weight:700}.status-active{background:#e6f9f0;color:#157a3f}.status-inactive{background:#fde8ef;color:#c0136e}.status-retired{background:#f5f5f5;color:#888}.kpi-page{flex:1;display:flex;flex-direction:column;min-height:0;padding:36px 40px 20px;overflow:hidden;background:var(--surface-bg)}.page-header{text-align:center;margin-bottom:24px;flex-shrink:0}.page-title{font-size:34px;font-weight:800;margin:0 0 6px;line-height:1}.purple-text{color:var(--text)}.pink-text{color:var(--vivid-pink)}.page-sub{font-size:13px;color:var(--text-light);margin:0}@media(max-width:767px){.kpi-page{padding:20px 16px 16px}.page-title{font-size:26px}.toolbar-row{gap:8px}.search-wrap{flex:1 1 100%;order:-1}.filter-select{flex:1 1 calc(50% - 4px)}.btn-create,.btn-archive-toggle{flex:1 1 100%;justify-content:center}.table-shell{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;border-radius:0;overflow-y:visible}.kpi-table thead{display:none}.kpi-table,.kpi-table tbody,.kpi-table tr{display:block;width:100%}.kpi-table tr.kpi-row{background:var(--glass-3);border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 4px 16px var(--glass-shadow);padding:14px 16px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}.kpi-table tr.kpi-row:hover{background:#e324751a}.kpi-table td{display:flex;align-items:center;justify-content:space-between;padding:4px 0;border:none;font-size:13px}.kpi-table td:before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);flex-shrink:0;margin-right:8px}.kpi-table td.cell-name{font-size:15px;font-weight:700;justify-content:flex-start;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:2px}.kpi-table td.cell-name:before{display:none}.kpi-table td.cell-actions{justify-content:flex-end;border-top:1px solid var(--border);padding-top:10px}.kpi-table td.cell-actions:before{display:none}.kpi-table td.cell-desc{display:none}.kpi-table tr.empty-row{display:table-row}.f-row{grid-template-columns:1fr}.modal-card{padding:24px 20px 20px;border-radius:20px}.success-card{padding:40px 28px 36px}}@media(min-width:768px)and (max-width:1024px){.kpi-page{padding:28px 28px 20px}.page-title{font-size:30px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.download-pdf-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border:none;border-radius:999px;background:#33285c;color:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s ease,transform .1s ease}.download-pdf-btn:hover:not(:disabled){background:#e32475;transform:translateY(-1px)}.download-pdf-btn:disabled{opacity:.6;cursor:not-allowed}.custom-select-wrap{position:relative;-webkit-user-select:none;user-select:none}.custom-select-btn{display:flex;align-items:center;gap:8px;padding:9px 16px;border:1.5px solid var(--border);border-radius:50px;background:var(--surface-solid);font-size:13px;font-weight:600;font-family:DM Sans,sans-serif;color:var(--text);cursor:pointer;white-space:nowrap;transition:border-color .2s,box-shadow .2s;min-width:150px;justify-content:space-between}.custom-select-btn:hover{border-color:var(--vivid-pink)}.custom-select-wrap.open .custom-select-btn{border-color:var(--vivid-pink);box-shadow:0 0 0 3px #e3247526}.drop-arrow{font-size:11px;color:var(--text-light);transition:transform .2s}.custom-select-wrap.open .drop-arrow{transform:rotate(180deg)}.custom-select-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;background:var(--surface-solid);border:1.5px solid var(--border);border-radius:14px;box-shadow:0 8px 24px #5032781f;overflow:hidden;z-index:100;animation:ksDropIn .15s ease}@keyframes ksDropIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.custom-select-item{padding:10px 16px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--text);cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px}.custom-select-item:hover{background:var(--glass-2)}.custom-select-item.selected{background:var(--glass-2);color:var(--vivid-pink);font-weight:700}.toolbar-card{position:relative;z-index:20}.cycle-list{position:relative;z-index:1}.custom-select-menu{z-index:200}.val-source-wrap{min-width:190px}.val-source-btn{width:100%}
