@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Michroma&family=IBM+Plex+Sans+Arabic:wght@400;700&display=swap";:root{--primary:#1b3a5b;--primary-light:#254a73;--primary-dark:#122840;--accent:#d9a14a;--accent-hover:#b88330;--accent-light:#fffbeb;--bg-body:#f8fafc;--surface:#fff;--surface-hover:#f1f5f9;--text-dark:#0f172a;--text-muted:#64748b;--text-light:#94a3b8;--border:#e2e8f0;--border-focus:#1b3a5b;--success:#10b981;--success-bg:#ecfdf5;--success-border:#a7f3d0;--warning:#f59e0b;--warning-bg:#fffbeb;--warning-border:#fde68a;--error:#ef4444;--error-bg:#fef2f2;--error-border:#fecaca;--info:#3b82f6;--info-bg:#eff6ff;--info-border:#bfdbfe;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-body);color:var(--text-dark);min-height:100vh;overflow-x:hidden}.app-container{height:100vh;display:flex;position:relative;overflow:hidden}.main-content{background-color:var(--bg-body);flex-direction:column;flex:1;display:flex;overflow:hidden auto}.page-wrapper{width:100%;max-width:1400px;margin:0 auto;padding:30px}@media (width<=768px){.page-wrapper{padding:16px}}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:270px;transition:transform .3s;display:flex}.sidebar-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:24px 20px;display:flex}.sidebar-logo-icon{background:linear-gradient(135deg, var(--primary) 0%, #0c1c2e 100%);color:#fff;border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 4px 10px #1b3a5b40}.sidebar-title{color:var(--primary);letter-spacing:-.02em;font-size:1.25rem;font-weight:800;line-height:1.1}.sidebar-subtitle{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.nav-menu{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex;overflow-y:auto}.nav-item{color:var(--text-muted);border-radius:var(--radius-md);transition:var(--transition);cursor:pointer;align-items:center;gap:14px;padding:12px 16px;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--primary)}.nav-item.active{background:var(--accent-light);color:#92580c;font-weight:600}.sidebar-footer{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:18px 16px;display:flex}.user-badge{background:var(--surface-hover);border-radius:var(--radius-md);align-items:center;gap:10px;padding:10px 14px;display:flex}.user-avatar{border-radius:var(--radius-full);background:var(--primary);color:#fff;justify-content:center;align-items:center;width:34px;height:34px;font-size:.85rem;font-weight:700;display:flex}.top-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:50;justify-content:space-between;align-items:center;height:64px;padding:0 30px;display:flex;position:sticky;top:0}@media (width<=992px){.top-header{padding:0 16px}}.header-user-info{align-items:center;gap:14px;margin-left:auto;display:flex}@media (width<=992px){.sidebar{position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;background:#0f172a66;position:fixed;inset:0}}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:var(--transition);margin-bottom:24px;padding:24px}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.card-title{color:var(--primary);align-items:center;gap:10px;font-size:1.2rem;font-weight:700;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, #152f4a 100%);color:#fff;box-shadow:0 2px 4px #1b3a5b33}.btn-primary:hover{background:linear-gradient(135deg,#152f4a 0%,#0d1e30 100%);transform:translateY(-1px);box-shadow:0 4px 8px #1b3a5b4d}.btn-accent{background:linear-gradient(135deg, var(--accent) 0%, #c9933d 100%);color:#fff}.btn-accent:hover{background:linear-gradient(135deg,#c9933d 0%,#b88330 100%);transform:translateY(-1px)}.btn-secondary{color:var(--text-dark);border-color:var(--border);background:#f1f5f9}.btn-secondary:hover{background:#e2e8f0}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:.8rem}.btn-icon{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;padding:8px}.btn-icon:hover{background:var(--surface-hover);color:var(--primary)}.form-group{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.form-label{color:var(--text-dark);font-size:.85rem;font-weight:600}.form-input,.form-select,.form-textarea{width:100%;color:var(--text-dark);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:var(--transition);outline:none;padding:10px 14px;font-size:.92rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1b3a5b1f}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.badge-draft{color:#475569;background:#f1f5f9}.badge-sent{background:var(--info-bg);color:#1d4ed8}.badge-won{background:var(--success-bg);color:#047857}.badge-completed{color:#15803d;background:#f0fdf4}.badge-dropped{background:var(--error-bg);color:#b91c1c}.table-responsive{border-radius:var(--radius-md);border:1px solid var(--border);width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.data-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);white-space:nowrap;background:#f8fafc;padding:14px 18px;font-size:.8rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border);color:var(--text-dark);vertical-align:middle;padding:14px 18px}.data-table tbody tr:hover{background-color:#f1f5f999}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a80;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:580px;max-height:90vh;padding:28px;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-title{color:var(--primary);font-size:1.25rem;font-weight:700}.modal-footer{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-bottom:24px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);align-items:center;gap:16px;padding:20px;display:flex}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:48px;height:48px;font-size:1.4rem;display:flex}.metric-value{color:var(--primary);font-size:1.6rem;font-weight:800;line-height:1.1}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:2px;font-size:.8rem;font-weight:600}:root{--winton-blue:#29285f;--winton-teal:#18b3a8;--winton-gray:#f8fafc;--winton-text:#1e293b;--winton-border:#cbd5e1}.proposal-view-container{min-height:100vh;color:var(--winton-text);background-color:#f1f5f9;padding-bottom:50px;font-family:Outfit,sans-serif;line-height:1.5}.proposal-toolbar{z-index:1000;background:#1e293b;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0;box-shadow:0 4px 12px #00000026}.toolbar-left,.toolbar-right{align-items:center;gap:12px;display:flex}.quote-badge-title{color:#f8fafc;margin-left:8px;font-size:.95rem;font-weight:600}.toolbar-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-size:.88rem;font-weight:600;transition:all .2s;display:inline-flex}.toolbar-btn.btn-secondary{color:#f8fafc;background:#334155}.toolbar-btn.btn-secondary:hover{background:#475569}.toolbar-btn.btn-primary{color:#fff;background:#18b3a8}.toolbar-btn.btn-primary:hover{background:#139990}.toolbar-btn.btn-success{color:#fff;background:#10b981}.toolbar-btn.btn-success:hover{background:#059669}.toolbar-btn.btn-warning-active{color:#fff;background:#f59e0b;animation:2s infinite pulseEdit}@keyframes pulseEdit{0%,to{box-shadow:0 0 #f59e0b80}50%{box-shadow:0 0 0 6px #f59e0b00}}.proposal-document-wrapper{background:#fff;width:210mm;margin:30px auto;box-shadow:0 10px 30px #00000026}.page{box-sizing:border-box;background:#fff;width:210mm;height:297mm;margin:0 auto;padding:0;position:relative;overflow:hidden}.page-break{page-break-before:always;margin-top:20px}.page-watermark:after{content:"";opacity:.05;pointer-events:none;z-index:1;background:url(/winton_logo.png) 50%/contain no-repeat;width:80%;height:40%;position:absolute;top:55%;left:50%;transform:translate(-50%,-50%)}.winton-header{z-index:10;background:#fff;justify-content:space-between;align-items:flex-start;width:100%;height:120px;padding:15px 40px 0;display:flex;position:absolute;top:0;left:0}.logo-container{width:240px;padding-top:5px}.logo-container img{width:100%}.header-bars{flex-direction:column;align-items:flex-end;display:flex;position:absolute;top:30px;right:0}.slant-top{background:var(--winton-blue);color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.5px;clip-path:polygon(0 0,100% 0,100% 100%,30px 100%);z-index:10;width:450px;height:36px;margin-bottom:2px;padding:0 20px 0 30px;font-family:Michroma,sans-serif;font-size:15px;font-weight:400;line-height:36px;position:relative}.slant-bottom{background:var(--winton-teal);color:#fff;text-align:center;clip-path:polygon(30px 0,100% 0,100% 100%,0 100%);z-index:10;direction:rtl;width:450px;height:36px;margin-top:0;padding-left:30px;font-family:IBM Plex Sans Arabic,sans-serif;font-size:19px;font-weight:700;line-height:36px;position:relative}.winton-footer{z-index:10;background:linear-gradient(115deg,#29285f 82%,#18b3a8 82.3%);border-top:1px solid #eee;width:100%;height:45px;display:flex;position:absolute;bottom:0;left:0}.contact-info{color:#fff;white-space:nowrap;align-items:center;gap:25px;width:100%;padding:0 30px;font-size:10px;display:flex}.contact-info>div{align-items:center;gap:6px;display:flex}.content-area{z-index:5;padding:10px 40px 20px;position:absolute;inset:130px 0 50px}.info-table{border-collapse:collapse;width:100%;margin-bottom:12px}.info-table th,.info-table td{text-align:left;border:1px solid #000;padding:5px 10px;font-size:.84rem}.info-table th{background:#fff;width:170px;font-weight:700}.letter{margin:12px 0;font-size:.88rem}.letter-top{margin-bottom:4px;font-weight:700}.letter-content{line-height:1.45}.unit-desc-heading{text-align:center;text-transform:uppercase;margin:8px 0;font-size:.95rem;font-weight:800;text-decoration:underline}.unit-desc-block{margin-bottom:12px}.unit-desc-sub{margin-bottom:6px;font-size:.9rem;font-weight:700;text-decoration:underline}.arrow-list{padding-left:20px;list-style:none}.arrow-list li{margin-bottom:3px;font-size:.82rem;line-height:1.4;position:relative}.arrow-list li:before{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M0 0 L20 10 L6 10 Z' fill='white' /%3E%3Cpath d='M6 10 L20 10 L0 20 Z' fill='black' /%3E%3Cpath d='M0 0 L20 10 L0 20 L6 10 Z' fill='none' stroke='black' stroke-width='1.5' stroke-linejoin='round' /%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;width:11px;height:11px;position:absolute;top:4px;left:-18px}.equipment-offered-label{margin-bottom:8px;font-size:.92rem}.equipment-system-bar{background:var(--winton-blue);color:#fff;text-transform:uppercase;border-radius:2px;margin-bottom:12px;padding:8px 16px;font-size:.95rem;font-weight:800}.items-table{border-collapse:collapse;width:100%;margin-bottom:16px}.items-table th{background:var(--winton-teal);color:#000;text-align:left;text-transform:uppercase;border:1px solid #000;padding:6px 10px;font-size:.82rem;font-weight:800}.items-table td{border:1px solid #000;padding:6px 10px;font-size:.82rem}.boq-total-row td{background:#f8fafc;font-weight:700}.price-summary-box{border:2px solid var(--winton-blue);background:#fff;margin-bottom:14px;padding:8px 12px}.price-summary-main{margin-bottom:4px;font-size:.92rem;font-weight:700}.price-summary-vat{color:#475569;font-size:.8rem}.vat-label{color:#dc2626;font-weight:700}.terms-block{margin-bottom:12px}.section-heading{text-transform:uppercase;margin-bottom:4px;font-size:.85rem;font-weight:800;text-decoration:underline}.content-terms-long{font-size:.82rem;line-height:1.4;overflow-y:visible}.content-terms-long .section-heading{margin-top:10px;margin-bottom:2px}.content-terms-long .arrow-list{margin-bottom:6px}.closing-page{padding-top:30px}.closing-thanks{color:var(--winton-text);margin-bottom:20px;font-size:.88rem;line-height:1.5}.closing-regards{margin-bottom:30px;font-size:.92rem;font-weight:600}.signatures-container{justify-content:flex-start;gap:120px;display:flex}.signature-card{color:#64748b;font-size:.84rem;line-height:1.5}.signature-card p{margin:0}.sig-name{color:var(--winton-blue);font-size:.95rem;margin-bottom:2px!important}.editable-input{width:100%;font-family:inherit;font-size:inherit;background:#eff6ff;border:1px dashed #3b82f6;border-radius:4px;padding:4px 8px}.editable-textarea{width:100%;font-family:inherit;font-size:inherit;resize:vertical;background:#eff6ff;border:1px dashed #3b82f6;border-radius:4px;padding:6px 10px}.floating-images-container{pointer-events:none;z-index:20;width:100%;height:100%;position:absolute;top:0;left:0}.floating-image{pointer-events:auto;-webkit-user-select:none;user-select:none;cursor:move;border:2px solid #0000;transition:border-color .2s;position:absolute}.floating-image.selected{border-color:#f59e0b;box-shadow:0 0 15px #f59e0b66}.floating-image .fimg-handle-resize{cursor:nwse-resize;z-index:100;background:#f59e0b;border:2px solid #000;border-radius:50%;width:24px;height:24px;display:none;position:absolute;bottom:-12px;right:-12px}.floating-image .fimg-delete{color:#fff;cursor:pointer;z-index:101;background:#ef4444;border:2px solid #000;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;display:none;position:absolute;top:-12px;right:-12px}.floating-image.selected .fimg-handle-resize,.floating-image.selected .fimg-delete{display:flex}@media print{@page{margin:0;size:A4}body,html,.proposal-view-container{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;margin:0!important;padding:0!important}.no-print{display:none!important}.proposal-document-wrapper{box-shadow:none!important;width:100%!important;margin:0!important}.page{box-shadow:none!important;page-break-after:always!important;page-break-inside:avoid!important;margin:0!important}.editable-input,.editable-textarea{background:0 0!important;border:none!important;padding:0!important}}
