[data-visible=false]{display:none!important}[data-validation-message]{display:none}[data-validation-message]:not([data-validation-message=""]){display:block;margin-top:.25rem;font-size:.85rem;font-weight:500;color:var(--error-text-color, #fca5a5)}[data-validation-message]:not([data-validation-message=""]):before{content:attr(data-validation-message)}[data-has-error=true]{border-color:var(--error-border-color, #fca5a5)!important}[data-has-error=true]:focus{outline:none;box-shadow:0 0 0 2px var(--error-focus-color, rgba(252, 165, 165, .2))}.file-upload-zone{width:100%}.drop-zone{border:2px dashed;border-radius:.5rem;padding:2rem 1.25rem 1rem;text-align:center;cursor:pointer;transition:all .2s;position:relative}.drop-zone-icon{width:3rem;height:3rem;margin:0 auto 1rem}.drop-zone-text{font-size:.95rem}.file-input{position:absolute;inset:0;opacity:0;cursor:pointer}.uploaded-files{margin-top:.5rem;display:flex;flex-direction:column;gap:.75rem}.uploaded-files:not(:empty){margin-bottom:.75rem}.uploaded-file{border:1px solid;border-radius:.5rem;padding:.875rem 1rem;display:flex;flex-direction:column;gap:.75rem}.uploaded-file-invalid{border-color:var(--invalid-file-border-color, #fca5a5);background-color:var(--invalid-file-bg-color, rgba(252, 165, 165, .1))}.uploaded-file-invalid .uploaded-file-icon,.uploaded-file-invalid .uploaded-file-name{color:var(--invalid-file-text-color, #fca5a5)}.uploaded-file-error{color:var(--invalid-file-error-text-color, #fca5a5);font-size:.875rem;margin-top:.25rem;font-weight:500}.uploaded-file-header{display:flex;align-items:center;gap:.75rem}.uploaded-file-icon{width:2rem;height:2rem;flex-shrink:0}.uploaded-file-details{flex:1;min-width:0}.uploaded-file-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uploaded-file-size{font-size:.875rem;margin-top:.125rem}.uploaded-file-actions{display:flex;gap:.5rem;flex-wrap:wrap}.file-action-btn{border:1px solid;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.375rem;flex-shrink:0}.file-action-btn .action-icon{width:1.125rem;height:1.125rem}.file-action-btn:disabled{opacity:.5;cursor:not-allowed}.file-category-select{border:1px solid;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s;flex:1;min-width:150px}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay-bg, rgba(0, 0, 0, .5));z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-dialog{background:var(--modal-dialog-bg, var(--pico-background-color, #fff));border-radius:.5rem;box-shadow:var(--modal-dialog-shadow, 0 10px 25px rgba(0, 0, 0, .2));max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;padding:1.5rem}.modal-close{position:absolute;top:.5rem;right:.5rem;background:transparent;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem;color:var(--pico-muted-color, #666);transition:color .2s}.modal-close:hover{color:var(--pico-color, #000)}.modal-content{padding-top:1rem}.preview-modal-overlay{position:fixed;inset:0;background-color:var(--preview-modal-overlay-bg, rgba(0, 0, 0, .5));z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.preview-modal-content{background:var(--preview-modal-content-bg, var(--pico-background-color, #fff));border-radius:.5rem;box-shadow:var(--preview-modal-content-shadow, 0 10px 25px rgba(0, 0, 0, .2));max-width:90vw;max-height:90vh;width:100%;display:flex;flex-direction:column;overflow:hidden}.preview-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--pico-border-color, #ddd)}.preview-modal-title{margin:0;font-size:1.25rem}.preview-modal-close-btn{background:transparent;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem;color:var(--pico-muted-color, #666);transition:color .2s}.preview-modal-close-btn:hover{color:var(--pico-color, #000)}.preview-modal-body{flex:1;overflow:auto;padding:1.5rem;display:flex;align-items:center;justify-content:center}.preview-image{max-width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain}.preview-pdf{width:100%;height:70vh;border:none}.preview-unsupported{text-align:center;padding:2rem}.preview-unsupported .preview-icon{width:4rem;height:4rem;margin:0 auto 1rem;color:var(--pico-muted-color, #666)}.preview-unsupported p{margin:.5rem 0}.submission-overlay{position:fixed;inset:0;background-color:var(--submission-overlay-bg, rgba(0, 0, 0, .85));display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.submission-modal{background-color:var(--submission-modal-bg, rgba(255, 255, 255, .95));border:var(--submission-modal-border, 1px solid rgba(0, 0, 0, .1));border-radius:.75rem;padding:2rem;max-width:500px;width:90%;box-shadow:0 10px 40px #0000004d;color:var(--submission-modal-color, inherit)}.submission-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center;color:var(--submission-title-color, inherit)}.progress-bar-container{background-color:var(--progress-bar-container-bg, rgba(0, 0, 0, .1));border-radius:.5rem;height:1rem;overflow:hidden;margin-bottom:1rem}.progress-bar-fill{height:100%;background-color:var(--progress-bar-fill-bg, #4CAF50);transition:width .3s ease;border-radius:.5rem}.progress-text{text-align:center;color:var(--progress-text-color, inherit);font-size:.95rem;margin-bottom:.5rem;opacity:.8}.progress-detail{text-align:center;color:var(--progress-detail-color, inherit);font-size:.875rem;line-height:1.4;opacity:.7;word-break:break-word;overflow-wrap:break-word;max-width:100%}.spinner{width:3rem;height:3rem;border:4px solid var(--spinner-border-color, rgba(0, 0, 0, .1));border-top-color:var(--spinner-border-top-color, #4CAF50);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.submission-success{text-align:center;color:var(--submission-success-color, inherit)}.success-icon{width:4rem;height:4rem;margin:0 auto 1rem;color:var(--success-icon-color, #4CAF50)}.submission-error{text-align:center}.submission-error .submission-title{color:var(--error-title-color, #f44336)}.error-icon{width:4rem;height:4rem;margin:0 auto 1rem;color:var(--error-icon-color, #f44336)}.btn-dismiss{background-color:var(--btn-dismiss-bg, #4CAF50);color:var(--btn-dismiss-color, white);font-weight:600;padding:.75rem 1.5rem;border-radius:.25rem;border:none;cursor:pointer;transition:background-color .2s;margin-top:1.5rem}.btn-dismiss:hover{background-color:var(--btn-dismiss-hover-bg, #45a049)}.hub-progress-wrapper{margin-top:1rem}.hub-progress-title{margin:0 0 .75rem}.hub-progress-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.hub-progress-item{display:flex;align-items:center;gap:.75rem;padding:.75rem .875rem;border:1px solid var(--pico-border-color, rgba(0, 0, 0, .12));border-radius:.5rem;background:var(--pico-card-background-color, rgba(255, 255, 255, .6));flex-wrap:wrap}.hub-progress-link{order:1;flex:1 1 auto;min-width:14rem;text-decoration:none;font-weight:600}.hub-progress-link:hover{text-decoration:underline}.hub-progress-started,.hub-progress-submitted{order:2;display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;border-radius:999px;font-size:.85rem;line-height:1;white-space:nowrap;border:1px solid rgba(0,0,0,.08);background:#0000000f;color:var(--pico-muted-color, rgba(0, 0, 0, .6))}.hub-progress-submitted{order:3}.hub-progress-task--started .hub-progress-started,.hub-progress-task--submitted .hub-progress-submitted{background:#22c55e24;border-color:#22c55e59;color:#15803d}.hub-progress-task-checkbox{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
