@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sticky{position:sticky}.block{display:block}.flex{display:flex}.hidden{display:none}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--primary:#0b5cad;--dark-blue:#0f2747;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--background:#f7f9fc;--border:#e3e8ef;--muted:#64748b}*{box-sizing:border-box}html,body{background:var(--background);color:#172033;min-height:100%;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:20;background:var(--dark-blue);color:#fff;flex-direction:column;width:230px;height:100vh;padding:24px 16px 18px;display:flex;position:sticky;top:0;overflow:hidden}.brand{align-items:center;padding:4px 8px 30px;display:flex}.brand-text{flex-direction:column;display:flex}.brand-text strong{color:#fff;font-size:20px;font-weight:700;display:block}.brand-text span{color:#b8c8dc;margin-top:4px;font-size:10px;display:block}.sidebar nav{flex-direction:column;gap:5px;display:flex}.nav-item,a.nav-item{color:#dce7f3;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px;text-decoration:none;display:block}.nav-item:hover,.nav-item.active{background:var(--primary);color:#fff}.sidebar-footer{border-top:1px solid #ffffff1f;flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-top:auto;padding-top:18px;display:flex}.sidebar-sanmar-logo{object-fit:contain;width:145px;max-width:100%;height:auto;display:block}.main-content{min-width:0;padding:28px}.page-header{margin-bottom:22px}.page-header h1{color:var(--dark-blue);margin:4px 0;font-size:30px}.page-header p{color:var(--muted);margin:0}.eyebrow{letter-spacing:.12em;font-size:11px;font-weight:800;color:var(--primary)!important}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.summary-card{border:1px solid var(--border);background:#fff;border-radius:12px;min-height:105px;padding:17px;box-shadow:0 5px 18px #0f27470d}.summary-card span{color:var(--muted);margin-bottom:12px;font-size:13px;display:block}.summary-card strong{color:var(--dark-blue);font-size:29px}.danger-card strong{color:var(--danger)}.table-card{border:1px solid var(--border);background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 5px 18px #0f27470d}.table-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.table-heading h2{color:var(--dark-blue);margin:0 0 3px;font-size:18px}.table-heading p,.table-heading span{color:var(--muted);margin:0;font-size:12px}.table-wrapper{width:100%;overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}th,td{text-align:left;border-bottom:1px solid #edf1f5;padding:9px 11px}th{color:#546274;text-transform:uppercase;background:#f8fafc;font-size:11px;position:sticky;top:0}tbody tr:hover{background:#f8fbff}.hull-cell{color:var(--primary);font-weight:700}.badge{color:#fff;border-radius:6px;justify-content:center;min-width:42px;padding:4px 7px;font-size:10px;font-weight:800;display:inline-flex}.badge-success{background:var(--success)}.badge-danger{background:var(--danger)}.status-screen{text-align:center;place-content:center;min-height:100vh;padding:24px;display:grid}.projects-page{background:var(--background);min-height:100vh;padding:28px}.projects-page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.projects-page-header h1{color:var(--dark-blue);margin:5px 0;font-size:30px}.projects-page-header p{color:var(--muted);margin:0}.back-link{color:var(--primary);margin-bottom:18px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.primary-button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:11px 17px;font-weight:700}.primary-button:hover{filter:brightness(.94)}.primary-button:disabled{cursor:not-allowed;opacity:.65}.projects-toolbar{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;padding:16px;display:flex}.projects-search{width:min(560px,100%)}.projects-search label{color:var(--dark-blue);margin-bottom:7px;font-size:12px;font-weight:700;display:block}.projects-search input{border:1px solid var(--border);border-radius:8px;outline:none;width:100%;padding:10px 12px}.projects-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0b5cad1a}.completed-toggle{color:var(--muted);cursor:pointer;align-items:center;gap:8px;padding-bottom:10px;font-size:13px;display:flex}.projects-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.projects-summary article{border:1px solid var(--border);background:#fff;border-radius:11px;padding:15px 17px}.projects-summary span{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.projects-summary strong{color:var(--dark-blue);font-size:23px}.projects-message{color:var(--muted);text-align:center;padding:32px}.projects-error{color:var(--danger)}.project-name-cell{color:var(--dark-blue);font-weight:700}.status-label{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:800;display:inline-flex}.status-active{color:#15803d;background:#dcfce7}.status-completed{color:#64748b;background:#e2e8f0}.completed-row{color:#94a3b8;background:#f8fafc}.completed-row .project-name-cell,.completed-row .hull-cell{color:#94a3b8}.row-actions{gap:6px;display:flex}.row-actions button{border:1px solid var(--border);color:var(--dark-blue);cursor:pointer;background:#fff;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:700}.row-actions button:hover{border-color:var(--primary);color:var(--primary)}.empty-table-cell{color:var(--muted);text-align:center;padding:32px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f27478c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);background:#fff;border-radius:16px;width:min(620px,100vw - 32px);max-height:calc(100vh - 48px);padding:28px;overflow-y:auto;box-shadow:0 24px 70px #0f274740}.modal h2{color:#102a4c;margin:0 0 24px;font-size:24px;font-weight:700}.modal p{color:var(--muted);margin:0;line-height:1.5}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;display:grid}.form-field{flex-direction:column;gap:7px;margin-top:18px;display:flex}.form-grid .form-field{margin-top:0}.form-field label{color:#25364d;font-size:13px;font-weight:700}.form-field input,.form-field select{color:#12233d;background:#fff;border:1px solid #ccd5e1;border-radius:8px;outline:none;width:100%;min-height:42px;padding:10px 12px}.form-field input:focus,.form-field select:focus{border-color:#1769ba;box-shadow:0 0 0 3px #1769ba1f}.form-field input::placeholder{color:#8b98a9}.modal-actions{border-top:1px solid #e6eaf0;justify-content:flex-end;gap:10px;margin-top:26px;padding-top:18px;display:flex}.modal-actions button{border:1px solid var(--border);min-width:92px;min-height:42px;color:var(--dark-blue);cursor:pointer;background:#fff;border-radius:8px;padding:9px 18px;font-weight:700}.modal-actions button:hover{border-color:var(--primary)}.modal-actions .primary-button{border-color:var(--primary);background:var(--primary);color:#fff}.modal button:disabled{cursor:not-allowed;opacity:.65}.form-error{color:#b42318;background:#fff2f0;border:1px solid #f1b8b3;border-radius:8px;margin:16px 0 0;padding:11px 13px;font-size:13px;font-weight:600}.login-page{background:linear-gradient(135deg,#0f2747,#173e70);justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex}.login-card{background:#fff;border-radius:18px;width:100%;max-width:430px;padding:36px;box-shadow:0 25px 70px #0000002e}.register-card{max-width:460px}.login-brand{align-items:center;gap:18px;margin-bottom:28px;display:flex}.login-company-logo{object-fit:contain;border-radius:10px;flex-shrink:0;width:90px;height:90px}.login-brand h1{color:#0f2747;margin:0;font-size:28px}.login-brand p{color:#6b7280;margin:4px 0 0}.login-heading{margin-bottom:22px}.login-heading h2{color:#111827;margin:0}.login-heading p{color:#6b7280;margin-top:6px}.login-form{flex-direction:column;gap:18px;display:flex}.login-field{flex-direction:column;gap:8px;display:flex}.login-field label{color:#1f2937;font-weight:600}.login-field input{border:1px solid #d1d5db;border-radius:10px;height:46px;padding:0 14px;font-size:15px}.login-field input:focus{border-color:#175ea8;outline:none;box-shadow:0 0 0 3px #175ea826}.login-button{color:#fff;cursor:pointer;background:#175ea8;border:none;border-radius:10px;height:48px;margin-top:8px;font-size:16px;font-weight:600}.login-button:hover{background:#114d8a}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-error{color:#b42318;background:#fff2f0;border:1px solid #f5c2c7;border-radius:8px;margin:0;padding:10px 12px}.register-success{color:#087443;background:#ecfdf3;border:1px solid #a6dfbd;border-radius:8px;margin:0;padding:10px 12px;font-size:14px;font-weight:600}.login-switch{color:#667085;text-align:center;margin:18px 0 0;font-size:14px}.login-switch a{color:#1769ba;font-weight:700;text-decoration:none}.login-switch a:hover{text-decoration:underline}.login-footer{color:#9ca3af;text-align:center;margin-top:28px;font-size:13px}.auth-loading-page{background:#f4f7fb;justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-loading-card{color:#183153;flex-direction:column;align-items:center;gap:14px;font-weight:600;display:flex}.auth-spinner{border:4px solid #dbe4ef;border-top-color:#1769ba;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.user-menu-wrapper{z-index:500;position:fixed;top:18px;right:22px}.user-menu-trigger{color:#17304f;cursor:pointer;background:#fff;border:1px solid #dbe3ed;border-radius:24px;align-items:center;gap:10px;min-height:42px;padding:5px 12px 5px 5px;display:flex;box-shadow:0 6px 20px #0f27471a}.user-avatar{color:#fff;background:#12365f;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.user-menu-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:13px;font-weight:700;overflow:hidden}.user-menu-arrow{color:#6b7b8f;font-size:9px}.user-dropdown{background:#fff;border:1px solid #dbe3ed;border-radius:12px;width:245px;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 18px 45px #0f27472e}.user-dropdown-header{border-bottom:1px solid #edf1f5;flex-direction:column;gap:4px;padding:16px;display:flex}.user-dropdown-header strong{color:#142b49;font-size:14px}.user-dropdown-header span{color:#718096;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-dropdown button{color:#263c56;text-align:left;cursor:pointer;background:#fff;border:0;width:100%;padding:12px 16px}.user-dropdown button:hover:not(:disabled){background:#f5f8fc}.user-dropdown button:disabled{color:#a4afbd;cursor:not-allowed}.user-dropdown-divider{background:#edf1f5;height:1px}.user-dropdown .user-dropdown-logout{color:#b42318;font-weight:700}@media (max-width:1000px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:800px){.projects-page-header,.projects-toolbar{flex-direction:column;align-items:stretch}.projects-summary{grid-template-columns:1fr}.primary-button{width:100%}}@media (max-width:700px){.app-shell{grid-template-columns:1fr}.sidebar{width:100%;height:auto;min-height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sidebar-footer{display:none}.main-content,.projects-page{padding:18px}.summary-grid{grid-template-columns:1fr}.user-menu-name{display:none}.user-menu-trigger{padding-right:8px}.user-menu-wrapper{top:12px;right:12px}}@media (max-width:650px){.form-grid{grid-template-columns:1fr}.modal{padding:22px 18px}}#procureflow-sidebar{color:#fff!important;background:#0f2747!important;flex-direction:column!important;width:230px!important;min-width:230px!important;max-width:230px!important;height:100vh!important;min-height:100vh!important;padding:24px 14px 18px!important;display:flex!important;position:sticky!important;top:0!important;overflow:hidden!important}#procureflow-sidebar:before,#procureflow-sidebar:after,#procureflow-brand:before,#procureflow-brand:after,#procureflow-logo-area:before,#procureflow-logo-area:after{content:none!important;display:none!important}#procureflow-brand{flex-direction:column!important;align-items:flex-start!important;gap:0!important;width:100%!important;margin:0!important;padding:4px 8px 28px!important;display:flex!important}#procureflow-brand strong{color:#fff!important;white-space:nowrap!important;width:100%!important;margin:0!important;font-size:20px!important;font-weight:700!important;line-height:1.2!important;display:block!important}#procureflow-brand span{color:#b8c8dc!important;white-space:nowrap!important;width:100%!important;margin:5px 0 0!important;font-size:11px!important;line-height:1.3!important;display:block!important}#procureflow-navigation{flex-direction:column!important;gap:5px!important;width:100%!important;margin:0!important;padding:0!important;display:flex!important}.procureflow-menu-item{color:#dce7f3!important;text-align:left!important;background:0 0!important;border-radius:8px!important;width:100%!important;margin:0!important;padding:10px 12px!important;font-size:13px!important;line-height:1.3!important;text-decoration:none!important;display:block!important}.procureflow-menu-item:hover,.procureflow-menu-active{color:#fff!important;background:#0b5cad!important}#procureflow-logo-area{border-top:1px solid #ffffff1f!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:100%!important;margin-top:auto!important;padding-top:16px!important;display:flex!important}#procureflow-sanmar-logo{object-fit:contain!important;opacity:1!important;visibility:visible!important;width:130px!important;max-width:130px!important;height:auto!important;max-height:150px!important;margin:0!important;padding:0!important;display:block!important}@media (max-width:700px){#procureflow-sidebar{width:100%!important;min-width:100%!important;max-width:100%!important;height:auto!important;min-height:auto!important;position:static!important}#procureflow-navigation{grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}#procureflow-logo-area{display:none!important}}.editable-projects-table select.exemption-var{color:#15803d!important;background:#dcfce7!important;border-color:#22c55e!important;font-weight:800!important}.editable-projects-table select.exemption-yok{color:#b42318!important;background:#fee2e2!important;border-color:#ef4444!important;font-weight:800!important}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
