@import "https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Barlow+Condensed:wght@400;500;600;700;800&display=swap";:root{--color-navy:#1b2a6b;--color-navy-dark:#111b47;--color-navy-light:#2e3f8a;--color-gold:#f5a623;--color-gold-light:#ffbe54;--color-gold-pale:#fff8e6;--color-cyan:#2aaae1;--color-success:#1d9e75;--color-success-bg:#1d9e7526;--color-warning:#d97706;--color-warning-bg:#d9770626;--color-error:#dc2626;--color-error-bg:#dc262626;--color-bg-deep:#eef2f8;--color-bg-surface:#fff;--color-text-primary:#1e293b;--color-text-secondary:#475569;--color-text-muted:#64748b;--color-border:#1b2a6b2e;--color-border-focus:#2aaae1cc;--color-surface-card:#fff;--color-surface-section:#f0f4fa;--color-surface-content:#f7f9fc;--color-border-input:#c8d3e0;--color-border-list:#e2e8f0;--font-main:"Barlow", sans-serif;--font-title:"Barlow Condensed", sans-serif;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg-deep);color:var(--color-text-primary);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0 0,#2aaae10d 0,#0000 40%),radial-gradient(at 100% 100%,#f5a6230a 0,#0000 40%);background-attachment:fixed;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);letter-spacing:.05em;text-transform:uppercase}.glass-panel{background:var(--color-bg-surface);-webkit-backdrop-filter:blur(12px)saturate(180%);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;box-shadow:0 8px 24px #1b2a6b0f}.glass-panel:hover{border-color:#1b2a6b40}.glass-btn{-webkit-backdrop-filter:blur(8px);color:var(--color-text-primary);font-family:var(--font-main);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:#1b2a6b0d;border:1px solid #1b2a6b1f;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #fff9,0 2px 4px #1b2a6b0d}.glass-btn:hover:not(:disabled){background:#1b2a6b1a;border-color:#1b2a6b40;transform:translateY(-1px);box-shadow:inset 0 1px #fffc,0 4px 8px #1b2a6b14}.glass-btn:active:not(:disabled){border-color:var(--color-cyan);background:#2aaae126;transform:translateY(1px);box-shadow:inset 0 1px #fff6,0 0 10px #2aaae133}.glass-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;pointer-events:none}.glass-btn-primary{background:var(--color-navy);border-color:var(--color-navy);color:#fff}.glass-btn-primary:hover:not(:disabled){background:var(--color-navy-light);border-color:var(--color-navy-light);box-shadow:0 4px 12px #1b2a6b33}.glass-btn-primary:disabled{color:#f8fafc;opacity:.75;background:#94a3b8;border-color:#94a3b8}.glass-btn-primary.active,.glass-btn.active{background:var(--color-cyan);border-color:var(--color-cyan);color:#fff;box-shadow:0 0 10px #2aaae14d}.glass-btn-success{color:var(--color-success);background:#1d9e7514;border-color:#1d9e7559}.glass-btn-success:hover:not(:disabled){background:#1d9e752e;border-color:#1d9e7580}.glass-btn-success.active{background:var(--color-success);border-color:var(--color-success);color:#fff;box-shadow:0 0 15px #1d9e7566}.glass-btn-warning{color:var(--color-warning);background:#d9770614;border-color:#d9770659}.glass-btn-warning:hover:not(:disabled){background:#d977062e;border-color:#d9770680}.glass-btn-warning.active{background:var(--color-warning);border-color:var(--color-warning);color:#fff;box-shadow:0 0 15px #d9770666}.glass-btn-danger{color:var(--color-error);background:#dc262614;border-color:#dc262659}.glass-btn-danger:hover:not(:disabled){background:#dc26262e;border-color:#dc262680}.glass-btn-danger.active{background:var(--color-error);border-color:var(--color-error);color:#fff;box-shadow:0 0 15px #dc262666}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-deep)}::-webkit-scrollbar-thumb{background:var(--color-navy-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-cyan)}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.grid-2{grid-template-columns:1fr}}.container{max-width:1200px;margin:0 auto;padding:20px}.assembly-container{max-width:1200px;margin:0 auto;padding-bottom:40px}.assembly-header-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:16px;margin-bottom:24px;padding:24px;position:relative;overflow:hidden;box-shadow:0 10px 30px #1b2a6b0f}.assembly-header-card:before{content:"";background:linear-gradient(90deg, var(--color-navy), var(--color-cyan), var(--color-gold));height:4px;position:absolute;top:0;left:0;right:0}.assembly-header-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.assembly-title{color:var(--color-navy);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:1.6rem;font-weight:700;display:flex}.assembly-project-pill{color:var(--color-cyan);background:#2aaae11f;border:1px solid #2aaae14d;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.assembly-subtitle{color:var(--color-text-secondary);margin-top:6px;font-size:.88rem;line-height:1.4}.assembly-progress-panel{background:var(--color-surface-section);border:1px solid var(--color-border-list);border-radius:12px;margin-top:16px;padding:16px 20px}.assembly-progress-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.assembly-progress-label{color:var(--color-navy);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.assembly-progress-percent{color:var(--color-cyan);font-size:1.1rem;font-weight:700;font-family:var(--font-title)}.assembly-progress-bar-bg{background:#e2e8f0;border-radius:4px;width:100%;height:8px;overflow:hidden}.assembly-progress-bar-fill{background:linear-gradient(90deg, var(--color-cyan), var(--color-success));border-radius:4px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.assembly-stage-pills{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:14px;display:grid}.assembly-stage-pill-item{border:1px solid var(--color-border-list);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:.8rem;display:flex}.assembly-stage-pill-item:hover{border-color:var(--color-cyan);background:#2aaae10a;transform:translateY(-1px)}.assembly-stage-pill-item.completed{color:var(--color-success);background:#1d9e750f;border-color:#1d9e7559;font-weight:600}.assembly-stage-pill-badge{width:22px;height:22px;color:var(--color-text-secondary);background:#e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.assembly-stage-pill-item.completed .assembly-stage-pill-badge{background:var(--color-success);color:#fff}.assembly-section-card{background:var(--color-bg-surface);border:1px solid var(--color-border);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:14px;margin-bottom:20px;padding:24px;box-shadow:0 4px 16px #1b2a6b0a}.assembly-section-card:hover{border-color:#1b2a6b40}.assembly-section-title{color:var(--color-navy);letter-spacing:.03em;align-items:center;gap:10px;margin:0 0 16px;font-size:1.15rem;font-weight:700;display:flex}.assembly-section-icon{width:32px;height:32px;color:var(--color-navy);background:#1b2a6b12;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.assembly-notice-banner{color:var(--color-cyan);background:#2aaae114;border:1px solid #2aaae140;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:.85rem;line-height:1.45;display:flex}.assembly-grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=900px){.assembly-grid-3{grid-template-columns:1fr 1fr}}@media (width<=600px){.assembly-grid-3{grid-template-columns:1fr}}.assembly-env-options{flex-wrap:wrap;gap:10px;display:flex}.assembly-env-btn{border:1px solid var(--color-border-input);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:.88rem;font-weight:500;display:inline-flex}.assembly-env-btn:hover:not(:disabled){border-color:var(--color-cyan);background:#2aaae10a;transform:translateY(-1px)}.assembly-env-btn.active{border-color:var(--color-cyan);color:var(--color-navy);background:#2aaae11f;font-weight:600;box-shadow:0 2px 8px #2aaae133}.assembly-env-btn:disabled{opacity:.5;cursor:not-allowed}.assembly-req-card{border:1px solid var(--color-border-list);background:#f8fafc;border-radius:12px;flex-direction:column;height:100%;padding:18px;display:flex}.assembly-req-card-header{border-bottom:1px solid var(--color-border-list);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}.assembly-req-card-title{color:var(--color-navy);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:flex}.assembly-req-item-box{border:1px solid var(--color-border-list);transition:all var(--transition-fast);background:#fff;border-radius:10px;flex-direction:column;gap:6px;margin-bottom:8px;padding:10px 12px;display:flex}.assembly-req-item-box:hover{border-color:var(--color-cyan);box-shadow:0 2px 8px #2aaae114}.assembly-req-item-box.checked{background:#1d9e750a;border-color:#1d9e7559}.assembly-req-item-main{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.assembly-req-item-title{color:var(--color-text-primary);flex:1;font-size:.88rem;font-weight:500;line-height:1.3}.assembly-req-item-box.checked .assembly-req-item-title{color:var(--color-navy);font-weight:600}.assembly-req-date-wrap{background:#fff;border:1px solid #1d9e7540;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding:5px 8px;animation:.2s ease-out fadeInDown;display:flex}.assembly-req-date-label{color:var(--color-success);white-space:nowrap;align-items:center;gap:4px;font-size:.72rem;font-weight:600;display:inline-flex}.assembly-req-date-input{border:1px solid var(--color-border-input);color:var(--color-navy);transition:border-color var(--transition-fast);background:#fafcfe;border-radius:5px;outline:none;padding:3px 6px;font-family:inherit;font-size:.76rem}.assembly-req-date-input:focus{border-color:var(--color-cyan);box-shadow:0 0 4px #2aaae140}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.assembly-stage-card{background:var(--color-bg-surface);border:1px solid var(--color-border);transition:all var(--transition-normal);border-radius:14px;margin-bottom:18px;overflow:hidden;box-shadow:0 4px 16px #1b2a6b0a}.assembly-stage-card.is-finished{border-color:#1d9e7559}.assembly-stage-card:hover{border-color:#1b2a6b4d;box-shadow:0 6px 20px #1b2a6b14}.assembly-stage-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.assembly-stage-header:hover{background:#f8fafd}.assembly-stage-title-wrap{align-items:center;gap:12px;display:flex}.assembly-stage-badge-num{background:var(--color-navy);color:#fff;width:32px;height:32px;font-size:.9rem;font-weight:700;font-family:var(--font-title);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.assembly-stage-card.is-finished .assembly-stage-badge-num{background:var(--color-success)}.assembly-stage-card-title{color:var(--color-navy);letter-spacing:.02em;margin:0;font-size:1.1rem;font-weight:700}.assembly-stage-header-actions{align-items:center;gap:12px;display:flex}.assembly-stage-body{border-top:1px solid var(--color-border-list);background:#fafcfe;padding:20px 24px 24px}.assembly-item-container{border:1px solid var(--color-border-list);transition:all var(--transition-fast);background:#fff;border-radius:10px;flex-direction:column;margin-bottom:10px;display:flex;overflow:hidden}.assembly-item-container:hover{border-color:#2aaae166;box-shadow:0 2px 8px #1b2a6b0a}.assembly-item-container.is-conforme{background:#1d9e7505;border-color:#1d9e7559}.assembly-item-container.is-no-conforme{background:#dc262605;border-color:#dc262659}.assembly-item-row{transition:all var(--transition-fast);background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.assembly-item-obs-wrap{background:#dc26260a;border-top:1px dashed #dc262640;padding:12px 16px 14px;animation:.2s ease-out fadeInDown}.assembly-item-obs-label{color:var(--color-error);align-items:center;gap:6px;margin-bottom:6px;font-size:.78rem;font-weight:600;display:flex}.assembly-item-obs-textarea{width:100%;color:var(--color-text-primary);resize:vertical;min-height:52px;transition:all var(--transition-fast);box-sizing:border-box;background:#fff;border:1px solid #dc26264d;border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:.85rem}.assembly-item-obs-textarea:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #dc262626}.assembly-item-title{color:var(--color-text-primary);flex:1;min-width:240px;font-size:.92rem;font-weight:500}.assembly-btn-group{gap:6px;display:inline-flex}.assembly-toggle-btn{text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--color-border-list);color:var(--color-text-secondary);background:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.assembly-toggle-btn:hover:not(:disabled){transform:translateY(-1px)}.assembly-toggle-btn.btn-conforme:hover:not(:disabled){border-color:var(--color-success);color:var(--color-success);background:#1d9e750f}.assembly-toggle-btn.btn-conforme.active{background:var(--color-success);border-color:var(--color-success);color:#fff;box-shadow:0 2px 10px #1d9e7559}.assembly-toggle-btn.btn-no-conforme:hover:not(:disabled){border-color:var(--color-error);color:var(--color-error);background:#dc26260f}.assembly-toggle-btn.btn-no-conforme.active{background:var(--color-error);border-color:var(--color-error);color:#fff;box-shadow:0 2px 10px #dc262659}.assembly-toggle-btn:disabled{opacity:.45;cursor:not-allowed}.assembly-stage-meta-box{border:1px solid var(--color-border-list);background:#fff;border-radius:10px;margin-top:16px;padding:16px}.assembly-bottom-bar{-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border);z-index:50;background:#fffffff2;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:30px;padding:16px 24px;display:flex;position:sticky;bottom:16px;box-shadow:0 10px 30px #1b2a6b1f}@media (width<=768px){.assembly-item-row{flex-direction:column;align-items:flex-start}.assembly-btn-group{justify-content:flex-end;width:100%}.assembly-bottom-bar{flex-direction:column;align-items:stretch;position:static}}
