@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap'); :root{--color-bg:#f5f5f5;--color-surface:#efefef;--color-surface-raised:#ffffff;--color-overlay:rgba(0, 0, 0, 0.5);--color-border:rgba(0, 0, 0, 0.12);--color-border-subtle:rgba(0, 0, 0, 0.08);--color-text:rgba(0, 0, 0, 0.87);--color-text-secondary:rgba(0, 0, 0, 0.54);--color-text-body:rgba(0, 0, 0, 0.74);--color-text-muted:rgba(0, 0, 0, 0.38);--color-text-disabled:rgba(0, 0, 0, 0.26);--color-primary:#1d70a1;--color-primary-hover:rgba(29, 112, 161, 0.08);--color-primary-subtle:rgba(29, 112, 161, 0.04);--color-primary-text:#ffffff;--color-white:#ffffff;--color-white-12:rgba(255, 255, 255, 0.12);--color-white-15:rgba(255, 255, 255, 0.15);--color-white-42:rgba(255, 255, 255, 0.42);--color-black-12:rgba(0, 0, 0, 0.12);--color-black-06:rgba(0, 0, 0, 0.06);--color-status-validated-bg:#2e7d32;--color-status-validated-text:#ffffff;--color-status-draft-bg:#1d70a1;--color-status-draft-text:#ffffff;--color-status-pending-bg:#757575;--color-status-pending-text:#ffffff;--color-status-rejected-bg:#c62828;--color-status-rejected-text:#ffffff;--color-status-edited-bg:#e65100;--color-status-edited-text:#ffffff;--font-family:'Poppins', sans-serif;--text-h1-size:34px;--text-h2-size:24px;--text-h3-size:20px;--text-body1-size:16px;--text-body2-size:14px;--text-caption-size:12px;--text-button-size:14px;--text-h1-lh:1.235;--text-h3-lh:1.6;--text-body1-lh:1.5;--text-body2-lh:1.43;--text-subtitle2-lh:1.57;--text-caption-lh:1.66;--text-button-lh:24px;--text-h1-ls:0.25px;--text-h3-ls:0.15px;--text-body1-ls:0.15px;--text-body2-ls:0.15px;--text-subtitle2-ls:0.1px;--text-caption-ls:0.4px;--text-button-ls:0.4px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-xs:4px;--radius-sm:8px;--radius-md:15px;--radius-pill:20px;--radius-circle:9999px;--icon-size-sm:16px;--icon-size-md:20px;--icon-size-lg:24px;--icon-size-xl:32px;--shadow-1:0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14),
    0px 1px 3px 0px rgba(0, 0, 0, 0.12);--shadow-2:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14),
    0px 1px 5px 0px rgba(0, 0, 0, 0.12);--sidebar-width:260px;--topbar-height:78px;--transition:all 0.15s ease;--transition-fast:all 0.1s ease}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-family);font-size:var(--text-body2-size);font-weight:400;line-height:var(--text-body2-lh);letter-spacing:var(--text-body2-ls);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.text-h1{font-size:var(--text-h1-size);font-weight:700;line-height:var(--text-h1-lh);letter-spacing:var(--text-h1-ls);color:var(--color-text)}.text-h3{font-size:var(--text-h3-size);font-weight:500;line-height:var(--text-h3-lh);letter-spacing:var(--text-h3-ls);color:var(--color-text)}.text-body1{font-size:var(--text-body1-size);font-weight:400;line-height:var(--text-body1-lh);letter-spacing:var(--text-body1-ls)}.text-body2{font-size:var(--text-body2-size);font-weight:400;line-height:var(--text-body2-lh);letter-spacing:var(--text-body2-ls)}.text-subtitle2{font-size:var(--text-body2-size);font-weight:500;line-height:var(--text-subtitle2-lh);letter-spacing:var(--text-subtitle2-ls)}.text-caption{font-size:var(--text-caption-size);font-weight:400;line-height:var(--text-caption-lh);letter-spacing:var(--text-caption-ls)}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-primary{color:var(--color-primary)}.app-shell{display:flex;height:100vh;overflow:hidden;background-color:var(--color-bg)}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.app-content{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-6)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-family);font-size:var(--text-button-size);font-weight:500;line-height:var(--text-button-lh);letter-spacing:var(--text-button-ls);text-transform:uppercase;border:none;border-radius:var(--radius-xs);cursor:pointer;transition:var(--transition);white-space:nowrap;text-decoration:none}.btn-primary{background-color:var(--color-primary);color:var(--color-primary-text);padding:8px 22px;box-shadow:var(--shadow-2)}.btn-primary:hover{background-color:#1a639b;box-shadow:var(--shadow-2)}.btn-outlined{background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary);padding:8px 22px}.btn-outlined:hover{background-color:var(--color-primary-subtle)}.btn-text{background-color:transparent;color:var(--color-primary);padding:6px 8px}.btn-text:hover{background-color:var(--color-primary-subtle)}.btn-sm{padding:4px 10px;font-size:13px}.btn-lg{padding:8px 22px;font-size:15px;letter-spacing:0.46px}.btn:disabled,.btn[disabled]{opacity:0.38;cursor:not-allowed;pointer-events:none}.badge{display:inline-flex;align-items:center;padding:4px 6.5px;border-radius:var(--radius-pill);font-size:var(--text-caption-size);font-weight:500;letter-spacing:0.14px;line-height:12px;white-space:nowrap}.badge-primary{background-color:var(--color-primary);color:var(--color-white)}.badge-validated{background-color:var(--color-status-validated-bg);color:var(--color-status-validated-text)}.badge-draft{background-color:var(--color-status-draft-bg);color:var(--color-status-draft-text)}.badge-pending{background-color:var(--color-status-pending-bg);color:var(--color-status-pending-text)}.badge-rejected{background-color:var(--color-status-rejected-bg);color:var(--color-status-rejected-text)}.badge-edited{background-color:var(--color-status-edited-bg);color:var(--color-status-edited-text)}.form-label{display:block;font-size:var(--text-caption-size);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-1)}.form-input,.form-select,.form-textarea{width:100%;background-color:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;font-family:var(--font-family);font-size:var(--text-body1-size);font-weight:400;color:var(--color-text);line-height:var(--text-body1-lh);letter-spacing:var(--text-body1-ls);transition:var(--transition);outline:none}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:var(--color-text-muted);opacity:0.6}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted);opacity:0.6}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary)}.form-textarea{resize:vertical;min-height:96px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-error{font-size:var(--text-caption-size);color:var(--color-status-rejected-bg);margin-top:var(--space-1)}.form-checkbox{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;border-radius:var(--radius-xs);transition:var(--transition)}.form-checkbox:hover{background-color:var(--color-white-12)}.form-checkbox input[type='checkbox']{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.card{background-color:var(--color-surface);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-1)}.divider{height:1px;background-color:var(--color-white-12);width:100%}.spinner{width:24px;height:24px;border:2px solid var(--color-white-15);border-top-color:var(--color-primary);border-radius:50%;animation:spin 0.7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress-bar{position:relative;height:4px;border-radius:var(--radius-sm);background-color:var(--color-primary);opacity:0.6}.progress-bar__fill{position:absolute;top:0;left:0;height:100%;background-color:var(--color-primary);opacity:1;border-radius:var(--radius-sm);transition:width 0.3s ease}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);transition:var(--transition);cursor:pointer}.list-item:hover{background-color:var(--color-white-12)}.list-item__icon{flex-shrink:0;width:24px;height:24px;color:var(--color-text-secondary)}.list-item__content{flex:1;min-width:0}.list-item__title{font-size:var(--text-body2-size);font-weight:400;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item__subtitle{font-size:var(--text-caption-size);color:var(--color-text-secondary);margin-top:2px}.page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0}.page-title{font-size:var(--text-h1-size);font-weight:700;line-height:var(--text-h1-lh);letter-spacing:var(--text-h1-ls);color:var(--color-text)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-muted)}.modal-overlay{position:fixed;inset:0;background-color:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background-color:var(--color-surface);border-radius:var(--radius-xs);box-shadow:var(--shadow-2);width:751px;max-width:calc(100vw - var(--space-8));max-height:calc(100vh - var(--space-8));display:flex;flex-direction:column;overflow:hidden}.modal__header{padding:var(--space-5) var(--space-6);flex-shrink:0}.modal__title{font-size:var(--text-h3-size);font-weight:500;color:var(--color-text);line-height:var(--text-h3-lh)}.modal__subtitle{font-size:var(--text-caption-size);color:var(--color-text-secondary);margin-top:2px}.modal__body{flex:1;overflow-y:auto;padding:0 var(--space-6) var(--space-4)}.modal__footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);flex-shrink:0}.stepper{display:flex;align-items:center;gap:0}.stepper__step{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-body2-size);font-weight:500;color:var(--color-text-muted)}.stepper__step--active{color:var(--color-text)}.stepper__step--done{color:var(--color-primary)}.stepper__circle{width:24px;height:24px;border-radius:50%;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:var(--text-caption-size);font-weight:500;flex-shrink:0}.stepper__step--active .stepper__circle{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.stepper__step--done .stepper__circle{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.stepper__connector{flex:1;height:1px;background-color:var(--color-border);margin:0 var(--space-4);min-width:60px}@media (max-width: 768px){:root{--sidebar-width:0px}.app-shell{flex-direction:column}.modal{width:100%;max-width:100%;border-radius:var(--radius-md) var(--radius-md) 0 0;max-height:90vh;margin-top:auto}}