*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{height:100%;margin:0;padding:0;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--page-bg);color:var(--text-primary);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.bg-container,.blob{display:none}@keyframes float{0%{transform:translate(0,0) scale(1)}100%{transform:translate(40px,40px) scale(1.1)}}.btn-action{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--brand-primary);border:1px solid transparent;color:var(--on-strong);font-weight:var(--font-semibold);font-size:var(--text-md);line-height:var(--leading-tight);display:flex;align-items:center;justify-content:center;gap:var(--space-2);text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.btn-action:hover{background:var(--brand-primary-hover);color:var(--on-strong);text-decoration:none}.m-press:active{transform:scale(.96)}.btn-action:active{background:var(--brand-primary-active)}.btn-action:focus-visible{outline:0;box-shadow:var(--focus-ring)}.btn-action.secondary{background:var(--surface-bg);border-color:var(--surface-border-strong);color:var(--text-primary)}.btn-action.secondary:hover{background:var(--surface-bg-hover);color:var(--text-primary)}.btn-action.secondary:active{background:var(--surface-bg-hover);border-color:var(--input-border)}.btn-action.outline{background:0 0;border-color:var(--brand-primary-text);color:var(--brand-primary-text)}.btn-action i{font-size:var(--text-lg)}.btn-action:disabled,.btn-action[aria-disabled=true]{opacity:.6;pointer-events:none}.header{gap:var(--space-3);min-height:calc(56px + var(--safe-area-top));padding:calc(var(--space-2) + var(--safe-area-top)) calc(var(--space-4) + var(--safe-area-right)) var(--space-2) calc(var(--space-4) + var(--safe-area-left));display:flex;align-items:center;justify-content:space-between;z-index:10;position:sticky;top:0;background:var(--surface-bg);border-bottom:1px solid var(--surface-border)}.header h1{font-size:var(--text-xl);flex:1;min-width:0;overflow-wrap:anywhere;font-weight:700;margin:0;color:var(--text-primary)}.back-btn{width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-bg);border:1px solid var(--surface-border);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.plan-header h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 2px 0}.plan-date{font-size:.8rem;color:var(--text-muted)}.plan-title{font-size:1.1rem;font-weight:600;margin:0}.plan-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}.plan-meta .meta-item{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted)}.plan-meta span{color:var(--text-muted);font-size:.8rem}.plan-meta .meta-item i{width:14px;color:var(--brand-primary)}.plan-card,.plan-info-card{color:var(--text-primary)}.btn-view{color:var(--brand-primary-active);font-weight:600;text-decoration:none;font-size:.9rem;display:flex;align-items:center;gap:5px}.main-content{padding:var(--space-4) calc(var(--space-4) + var(--safe-area-right)) calc(var(--bottom-nav-height) + var(--safe-area-bottom) + var(--space-6)) calc(var(--space-4) + var(--safe-area-left));flex:1;display:flex;flex-direction:column;gap:1.25rem}.current-status-card,.detail-card,.doc-card,.glass-card,.menu-item,.plan-card,.plan-info-card,.status-card-compact,.task-card{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:none;text-decoration:none;color:inherit;display:block}.plans-container{display:flex;flex-direction:column;gap:1.25rem;padding-bottom:2rem}.empty-state,.loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;text-align:center;color:var(--text-muted)}.empty-state i,.loading i{font-size:2.5rem;margin-bottom:var(--space-4);color:var(--text-muted)}.empty-state h5{font-size:1.25rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:700}.empty-state p{font-size:.9rem;max-width:250px;margin:0 auto;line-height:1.5}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--surface-border)}.card-header i{font-size:1.25rem;color:var(--brand-primary)}.card-title{font-size:1.1rem;font-weight:700;margin:0;color:var(--text-primary)}.section-label{display:block;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:var(--space-2) 0 var(--space-1)}.btn-add-doc,.btn-primary,.login-btn,.logout-btn{background:var(--brand-primary);border:none;border-radius:var(--radius-md);min-height:48px;padding:.85rem;color:var(--on-strong);font-weight:600;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;cursor:pointer;text-decoration:none;transition:background-color var(--transition-fast)}.btn-primary:active{transform:scale(.97)}.btn-start{background:var(--brand-primary)}.btn-complete{background:linear-gradient(135deg,var(--color-success),var(--color-success-hover))}.btn-reopen{background:linear-gradient(135deg,var(--color-warning),var(--color-warning-hover))}.status-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1.2;display:inline-block;white-space:nowrap;flex-shrink:0}.status-badge.new{background:var(--color-info-soft);color:var(--color-info-text)}.status-badge.completed{background:var(--color-success-soft);color:var(--color-success-text)}.status-badge.in-progress{background:var(--color-warning-soft);color:var(--color-warning-text)}.status-badge.cancelled{background:var(--color-danger-soft);color:var(--color-danger-text)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1.5rem}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.info-item span{font-size:.95rem;font-weight:600}.info-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:.75rem 0;border-bottom:1px solid var(--surface-border)}.info-row:last-child{border-bottom:none}.info-label{flex-shrink:0;font-size:var(--text-sm);color:var(--text-muted)}.info-value{min-width:0;text-align:right;overflow-wrap:break-word;font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.info-value a{display:inline-flex;align-items:center;min-height:44px;color:var(--brand-primary-text);text-decoration:none}.glass-alert{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:16px;margin-bottom:1.5rem}.glass-alert.alert-warning{background:color-mix(in srgb,var(--color-warning) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-warning) 20%,transparent);color:var(--color-warning)}.glass-alert i{font-size:1.25rem}.alert-title{font-weight:700;font-size:.95rem}.alert-desc{font-size:.8rem;opacity:.8}.gps-box{margin-top:1.5rem;padding:1rem;background:var(--surface-bg);border-radius:16px;border:1px solid var(--surface-border);text-align:center}.gps-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.gps-info-bar{display:flex;align-items:center;gap:8px;padding:.4rem .5rem;opacity:.75}.gps-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;transition:background .3s}.gps-acquiring{background:var(--color-warning);animation:pulse 1.5s infinite}.gps-ok{background:var(--color-success)}.gps-error{background:var(--color-danger)}.gps-coords{font-family:Monaco,Consolas,monospace;font-size:1.1rem;font-weight:700;color:var(--text-primary);display:flex;justify-content:center;align-items:center;gap:4px}.gps-sep{color:var(--brand-primary)}.actions-stack{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.action-area{margin-top:2rem}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.task-card-title{font-size:1rem;font-weight:600;margin:0}.task-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}.task-meta div{font-size:.85rem;color:var(--text-muted);display:flex;align-items:center;gap:8px}.task-meta i{width:14px;color:var(--brand-primary)}.task-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--surface-border)}.btn-task-status{background:var(--surface-bg-hover);border:1px solid var(--surface-border);color:var(--text-primary);padding:6px 12px;border-radius:10px;font-size:.8rem}.header-right{display:flex;align-items:center;gap:10px}.user-avatar{width:38px;height:38px;background:var(--brand-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);font-weight:700}.logout-icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid color-mix(in srgb,var(--color-danger) 20%,transparent);background:color-mix(in srgb,var(--color-danger) 10%,transparent);color:var(--color-danger-text);display:flex;align-items:center;justify-content:center}.status-card-compact{display:flex;align-items:center;gap:12px;padding:.85rem 1.25rem}.status-icon-box-small{width:42px;height:42px;background:color-mix(in srgb,var(--brand-primary) 10%,transparent);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--brand-primary);font-size:1.1rem}.status-details{flex:1}.status-label-small{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.status-live{font-size:.9rem;font-weight:700}.indicator-dot{width:8px;height:8px;border-radius:50%;background:var(--neutral-strong)}.indicator-dot.active{background:var(--color-success);box-shadow:0 0 10px var(--color-success);animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}100%{transform:scale(1);opacity:1}}.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;grid-auto-rows:1fr}.menu-item{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-decoration:none;color:var(--text-primary);font-weight:500;font-size:.9rem;min-height:100px;height:100%;text-align:center;justify-content:center}.menu-item i{font-size:1.5rem;width:1.5rem;text-align:center;color:var(--brand-primary)}.menu-item span{line-height:1.2;font-size:.85rem}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;padding:.5rem 0 calc(.5rem + var(--safe-area-bottom));background:var(--backdrop);border-top:1px solid var(--surface-border);z-index:300}.bottom-nav .nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--text-muted);font-size:.65rem;font-weight:500;text-decoration:none;transition:color var(--transition-fast,150ms ease);padding:.25rem .5rem;min-width:56px;user-select:none;-webkit-tap-highlight-color:transparent}.bottom-nav .nav-item i{font-size:1.3rem;transition:transform var(--transition-fast,150ms ease)}.bottom-nav .nav-item.active{color:var(--brand-primary)}.bottom-nav .nav-item.active i{transform:translateY(-2px)}.bottom-nav .nav-item:active{transform:scale(.92)}.chat-container{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-4) calc(var(--bottom-nav-height) + 76px + var(--safe-area-bottom));display:flex;flex-direction:column;gap:1rem}.message{max-width:85%;padding:.85rem 1.15rem;border-radius:20px;font-size:.95rem;position:relative;line-height:1.4;color:var(--text-primary)}.message-sent{align-self:flex-end;background:var(--brand-primary);border-bottom-right-radius:4px;box-shadow:0 4px 15px color-mix(in srgb,var(--brand-primary) 20%,transparent)}.message-received{align-self:flex-start;background:var(--surface-bg-hover);border-bottom-left-radius:4px;border:1px solid var(--surface-border)}.message-time{font-size:.65rem;color:var(--text-secondary);display:block;margin-top:4px;text-align:right}.input-area{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));left:0;width:100%;padding:var(--space-2) calc(var(--space-4) + var(--safe-area-right)) var(--space-2) calc(var(--space-4) + var(--safe-area-left));background:var(--surface-bg);border-top:1px solid var(--surface-border);z-index:50}.input-wrapper{display:flex;gap:10px;align-items:center}.chat-input{flex:1;background:var(--surface-bg);border:1px solid var(--input-border);border-radius:22px;min-height:44px;padding:.6rem 1rem;color:var(--text-primary);font-family:inherit;font-size:max(16px,1em);resize:none;max-height:120px}.send-btn{width:44px;height:44px;flex-shrink:0;border-radius:50%;border:none;background:var(--brand-primary);color:var(--on-strong);display:flex;align-items:center;justify-content:center}.empty-chat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);opacity:.5;gap:1rem}.empty-chat i{font-size:3rem}.doc-grid{display:flex;flex-direction:column;gap:1.25rem;margin-top:.5rem;padding-bottom:2rem}.doc-card{padding:1rem;display:flex;flex-direction:row;align-items:center;gap:1rem;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:18px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg);transition:all .3s ease}.doc-card:active{transform:scale(.98);background:var(--surface-bg-hover)}.thumb-area{width:65px;height:65px;background:var(--surface-bg);border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:inset 0 0 10px var(--shadow-color)}.thumb-img{width:100%;height:100%;object-fit:cover}.doc-type-icon{font-size:2.2rem;opacity:.8}.doc-info{flex-grow:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.doc-name{font-size:.95rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.doc-date{font-size:.75rem;color:var(--text-muted)}.doc-actions{display:flex;flex-direction:row;gap:8px;flex-shrink:0}.action-icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--surface-border);background:linear-gradient(135deg,var(--surface-bg-hover),var(--surface-bg));color:var(--text-primary);font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:var(--shadow-md)}.action-icon-btn:active{background:var(--brand-primary);transform:translateY(2px);box-shadow:var(--shadow-sm)}.current-status-card{display:flex;align-items:center;justify-content:space-between;position:relative}.status-badge-large{display:flex;align-items:center;gap:1.5rem}.status-icon-glow{width:54px;height:54px;background:color-mix(in srgb,var(--brand-primary) 15%,transparent);border-radius:18px;display:flex;align-items:center;justify-content:center;color:var(--brand-primary);font-size:1.5rem}.status-details h2{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;margin:0;letter-spacing:1px}.status-details p{font-size:1.4rem;font-weight:700;margin:0}.indicator-dot.break{background:var(--color-warning);box-shadow:0 0 10px var(--color-warning)}.indicator-dot.inactive{background:var(--color-danger)}.status-grid{display:flex;flex-direction:column;gap:1rem}.status-option{display:flex;align-items:center;gap:1.25rem;padding:1.25rem;border-radius:20px;border:1px solid var(--surface-border);background:var(--surface-bg)}.status-option.selected{border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 10%,transparent)}.select-dot{width:20px;height:20px;border:2px solid var(--surface-border);border-radius:50%;position:relative}.selected .select-dot::after{content:'';position:absolute;width:10px;height:10px;background:var(--brand-primary);border-radius:50%;top:3px;left:3px}.option-info h3{font-size:1.05rem;margin:0}.option-info p{font-size:.8rem;color:var(--text-muted);margin:2px 0 0}.option-icon{font-size:1.25rem}.option-icon.active{color:var(--color-success)}.option-icon.break{color:var(--color-warning)}.option-icon.inactive{color:var(--color-danger)}.toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:var(--surface-bg);padding:.75rem 1.5rem;border-radius:50px;border:1px solid var(--surface-border);z-index:1000;display:none;font-weight:600;font-size:.9rem;box-shadow:var(--shadow-lg)}.date-navigator{display:flex;align-items:center;background:var(--surface-bg);border-radius:var(--radius-md);padding:var(--space-1);border:1px solid var(--surface-border)}.nav-arrow{width:44px;height:44px;background:0 0;border:none;color:var(--text-primary);font-size:1rem}.date-display{flex:1;text-align:center;display:flex;flex-direction:column;position:relative}.human-date{font-weight:var(--font-bold);font-size:var(--text-md)}.human-date::first-letter{text-transform:uppercase}.nav-arrow{border-radius:var(--radius-md);cursor:pointer}.nav-arrow:hover{background:var(--surface-bg-hover)}.date-display:focus-within,.nav-arrow:focus-visible{outline:0;box-shadow:var(--focus-ring);border-radius:var(--radius-md)}.full-date{font-size:var(--text-sm);color:var(--text-muted)}.hidden-date-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}.form-control,.form-control-custom{width:100%;min-height:44px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);padding:12px 16px;color:var(--text-primary);font-size:max(16px,1em)}.form-control-custom option{background-color:var(--page-bg);color:var(--text-primary)}.card{background:var(--surface-bg)!important;border-color:var(--surface-border)!important;color:var(--text-primary)!important}.table{color:var(--text-primary)!important;background:0 0!important}.table thead th{color:var(--text-muted)!important;border-color:var(--surface-border)!important}.table tbody td{border-color:var(--surface-divider)!important;color:var(--text-primary)!important}.error-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;text-align:center;color:var(--color-danger)}.error-state i{font-size:3.5rem;margin-bottom:1.5rem;opacity:.8}.task-item{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:14px;padding:.75rem 1rem;margin-bottom:.5rem;color:var(--text-primary)}.task-item strong{color:var(--text-primary);font-size:.85rem}.task-item p,.task-item small{color:var(--text-muted);font-size:.75rem}.add-section{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:16px;padding:1rem;margin-top:.5rem}.barcode-row{display:flex;gap:8px;align-items:center}.barcode-row .form-control{flex:1}.point-item{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:12px;padding:.75rem 1rem;margin-bottom:.5rem;cursor:pointer;transition:background .2s;color:var(--text-primary)}.point-item strong{color:var(--text-primary)}.point-item small{color:var(--text-muted)}.point-item:active{background:color-mix(in srgb,var(--brand-primary) 15%,transparent)}.form-section{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:20px;padding:1.5rem;box-shadow:var(--shadow-lg)}label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:.35rem;margin-top:1rem}label:first-child{margin-top:0}.input-group{display:flex;gap:8px;align-items:stretch}.input-group .form-control{flex:1}.input-group .btn{flex-shrink:0;border-radius:12px!important;padding:0 14px;background:var(--surface-bg-hover);border:1px solid var(--surface-border);color:var(--text-secondary);font-size:.9rem}.input-group .btn:active{background:color-mix(in srgb,var(--brand-primary) 20%,transparent);color:var(--brand-primary)}.btn-outline-secondary{background:var(--surface-bg);border:1px solid var(--surface-border);color:var(--text-secondary);border-radius:12px}.btn-outline-secondary:active,.btn-outline-secondary:hover{background:color-mix(in srgb,var(--brand-primary) 15%,transparent);color:var(--brand-primary);border-color:var(--brand-primary)}.profile-hero{display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem 1.5rem;text-align:center}.avatar-container{width:100px;height:100px;border-radius:30px;background:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;box-shadow:0 10px 30px color-mix(in srgb,var(--brand-primary) 40%,transparent);border:3px solid var(--surface-border-strong);overflow:hidden}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:3rem;color:var(--text-primary)}.profile-hero h2{font-size:1.5rem;font-weight:700;margin:0}.profile-hero p{font-size:.9rem;color:var(--text-muted);margin:5px 0 0}.detail-item,.toggle-item{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--surface-border)}.detail-item:last-child,.toggle-item:last-child{border-bottom:none}.detail-info{display:flex;align-items:center;gap:12px}.detail-info i{width:32px;height:32px;background:var(--surface-bg);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--brand-primary);font-size:.9rem}.detail-info span{font-size:.9rem;font-weight:500;color:var(--text-muted)}.detail-value{font-size:.95rem;font-weight:600}.switch,.switch-small{position:relative!important;display:inline-block;overflow:hidden}.switch{width:44px;height:24px}.switch-small{width:38px;height:20px}.switch input,.switch-small input{opacity:0;width:0;height:0}.switch .slider-toggle,.switch-small .slider-toggle{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--surface-bg-hover);transition:.4s;border-radius:34px}.switch .slider-toggle:before,.switch-small .slider-toggle:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--text-primary);transition:.4s;border-radius:50%}.switch-small .slider-toggle:before{height:14px;width:14px}.switch input:checked+.slider-toggle,.switch-small input:checked+.slider-toggle{background:var(--brand-primary)}.switch input:checked+.slider-toggle:before{transform:translateX(20px)}.switch-small input:checked+.slider-toggle:before{transform:translateX(18px)}.logout-btn{margin-top:1rem;background:color-mix(in srgb,var(--color-danger) 10%,transparent)!important;border:1px solid color-mix(in srgb,var(--color-danger) 20%,transparent)!important;color:var(--color-danger-text)!important;box-shadow:none!important}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--backdrop);z-index:100;display:none}.upload-modal{position:fixed;bottom:0;left:0;width:100%;background:var(--surface-bg);border-radius:24px 24px 0 0;padding:1.5rem 1.5rem calc(1.5rem + var(--safe-area-bottom));z-index:150;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.upload-modal.active{transform:translateY(0)}.modal-drag-handle{width:40px;height:5px;background:var(--surface-bg-hover);border-radius:10px;margin:-.5rem auto 1.5rem}.file-input-wrapper{border:2px dashed var(--surface-border);border-radius:20px;padding:2.5rem 1rem;text-align:center;cursor:pointer;background:var(--surface-bg)}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;height:calc(var(--bottom-nav-height) + var(--safe-area-bottom));background:var(--surface-bg);border-top:1px solid var(--surface-border);display:flex;justify-content:space-around;align-items:stretch;padding:0 var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left);z-index:100}.nav-link{flex:1 1 0;min-width:0;min-height:48px;text-decoration:none;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:var(--text-xs);font-weight:var(--font-medium);transition:color var(--transition-fast)}.nav-link i{font-size:1.25rem}.nav-link>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--brand-primary-text);font-weight:var(--font-semibold)}.nav-link:focus-visible{outline:0;box-shadow:inset var(--focus-ring)}.bottom-nav .nav-icon{position:relative;display:inline-flex}.nav-center-btn{width:54px;height:54px;min-width:54px;min-height:54px;flex-shrink:0;background:var(--brand-primary);border-radius:18px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);font-size:1.4rem;margin-top:-28px;border:3px solid var(--page-bg);box-shadow:0 4px 15px color-mix(in srgb,var(--brand-primary) 40%,transparent);text-decoration:none;z-index:101}.login-shell{position:fixed;inset:0;display:flex;flex-direction:column;background-color:var(--page-bg)}.login-hero{position:relative;overflow:hidden;flex:0 0 calc(var(--safe-area-top) + 112px);display:flex;align-items:flex-start;justify-content:flex-end;padding:calc(var(--safe-area-top) + var(--space-2)) calc(var(--safe-area-right) + var(--space-3)) 0 calc(var(--safe-area-left) + var(--space-3));border-bottom:1px solid var(--surface-border)}.login-contours{position:absolute;inset:0;width:100%;height:100%;color:var(--surface-border);pointer-events:none}.login-contours path{vector-effect:non-scaling-stroke}.login-brand{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);color:var(--brand-primary-text);font-size:var(--text-xl);font-weight:var(--font-bold)}.login-mark{width:var(--space-10);height:auto;flex-shrink:0}.lang-switcher{position:relative;display:flex;gap:var(--space-1)}.lang-switcher a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none}.lang-switcher a:active,.lang-switcher a:hover{color:var(--text-primary);text-decoration:none}.lang-switcher a.active-lang{color:var(--text-primary);font-weight:var(--font-bold);text-decoration:underline;text-underline-offset:4px}.login-sheet{position:relative;flex:1 1 auto;min-height:0;display:flex;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-6) calc(var(--safe-area-right) + var(--space-5)) calc(var(--safe-area-bottom) + var(--space-2)) calc(var(--safe-area-left) + var(--space-5))}.login-sheet-inner{width:100%;max-width:440px;min-height:100%;height:fit-content;margin:0 auto;display:flex;flex-direction:column}.login-title{margin:0;font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text-primary)}.login-subtitle{margin:var(--space-1) 0 var(--space-6);font-size:var(--text-md);color:var(--text-secondary)}.login-flash{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3);background-color:var(--color-danger-soft);border-radius:var(--radius-sm);color:var(--color-danger-text);font-size:var(--text-sm);line-height:var(--leading-normal)}.login-flash--info{background-color:var(--surface-bg-alt);color:var(--text-primary)}.login-flash[hidden]{display:none}.login-flash i{line-height:inherit}.login-form .form-group{margin-bottom:var(--space-4)}.login-form .form-group[hidden]{display:none}.login-form .form-label{display:block;margin-bottom:var(--space-1);font-size:var(--text-base);font-weight:var(--font-medium);letter-spacing:normal;text-transform:none;color:var(--text-primary)}.login-form .form-control{height:var(--space-12);padding:0 var(--space-4);background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-lg)}.login-form .form-control:focus{background-color:var(--input-bg-focus);border-color:var(--brand-primary);box-shadow:var(--focus-ring);color:var(--text-primary);outline:0}.login-saved{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:44px;margin-bottom:var(--space-4);color:var(--text-primary)}.login-saved[hidden]{display:none}.login-saved b{font-weight:var(--font-semibold);overflow-wrap:anywhere}#installButton,.login-link{flex-shrink:0;min-height:44px;padding:0;background:0 0;border:none;border-radius:var(--radius-sm);color:var(--text-link);font:inherit;cursor:pointer}.password-wrapper{position:relative;width:100%}.password-wrapper .form-control{padding-right:var(--space-12)}.password-toggle{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--space-12);height:var(--space-12);padding:0;background:0 0;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-lg);cursor:pointer}.password-toggle:active,.password-toggle:hover{color:var(--text-primary)}.login-form .btn-primary{height:var(--space-12);min-height:var(--space-12);margin-top:var(--space-2);padding:0 var(--space-4);background:var(--brand-primary);border:none;border-radius:var(--radius-sm);box-shadow:none;color:var(--on-strong);font-size:var(--text-lg);font-weight:var(--font-semibold)}.login-form .btn-primary:hover{background:var(--brand-primary-hover)}.login-form .btn-primary:active{background:var(--brand-primary-active);transform:none}.login-form .btn-primary:disabled{background:var(--input-disabled-bg);color:var(--input-disabled-fg);transform:none}#installButton:focus,.login-form .btn-primary:focus,.login-link:focus,.password-toggle:focus{outline:0;box-shadow:none}#installButton:focus-visible,.lang-switcher a:focus-visible,.login-form .btn-primary:focus-visible,.login-link:focus-visible,.password-toggle:focus-visible{outline:0;box-shadow:var(--focus-ring)}.login-help{margin:var(--space-4) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.login-install{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--space-2);margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.version-info{margin-top:auto;padding-top:var(--space-4);text-align:center;color:var(--text-muted);font-size:var(--text-xs)}@media (max-height:640px){.login-hero{flex-basis:calc(var(--safe-area-top) + 56px);padding-top:calc(var(--safe-area-top) + var(--space-1))}.login-sheet{padding-top:var(--space-5)}.login-brand{margin-bottom:var(--space-4)}}@media (max-width:350px){.menu-grid{grid-template-columns:1fr}.doc-grid{grid-template-columns:1fr}}@media (min-width:768px){.main-content{max-width:600px;margin:0 auto}}.mobile-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2000;visibility:hidden;pointer-events:none;transition:all .35s cubic-bezier(.4,0,.2,1)}.mobile-modal.active{visibility:visible;pointer-events:auto}.mobile-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--backdrop);opacity:0;transition:opacity .3s ease}.mobile-modal.active .mobile-modal-overlay{opacity:1}.mobile-modal-content{position:absolute;bottom:0;left:0;width:100%;max-height:90vh;background:var(--surface-bg);border-radius:30px 30px 0 0;padding:1.25rem 1.5rem calc(1.5rem + var(--safe-area-bottom));transform:translateY(100%);transition:transform .4s cubic-bezier(.18,.89,.32,1.1);border-top:1px solid var(--surface-border);box-shadow:var(--shadow-xl);display:flex;flex-direction:column}.modal-scrollable-body{flex:1;overflow-y:auto;padding-right:5px;margin-right:-5px;-webkit-overflow-scrolling:touch}.mobile-modal.active .mobile-modal-content{transform:translateY(0)}.modal-handle{width:40px;height:4px;background:var(--surface-bg-hover);border-radius:10px;margin:-.5rem auto 1.5rem}.status-options-grid{display:grid;grid-template-columns:1fr;gap:10px}.status-option-btn{padding:1rem;border-radius:16px;background:var(--surface-bg);border:1px solid var(--surface-border);color:var(--text-primary);font-weight:500;text-align:center}.status-option-btn.selected{border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 10%,transparent)}.actions-grid-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:1rem}.action-item{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:16px;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;cursor:pointer;transition:all .2s ease;min-height:100px;position:relative}.action-item:active{background:var(--surface-bg-hover);transform:scale(.98)}.action-icon{width:40px;height:40px;background:color-mix(in srgb,var(--brand-primary) 15%,transparent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--brand-primary);font-size:1.2rem;margin-bottom:5px}.action-name{font-size:.85rem;font-weight:600;color:var(--text-primary);line-height:1.3}.action-count-badge{position:absolute;top:-5px;right:-5px;background:var(--color-success);color:var(--text-primary);font-size:.7rem;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md)}.history-list{display:flex;flex-direction:column;gap:10px;margin-top:1rem}.history-item{background:var(--surface-bg);border:1px solid var(--surface-border)!important;border-radius:12px!important;padding:12px!important;border-left:3px solid var(--brand-primary)!important}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.history-item-name{font-weight:600;font-size:.95rem;color:var(--text-primary)}.history-item-time{font-size:.75rem;color:var(--text-muted)}.history-item-desc{font-size:.85rem;color:var(--text-secondary);margin-top:6px;padding-top:6px;border-top:1px solid var(--surface-border)}.delete-action-btn{background:0 0;border:none;color:var(--color-danger);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;padding:0;opacity:.6}.delete-action-btn:active{background:color-mix(in srgb,var(--color-danger) 10%,transparent);opacity:1;transform:scale(.9)}.delete-action-btn i{font-size:.9rem}.form-control-custom option{background-color:var(--page-bg)!important;color:var(--text-primary)!important}.icon-danger{color:var(--color-danger)}.icon-primary{color:var(--brand-primary)}.icon-success{color:var(--color-success)}.flex-1{flex:1}.card-title-task{font-size:1.3rem;margin:.25rem 0}.info-value-address{max-width:60%;text-align:right}.danger-icon-circle{margin:0 auto 1rem;width:60px;height:60px;background:color-mix(in srgb,var(--color-danger) 10%,transparent);color:var(--color-danger)}.btn-action-danger{background:var(--color-danger)!important;box-shadow:0 4px 15px color-mix(in srgb,var(--color-danger) 30%,transparent)!important}.loading-dim-text{color:var(--text-muted);margin-top:1rem}.modal-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-title-sm{margin:0 0 1.5rem;font-size:1.25rem}.modal-title-sm.no-mb{margin-bottom:0}.context-selector{padding:10px;background:var(--surface-bg);border-radius:8px;margin-bottom:1rem}.context-label{display:block;text-align:center;margin-bottom:10px}.radio-group{display:flex;justify-content:center;gap:20px;margin-bottom:15px}.radio-label{color:var(--text-primary);font-weight:500;margin-left:5px}.file-input-icon{font-size:2rem;color:var(--brand-primary);margin-bottom:.5rem}.file-input-label{margin:0;font-weight:600}.file-name-label{margin-top:1rem;font-size:.85rem;text-align:center;color:var(--color-success)}.btn-add-doc.submit{margin-top:2rem;margin-bottom:0}.upload-modal.preview-modal{height:auto;max-height:90vh;overflow-y:auto}.modal-close-btn{background:0 0;border:none;color:var(--text-primary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.preview-img{width:100%;border-radius:12px;display:block;margin-bottom:1rem}.btn-add-doc.download-btn{text-decoration:none;text-align:center;display:block}.spacer-20{height:20px}.js-alert-margin{margin:1rem}.js-empty-msg{width:100%;margin:1rem 0}.js-empty-msg-lg{margin:2rem}.error-center-msg{text-align:center;color:var(--color-danger)}.modal-title-lg{margin:0 0 1.5rem;font-size:1.5rem}.status-badge-xs{margin:0;padding:2px 8px;font-size:10px}.task-chevron-link{font-size:12px;color:var(--text-muted);font-weight:500}.task-chevron-link i{font-size:10px}.status-option-btn.disabled-status{opacity:.5;pointer-events:none;border:1px solid var(--brand-primary)}.glass-card-p16{padding:16px}.install-prompt-row{display:flex;justify-content:space-between;align-items:center}.icon-mr-10{margin-right:10px}.btn-install{background:var(--brand-primary);color:var(--text-primary);border:none;border-radius:8px;padding:6px 14px}body.login-page{overflow:hidden;overscroll-behavior:none;position:fixed;width:100%;height:100%;max-height:100%}.mobile-error-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;text-align:center}.mobile-error-icon{width:90px;height:90px;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:30px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:3rem;color:var(--brand-primary)}.mobile-error-code{font-size:4rem;font-weight:800;background:var(--brand-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 .5rem;line-height:1}.mobile-error-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem}.mobile-error-message{font-size:.95rem;color:var(--text-muted);max-width:300px;margin:0 auto 2rem;line-height:1.5}.mobile-error-btn{display:inline-flex;align-items:center;gap:8px;padding:.85rem 1.5rem;background:var(--brand-primary);border:none;border-radius:14px;color:var(--text-primary);font-weight:600;font-size:.95rem;text-decoration:none;box-shadow:0 4px 15px color-mix(in srgb,var(--brand-primary) 30%,transparent);transition:all .2s ease}.mobile-error-btn:active{transform:scale(.97)}.btn-header-action{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);font-size:var(--text-sm);text-decoration:none}.btn-header-action:focus-visible,.btn-header-action:hover{text-decoration:none}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea{font-size:max(16px,1em)}.m-offline-banner{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:var(--space-2);padding:calc(var(--space-2) + var(--safe-area-top)) var(--space-4) var(--space-2);background:var(--color-warning-soft);color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);border-bottom:1px solid var(--surface-border)}.m-offline-banner i{color:var(--color-warning-text)}.m-offline-banner[hidden]{display:none}body.is-offline .header{padding-top:var(--space-2);min-height:56px}.m-header-title{flex:1;min-width:0}.m-header-title h1{line-height:var(--leading-tight)}.m-header-sub{margin:2px 0 0;color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-header-sub::first-letter{text-transform:uppercase}.m-avatar{width:44px;height:44px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--brand-primary-soft);color:var(--brand-primary-text);font-weight:var(--font-bold);text-decoration:none}.m-avatar:focus-visible,.m-btn-text:focus-visible,.m-gps-pill:focus-visible,.m-list-card:focus-visible,.m-row:focus-visible{outline:0;box-shadow:var(--focus-ring)}.m-gps-pill{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);border:1px solid var(--surface-border);border-radius:var(--radius-full);background:var(--surface-bg-alt);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);text-decoration:none;white-space:nowrap}.m-gps-dot{width:8px;height:8px;flex-shrink:0;border-radius:var(--radius-full);background:var(--neutral-strong)}[data-gps-indicator][data-state=background] .m-gps-dot,[data-gps-indicator][data-state=tracking] .m-gps-dot{background:var(--color-success)}[data-gps-indicator][data-state=offline] .m-gps-dot{background:var(--color-warning)}[data-gps-indicator][data-state=error] .m-gps-dot,[data-gps-indicator][data-state=no_permission] .m-gps-dot{background:var(--color-danger)}@media (max-width:359px){.m-gps-pill [data-gps-label]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.m-gps-pill{width:44px;justify-content:center;padding:0}}.m-stack{gap:var(--space-5)}.m-section-title{margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary)}.m-card{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:var(--space-4);color:var(--text-primary);display:flex;flex-direction:column;gap:var(--space-3)}.m-card[hidden],section[hidden]{display:none}.m-card-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary)}.m-hint,.m-text{margin:0;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-secondary)}.m-hint{font-size:var(--text-sm);color:var(--text-muted)}.m-hint[hidden]{display:none}.m-muted{color:var(--text-muted)}.m-notice-head{display:flex;align-items:center;gap:var(--space-3)}.m-notice-icon{width:40px;height:40px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--brand-primary-soft);color:var(--brand-primary-text);font-size:var(--text-lg)}.m-notice-actions{display:flex;flex-direction:column;gap:var(--space-2)}.m-card [hidden],.m-notice-actions [hidden]{display:none}.m-steps{margin:0;padding-left:var(--space-5);color:var(--text-secondary);line-height:var(--leading-relaxed)}.m-steps i{color:var(--brand-primary-text)}.m-btn-text{min-height:44px;border:0;background:0 0;color:var(--text-secondary);font-weight:var(--font-semibold);font-size:var(--text-base);border-radius:var(--radius-md);cursor:pointer}.m-btn-text:hover{color:var(--text-primary);background:var(--surface-bg-hover)}.m-switch-row{display:flex;align-items:flex-start;gap:var(--space-3)}.m-switch-text{flex:1;min-width:0}.m-gps-state{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-base)}.m-gps-card[data-state=background] .m-gps-state,.m-gps-card[data-state=tracking] .m-gps-state{color:var(--color-success-text);font-weight:var(--font-medium)}.m-gps-card[data-state=error] .m-gps-state,.m-gps-card[data-state=no_permission] .m-gps-state{color:var(--color-danger-text);font-weight:var(--font-medium)}.m-gps-card[data-state=offline] .m-gps-state{color:var(--color-warning-text);font-weight:var(--font-medium)}.m-switch{position:relative;flex-shrink:0;width:56px;height:44px;display:inline-flex;align-items:center;margin:0;cursor:pointer}.m-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.m-switch-track{position:relative;width:52px;height:32px;border-radius:var(--radius-full);background:var(--surface-bg-hover);border:1px solid var(--input-border);transition:background-color var(--transition-fast)}.m-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:var(--radius-full);background:var(--text-muted);transition:transform var(--transition-fast),background-color var(--transition-fast)}.m-switch input:checked+.m-switch-track{background:var(--brand-primary);border-color:var(--brand-primary)}.m-switch input:checked+.m-switch-track::after{transform:translateX(20px);background:var(--on-strong)}.m-switch input:focus-visible+.m-switch-track{box-shadow:var(--focus-ring)}.m-list{display:flex;flex-direction:column;gap:var(--space-2)}.m-list-card{text-decoration:none;gap:var(--space-2)}.m-list-card:hover{background:var(--surface-bg-hover);color:var(--text-primary);text-decoration:none}.m-list-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.m-list-card-title{margin:0;min-width:0;font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary);overflow-wrap:anywhere}.m-next-address{display:flex;gap:var(--space-2);margin:0;font-size:var(--text-md);font-weight:var(--font-medium);color:var(--text-primary);overflow-wrap:break-word;hyphens:auto}.m-next-address i{margin-top:3px;color:var(--text-muted)}.m-meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:0;color:var(--text-secondary);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.m-meta span{display:inline-flex;align-items:center;gap:var(--space-1)}.m-meta i{color:var(--text-muted)}.m-empty-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.m-skeleton{gap:var(--space-2)}.m-skeleton span{display:block;height:14px;border-radius:var(--radius-xs);background:var(--surface-bg-hover)}.m-skeleton span:first-child{width:45%;height:20px}.m-skeleton span:nth-child(2){width:85%}.m-skeleton span:nth-child(3){width:60%}@media (prefers-reduced-motion:no-preference){.m-skeleton span{animation:m-skeleton-pulse 1.4s ease-in-out infinite}}@keyframes m-skeleton-pulse{50%{opacity:.5}}.m-row-list{list-style:none;margin:0;padding:0;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden}.m-row-list li+li{border-top:1px solid var(--surface-border)}.m-row{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) var(--space-4);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--font-medium);text-decoration:none}.m-row:hover{background:var(--surface-bg-hover);color:var(--text-primary);text-decoration:none}.m-row>i:first-child{width:24px;text-align:center;color:var(--text-muted);font-size:var(--text-lg)}.m-row-label{flex:1;min-width:0}.m-row-chevron{color:var(--text-muted);font-size:var(--text-sm)}.bottom-nav .notification-badge-messages,.m-row .notification-badge-orders{display:none;align-items:center;justify-content:center;position:static;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-full);background:var(--accent-soft);border:1px solid var(--accent);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-bold);box-shadow:none}.bottom-nav .notification-badge-messages{position:absolute;top:-8px;right:-14px;min-width:18px;height:18px;padding:0 4px;background:var(--surface-bg)}@media (orientation:landscape) and (max-height:500px){:root{--bottom-nav-height:52px}.nav-link{flex-direction:row;gap:var(--space-2)}}@media (max-height:420px) and (orientation:portrait){.bottom-nav{display:none}}.m-setting{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.m-setting-main{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.m-setting-label{display:inline-flex;align-items:baseline;gap:var(--space-3);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--font-medium)}.m-setting-label i{width:20px;text-align:center;color:var(--text-muted)}.m-setting-value{flex-shrink:0;max-width:50%;text-align:right;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.m-setting .m-hint{padding-left:calc(20px + var(--space-3))}.m-setting .m-switch-row{align-items:center}.m-setting .m-switch-text .m-hint{margin-top:var(--space-1)}.m-profile-id{flex-direction:row;align-items:center}.m-profile-avatar{width:56px;height:56px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--brand-primary-soft);color:var(--brand-primary-text);font-size:var(--text-xl);font-weight:var(--font-bold);object-fit:cover}.m-profile-name{min-width:0}.m-profile-name .m-card-title{overflow-wrap:anywhere}.m-segmented{display:flex;padding:var(--space-1);gap:var(--space-1);background:var(--surface-bg-alt);border:1px solid var(--surface-border);border-radius:var(--radius-md)}.m-segment{flex:1;min-height:44px;border:0;background:0 0;font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary);font-weight:var(--font-semibold);text-decoration:none}.m-segment:hover{color:var(--text-primary);text-decoration:none}.m-segment.active{background:var(--surface-bg);color:var(--brand-primary-text);box-shadow:inset 0 0 0 1px var(--surface-border-strong)}.m-segment:focus-visible{outline:0;box-shadow:var(--focus-ring)}.m-today .main-content>*{order:3}.m-today .main-content>[aria-labelledby=m-next-title]{order:1}.m-today .main-content>#m-rest-section{order:2}.m-today .main-content>.m-notice{order:4}.m-today .main-content>.m-gps-card{order:5}.m-today .main-content>#m-more{order:6}.m-today .main-content>.m-gps-card[data-state=error],.m-today .main-content>.m-gps-card[data-state=no_permission],.m-today .main-content>.m-gps-card[data-state=paused]{order:0}.m-conn{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap}.m-conn[data-state=on] .m-gps-dot{background:var(--color-success)}.m-conn[data-state=off] .m-gps-dot{background:var(--color-danger)}.m-conn[data-state=off]{color:var(--color-danger-text)}@media (max-height:420px) and (orientation:portrait){.input-area{bottom:0}}.header .btn-action{width:auto;flex-shrink:0;min-height:44px;padding:0 var(--space-4)}.date-display{text-transform:none;letter-spacing:normal;margin:0;cursor:pointer}.m-action-bar:has(.btn-action){position:sticky;bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));z-index:5;margin:0 calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);background:var(--surface-bg);border-top:1px solid var(--surface-border)}.m-action-bar .actions-stack:empty{display:none}.m-nav-btn{margin-top:var(--space-3)}@media (orientation:landscape) and (max-height:500px){.m-action-bar:has(.btn-action){position:static;margin:0;border:0;padding:0;background:0 0}}.m-btn-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.m-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.m-count{display:inline-block;min-width:22px;padding:0 6px;border-radius:var(--radius-full);background:var(--surface-bg-hover);color:var(--text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:center}.m-search{position:relative;margin-bottom:var(--space-2)}.m-search i{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.m-search input{width:100%;min-height:44px;padding:var(--space-2) var(--space-3) var(--space-2) calc(var(--space-3) * 2 + 14px);border:1px solid var(--input-border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text-primary)}.m-search input:focus-visible{outline:0;box-shadow:var(--focus-ring)}.m-file-list{list-style:none;margin:0;padding:0;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden}.m-file{display:flex;align-items:center;gap:var(--space-1);padding-right:var(--space-2)}.m-file[hidden]{display:none}.m-file+.m-file{border-top:1px solid var(--surface-border)}.m-file-main{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-2) var(--space-3);border:0;background:0 0;color:var(--text-primary);text-align:left;cursor:pointer}.m-file-main:hover{background:var(--surface-bg-hover)}.m-file-main:focus-visible,.m-icon-btn:focus-visible{outline:0;box-shadow:inset var(--focus-ring)}.m-file-thumb{width:48px;height:48px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-bg-alt);border:1px solid var(--surface-border);color:var(--text-muted);font-size:var(--text-xl)}.m-file-thumb img{width:100%;height:100%;object-fit:cover}.m-file-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.m-file-name{display:flex;min-width:0;font-size:var(--text-base);font-weight:var(--font-medium)}.m-file-base{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-file-ext{flex-shrink:0;white-space:nowrap}.m-file-meta{color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.m-icon-btn{width:44px;height:44px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-md);background:0 0;color:var(--text-secondary);cursor:pointer}.m-icon-btn:hover{background:var(--surface-bg-hover);color:var(--text-primary)}.overlay{z-index:120}.m-sheet{display:flex;flex-direction:column;gap:var(--space-3);max-height:88dvh;overflow-y:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-3) calc(var(--space-4) + var(--safe-area-right)) calc(var(--space-4) + var(--safe-area-bottom)) calc(var(--space-4) + var(--safe-area-left))}.m-sheet-actions{display:flex;flex-direction:column;gap:var(--space-2);position:sticky;bottom:calc(-1 * (var(--space-4) + var(--safe-area-bottom)));padding:var(--space-2) 0 var(--space-1);background:var(--surface-bg)}@media (prefers-reduced-motion:reduce){.upload-modal{transition:none}}.m-fieldset{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:var(--space-2)}.m-label{display:block;margin:0;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:none;letter-spacing:normal}.m-fieldset [hidden]{display:none}.m-segment-radio{position:relative;margin:0;text-transform:none;letter-spacing:normal;cursor:pointer;text-align:center}.m-segment-radio input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.m-segment-radio:has(input:checked){background:var(--surface-bg);color:var(--brand-primary-text);box-shadow:inset 0 0 0 1px var(--surface-border-strong)}.m-segment-radio:has(input:focus-visible){box-shadow:var(--focus-ring)}.m-queue{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.m-queue:empty{display:none}.m-queue-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-1) var(--space-2) var(--space-3);border:1px solid var(--surface-border);border-radius:var(--radius-md)}.m-queue-icon{width:24px;flex-shrink:0;text-align:center;color:var(--text-muted)}.m-queue-item[data-state=sent] .m-queue-icon,.m-queue-item[data-state=sent] .m-queue-status{color:var(--color-success-text)}.m-queue-item[data-state=failed],.m-queue-item[data-state=invalid]{border-color:var(--color-danger-text);background:var(--color-danger-soft)}.m-queue-item[data-state=failed] .m-queue-icon,.m-queue-item[data-state=failed] .m-queue-status,.m-queue-item[data-state=invalid] .m-queue-icon,.m-queue-item[data-state=invalid] .m-queue-status{color:var(--color-danger-text)}.m-progress{display:block;height:4px;margin-top:var(--space-1);border-radius:var(--radius-full);background:var(--surface-bg-hover);overflow:hidden}.m-progress span{display:block;height:100%;background:var(--brand-primary);transition:width var(--transition-fast)}.m-btn-sm{min-height:44px;padding:0 var(--space-3);color:var(--brand-primary-text)}.btn-action[disabled]{opacity:.55;pointer-events:none}.m-flash{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-info-soft);color:var(--text-primary);font-size:var(--text-base)}.m-flash[hidden]{display:none}.m-flash i{margin-top:3px;color:var(--color-info-text)}.m-flash.is-error{background:var(--color-danger-soft)}.m-flash.is-error i{color:var(--color-danger-text)}.m-flash.is-success{background:var(--color-success-soft)}.m-flash.is-success i{color:var(--color-success-text)}#docForm{display:flex;flex-direction:column;gap:var(--space-5)}.m-form-card{gap:var(--space-4)}.m-field{display:flex;flex-direction:column;gap:var(--space-1)}.m-field .form-control-custom:focus,.m-field .form-control-custom:focus-visible{outline:0;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.m-field [aria-invalid=true]{border-color:var(--color-danger-text)}.m-field textarea.form-control-custom{min-height:96px;resize:vertical}.m-field-error{margin:0;color:var(--color-danger-text);font-size:var(--text-sm);font-weight:var(--font-medium)}.m-field-error[hidden]{display:none}.m-req{color:var(--color-danger-text)}.m-check{display:flex;align-items:center;gap:var(--space-3);min-height:44px;margin:0;color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-medium);text-transform:none;letter-spacing:normal;cursor:pointer}.m-check input{width:22px;height:22px;flex-shrink:0;accent-color:var(--brand-primary)}.m-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.m-check-item{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-md)}.m-check-head{display:flex;align-items:center;gap:var(--space-2)}.m-check-icon{width:20px;color:var(--surface-border-strong)}.m-check-item[data-state=done] .m-check-icon{color:var(--color-success-text)}.m-check-title{flex:1;min-width:0;font-size:var(--text-md);font-weight:var(--font-semibold);overflow-wrap:anywhere}.m-check-state{flex-shrink:0;color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--font-semibold)}.m-check-item[data-state=done] .m-check-state{color:var(--color-success-text)}.m-action-bar .m-hint{margin-bottom:var(--space-2)}.m-action-bar .m-progress{margin:0 0 var(--space-2)}.m-action-bar [hidden]{display:none}.m-status-actions{display:flex;flex-direction:column;gap:var(--space-2)}.m-status-actions:empty{display:none}.m-btn-danger{color:var(--color-danger-text)}.m-btn-danger:hover{color:var(--color-danger-text);background:var(--color-danger-soft)}.date-navigator.is-today-only{min-height:52px;justify-content:center}.date-navigator.is-today-only .date-display{cursor:default}