@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.app-header{color:#f9fafb;background:#111827;flex-shrink:0;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex}.app-header-brand{align-items:center;gap:.5rem;display:flex}.app-header-logo{box-sizing:content-box;background:#f9fafb;border-radius:5px;width:22px;height:22px;padding:3px}.app-header-title{font-weight:700}.app-header-user{align-items:center;gap:.75rem;font-size:.9rem;display:flex}.app-header-actions{align-items:center;gap:.5rem;display:flex}.app-header-user button{color:#f9fafb;background:#374151;border:none;border-radius:4px;padding:.3rem .7rem}.app-nav{background:#111827;flex-shrink:0;gap:1rem;padding:.5rem 1rem;display:flex}.app-nav a{color:#d1d5db;border-bottom:2px solid #0000;padding:.2rem 0;font-size:.9rem;text-decoration:none}.app-nav a.is-active{color:#fff;border-bottom-color:#1d4ed8}.login-view{background:#eef1f6;justify-content:center;align-items:center;height:100vh;display:flex}.login-card{border-radius:10px;width:340px;overflow:hidden;box-shadow:0 4px 20px #00000026}.login-card-header{background:#111827;padding:1.75rem 2rem 1.5rem}.login-card-subtitle{color:#f9fafb;font-size:1.05rem;font-weight:600;display:block}.login-form{background:#fff;flex-direction:column;gap:.75rem;padding:1.75rem 2rem;display:flex}.login-form label{color:#374151;flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.login-form input{color:#111827;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:.5rem .6rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.login-form input:focus{border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a}.login-form button{color:#fff;background:#1d4ed8;border:none;border-radius:6px;margin-top:.25rem;padding:.55rem;font-size:.95rem;font-weight:600}.login-form button:hover:not(:disabled){background:#1e40af}.login-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:.4rem .6rem;font-size:.85rem}.login-forgot-btn{color:#6b7280;cursor:pointer;text-align:center;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8rem;text-decoration:underline}.login-forgot-btn:hover{color:#1d4ed8}.login-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:4px;padding:.4rem .6rem;font-size:.85rem}.login-back-btn{color:#6b7280;cursor:pointer;text-underline-offset:2px;text-align:center;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8rem;text-decoration:underline}.login-back-btn:hover{color:#1d4ed8}.landing-page{min-height:100%}.login-hero{background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;padding:5rem 1rem 4rem;display:flex}.login-brand{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;max-width:480px;display:flex}.login-brand-lockup{align-items:center;gap:.9rem;display:flex}.login-brand-icon{flex-shrink:0;width:56px;height:56px}.login-brand-name{letter-spacing:-.01em;color:#172235;text-align:left;font-size:1.9rem;font-weight:800;line-height:1.15}.login-brand-accent{color:#2d67a8}.login-brand-tagline{color:#172235;letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:1rem;width:100%;margin:0;font-size:.8rem;font-weight:600;display:flex}.login-brand-tagline:before,.login-brand-tagline:after{content:"";background:#d1d5db;flex:auto;height:1px}.login-brand-tagline-text{flex-direction:column;flex-shrink:0;gap:.15rem;display:flex}@media (width<=480px){.login-brand-name{font-size:1.5rem}.login-brand-icon{width:44px;height:44px}.login-brand-tagline{font-size:.7rem}}.landing-sections{background:#eef1f6}.landing-section{background:#eef1f6;padding:5rem 2rem}.landing-section:nth-child(2n){background:#fff}.section-content{grid-template-columns:1fr 1fr;align-items:center;gap:3rem;max-width:1100px;margin:0 auto;display:grid}.section-text{order:1}.section-image,.landing-section.reversed .section-text{order:2}.landing-section.reversed .section-image{order:1}.section-text h2{color:#111827;margin:0 0 1rem;font-size:1.75rem;font-weight:700}.section-text p{color:#4b5563;margin:0;font-size:1.05rem;line-height:1.75}.section-image img{border-radius:12px;width:100%;height:auto;display:block;box-shadow:0 10px 30px #1118271f}@media (width<=900px){.section-content{grid-template-columns:1fr;gap:1.5rem}.landing-section.reversed .section-text,.section-text{order:2}.landing-section.reversed .section-image,.section-image{order:1}}@media (width<=600px){.landing-section{padding:3rem 1.25rem}.section-text h2{font-size:1.4rem}.section-text p{font-size:1rem}}.change-password-view{justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.projects-view{max-width:800px;margin:0 auto;padding:1.5rem}.projects-view h1{margin:0 0 1rem;font-size:1.4rem}.projects-view-status{padding:1.5rem}.projects-view-error{color:#991b1b;margin-bottom:.75rem}.projects-view-create{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.projects-view-create input,.projects-view-create select{border:1px solid #d1d5db;border-radius:4px;padding:.45rem;font-size:.9rem}.projects-view-create input[type=text]:first-child{flex:1;min-width:160px}.projects-view-create button{color:#fff;background:#1d4ed8;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.9rem}.projects-view-create button:disabled{opacity:.6}.projects-view-list{flex-direction:column;gap:.5rem;display:flex}.projects-view-item{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.95rem;display:flex}.projects-view-item:hover{border-color:#1d4ed8}.projects-view-item-name{font-weight:600}.projects-view-item-desc{color:#6b7280;flex:1;font-size:.85rem}.projects-view-item-status{text-transform:uppercase;border-radius:999px;padding:.15rem .6rem;font-size:.75rem;font-weight:600}.projects-view-item-status.status-active{color:#166534;background:#dcfce7}.projects-view-item-status.status-archived{color:#6b7280;background:#f3f4f6}.documents-view{max-width:900px;margin:0 auto;padding:1.5rem}.documents-view-status{padding:1.5rem}.documents-view-error{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:5px;margin-bottom:.75rem;padding:.6rem .9rem;font-size:.9rem}.documents-view-export-success{color:#166534;cursor:pointer;margin-top:.5rem;font-size:.85rem}.documents-view-export-warning{color:#92400e;cursor:pointer;margin-top:.5rem;font-size:.85rem}.documents-view-header{margin-bottom:1.5rem}.documents-view-back{color:#1d4ed8;cursor:pointer;background:0 0;border:none;margin-bottom:.5rem;padding:0;font-size:.85rem}.documents-view-header h1{margin:0;font-size:1.4rem}.documents-view-desc{color:#6b7280;margin:.25rem 0 0}.review-period-bar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:.85rem;padding:.65rem .9rem;font-size:.88rem}.review-period-display{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.review-period-dates{flex-wrap:wrap;flex:1;align-items:center;gap:.6rem;display:flex}.review-period-date-item{align-items:center;gap:.3rem;display:flex}.review-period-date-label{color:#6b7280;font-size:.82rem}.review-period-date-value{color:#1f2937;font-weight:600}.review-period-sep{color:#9ca3af}.review-period-status{border-radius:9999px;align-items:center;padding:.15rem .6rem;font-size:.78rem;font-weight:600;display:inline-flex}.review-period-status--active{color:#15803d;background:#dcfce7}.review-period-status--before{color:#92400e;background:#fef9c3}.review-period-status--after{color:#991b1b;background:#fee2e2}.review-period-edit-btn{color:#374151;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:5px;flex-shrink:0;padding:.25rem .7rem;font-size:.82rem}.review-period-edit-btn:hover{background:#f3f4f6}.review-period-editor{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.review-period-editor-fields{flex-wrap:wrap;gap:1rem;display:flex}.review-period-label{color:#374151;flex-direction:column;gap:.25rem;font-size:.82rem;font-weight:500;display:flex}.review-period-label input[type=date]{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:.35rem .5rem;font-size:.88rem}.review-period-label input[type=date]:disabled{opacity:.6}.review-period-editor-actions{align-items:center;gap:.4rem;display:flex}.review-period-save-btn{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:5px;padding:.35rem .9rem;font-size:.85rem}.review-period-save-btn:disabled{opacity:.6;cursor:default}.review-period-cancel-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:.35rem .7rem;font-size:.85rem}.review-period-cancel-btn:hover{background:#f3f4f6}.documents-view-section{border-radius:10px;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.documents-view-section h2{margin:0 0 1rem;font-size:1.05rem}.documents-view-section--documents,.documents-view-section--members{background:#e4e6ec}.documents-view-upload{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.documents-view-upload-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.documents-view-upload-export-btns{flex-shrink:0;gap:.5rem;display:flex}.documents-view-upload-actions{align-items:center;gap:.5rem;display:flex}.documents-view-upload-actions input[type=text]{border:1px solid #d1d5db;border-radius:4px;flex:1;padding:.45rem;font-size:.9rem}.documents-view-upload-actions button[type=submit],.documents-view-member-add button{color:#fff;cursor:pointer;white-space:nowrap;background:#1d4ed8;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.9rem}.documents-view-upload-actions button[type=submit]:disabled,.documents-view-member-add button:disabled{opacity:.6;cursor:default}.documents-view-export-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#16a34a;border:none;border-radius:4px;padding:.45rem 1.1rem;font-size:.9rem}.documents-view-export-btn:hover{background:#15803d}.documents-view-export-btn:disabled{opacity:.6;cursor:default}.documents-view-list{flex-direction:column;gap:.5rem;display:flex}.documents-view-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:.4rem 1rem}.documents-view-item-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.documents-view-item-info{align-items:center;gap:.75rem;font-size:.9rem;display:flex}.documents-view-item-name{font-weight:600}.documents-view-item-version,.documents-view-item-date{color:#6b7280;font-size:.8rem}.documents-view-item-desc{color:#6b7280;margin:.5rem 0 0;font-size:.85rem}.documents-view-item-actions{gap:.5rem;display:flex}.documents-view-item-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.3rem .7rem;font-size:.8rem}.documents-view-item-actions button.danger{color:#991b1b;border-color:#fecaca}.documents-view-item-edit{align-items:center;gap:.4rem;display:flex}.documents-view-item-edit input{border:1px solid #d1d5db;border-radius:4px;width:220px;padding:.25rem .5rem;font-size:.8rem}.documents-view-item-edit button{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.25rem .6rem;font-size:.8rem}.documents-view-group{flex-direction:column;gap:.3rem;display:flex}.documents-view-group-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:.6rem;padding:.4rem 1rem;font-size:.9rem;display:flex}.documents-view-group-header:hover{background:#f9fafb}.documents-view-group-toggle{color:#6b7280;text-align:center;flex-shrink:0;width:.9rem;font-size:.95rem}.documents-view-group-name{font-weight:600}.documents-view-group-count{color:#6b7280;font-size:.8rem}.documents-view-group-files{flex-direction:column;gap:.3rem;padding-left:1.75rem;display:flex}.doc-status-badges{flex-wrap:wrap;gap:.3rem;margin-left:auto;display:flex}.doc-status-badge{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.72rem;font-weight:700;display:inline-flex;box-shadow:0 1px 2px #0003}.documents-view-role-group{margin-bottom:1.5rem}.documents-view-role-heading{text-transform:uppercase;letter-spacing:.07em;color:#6b7280;margin:0 0 .4rem;font-size:.75rem;font-weight:700}.documents-view-member-table{table-layout:fixed;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:6px;width:100%;font-size:.9rem;overflow:hidden}.documents-view-member-table th{text-align:left;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:.35rem .5rem;font-size:.72rem;font-weight:600}.documents-view-member-table td{vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #f3f4f6;padding:.5rem;overflow:hidden}.documents-view-member-table tbody tr:last-child td{border-bottom:none}.documents-view-member-table .col-toggle{width:2rem;padding-right:0}.documents-view-member-table .col-name{width:20%;font-weight:600}.documents-view-member-table .col-discipline{color:#374151;width:16%}.documents-view-member-table .col-email{color:#6b7280;width:20%;font-size:.85rem}.documents-view-member-table .col-actions{white-space:nowrap;width:130px}.documents-view-member-table .col-badges{text-align:right;width:60px;overflow:visible}.documents-view-member-table .col-badges .doc-status-badges{flex-wrap:nowrap;justify-content:flex-end;margin-left:0}.documents-view-member-table .col-email .doc-status-badges{margin-left:0}.documents-view-member-table .col-doc-open{text-align:right;padding-right:1rem;overflow:visible}.col-badges-header{width:60px}.member-total-badge-wrap{justify-content:flex-end;display:flex}.member-total-badge{color:#111827;background:0 0;border:2px solid #111827;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.72rem;font-weight:700;display:inline-flex}.documents-view-member-actions{justify-content:flex-end;gap:.4rem;display:flex}.documents-view-member-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.25rem .6rem;font-size:.8rem}.documents-view-member-actions button.danger{color:#991b1b;border-color:#fecaca}.documents-view-member-add{flex-wrap:wrap;gap:.5rem;display:flex}.documents-view-member-add select,.documents-view-member-add input{border:1px solid #d1d5db;border-radius:4px;padding:.4rem;font-size:.85rem}.documents-view-member-hint{color:#6b7280;font-size:.85rem}.documents-view-member-search{flex:1;gap:.4rem;min-width:260px;display:flex;position:relative}.documents-view-member-search input{flex:1}.documents-view-member-search>button{color:#fff;white-space:nowrap;background:#1d4ed8;border:1px solid #1d4ed8;border-radius:4px;padding:.4rem .8rem;font-size:.85rem}.documents-view-member-search>button:disabled{opacity:.5;background:#9ca3af;border-color:#9ca3af}.documents-view-member-noresults{color:#6b7280;padding:.4rem .6rem;font-size:.85rem}.documents-view-member-results{z-index:10;background:#fff;border:1px solid #e5e7eb;border-radius:4px;flex-direction:column;max-height:200px;display:flex;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 2px 8px #00000014}.documents-view-member-results button{text-align:left;color:#1f2937;cursor:pointer;background:0 0;border:none;padding:.4rem .6rem;font-size:.85rem}.documents-view-member-results button:hover{background:#f3f4f6}.documents-view-member-selected{background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.85rem;display:flex}.documents-view-member-selected button{color:#1d4ed8;cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.member-toggle-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;width:1.3rem;height:1.3rem;padding:0;font-size:.95rem;display:inline-flex}.member-toggle-btn:hover{color:#374151;background:#f3f4f6}.member-expanded-row td{background:#f9fafb;border-bottom:1px solid #f3f4f6}.member-doc-name-cell{align-items:center;gap:.5rem;display:flex;overflow:hidden}.member-doc-open{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.2rem .55rem;font-size:.78rem}.member-doc-open:hover{background:#f3f4f6}.member-doc-filename{color:#374151;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.85rem;font-weight:500;overflow:hidden}.member-doc-desc{color:#9ca3af;white-space:nowrap;flex-shrink:0;font-size:.78rem}.documents-view-member-noresults{align-items:center;gap:.75rem;display:flex}.documents-view-member-invite-btn{color:#1d4ed8;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.85rem}.documents-view-member-invite-btn:hover{text-decoration:underline}.invite-modal-field input,.invite-modal-field select{box-sizing:border-box;border:1px solid #d1d5db;border-radius:5px;width:100%;padding:.45rem .6rem;font-size:.9rem}.invite-modal-field input:focus,.invite-modal-field select:focus{outline-offset:-1px;outline:2px solid #3b82f6}.invite-modal-company-search{position:relative}.invite-modal-company-searching{color:#6b7280;margin-top:.2rem;font-size:.78rem;display:block}.invite-modal-company-results{z-index:10;background:#fff;border:1px solid #d1d5db;border-radius:5px;max-height:180px;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.invite-modal-company-results button{text-align:left;cursor:pointer;color:#111827;background:0 0;border:none;border-bottom:1px solid #f3f4f6;width:100%;padding:.5rem .75rem;font-size:.88rem;display:block}.invite-modal-company-results button:last-child{border-bottom:none}.invite-modal-company-results button:hover{background:#f3f4f6}.invite-modal-pending-tag{color:#d97706;font-size:.78rem}.invite-modal-company-chosen{color:#15803d;margin-top:.25rem;font-size:.78rem;display:block}.invite-modal-company-new{color:#d97706;margin-top:.25rem;font-size:.78rem;display:block}.invite-modal-success-wrap{flex-direction:column;gap:1.25rem;padding:1.5rem 1.25rem 1.25rem;display:flex}.invite-modal-success{color:#15803d;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;padding:1rem 1.1rem;font-size:.9rem;line-height:1.6}.invite-modal-ok-btn{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:5px;align-self:flex-end;padding:.45rem 1.5rem;font-size:.88rem;font-weight:500}.invite-modal-ok-btn:hover{background:#1e40af}.image-lightbox-overlay{z-index:1000;cursor:zoom-out;background:#000000e0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-lightbox-img{object-fit:contain;cursor:default;border-radius:4px;max-width:90vw;max-height:90vh;box-shadow:0 4px 32px #00000080}.image-lightbox-close{color:#fff;cursor:pointer;background:#0009;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.1rem;line-height:1;display:flex;position:fixed;top:1rem;right:1rem}.image-lightbox-close:hover{background:#000000e6;border-color:#fff}.comment-item{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:.75rem;padding:.75rem .75rem 0;overflow:hidden}.comment-item.is-selected{border-color:#1d4ed8;box-shadow:0 0 0 1px #1d4ed8}.comment-item--compact{margin-bottom:.5rem;padding-bottom:.65rem}.comment-item-text--compact{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.comment-item-images--compact{gap:.3rem;margin:.3rem 0 0}.comment-item-header{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.comment-item-pin{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.75rem;font-weight:700;display:inline-flex}.comment-item-page{color:#6b7280;font-size:.85rem}.comment-item-status{color:#fff;border-radius:999px;margin-left:auto;padding:.1rem .5rem;font-size:.75rem;font-weight:600}.comment-item-author{font-size:.9rem;font-weight:600}.comment-item-discipline{color:#6b7280;font-weight:400}.comment-item-text{margin:.35rem 0;font-style:italic}.comment-item-images{flex-wrap:wrap;gap:.4rem;margin:.35rem 0;display:flex}.comment-item-image-thumb{object-fit:cover;cursor:zoom-in;border:1px solid #e5e7eb;border-radius:4px;width:80px;height:60px;display:block}.comment-item-image-thumb:hover{border-color:#9ca3af}.comment-item-image-thumb--compact{cursor:default;width:28px;height:28px}.comment-item-add-image{color:#6b7280;cursor:pointer;background:#fff;border:1px dashed #d1d5db;border-radius:4px;width:80px;height:60px;font-size:.8rem}.comment-item-add-image:hover{color:#374151;border-color:#9ca3af}.comment-item-add-image:disabled{opacity:.4;cursor:default}.comment-item-add-image.is-compact{width:auto;height:auto;padding:.2rem .6rem}.comment-item-assigned{color:#374151;font-size:.85rem}.comment-item-assigned.is-clickable{cursor:pointer;border-radius:4px;margin:0 -.35rem;padding:.15rem .35rem}.comment-item-assigned.is-clickable:hover{color:#1d4ed8;background:#f3f4f6}.comment-item-answered{color:#1d4ed8;font-size:.85rem;font-weight:600}.comment-item-actions{flex-direction:column;gap:.5rem;margin-top:.5rem;margin-bottom:.5rem;display:flex}.comment-item-action-row{gap:.35rem;width:100%;display:flex}.comment-item-actions select{border:1px solid #d1d5db;border-radius:4px;flex:1;min-width:0;padding:.25rem}.comment-item-actions>button,.comment-item-action-row>button{background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.25rem .6rem;font-size:.85rem}.comment-item-reply-area{flex-direction:column;gap:.35rem;width:100%;display:flex}.comment-item-reply-area textarea{box-sizing:border-box;resize:vertical;border:1px solid #d1d5db;border-radius:4px;width:100%;padding:.35rem;font-family:inherit;font-size:.85rem}.comment-item-reply-actions{gap:.35rem;display:flex}.comment-item-reply-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;flex:1;padding:.3rem 0;font-size:.85rem}.comment-item-reply-actions button:disabled{opacity:.4;cursor:default}.comment-item-error{color:#991b1b;margin:.35rem .75rem;font-size:.85rem}.comment-item-details{margin-top:.35rem;font-size:.85rem}.comment-item-details ul{flex-direction:column;gap:.35rem;margin:0;padding-left:0;list-style:none;display:flex}.comment-item-details li{color:#374151}.comment-item-no-replies{color:#9ca3af;margin:0}.comment-item-details .comment-item-reply-toggle{color:#9ca3af;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0;width:100%;margin:0;padding:.3rem 0 0;font-size:.85rem;line-height:1.5;display:block}.comment-item-details .comment-item-reply-toggle:hover{color:#1d4ed8;background:0 0}.comment-list{flex-direction:column;height:100%;display:flex;overflow:hidden}.comment-list-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;flex-shrink:0;gap:.35rem;padding:.5rem;display:flex}.comment-list-filter{background:#f9fafb;border:1px solid #d1d5db;border-radius:999px;padding:.25rem .75rem;font-size:.8rem}.comment-list-filter.is-active{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.comment-list-items{flex:1;padding:.75rem;overflow-y:auto}.comment-list-empty{color:#6b7280;font-size:.9rem}.review-view{flex-direction:column;height:100vh;display:flex}.review-view-header{color:#f9fafb;background:#1f2937;flex-shrink:0;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex}.review-view-body{flex:1;display:flex;overflow:hidden}.review-view-pdf{flex:1;min-width:0;overflow:hidden}.review-view-comments{background:#f9fafb;border-left:1px solid #e5e7eb;flex-shrink:0;width:360px}.review-view-status{text-align:center;padding:2rem}.review-view-error{color:#991b1b}.review-view-action-error{color:#991b1b;cursor:pointer;background:#fee2e2;flex-shrink:0;padding:.5rem 1rem;font-size:.9rem}.admin-view{max-width:900px;margin:0 auto;padding:1.5rem}.admin-view h1{margin:0 0 1rem;font-size:1.4rem}.admin-view-status{padding:1.5rem}.admin-view-error{color:#991b1b;margin-bottom:.75rem}.admin-view-success{color:#15803d;margin-bottom:.75rem}.admin-view-section{margin-bottom:2rem}.admin-view-section h2{margin:0 0 .75rem;font-size:1.05rem}.admin-view-form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.admin-view-form input,.admin-view-form select{border:1px solid #d1d5db;border-radius:4px;padding:.45rem;font-size:.9rem}.admin-view-checkbox{align-items:center;gap:.3rem;font-size:.85rem;display:flex}.admin-view-form button{color:#fff;background:#1d4ed8;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.9rem}.admin-view-form button:disabled{opacity:.6}.admin-view-list{flex-direction:column;gap:.4rem;display:flex}.admin-view-row{background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.admin-view-row-name{font-weight:600}.admin-view-row-email,.admin-view-row-company{color:#6b7280;font-size:.8rem}.admin-view-badge{color:#1d4ed8;background:#dbeafe;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.admin-view-status-badge{text-transform:uppercase;border-radius:999px;margin-left:auto;padding:.15rem .6rem;font-size:.75rem;font-weight:600}.admin-view-status-badge.status-active{color:#166534;background:#dcfce7}.admin-view-status-badge.status-archived{color:#6b7280;background:#f3f4f6}.admin-view-status-badge.status-pending_approval{color:#92400e;background:#fef3c7}.admin-view-section-pending{border-left:3px solid #f59e0b;padding-left:.75rem}.av-company-list{flex-direction:column;gap:.4rem;display:flex}.av-company-group{background:#fff;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.av-company-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;padding:.55rem .75rem;font-size:.9rem;display:flex}.av-company-header:hover{background:#f9fafb}.av-company-toggle{color:#6b7280;text-align:center;flex-shrink:0;width:1rem;font-size:1rem}.av-company-name{font-weight:600}.av-company-count{color:#6b7280;font-size:.8rem}.av-company-users{background:#f9fafb;border-top:1px solid #e5e7eb;flex-direction:column;gap:.35rem;padding:.5rem .75rem .75rem 2rem;display:flex}.av-company-empty{color:#9ca3af;margin:.25rem 0;font-size:.85rem}.av-company-user-row{background:#fff}.av-create-user-btn{color:#1d4ed8;cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:.35rem;padding:0;font-size:.85rem}.av-create-user-btn:hover{text-decoration:underline}.av-create-user-form{background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.75rem;display:flex}.av-create-user-form-fields{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.av-create-user-form-fields input[type=email],.av-create-user-form-fields input[type=password],.av-create-user-form-fields input[type=text]{border:1px solid #d1d5db;border-radius:4px;padding:.4rem .5rem;font-size:.85rem}.av-create-user-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.av-create-user-form-actions button[type=button]{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.4rem .85rem;font-size:.85rem}.av-create-user-form-actions button[type=button]:hover{background:#f3f4f6}.av-create-user-form-actions button[type=submit]{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:4px;padding:.4rem 1rem;font-size:.85rem;font-weight:600}.av-create-user-form-actions button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.admin-view-row-meta{color:#6b7280;font-size:.8rem}.admin-view-row-actions{gap:.4rem;margin-left:auto;display:flex}.av-row-edit-btn{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:4px;flex-shrink:0;margin-left:auto;padding:.25rem .65rem;font-size:.8rem}.av-row-edit-btn:hover{background:#f3f4f6}.av-company-header .av-row-edit-btn{margin-left:0}.av-storage-summary{color:#6b7280;white-space:nowrap;font-size:.8rem}.av-storage-bar{background:#e5e7eb;border-radius:999px;flex-shrink:0;width:60px;height:6px;overflow:hidden}.av-storage-bar-fill{background:#16a34a;border-radius:999px;height:100%;display:block}.av-storage-bar-fill.level-warn{background:#f59e0b}.av-storage-bar-fill.level-critical{background:#dc2626}.av-company-header .av-storage-summary{margin-left:auto}.av-btn-approve{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:4px;padding:.3rem .75rem;font-size:.8rem;font-weight:600}.av-btn-approve:hover{background:#15803d}.av-btn-reject{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #dc2626;border-radius:4px;padding:.3rem .75rem;font-size:.8rem;font-weight:600}.av-btn-reject:hover{background:#fef2f2}.invite-modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.invite-modal{background:#fff;border-radius:8px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.invite-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .75rem;display:flex}.invite-modal-header h3{color:#111827;margin:0;font-size:1rem;font-weight:600}.invite-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0 .2rem;font-size:1.3rem;line-height:1}.invite-modal-close:hover{color:#111827}.invite-modal-form{flex-direction:column;gap:.85rem;padding:1rem 1.25rem 1.25rem;display:flex}.invite-modal-field{flex-direction:column;gap:.3rem;display:flex}.invite-modal-field label{color:#374151;font-size:.82rem;font-weight:500}.invite-modal-field input[type=text],.invite-modal-field input[type=email],.invite-modal-field input[type=password],.invite-modal-field select,.invite-modal-field input:disabled{box-sizing:border-box;border:1px solid #d1d5db;border-radius:5px;width:100%;padding:.45rem .6rem;font-size:.9rem}.invite-modal-field input:disabled{color:#6b7280;background:#f9fafb}.invite-modal-readonly-row{color:#374151;padding:.3rem 0;font-size:.9rem}.invite-modal-checkbox-label{cursor:pointer;align-items:center;gap:.4rem;font-size:.9rem;display:flex}.invite-modal-info{color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:5px;padding:.5rem .75rem;font-size:.85rem}.invite-modal-error{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:5px;padding:.5rem .75rem;font-size:.85rem}.invite-modal-actions{justify-content:flex-end;gap:.6rem;margin-top:.25rem;display:flex}.invite-modal-actions button[type=button]{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:.45rem 1rem;font-size:.88rem}.invite-modal-actions button[type=button]:hover{background:#f3f4f6}.invite-modal-actions button[type=submit]{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:5px;padding:.45rem 1.1rem;font-size:.88rem;font-weight:500}.invite-modal-actions button[type=submit]:hover:not(:disabled){background:#1e40af}.invite-modal-actions button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.audit-log-view{max-width:1100px;margin:0 auto;padding:1.5rem}.audit-log-view h1{margin:0 0 1rem;font-size:1.4rem}.audit-log-view-status{padding:1.5rem}.audit-log-view-error{color:#991b1b;margin-bottom:.75rem}.audit-log-view-filters{gap:.5rem;margin-bottom:1rem;display:flex}.audit-log-view-filters select{border:1px solid #d1d5db;border-radius:4px;padding:.45rem;font-size:.9rem}.audit-log-view-filters button{color:#fff;background:#1d4ed8;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.9rem}.audit-log-view-table{border-collapse:collapse;background:#fff;width:100%;font-size:.85rem}.audit-log-view-table th,.audit-log-view-table td{text-align:left;border-bottom:1px solid #e5e7eb;padding:.5rem .75rem}.audit-log-view-table th{background:#f9fafb;font-weight:600}.app{flex-direction:column;height:100%;display:flex}.app-main{flex:1;min-height:0;overflow:auto}.app-status{justify-content:center;align-items:center;height:100vh;display:flex}*{box-sizing:border-box}html,body,#root{height:100%}body{color:#1f2937;background:#eef1f6;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button{cursor:pointer;font-family:inherit}button:disabled{opacity:.6;cursor:default}
