.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.login-container{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;width:100%;max-width:400px}.login-container h1{text-align:center;margin-bottom:2rem;color:#333}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#1976d2}.error-message{color:#d32f2f;margin-bottom:1rem;padding:.75rem;background-color:#ffebee;border-radius:4px;font-size:.875rem}.login-container button{width:100%;padding:.75rem;background-color:#1976d2;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.login-container button:hover:not(:disabled){background-color:#1565c0}.login-container button:disabled{background-color:#ccc;cursor:not-allowed}.task-card{padding:1rem;margin:.125rem .25rem;border-radius:.75rem;cursor:pointer;transition:all .2s ease;min-height:2.625rem;box-shadow:0 .0625rem .125rem #0000001a;border:.125rem solid rgba(0,0,0,.15);display:flex;flex-direction:column;gap:1rem}.task-card:hover{box-shadow:0 .25rem .5rem #00000026;transform:translateY(-.0625rem)}.task-card-compact{padding:.1875rem .3125rem;margin:0;height:calc((100% - .125rem) / 3);flex-shrink:0;overflow:hidden;display:flex;flex-direction:column;gap:.1875rem;border-width:.0625rem}.task-card-header{display:flex;align-items:baseline;justify-content:flex-start;gap:.5rem;flex-wrap:nowrap;flex-shrink:0;min-width:0;width:100%}.task-card-compact .task-card-header{gap:.1875rem}.task-card-description{font-weight:700;font-size:1.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;color:#1f2937;letter-spacing:-.025em;margin:0}.task-card-compact .task-card-description{font-size:.8125rem;letter-spacing:-.008em;line-height:1.2}.task-card-comment-icon{font-size:1rem;flex-shrink:0;margin-left:.5rem}.task-card-status-row{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-width:0}.task-card-status-label{font-size:1.5rem;font-weight:700;color:#374151;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0;line-height:1.2}.task-card-compact .task-card-status-label{font-size:.6875rem;line-height:1.1}.task-card-production-icons{display:flex;align-items:center;gap:.75rem;margin-left:.5rem;flex-shrink:0}.task-card-compact .task-card-production-icons{gap:.1875rem;margin-left:.1875rem}.production-icon-container{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;overflow:hidden;transition:all .3s ease;flex-shrink:0}.task-card-compact .production-icon-container{width:1.25rem;height:1.25rem}.production-icon-emoji{font-size:1.5rem;line-height:1;display:inline-block}.task-card-compact .production-icon-emoji{font-size:.85rem}.production-icon-svg{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.production-icon-svg svg{width:1.5rem;height:1.5rem}.production-icon-svg svg.production-icon-drilling{width:2.25rem;height:2.25rem}.task-card-compact .production-icon-svg svg{width:.75rem;height:.75rem}.task-card-compact .production-icon-svg svg.production-icon-drilling{width:1.125rem;height:1.125rem}.production-icon-active{background-color:#e0fce9;border:.25rem solid #4ade80;box-shadow:0 .25rem .625rem #0000000d;color:#059669}@media (min-width: 721px){.production-icon-active{border-width:.0625rem;box-shadow:0 .125rem .25rem #0000000f}}.task-card-compact .production-icon-active{border-width:.125rem;box-shadow:0 .125rem .3125rem #0000000d}.production-icon-active .production-icon-saw-active{animation:spin 2s linear infinite}.production-icon-drilling-active .drill-chuck{transform-origin:256px center;transform:scaleX(1.35)}.production-icon-drilling-active .drill-threads{animation:drill-scroll-threads .15s infinite linear}.production-icon-drilling-active .whole-machine{animation:drill-move-vertical 2s infinite ease-in-out}@keyframes drill-scroll-threads{0%{transform:translateY(0)}to{transform:translateY(80px)}}@keyframes drill-move-vertical{0%{transform:translateY(0)}40%{transform:translateY(80px)}80%{transform:translateY(0)}to{transform:translateY(0)}}.production-icon-active .production-icon-assembly-active{animation:hammer-hit 1.5s ease-in-out infinite;transform-origin:20% 80%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gentle-vibrate{0%{transform:rotate(0)}25%{transform:rotate(1deg)}50%{transform:rotate(0)}75%{transform:rotate(-1deg)}to{transform:rotate(0)}}@keyframes hammer-hit{0%{transform:rotate(0)}20%{transform:rotate(-25deg)}45%{transform:rotate(15deg)}55%{transform:rotate(15deg)}to{transform:rotate(0)}}.production-icon-active .production-icon-emoji{filter:brightness(0) saturate(100%) invert(48%) sepia(79%) saturate(2476%) hue-rotate(86deg) brightness(118%) contrast(119%);opacity:1}.production-icon-completed{background-color:#e5e7eb80;border:none}.production-icon-completed .production-icon-emoji{color:#333;font-weight:700;font-size:1.25rem;opacity:.9}.task-card-compact .production-icon-completed .production-icon-emoji{font-size:.625rem}.production-icon-inactive{background-color:#fff6;border:none}.production-icon-inactive .production-icon-emoji{opacity:.6;filter:grayscale(.3) brightness(.9)}.task-card-address-header{font-size:1.5rem;font-weight:700;color:#1f2937;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0;max-width:45%;letter-spacing:-.025em;text-align:right;flex-shrink:0}.task-card-compact .task-card-address-header{font-size:.8125rem;max-width:40%;letter-spacing:-.008em;line-height:1.2;flex-shrink:0}.task-card-address{font-size:.6875rem;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card-compact .task-card-address{font-size:.625rem}.task-card-mount-info{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;font-size:.875rem;color:#374151;margin-top:.25rem}.task-card-days-until{font-weight:600;color:#1f2937}@media (min-width: 721px){.task-card.task-card-today-panel{padding:.4rem .5rem;gap:.25rem;min-height:auto;border-radius:.5rem;border-width:.0625rem}.task-card.task-card-today-panel .task-card-description{font-size:.9375rem}.task-card.task-card-today-panel .task-card-status-label,.task-card.task-card-today-panel .task-card-address-header{font-size:.8125rem}.task-card.task-card-today-panel .task-card-mount-info{font-size:.75rem;margin-top:.125rem}.task-card.task-card-today-panel .production-icon-container{width:1.5rem;height:1.5rem}.task-card.task-card-today-panel .production-icon-svg svg{width:1rem;height:1rem}.task-card.task-card-today-panel .production-icon-svg svg.production-icon-drilling{width:1.5rem;height:1.5rem}}@media (max-width: 720px){.task-card{padding:.5rem .625rem;margin:.125rem 0;border-radius:.25rem;gap:.375rem;min-height:auto;box-shadow:0 1px 2px #0000001a;border:.0625rem solid rgba(0,0,0,.12)}.task-card:hover{box-shadow:0 2px 4px #00000026;transform:none}.task-card-header{gap:.375rem;align-items:center;flex-wrap:nowrap}.task-card-description{font-size:.875rem;line-height:1.3;font-weight:600;flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-card-comment-icon{font-size:.875rem;margin-left:.25rem;flex-shrink:0}.task-card-status-row{gap:.375rem;align-items:center;flex-wrap:nowrap}.task-card-status-label{font-size:.75rem;line-height:1.2;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.task-card-production-icons{gap:.375rem;margin-left:.375rem;flex-shrink:0}.production-icon-container{width:1.5rem;height:1.5rem}.production-icon-emoji{font-size:.875rem}.production-icon-svg svg{width:1rem;height:1rem}.production-icon-svg svg.production-icon-drilling{width:1.5rem;height:1.5rem}.production-icon-completed .production-icon-emoji{font-size:.75rem}.task-card-address-header{font-size:.75rem;max-width:45%;letter-spacing:-.01em;line-height:1.2;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;margin-left:auto;text-align:right;order:0}.production-icon-active{transform:scale(1.05);border-width:.125rem;box-shadow:0 2px 4px #22c55e40}}.task-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.task-dialog{background:#fff;border-radius:8px;width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.task-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #ddd}.task-dialog-header h2{margin:0;font-size:1.25rem}.task-dialog-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.task-dialog-close:hover{color:#000}.task-dialog-content{padding:1rem;overflow-y:auto;flex:1}.task-dialog-error{background-color:#ffebee;color:#d32f2f;padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.task-dialog-field{margin-bottom:1rem}.task-dialog-field label{display:block;margin-bottom:.5rem;font-weight:500;color:#555}.task-dialog-field input,.task-dialog-field textarea,.task-dialog-field select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit}.task-dialog-field input:disabled,.task-dialog-field textarea:disabled,.task-dialog-field select:disabled{background-color:#f5f5f5;cursor:not-allowed}.task-dialog-field textarea{resize:vertical;min-height:60px}.task-dialog-date{display:flex;align-items:center;gap:.5rem}.task-dialog-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.task-dialog-section{margin-top:1.5rem;margin-bottom:1rem;padding-top:1rem;border-top:1px solid #eee}.task-dialog-section h3{margin:0 0 1rem;font-size:1rem;font-weight:700;color:#333}.task-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem;border-top:1px solid #ddd}.task-dialog-btn-cancel,.task-dialog-btn-save,.task-dialog-btn-delete{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.task-dialog-btn-cancel{background-color:#f5f5f5;color:#333}.task-dialog-btn-cancel:hover{background-color:#e0e0e0}.task-dialog-btn-save{background-color:#1976d2;color:#fff}.task-dialog-btn-save:hover:not(:disabled){background-color:#1565c0}.task-dialog-btn-save:disabled{background-color:#ccc;cursor:not-allowed}.task-dialog-btn-delete{background-color:#d32f2f;color:#fff;margin-right:auto}.task-dialog-btn-delete:hover:not(:disabled){background-color:#c62828}.task-dialog-btn-delete:disabled{background-color:#ccc;cursor:not-allowed}@media (max-width: 720px){.task-dialog-overlay{padding:0;align-items:flex-end}.task-dialog{max-width:100%;max-height:95vh;border-radius:.75rem .75rem 0 0;margin:0;display:flex;flex-direction:column;box-shadow:0 -2px 8px #00000026}.task-dialog-header{padding:.75rem 1rem;flex-shrink:0;border-bottom:1px solid #e0e0e0}.task-dialog-header h2{font-size:1rem;font-weight:600}.task-dialog-close{width:36px;height:36px;font-size:1.5rem;color:#666}.task-dialog-close:active{background-color:#0000000d;border-radius:50%}.task-dialog-content{padding:.75rem 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;min-height:0}.task-dialog-field{margin-bottom:.75rem}.task-dialog-field label{font-size:.8125rem;margin-bottom:.25rem;font-weight:500;color:#555}.task-dialog-field input,.task-dialog-field textarea,.task-dialog-field select{padding:.5rem;font-size:.9375rem;border-radius:.25rem;border:1px solid #ddd;-webkit-appearance:none;-moz-appearance:none;appearance:none}.task-dialog-field input:focus,.task-dialog-field textarea:focus,.task-dialog-field select:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 2px #1976d21a}.task-dialog-field textarea{min-height:60px;resize:vertical}.task-dialog-row{grid-template-columns:1fr;gap:.75rem}.task-dialog-section{margin-top:1rem;margin-bottom:.75rem;padding-top:.75rem;border-top:1px solid #eee}.task-dialog-section h3{font-size:.875rem;margin-bottom:.75rem;font-weight:600;color:#333}.task-dialog-actions{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem;flex-shrink:0;border-top:1px solid #e0e0e0;background-color:#fafafa}.task-dialog-btn-cancel,.task-dialog-btn-save,.task-dialog-btn-delete{padding:.625rem 1rem;font-size:.875rem;font-weight:500;border-radius:.25rem;min-height:44px;flex:1 1 auto;min-width:calc(50% - .25rem);-webkit-tap-highlight-color:transparent}.task-dialog-btn-delete{margin-right:0;order:-1;width:100%;min-width:100%;margin-bottom:.25rem}.task-dialog-btn-cancel:active,.task-dialog-btn-save:active,.task-dialog-btn-delete:active{transform:scale(.98)}.task-dialog-error{padding:.5rem .75rem;font-size:.75rem;margin-bottom:.75rem;border-radius:.25rem;line-height:1.4}}.task-dialog-actions-inline{display:flex;gap:.5rem;margin-top:.75rem;margin-bottom:.75rem}.task-dialog-btn-take{padding:.5rem 1rem;background:#1976d2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}.task-dialog-btn-take:hover:not(:disabled){background:#1565c0}.task-dialog-btn-complete{padding:.5rem 1rem;background:#2e7d32;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}.task-dialog-btn-complete:hover:not(:disabled){background:#1b5e20}.task-dialog-checkbox{display:inline-flex;align-items:center;gap:.5rem;margin-left:.5rem;font-weight:400;cursor:pointer}.task-dialog-current-responsible{font-size:.875rem;color:#555}.task-dialog-input-inline{margin-top:.5rem;width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px}.audit-log-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.audit-log-dialog{background:#fff;border-radius:8px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.audit-log-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #ddd}.audit-log-header h2{margin:0;font-size:1.25rem}.audit-log-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.audit-log-close:hover{color:#000}.audit-log-content{padding:1rem;overflow-y:auto;flex:1}.audit-log-loading,.audit-log-error,.audit-log-empty{text-align:center;padding:2rem;color:#666}.audit-log-error{color:#d32f2f}.audit-log-list{display:flex;flex-direction:column;gap:.5rem}.audit-log-entry{padding:1rem;border-bottom:1px solid #eee;border-radius:4px;background-color:#fafafa}.audit-log-entry:last-child{border-bottom:none}.audit-log-entry-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.audit-log-timestamp{font-weight:700;color:#333}.audit-log-user{color:#666;font-size:.9rem}.audit-log-action{margin-bottom:.5rem;color:#333}.audit-log-task-id{margin-bottom:.5rem;color:#666;font-size:.9rem}.audit-log-field{margin-top:.5rem;padding-left:1rem;border-left:2px solid #1976d2}.audit-log-field-name{font-weight:500;margin-bottom:.25rem}.audit-log-old-value,.audit-log-new-value{font-size:.9rem;margin-left:.5rem;max-height:2em;overflow:hidden;text-overflow:ellipsis}.audit-log-old-value{color:#d32f2f}.audit-log-new-value{color:#388e3c}.audit-log-details{margin-top:.5rem;color:#666;font-size:.9rem;max-height:3em;overflow:hidden;text-overflow:ellipsis}.audit-log-actions{display:flex;justify-content:flex-end;padding:1rem;border-top:1px solid #ddd}.audit-log-btn-close{padding:.5rem 1rem;background-color:#f5f5f5;color:#333;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.audit-log-btn-close:hover{background-color:#e0e0e0}.admin-users-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-users-dialog{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-width:900px;width:95%;max-height:90vh;display:flex;flex-direction:column}.admin-users-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e0e0e0}.admin-users-dialog-header h2{margin:0;font-size:1.25rem}.admin-users-dialog-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#666;padding:0 .25rem}.admin-users-dialog-close:hover{color:#333}.admin-users-dialog-content{padding:1rem 1.25rem;overflow-y:auto;flex:1}.admin-users-dialog-error{background:#ffebee;color:#c62828;padding:.5rem .75rem;border-radius:4px;margin-bottom:1rem}.admin-users-dialog-loading{margin:1rem 0;color:#666}.admin-users-toolbar{margin-bottom:1rem}.admin-users-btn{padding:.5rem 1rem;border-radius:4px;border:1px solid #ccc;background:#f5f5f5;cursor:pointer;font-size:.9rem}.admin-users-btn:hover:not(:disabled){background:#eee}.admin-users-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.admin-users-btn.primary:hover:not(:disabled){background:#1565c0}.admin-users-btn.small{padding:.35rem .65rem;font-size:.85rem;margin-right:.5rem}.admin-users-btn.danger{background:#fff;border-color:#d32f2f;color:#d32f2f}.admin-users-btn.danger:hover:not(:disabled){background:#ffebee}.admin-users-btn:disabled{opacity:.6;cursor:not-allowed}.admin-users-sections{display:flex;flex-direction:column;gap:1.25rem}.admin-users-section h3{margin:0 0 .5rem;font-size:1rem;color:#333}.admin-users-table-wrap{overflow-x:auto;margin-bottom:.5rem}.admin-users-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-users-table th,.admin-users-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #eee}.admin-users-table th{background:#f5f5f5;font-weight:600}.admin-users-actions{white-space:nowrap}.admin-users-roles-list{margin:0;padding-left:1.25rem;color:#555}.admin-users-roles-list li{margin-bottom:.25rem}.admin-users-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1001}.admin-users-form-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;width:100%;max-width:420px}.admin-users-form-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e0e0e0}.admin-users-form-header h3{margin:0;font-size:1.1rem}.admin-users-form{padding:1rem 1.25rem}.admin-users-form-field{margin-bottom:1rem}.admin-users-form-field label{display:block;margin-bottom:.35rem;font-size:.9rem;color:#333}.admin-users-form-field input[type=text],.admin-users-form-field input[type=password],.admin-users-form-field select{width:100%;padding:.5rem .65rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.admin-users-form-field input:disabled{background:#f5f5f5;color:#666}.admin-users-form-checkboxes{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.admin-users-form-checkbox{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-size:.9rem}.admin-users-form-checkbox input{margin:0}.admin-users-form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid #eee}.calendar-page{width:100%;min-height:100vh;background-color:#eceff1;display:flex;flex-direction:column}@media (max-width: 720px){.calendar-page{height:100vh;overflow:hidden;position:fixed;top:0;left:0;right:0;bottom:0}}.calendar-loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.5rem}.calendar-header{background-color:#546e7a;color:#fff;padding:1rem;box-shadow:0 2px 4px #00000026}.calendar-header-content{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;gap:.75rem}.calendar-header-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.75rem;position:relative}.calendar-header-left{flex:1;min-width:0;overflow:hidden}.calendar-header-month-center{flex:0 0 auto;position:absolute;left:50%;transform:translate(-50%)}.calendar-header-top .calendar-header-icons{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:.5rem;min-width:0}.calendar-header h1{margin:0;font-size:1.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-header-icons{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.calendar-header-bottom{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.75rem}.calendar-header-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.user-info{font-size:.9rem;white-space:nowrap}.btn-audit,.btn-logout{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-audit{background-color:#1976d2;color:#fff}.btn-audit:hover{background-color:#1565c0}.btn-logout{background-color:#d32f2f;color:#fff}.btn-logout:hover{background-color:#c62828}.btn-audit-icon,.btn-logout-icon{display:none;align-items:center;justify-content:center;width:20px;height:20px}.btn-audit-icon svg,.btn-logout-icon svg{width:100%;height:100%;fill:currentColor}.btn-audit-text,.btn-logout-text{display:inline}.calendar-container{width:100%;height:calc(100vh - 80px);margin:0;padding:.5rem;display:flex;flex-direction:row;gap:.75rem;overflow:hidden;min-height:0}.calendar-column{flex:0 0 75%;min-width:0;display:flex;flex-direction:column;overflow:hidden}.today-panel{flex:0 0 25%;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.today-tasks-panel{display:flex;flex-direction:column;overflow-y:auto;padding:.75rem;min-height:0}.today-tasks-title{margin:0 0 .75rem;font-size:1.1rem;font-weight:700;color:#374151;flex-shrink:0}.today-tasks-sections{display:flex;flex-direction:column;gap:1rem}.today-tasks-section{display:flex;flex-direction:column;gap:.5rem}.today-tasks-section-title{margin:0;font-size:.95rem;font-weight:600;color:#546e7a}.today-tasks-list{display:flex;flex-direction:column;gap:.5rem}.today-tasks-list .task-card{min-height:auto}.today-tasks-empty{margin:.5rem 0 0;color:#6b7280;font-size:.9rem}.calendar-view-toggle{display:flex;gap:.25rem;flex-shrink:0}.calendar-view-toggle button{padding:.35rem .6rem;border:1px solid rgba(255,255,255,.5);border-radius:4px;background:#ffffff26;color:#fff;font-size:.8rem;cursor:pointer}.calendar-view-toggle button.active{background:#fff6;font-weight:600}@media (max-width: 720px){.calendar-container{flex:1;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:0;height:100%}.today-tasks-panel{padding:.5rem}.today-tasks-title{font-size:1rem}}.calendar-navigation{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.calendar-navigation-inline{margin-left:.5rem}.calendar-navigation h2{margin:0;font-size:1.2rem;white-space:nowrap;color:#fff}.btn-nav{background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:.25rem .75rem;font-size:1.2rem;cursor:pointer;transition:background-color .2s;color:#fff;flex-shrink:0}.btn-nav:hover{background-color:#ffffff4d}@media (max-width: 720px){.calendar-header{padding:.5rem;overflow:hidden}.calendar-header-content{gap:.5rem;width:100%;box-sizing:border-box}.calendar-header-top{gap:.5rem;width:100%;position:static}.calendar-header-left{flex:0 1 auto;min-width:0}.calendar-header-month-center{position:static;transform:none;flex:1;min-width:0}.calendar-header-top .calendar-header-icons{flex:0 0 auto}.calendar-header h1{font-size:.875rem;line-height:1.2;min-width:0}.calendar-header-icons{gap:.375rem;flex-shrink:0}.calendar-header-bottom{flex-wrap:wrap;gap:.5rem;width:100%}.calendar-navigation{flex:1;min-width:0;justify-content:space-between;gap:.375rem}.calendar-navigation-inline{flex:0 0 auto;margin-left:.25rem}.calendar-navigation h2{font-size:.875rem;flex:1;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-nav{padding:.25rem .5rem;font-size:.9375rem;flex-shrink:0}.user-info{font-size:.6875rem;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}.btn-audit,.btn-logout{padding:.375rem;width:32px;height:32px}.btn-audit-icon,.btn-logout-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px}.btn-audit-text,.btn-logout-text{display:none}}.calendar-mobile{display:flex;flex-direction:column;gap:.5rem;width:100%;min-height:min-content;padding-bottom:1rem}.calendar-day-mobile{background:#fff;border:1px solid #ddd;border-radius:5px;padding:1rem;cursor:pointer;transition:background-color .2s;width:100%;flex-shrink:0;box-sizing:border-box}.calendar-day-mobile:hover{background-color:#f9f9f9}.calendar-day-mobile.calendar-day-today{border:2px solid #4CAF50;background-color:#4caf501a}.calendar-day-header-mobile{font-weight:700;font-size:1rem;margin-bottom:.5rem;color:#333}.calendar-day-today .calendar-day-header-mobile{color:#fff;background-color:#4caf50;padding:.25rem .5rem;border-radius:4px;display:inline-block}.calendar-day-tasks-mobile{display:flex;flex-direction:column;gap:.0625rem;width:100%;min-height:0}.calendar-desktop{background:#fff;border-radius:8px;padding:.5rem;box-shadow:0 2px 4px #0000001a;flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:.5rem;flex-shrink:0}.calendar-weekday{text-align:center;font-weight:700;padding:.5rem;color:#666}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(0,1fr);gap:0;border:1px solid #ddd;flex:1;min-height:0;overflow:hidden}.calendar-day{min-height:0;border:1px solid #ddd;padding:.125rem .25rem .25rem;cursor:pointer;transition:background-color .2s;display:flex;flex-direction:column;overflow:hidden;position:relative}.calendar-day:hover{background-color:#f9f9f9}.calendar-day-other-month{background-color:#fafafa;color:#ccc}.calendar-day-today{background-color:#4caf5026;border:2px solid #4CAF50}.calendar-day-number{font-weight:700;margin:0;text-align:center;flex-shrink:0;line-height:1.2}.calendar-day-today .calendar-day-number{color:#fff;background-color:#388e3c;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin:0 auto .125rem}.calendar-day-tasks{flex:1;display:flex;flex-direction:column;gap:1px;overflow-y:auto;min-height:0;margin-top:.125rem}.calendar-day-more{font-size:.75rem;color:#666;text-align:center;padding:.25rem;flex-shrink:0;margin-top:auto}.roles-dialog.roles-dialog{max-width:420px}.roles-dialog-note{font-size:.875rem;color:#666;margin-bottom:1rem}.roles-dialog-list{margin:0;padding-left:1.25rem;list-style:disc}.roles-dialog-list li{margin-bottom:.25rem}.app{width:100%;min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{width:100%;min-height:100vh}
