:root{--primary:#2e6f95;--primary-dark:#235577;--primary-light:#e8f4fa;--primary-border:#c7dff1;--secondary:#4caf50;--secondary-light:#e8f5e9;--accent:#f4a261;--accent-light:#fef3e8;--error:#e63946;--error-light:#fdecea;--bg:#f7f9fb;--surface:#fff;--text-primary:#1f2933;--text-secondary:#6b7280;--border:#e5e7eb;--shadow-sm:0 1px 3px #1f293314;--shadow-md:0 4px 12px #1f29331a;--shadow-lg:0 8px 24px #1f29331f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--touch-min:44px;--bottom-nav-height:68px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text-primary);text-align:right;direction:rtl;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:16px;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.3}button{cursor:pointer;min-height:var(--touch-min);border-radius:var(--radius-md);border:none;font-family:inherit;font-size:1rem;transition:all .15s}button:active{transform:scale(.97)}input,select,textarea{text-align:right;min-height:var(--touch-min);border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);width:100%;padding:.625rem .875rem;font-family:inherit;font-size:1rem;transition:border-color .15s}textarea{resize:vertical;min-height:auto}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2e6f9526}a{color:inherit;text-decoration:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.badge{white-space:nowrap;border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.8rem;font-weight:700;display:inline-flex}.badge-draft{color:#3730a3;background:#eef2ff}.badge-open{color:#92400e;background:#fef3c7}.badge-completed{background:var(--secondary-light);color:#166534}.badge-inprogress{background:var(--accent-light);color:#9a3412}.badge-closed{background:var(--secondary-light);color:#166534}.badge-silent{color:#4b5563;background:#f3f4f6}.page-content{padding:1rem;padding-bottom:calc(var(--bottom-nav-height) + 1rem)}@media (width>=768px){.page-content{padding:calc(60px + 2rem) 2rem 2rem}}.top-settings{inset-inline-end:.75rem;top:calc(env(safe-area-inset-top,0px) + .6rem);z-index:1100;position:fixed}.top-settings-btn{border:1px solid var(--border);background:var(--surface);width:2.4rem;height:2.4rem;min-height:unset;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;display:inline-flex}.top-settings-btn:hover{border-color:var(--primary)}.top-settings-menu{inset-inline-end:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:9rem;box-shadow:var(--shadow-sm);flex-direction:column;gap:.2rem;padding:.3rem;display:flex;position:absolute;top:calc(100% + .35rem)}.top-settings-item{text-align:start;border-radius:var(--radius-sm);width:100%;min-height:unset;background:0 0;border:none;padding:.45rem .55rem}.top-settings-item:hover{background:var(--bg)}.top-settings-item-logout{color:var(--error)}.bottom-nav{height:var(--bottom-nav-height);background:var(--surface);border-top:1px solid var(--border);padding:0 .25rem;padding-bottom:env(safe-area-inset-bottom,0px);z-index:1000;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto;box-shadow:0 -2px 16px #1f293314}.bottom-nav-item{min-width:56px;color:var(--text-secondary);border-radius:var(--radius-md);min-height:unset;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem .75rem;text-decoration:none;transition:color .15s;display:flex}.bottom-nav-item.active{color:var(--primary)}.nav-icon{font-size:1.4rem;line-height:1}.nav-label{font-size:.68rem;font-weight:600;line-height:1}.bottom-nav-cta{background:var(--primary);color:#fff;border-radius:var(--radius-lg);width:62px;height:54px;min-height:unset;border:none;flex-direction:column;align-items:center;gap:.15rem;padding:.4rem;display:flex;transform:translateY(-10px);box-shadow:0 4px 14px #2e6f956b}.bottom-nav-cta:active{transform:translateY(-8px)scale(.96)}.cta-icon{font-size:1.6rem;font-weight:300;line-height:1}@media (width>=768px){.top-settings{inset-inline-end:1.2rem;top:.7rem}.bottom-nav{border-top:none;border-bottom:1px solid var(--border);height:60px;box-shadow:var(--shadow-sm);justify-content:flex-start;gap:.25rem;padding:0 2rem;top:0;bottom:auto}.bottom-nav-item{min-width:unset;flex-direction:row;gap:.4rem;padding:.5rem .875rem;font-size:.9rem}.nav-icon{font-size:1.1rem}.nav-label{font-size:.875rem}.bottom-nav-cta{width:auto;height:var(--touch-min);border-radius:var(--radius-md);flex-direction:row;gap:.4rem;margin:0 .5rem;padding:.5rem 1.25rem;transform:none}.cta-icon{font-size:1.1rem}}.dashboard{max-width:560px;margin:0 auto}.dash-header{margin-bottom:1.25rem}.dash-date{color:var(--text-secondary);margin-bottom:.2rem;font-size:.85rem}.dash-header h1{font-size:1.75rem}.dash-stats{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;display:grid}.dash-stat{background:var(--primary-light);border-radius:var(--radius-md);cursor:pointer;border:1.5px solid #0000;flex-direction:column;align-items:center;gap:.25rem;padding:1rem;transition:border-color .15s,box-shadow .15s;display:flex}.dash-stat:hover,.dash-stat:active{border-color:var(--primary);box-shadow:var(--shadow-sm)}.dash-stat-alert{background:var(--error-light)}.dash-stat-alert:hover,.dash-stat-alert:active{border-color:var(--error)}.dash-stat-num{color:var(--primary);font-size:2.25rem;font-weight:800;line-height:1}.dash-stat-alert .dash-stat-num{color:var(--error)}.dash-stat-label{color:var(--text-secondary);text-align:center;font-size:.78rem;font-weight:600}.dash-cta-btn{background:var(--primary);color:#fff;border-radius:var(--radius-lg);letter-spacing:.01em;border:none;width:100%;margin-bottom:1.25rem;padding:1rem;font-size:1.1rem;font-weight:700;box-shadow:0 4px 16px #2e6f9561}.dash-cta-btn:hover{background:var(--primary-dark);box-shadow:0 6px 20px #2e6f9573}.dash-section{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:.875rem;padding:1rem 1.125rem}.dash-section-title{align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:1rem;display:flex}.dash-count{background:var(--primary);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.dash-tours-list{flex-direction:column;gap:.5rem;display:flex}.dash-tour-card{background:var(--bg);border-radius:var(--radius-md);cursor:pointer;border:1.5px solid var(--border);min-height:var(--touch-min);justify-content:space-between;align-items:center;padding:.875rem 1rem;transition:border-color .15s,box-shadow .15s;display:flex}.dash-tour-card:hover,.dash-tour-card:active{border-color:var(--primary);box-shadow:var(--shadow-sm)}.dash-tour-info{flex-direction:column;gap:.15rem;display:flex}.dash-tour-building{color:var(--text-primary);font-size:.95rem;font-weight:700}.dash-tour-city{color:var(--text-secondary);font-size:.8rem}.dash-empty{color:var(--text-secondary);font-size:.9rem}.form-container{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.form-container h2{color:#2c3e50;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#2c3e50;margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;outline:none}.form-actions{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.btn-primary{color:#fff;background-color:#3498db}.btn-primary:hover{background-color:#2980b9}.btn-secondary{color:#fff;background-color:#95a5a6}.btn-secondary:hover{background-color:#7f8c8d}.btn-danger{color:#fff;background-color:#e74c3c}.btn-danger:hover{background-color:#c0392b}@media (width<=768px){.form-container{padding:1rem}.form-container h2{margin-bottom:1rem;font-size:1.6rem}.form-group{margin-bottom:1rem}.form-actions{grid-template-columns:1fr;margin-top:1.5rem;display:grid}.form-actions .btn{inline-size:100%;min-height:var(--touch-min)}}.list-container{background:#fff;border-radius:8px;padding:1.5rem;overflow-x:clip;box-shadow:0 2px 4px #0000001a}.list-container h2{color:#2c3e50;margin-bottom:1.5rem}.list-empty{text-align:center;color:#7f8c8d;padding:2rem}.list-item{border-bottom:1px solid #ecf0f1;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.list-item:last-child{border-bottom:none}.list-item:hover{background-color:#f8f9fa}.list-item-content{min-width:0}.list-item-content h3{color:#2c3e50;margin-bottom:.25rem}.list-item-content p{color:#7f8c8d;font-size:.9rem}.list-item-actions{flex-wrap:wrap;justify-content:flex-start;gap:.5rem;display:flex}.list-item-actions button{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .3s}.btn-history{color:#fff;background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 100%)}.btn-history:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0284c759}.btn-checklist{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.btn-checklist:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-edit{color:#fff;background:#3498db}.btn-edit:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px #3498db66}.btn-delete{color:#fff;background:#e74c3c}.btn-delete:hover{background:#c0392b;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c66}@media (width<=768px){.list-container{padding:1rem}.list-container h2{margin-bottom:1rem;font-size:1.6rem}.list-item{flex-direction:column;align-items:stretch}.list-item-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.list-item-actions button{inline-size:100%;min-height:var(--touch-min)}}@media (width<=480px){.list-item-actions{grid-template-columns:1fr}}.list{padding:0;list-style:none}.clickable{cursor:pointer}.list-item-btn{cursor:pointer;text-align:right;width:100%;font:inherit;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:0;display:flex}.list-item-btn:focus-visible{outline:2px solid var(--primary,#2980b9);outline-offset:2px;border-radius:4px}.list-item-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.list-item-title{color:var(--text-primary);font-weight:600}.list-item-sub{color:var(--text-secondary);font-size:.85rem}.list-item-meta{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.user-list-item{flex-direction:column;align-items:stretch}.user-list-item .list-item-btn{width:100%}.user-reset-panel{background:var(--primary-light);border:1px solid var(--primary-border);border-radius:var(--radius-md);gap:.6rem;margin-bottom:1rem;padding:1rem;display:grid}.user-reset-panel-title{color:var(--text-primary);font-weight:700}.user-reset-panel-meta{color:var(--text-secondary);font-size:.9rem}.user-reset-panel-actions{justify-content:flex-start;display:flex}.user-reset-error,.user-reset-success{border-radius:var(--radius-sm);margin-bottom:1rem;padding:.75rem 1rem}.user-reset-error{background:var(--error-light);color:var(--error)}.user-reset-success{background:var(--secondary-light);color:#166534}.checklist-manager-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.checklist-manager-modal{background:#fff;border-radius:12px;flex-direction:column;width:90%;max-width:900px;max-height:80vh;display:flex;box-shadow:0 10px 40px #0000004d}.modal-header{border-bottom:2px solid #e9ecef;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-header h2{color:#2c3e50;margin:0;font-size:1.5rem}.close-btn{color:#7f8c8d;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:2rem;transition:all .3s;display:flex}.close-btn:hover{color:#2c3e50;background:#f8f9fa}.checklist-content{flex:1;padding:2rem;overflow-y:auto}.checklist-section{margin-bottom:2rem}.checklist-section:last-child{margin-bottom:0}.checklist-section h3{color:#34495e;margin-bottom:1rem;font-size:1.2rem}.empty-state{color:#95a5a6;text-align:center;padding:2rem;font-style:italic}.checklist-items{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.checklist-card{border:2px solid;border-radius:8px;align-items:center;gap:.75rem;padding:1rem;transition:all .3s;display:flex}.checklist-card.assigned{cursor:grab;background:#e8f5e9;border-color:#4caf50}.checklist-card.assigned:active{cursor:grabbing}.checklist-card.available{background:#fff3e0;border-color:#ff9800}.checklist-card.dragging{opacity:.6;box-shadow:none;transform:scale(.98)}.checklist-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.item-icon{font-size:1.5rem}.item-name{color:#2c3e50;flex:1;font-weight:600}.required-badge{color:#fff;background:#ff6b6b;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.btn-add,.btn-remove{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:.5rem;font-size:1.2rem;transition:all .3s}.btn-add:hover{background:#4caf5033;transform:scale(1.2)}.btn-remove:hover{background:#f4433633;transform:scale(1.2)}.modal-footer{border-top:2px solid #e9ecef;justify-content:center;padding:1.5rem 2rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.item-reorder-buttons{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.btn-reorder{cursor:pointer;color:#555;background:0 0;border:1px solid #bdbdbd;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:.6rem;line-height:1;transition:background .2s,color .2s;display:flex}.btn-reorder:hover:not(:disabled){color:#2c3e50;background:#c8e6c9;border-color:#4caf50}.btn-reorder:disabled{opacity:.3;cursor:default}@media (width<=768px){.checklist-manager-modal{width:95%;max-height:90vh}.modal-header{padding:1rem}.modal-header h2{font-size:1.2rem}.buildings-page{padding:0}.buildings-page h1{color:#2c3e50;margin-bottom:1.5rem}.buildings-container{grid-template-columns:1fr 2fr;gap:1.5rem;display:grid}@media (width<=768px){.buildings-page h1{margin-bottom:1rem;font-size:1.8rem}.buildings-container{grid-template-columns:1fr;gap:1rem}}.users-page{padding:2rem}.users-page h1{color:#2c3e50;margin-bottom:2rem}.users-container{grid-template-columns:1fr 2fr;gap:2rem;display:grid}.building-assignment-list{flex-direction:column;gap:.5rem;display:flex}.building-assignment-item{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.9rem;transition:background .15s;display:flex}.building-assignment-item:hover{background:var(--primary-light)}@media (width<=768px){.users-container{grid-template-columns:1fr}}.wizard{max-width:520px;margin:0 auto}.wizard-header{margin-bottom:1.5rem}.wizard-header h1{margin-bottom:.2rem;font-size:1.75rem}.wizard-header p{color:var(--text-secondary);font-size:1rem}.wizard-back-link{color:var(--primary);cursor:pointer;background:0 0;border:none;min-height:auto;margin-bottom:1rem;padding:0;font-size:1rem;font-weight:600}.wizard-error{background:var(--error-light);color:var(--error);border-radius:var(--radius-md);margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600}.wizard-loading{color:var(--text-secondary);text-align:center;padding:2rem 0}.building-select-list{flex-direction:column;gap:.75rem;display:flex}.building-select-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);text-align:right;cursor:pointer;align-items:center;gap:1rem;min-height:72px;padding:1rem 1.25rem;transition:border-color .15s,box-shadow .15s;display:flex}.building-select-card:hover,.building-select-card:active{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.building-select-icon{flex-shrink:0;font-size:2rem}.building-select-text{flex-direction:column;flex:1;gap:.15rem;display:flex}.building-select-name{color:var(--text-primary);font-size:1.05rem;font-weight:700}.building-select-city{color:var(--text-secondary);font-size:.85rem}.building-select-arrow{color:var(--text-secondary);font-size:1.1rem}.wizard-field{margin-bottom:1.25rem}.wizard-field label{color:var(--text-primary);margin-bottom:.5rem;font-size:.95rem;font-weight:700;display:block}.wizard-cta-btn{background:var(--primary);color:#fff;border-radius:var(--radius-lg);border:none;width:100%;margin-top:.5rem;padding:1rem;font-size:1.1rem;font-weight:700;box-shadow:0 4px 14px #2e6f9559}.wizard-cta-btn:hover{background:var(--primary-dark)}.wizard-progress-track{background:var(--border);border-radius:999px;height:6px;margin-bottom:.4rem;overflow:hidden}.wizard-progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .35s}.wizard-progress-label{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.8rem;font-weight:600}.wizard-item-header{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.wizard-item-icon{flex-shrink:0;font-size:2.5rem}.wizard-item-name{color:var(--text-primary);flex:1;margin:0;font-size:1.4rem}.wizard-required-badge{background:var(--error-light);color:var(--error);border-radius:999px;flex-shrink:0;padding:.2rem .5rem;font-size:.72rem;font-weight:700}.wizard-status-buttons{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.wsb{border-radius:var(--radius-lg);border:2.5px solid var(--border);background:var(--bg);width:100%;min-height:60px;color:var(--text-primary);justify-content:center;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;transition:all .15s;display:flex}.wsb:active{transform:scale(.98)}.wsb-ok.wsb-selected{background:var(--secondary-light);border-color:var(--secondary);color:#166534}.wsb-fail.wsb-selected{background:var(--error-light);border-color:var(--error);color:var(--error)}.wsb-na.wsb-selected{border-color:var(--accent);color:#92400e;background:#fef3c7}.wizard-fault-box{background:var(--error-light);border-radius:var(--radius-lg);border:1.5px solid #fecdd3;margin-bottom:1.25rem;padding:1rem}.wizard-camera-area{margin-top:.75rem}.wizard-camera-btn{background:var(--surface);border:2px dashed var(--error);border-radius:var(--radius-md);width:100%;min-height:60px;color:var(--error);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;transition:background .15s;display:flex}.wizard-camera-btn:hover,.wizard-camera-btn:active{background:var(--error-light)}.wizard-img-preview{flex-direction:column;align-items:center;gap:.5rem;display:flex}.wizard-img-preview img{object-fit:cover;border-radius:var(--radius-md);width:100%;max-height:200px}.wizard-remove-img{background:var(--error);color:#fff;border-radius:var(--radius-sm);min-height:var(--touch-min);border:none;padding:.5rem 1rem;font-size:.875rem;font-weight:700}.wizard-nav-row{gap:.75rem;margin-top:1rem;display:flex}.wizard-nav-back{background:var(--surface);border:1.5px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);flex:1;padding:.875rem 1.25rem;font-size:1rem;font-weight:700}.wizard-nav-next{background:var(--primary);color:#fff;border-radius:var(--radius-md);border:none;flex:2;padding:.875rem 1.25rem;font-size:1rem;font-weight:700}.wizard-summary-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:1.25rem;padding:1rem 1.25rem}.summary-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.55rem 0;font-size:.95rem;display:flex}.summary-row:last-child{border-bottom:none}.summary-row span:first-child{color:var(--text-secondary);font-weight:600}.summary-row span:last-child{font-weight:700}.wizard-summary-stats{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem;display:grid}.summary-stat{border-radius:var(--radius-md);flex-direction:column;align-items:center;gap:.25rem;padding:.875rem;display:flex}.summary-stat span:first-child{font-size:1.75rem;font-weight:800;line-height:1}.summary-stat span:last-child{font-size:.75rem;font-weight:600}.summary-ok{background:var(--secondary-light);color:#166534}.summary-fail{background:var(--error-light);color:var(--error)}.summary-na{color:#92400e;background:#fef3c7}.wizard-issues-box{background:var(--error-light);border-radius:var(--radius-md);margin-bottom:1.25rem;padding:1rem}.wizard-issues-box h3{color:var(--error);margin-bottom:.75rem;font-size:.95rem}.wizard-issue-row{border-bottom:1px solid #fecdd3;flex-direction:column;gap:.15rem;padding:.45rem 0;font-size:.9rem;display:flex}.wizard-issue-row:last-child{border-bottom:none}.wizard-issue-row small{color:var(--text-secondary);font-size:.8rem}.wizard-submit-btn{background:var(--secondary);color:#fff;border-radius:var(--radius-lg);border:none;width:100%;margin-top:.5rem;padding:1rem;font-size:1.1rem;font-weight:700;box-shadow:0 4px 14px #4caf5059}.wizard-submit-btn:hover:not(:disabled){background:#43a047}.wizard-submit-btn:disabled{cursor:not-allowed;box-shadow:none;background:#a5d6a7}.tour-history-page{padding:1rem;padding-bottom:calc(var(--bottom-nav-height) + 1rem);direction:rtl}.tour-history-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.tour-history-header h1{color:var(--text-primary);margin:0;font-size:1.5rem}.tour-history-header p{color:var(--text-secondary);margin:.25rem 0 0;font-size:.9rem}.new-tour-btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);min-height:var(--touch-min);white-space:nowrap;border:none;padding:.625rem 1rem;font-weight:700;box-shadow:0 4px 12px #2e6f954d}.new-tour-btn:hover{background:var(--primary-dark)}.tour-history-filters{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:.75rem;margin-bottom:1.25rem;padding:1rem;display:grid}.filter-item{flex-direction:column;gap:.35rem;display:flex}.filter-item label{color:var(--text-primary);font-size:.85rem;font-weight:700}.filter-item select,.filter-item input{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:var(--touch-min);padding:.55rem .75rem;font-size:.9rem}.filter-item select:focus,.filter-item input:focus{border-color:var(--primary);outline:none}.clear-filters-btn{border:1.5px solid var(--border);background:var(--bg);color:var(--text-secondary);border-radius:var(--radius-md);min-height:var(--touch-min);font-weight:600}.clear-filters-btn:hover{background:var(--primary-light)}.tour-history-feedback{background:var(--surface);border-radius:var(--radius-md);text-align:center;color:var(--text-secondary);box-shadow:var(--shadow-sm);padding:1rem}.tour-history-feedback.error{color:var(--error);background:var(--error-light)}.tour-history-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.875rem;display:grid}.tour-history-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1.5px solid var(--border);flex-direction:column;gap:.4rem;padding:1rem 1.125rem;transition:border-color .15s,box-shadow .15s;display:flex}.tour-history-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.tour-history-card-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.tour-history-card-header h3{color:var(--text-primary);margin:0;font-size:1rem}.tour-history-card p{color:var(--text-secondary);margin:0;font-size:.875rem}.tour-history-card p strong{color:var(--text-primary)}.tour-history-actions{margin-top:.5rem}.tour-history-actions button{background:var(--primary);color:#fff;border-radius:var(--radius-md);width:100%;min-height:var(--touch-min);border:none;padding:.625rem;font-weight:700}.tour-history-actions button:hover{background:var(--primary-dark)}@media (width>=768px){.tour-history-page{padding:calc(60px + 2rem) 2rem 2rem}.tour-history-header{flex-direction:row;align-items:center}}@media (width<=480px){.tour-history-grid{grid-template-columns:1fr}.new-tour-btn{width:100%}}.attachment-gallery{width:100%;margin:1.5rem 0}.gallery-error{color:#c33;background-color:#fee;border:1px solid #fbb;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.gallery-upload{margin-bottom:1rem}.upload-btn{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:background-color .2s,transform .1s;display:inline-flex}.upload-btn:hover{background-color:#45a049}.upload-btn:active{transform:scale(.98)}.upload-btn:disabled{cursor:not-allowed;background-color:#ccc}.gallery-empty{color:#999;background-color:#f5f5f5;border:1px dashed #ddd;border-radius:8px;justify-content:center;align-items:center;min-height:80px;padding:1rem;font-size:.95rem;display:flex}.attachment-gallery.empty,.attachment-gallery.error,.attachment-gallery.loading{color:#666;border-radius:8px;justify-content:center;align-items:center;min-height:80px;padding:1rem;font-size:.95rem;display:flex}.attachment-gallery.empty{color:#999;background-color:#f5f5f5;border:1px dashed #ddd}.attachment-gallery.error{color:#c33;background-color:#fee;border:1px solid #fbb}.attachment-gallery.loading{color:#06c;background-color:#f0f8ff;border:1px solid #b3d9ff}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;padding:1rem 0;display:grid}.gallery-item{border-radius:8px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.gallery-item:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.image-wrapper{background-color:#f0f0f0;width:100%;padding-bottom:100%;position:relative;overflow:hidden}.gallery-image{object-fit:cover;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.gallery-item-footer{background-color:#fafafa;border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem;display:flex}.file-name{color:#666;white-space:nowrap;text-overflow:ellipsis;text-align:left;direction:ltr;flex:1;font-size:.8rem;overflow:hidden}.delete-btn{color:#c33;cursor:pointer;background-color:#fee;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:1rem;transition:background-color .2s,color .2s;display:flex}.delete-btn:hover{color:#b22;background-color:#fdd}.delete-btn:active{transform:scale(.95)}@media (width<=768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.gallery-item{border-radius:6px}}.tour-details-container{max-width:640px;padding:1rem;padding-bottom:calc(var(--bottom-nav-height) + 1rem);margin:0 auto}.tour-details-container.loading{min-height:50vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:1.1rem;display:flex}.tour-details-header{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.back-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;min-height:auto;padding:0;font-size:1rem;font-weight:600}.tour-details-header h1{color:var(--text-primary);flex:1;margin:0;font-size:1.4rem}.tour-details-content{flex-direction:column;gap:1rem;display:flex}.tour-info-section,.tour-results-section{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1.5px solid var(--border);padding:1rem 1.25rem}.tour-info-section h2,.tour-results-section h2{color:var(--text-primary);border-bottom:2px solid var(--primary-light);margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1rem}.info-grid{flex-direction:column;gap:.75rem;display:flex}.info-item{flex-direction:column;gap:.2rem;display:flex}.info-item label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:700}.info-item span,.info-item p{color:var(--text-primary);font-size:.95rem}.info-item p{background:var(--bg);border-radius:var(--radius-sm);border-right:3px solid var(--primary);margin:0;padding:.625rem .875rem}.tour-status-editor{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.status-badge{border-radius:999px;align-items:center;padding:.3rem .75rem;font-size:.82rem;font-weight:700;display:inline-flex}.status-badge.status-draft{color:#3730a3;background:#eef2ff}.status-badge.status-completed{background:var(--secondary-light);color:#166534}.status-badge.status-open{color:#92400e;background:#fef3c7}.tour-status-action-btn{background:var(--primary);color:#fff;border-radius:var(--radius-sm);min-height:var(--touch-min);border:none;padding:.5rem 1rem;font-size:.875rem;font-weight:700}.tour-status-action-btn:hover:not(:disabled){background:var(--primary-dark)}.tour-status-action-btn:disabled{cursor:not-allowed;background:#b0c4d4}.status-error{color:var(--error);margin-top:.4rem;font-size:.875rem}.results-list{flex-direction:column;gap:1rem;display:flex}.result-item{border-right:4px solid var(--primary);background:var(--bg);border-radius:var(--radius-md);padding:.875rem 1rem}.result-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.result-name{color:var(--text-primary);flex:1;font-size:.95rem;font-weight:700}.result-status{border-radius:999px;padding:.28rem .6rem;font-size:.8rem;font-weight:700}.result-status.status-true{background:var(--secondary-light);color:#166534}.result-status.status-false{background:var(--error-light);color:var(--error)}.result-status.status-null{color:#92400e;background:#fef3c7}.result-notes{color:var(--text-secondary);margin-top:.4rem;font-size:.875rem}.alert{border-radius:var(--radius-md);margin-bottom:1rem;padding:.875rem 1rem;font-size:.9rem;font-weight:600}.alert-error{background:var(--error-light);color:var(--error)}.alert-warning{color:#92400e;background:#fef3c7}.btn{min-height:var(--touch-min)}.btn-secondary{background:var(--surface);color:var(--primary);border:1.5px solid var(--primary);border-radius:var(--radius-md);padding:.625rem 1.25rem;font-weight:600}@media (width>=768px){.tour-details-container{padding:calc(60px + 2rem) 2rem 2rem}.info-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}}.checklist-types-page{max-width:1400px;margin:0 auto;padding:2rem}.checklist-types-page h1{color:#2c3e50;margin-bottom:2rem;font-size:2rem}.checklist-types-container{grid-template-columns:400px 1fr;align-items:start;gap:2rem;display:grid}.checklist-type-form{background:#fff;border-radius:8px;padding:2rem;position:sticky;top:2rem;box-shadow:0 2px 4px #0000001a}.checklist-type-form h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.5rem}.checklist-type-form .form-group{margin-bottom:1.5rem}.checklist-type-form label{color:#34495e;margin-bottom:.5rem;font-weight:500;display:block}.checklist-type-form input[type=text],.checklist-type-form input[type=number],.checklist-type-form textarea,.checklist-type-form select{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .3s}.checklist-type-form input:focus,.checklist-type-form textarea:focus,.checklist-type-form select:focus{border-color:#3498db;outline:none}.checklist-type-form textarea{resize:vertical;min-height:80px}.checklist-type-form .checkbox-group{align-items:center;display:flex}.checklist-type-form .checkbox-group label{cursor:pointer;align-items:center;margin:0;display:flex}.checklist-type-form .checkbox-group input[type=checkbox]{cursor:pointer;width:auto;margin-left:.5rem}.icon-preview{background:#f8f9fa;border-radius:4px;margin-top:.5rem;padding:.75rem;font-size:1.5rem}.form-actions{gap:1rem;margin-top:2rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;transition:background-color .3s}.btn-primary{color:#fff;background:#3498db}.btn-primary:hover:not(:disabled){background:#2980b9}.btn-secondary{color:#fff;background:#95a5a6}.btn-secondary:hover:not(:disabled){background:#7f8c8d}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.checklist-type-list{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.checklist-type-list h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.5rem}.table-responsive{overflow-x:auto}.checklist-types-table{border-collapse:collapse;width:100%}.checklist-types-table th,.checklist-types-table td{text-align:right;border-bottom:1px solid #ecf0f1;padding:1rem}.checklist-types-table th{color:#2c3e50;background:#f8f9fa;font-weight:600}.checklist-types-table tbody tr:hover{background:#f8f9fa}.icon-cell{text-align:center;font-size:1.5rem}.checklist-icon{display:inline-block}.no-icon{color:#bdc3c7}.status-badge{border-radius:12px;padding:.25rem .75rem;font-size:.875rem;font-weight:500;display:inline-block}.status-badge.active{color:#155724;background:#d4edda}.status-badge.inactive{color:#721c24;background:#f8d7da}.btn-edit{color:#fff;cursor:pointer;background:#3498db;border:none;border-radius:4px;padding:.5rem 1rem;transition:background-color .3s}.btn-edit:hover{background:#2980b9}.loading,.no-data,.error-message{text-align:center;color:#7f8c8d;padding:2rem}.error-message{color:#721c24;background:#f8d7da;border-radius:4px;margin-bottom:1rem;padding:1rem}@media (width<=1024px){.checklist-types-container{grid-template-columns:1fr}.checklist-type-form{position:static}}.findings-page{direction:rtl;max-width:640px;margin:0 auto}.findings-header{margin-bottom:1.25rem}.findings-header h1{margin-bottom:.2rem;font-size:1.5rem}.findings-header p{color:var(--text-secondary);margin:0;font-size:.875rem}.findings-filters{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.findings-filter-row{flex-wrap:wrap;gap:.5rem;display:flex}.filter-chip{background:var(--surface);border:1.5px solid var(--border);color:var(--text-secondary);min-height:var(--touch-min);border-radius:999px;padding:.4rem .875rem;font-size:.875rem;font-weight:600;transition:all .15s}.filter-chip.active,.filter-chip:active{background:var(--primary);border-color:var(--primary);color:#fff}.findings-building-select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:var(--touch-min);padding:.625rem .875rem;font-size:.9rem}.findings-feedback{text-align:center;color:var(--text-secondary);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem;font-size:.95rem}.findings-error{color:var(--error);background:var(--error-light)}.findings-cards{flex-direction:column;gap:.75rem;display:flex}.finding-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:.625rem;padding:1rem 1.125rem;transition:border-color .15s,box-shadow .15s;display:flex}.finding-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.finding-card--issue{border-right:4px solid var(--error)}.finding-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.finding-card-meta{flex-direction:column;gap:.2rem;display:flex}.finding-card-building{color:var(--text-primary);font-size:.95rem;font-weight:700}.finding-card-date{color:var(--text-secondary);font-size:.78rem}.finding-card-desc{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.5}.finding-card-footer{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.25rem;display:flex}.finding-card-tour-btn{background:var(--primary-light);color:var(--primary);border:1.5px solid var(--primary);border-radius:var(--radius-sm);min-height:var(--touch-min);white-space:nowrap;padding:.4rem .875rem;font-size:.875rem;font-weight:700}.finding-card-tour-btn:hover{background:var(--primary);color:#fff}.finding-status-selector{flex-direction:column;flex:1;gap:.35rem;display:flex}.status-select{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:var(--touch-min);padding:.45rem .75rem;font-size:.875rem;font-weight:600}.status-saving{color:var(--text-secondary);font-size:.8rem}.status-error{color:var(--error);font-size:.8rem}.close-dialog-overlay{z-index:2000;background:#1f29338c;justify-content:center;align-items:flex-end;padding:1rem;display:flex;position:fixed;inset:0}.close-dialog{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-direction:column;gap:.875rem;width:100%;max-width:480px;padding:1.5rem;display:flex}.close-dialog h3{margin:0}.close-dialog p{color:var(--text-secondary);margin:0;font-size:.9rem}.close-dialog-actions{gap:.75rem;display:flex}.btn-confirm{background:var(--secondary);color:#fff;border-radius:var(--radius-md);min-height:var(--touch-min);border:none;flex:2;padding:.75rem;font-weight:700}.btn-cancel{background:var(--bg);color:var(--text-secondary);border:1.5px solid var(--border);border-radius:var(--radius-md);min-height:var(--touch-min);flex:1;padding:.75rem;font-weight:600}.finding-status-badge{border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.8rem;font-weight:700;display:inline-flex}.finding-status-badge.badge-open{color:#92400e;background:#fef3c7}.finding-status-badge.badge-inprogress{background:var(--accent-light);color:#9a3412}.finding-status-badge.badge-closed{background:var(--secondary-light);color:#166534}.finding-status-badge.badge-silent{color:#4b5563;background:#f3f4f6}@media (width>=768px){.findings-cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:400px;padding:2.5rem 2rem}.login-logo{text-align:center;margin-bottom:2rem}.login-logo-icon{margin-bottom:.5rem;font-size:3rem;display:block}.login-title{color:var(--primary);margin-bottom:.25rem;font-size:2rem}.login-subtitle{color:var(--text-secondary);font-size:.95rem}.login-form{flex-direction:column;gap:1.25rem;display:flex}.login-field{flex-direction:column;gap:.5rem;display:flex}.login-field label{color:var(--text-primary);font-size:.9rem;font-weight:600}.login-error{background:var(--error-light);color:var(--error);border-radius:var(--radius-sm);text-align:center;padding:.75rem 1rem;font-size:.9rem}.login-btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);margin-top:.5rem;padding:.75rem;font-size:1rem;font-weight:700}.login-btn:hover:not(:disabled){background:var(--primary-dark)}.login-btn:disabled{opacity:.65;cursor:not-allowed}.reset-password-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:start;width:100%;max-width:440px;padding:2.5rem 2rem}.reset-password-title{color:var(--primary);margin-bottom:.5rem;font-size:1.75rem}.reset-password-subtitle{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.reset-password-error,.reset-password-success{border-radius:var(--radius-sm);text-align:start;padding:.75rem 1rem;font-size:.95rem}.reset-password-error{background:var(--error-light);color:var(--error)}.reset-password-success{background:var(--secondary-light);color:#166534}.reset-password-link{color:var(--primary);text-align:center;margin-top:.5rem;font-weight:600}.reset-password-link:hover{text-decoration:underline}#root{text-align:start;min-block-size:100vh;inline-size:100%;margin:0;padding:0}.logo{will-change:filter;height:6em;padding:1.5em;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:20s linear infinite logo-spin}}.card{padding:2em}.read-the-docs{color:#888}.app{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.main-content{padding-top:calc(env(safe-area-inset-top,0px) + 3rem);padding-bottom:var(--bottom-nav-height);flex:1}@media (width>=768px){.main-content{padding-bottom:0}}}
