@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@600;700;800&family=Nunito+Sans:wght@400;600;700;800&display=swap";:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-brand:#1d4f95;--color-brand-hover:#173f78;--color-brand-active:#12325f;--color-text:#111827;--color-text-muted:#374151;--color-text-soft:#9ca3af;--color-surface:#fff;--color-surface-muted:#f3f7fd;--color-surface-soft:#edf3fb;--color-border:#d8e1ef;--color-border-strong:#e1e2e5;--color-error:#dc2626;--color-mint:#dfeaf8;--color-mint-strong:#d1e4ff;--color-neutral:#eceef0;--shadow-card:#0f172a08 0px 2px 8px;--shadow-subtle:#122d5814 0px 4px 12px;--shadow-medium:#0f172a14 0px 6px 18px;--radius-input:4px;--radius-card:8px;--spacing-1:4px;--spacing-2:8px;--spacing-3:12px;--spacing-4:16px;--spacing-5:24px;--spacing-6:32px;--skeleton-base:#e8edf5;--skeleton-highlight:#f7f9fc;background:#f8f9fc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{min-width:320px}body{min-width:320px;min-height:100vh;color:var(--color-text);background:linear-gradient(#f4f8fd 0%,#eef4fb 100%);margin:0}body,#root{min-height:100vh}img,svg{display:block}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.auth-page{background:radial-gradient(circle at 0 0,#1d4f951f,#0000 32%),linear-gradient(#f4f8fd 0%,#eef4fb 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px 12px;display:flex}.auth-card{border-radius:var(--radius-card);background:#fffffff7;border:none;width:min(100%,390px);min-height:auto;padding:20px 16px 24px;box-shadow:0 16px 40px #1d4f9514}.auth-brand-wrap{justify-content:flex-start;align-items:center;margin:0 0 20px;display:flex}.auth-brand-logo{width:min(100%,260px);height:auto;display:block}.auth-header{margin-bottom:16px}.auth-title{color:var(--color-text);margin:0;font-family:Manrope,sans-serif;font-size:24px;font-weight:800;line-height:32px}.auth-subtitle{margin:var(--spacing-2) 0 0;color:var(--color-text-muted);font-size:14px;line-height:20px}.auth-form{gap:12px;display:grid}.field-group{gap:6px;display:grid}.field-label{color:var(--color-text);font-size:14px;font-weight:500;line-height:20px}.text-input{border-radius:var(--radius-input);background:var(--color-surface-soft);width:100%;min-height:44px;color:var(--color-text);border:none;padding:10px 14px;font-size:16px;line-height:24px;transition:border-color .2s,box-shadow .2s,background-color .2s}.text-input::placeholder{color:var(--color-text-soft)}.text-input:hover{background:#edf0fb}.text-input:focus{background:var(--color-surface);outline:none;box-shadow:0 0 0 3px #1d4f951f}.text-input-error{box-shadow:0 0 0 3px #dc26261a}.field-message{min-height:0;color:var(--color-error);font-size:12px;line-height:16px}.field-message:empty{display:none}.input-wrap{position:relative}.input-action{top:50%;right:var(--spacing-3);width:24px;height:24px;color:var(--color-text-soft);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;transform:translateY(-50%)}.input-action:focus-visible{outline:none;box-shadow:0 0 0 3px #1d4f952e}.input-action:hover{color:var(--color-text-muted)}.button{border-radius:var(--radius-input);border:none;justify-content:center;align-items:center;width:100%;min-height:44px;padding:12px 24px;font-size:14px;font-weight:500;line-height:20px;transition:background-color .2s,box-shadow .2s,transform .2s;display:inline-flex}.button:focus-visible{outline:none;box-shadow:0 0 0 3px #1d4f952e}.button-primary{background:var(--color-brand);color:#fff;box-shadow:var(--shadow-subtle)}.button-primary:hover:not(:disabled){background:var(--color-brand-hover);box-shadow:var(--shadow-medium)}.button-primary:active:not(:disabled){background:var(--color-brand-active)}.button-secondary{color:#374151;box-shadow:var(--shadow-subtle);background:#fff;border:none}.button-secondary:hover:not(:disabled){background:var(--color-surface-muted)}.button:disabled{background:var(--color-border);color:var(--color-text-soft);cursor:not-allowed;box-shadow:none}.auth-footer{justify-content:flex-end;margin-top:-2px;display:flex}.inline-link{min-height:auto;color:var(--color-brand);background:0 0;border:0;padding:4px 0 2px;font-size:14px;font-weight:500;line-height:20px}.inline-link:hover{color:var(--color-brand-hover);text-decoration:underline}.inline-link:focus-visible{outline:none;text-decoration:underline;box-shadow:0 0 0 3px #1d4f952e}.status-banner{border-radius:var(--radius-input);color:#991b1b;background:#dc26260f;border:none;padding:12px 14px;font-size:14px;line-height:20px}.mobile-shell{background:linear-gradient(#f4f8fd 0%,#eef4fb 100%);width:min(100%,430px);min-height:100vh;margin:0 auto;position:relative}.print-shell{background:#fff;width:100%;min-height:100vh;position:relative}.mobile-topbar{z-index:10;background:#fffffffa;border-bottom:none;justify-content:space-between;align-items:center;min-height:64px;padding:16px 20px;display:flex;position:sticky;top:0}.avatar-button{width:40px;height:40px;box-shadow:none;background:#e5e7eb;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;overflow:hidden}.avatar-image{object-fit:cover;width:100%;height:100%}.brand-mark{flex-shrink:0;justify-content:flex-start;align-items:center;width:188px;height:46px;display:inline-flex}.brand-mark-image{object-fit:contain;width:34px;height:34px}.brand-mark-image-full{width:100%;height:auto;max-height:44px}.mobile-brand{color:var(--color-brand);margin:0;font-family:Nunito Sans,sans-serif;font-size:20px;font-weight:800;line-height:24px}.topbar-actions{align-items:center;gap:6px;display:flex}.logout-link{color:#ef4444;width:40px;height:40px;box-shadow:none;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.logout-icon{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.icon-button{color:#334155;width:40px;height:40px;box-shadow:none;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.app-icon,.metric-icon,.filter-icon,.list-chevron,.person-icon{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.metric-icon{width:28px;height:28px;margin-bottom:16px}.metric-icon-green{color:var(--color-brand)}.metric-icon-slate{color:#334155}.mobile-page{padding:20px 16px 96px}.office-card,.transfer-card,.detail-card{box-shadow:var(--shadow-subtle);background:#fff;border:none;border-radius:8px}.office-card{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding:16px 18px;display:flex}.office-title,.section-title,.detail-title{color:var(--color-text);margin:0;font-family:Nunito Sans,sans-serif;font-size:22px;font-weight:800;line-height:30px}.office-subtitle,.transfer-helper,.detail-copy,.detail-meta-label{color:var(--color-text-muted);margin:3px 0 0;font-size:13px;line-height:18px}.status-pill{background:var(--color-brand);color:#fff;letter-spacing:.04em;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 16px;font-size:11px;font-weight:700;display:inline-flex}.dashboard-status-tabs{z-index:20;background:#fffffffa;border-top:1px solid #12325f1a;border-radius:0;grid-template-columns:1fr 1fr;gap:0;width:min(100%,430px);margin:0;padding:8px 16px 10px;display:grid;position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%);box-shadow:0 -10px 28px #12325f1f}.dashboard-status-tab{min-height:50px;color:var(--color-text-muted);box-shadow:none;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:4px 12px;font-size:12px;font-weight:700;line-height:16px;display:inline-flex}.dashboard-status-tab-active{color:var(--color-brand);box-shadow:none;background:#eaf2ff}.dashboard-menu-icon{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.stat-strip{scrollbar-width:none;gap:10px;margin:0 -16px 18px;padding:0 16px 2px;display:flex;overflow-x:auto}.stat-strip::-webkit-scrollbar{display:none}.stat-card{min-width:150px;box-shadow:var(--shadow-subtle);background:#fff;border:none;border-radius:8px;padding:16px 14px}.stat-card-button{color:inherit;text-align:left}.stat-card-active{background:linear-gradient(#eaf2ff 0%,#d7e5fb 100%);box-shadow:0 0 0 2px #1d4f952e}.stat-card-mint{background:linear-gradient(#eaf2ff 0%,#d7e5fb 100%)}.stat-label{color:var(--color-text-muted);margin:0 0 4px;font-size:12px;line-height:18px}.stat-count{color:var(--color-text);margin:0;font-family:Nunito Sans,sans-serif;font-size:18px;font-weight:700;line-height:24px}.transfer-section{gap:10px;display:grid}.section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:2px;display:flex}.filter-button{min-height:auto;color:var(--color-brand);box-shadow:none;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.filter-icon{width:18px;height:18px}.transfer-list{gap:10px;display:grid}.transfer-card{padding:12px 14px}.transfer-card-head,.purchase-request-body{justify-content:space-between;align-items:center;gap:8px;display:flex}.transfer-card-head{margin-bottom:8px}.purchase-request-body{align-items:flex-start}.transfer-id{color:var(--color-brand);font-size:14px;font-weight:700;line-height:20px}.transfer-chip{min-height:24px;color:var(--color-text-muted);background:#eceef0;border-radius:999px;align-items:center;padding:0 9px;font-size:11px;font-weight:700;line-height:16px;display:inline-flex}.transfer-person{align-items:center;gap:14px;display:flex}.purchase-request-main{flex:1;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.person-badge{border-radius:999px;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.person-badge-mint{background:var(--color-mint-strong);color:var(--color-brand)}.person-badge-neutral{color:#334155;background:#eceef0}.person-icon{width:22px;height:22px}.transfer-name,.detail-meta-value{color:var(--color-text);margin:1px 0 0;font-family:Nunito Sans,sans-serif;font-size:15px;font-weight:700;line-height:20px}.purchase-request-meta,.purchase-request-comment{color:var(--color-text-muted);margin:3px 0 0;font-size:12px;line-height:16px}.purchase-request-status{min-height:24px;color:var(--color-brand);background:#dbe9fb;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:700;line-height:16px;display:inline-flex}.list-chevron{color:#334155;width:22px;height:22px}.dashboard-message-card{box-shadow:var(--shadow-subtle);color:var(--color-text-muted);background:#fff;border-radius:8px;padding:12px 14px;font-size:13px;line-height:18px}.dashboard-message-error{color:#991b1b}.dashboard-message-success{color:var(--color-brand)}.feedback-overlay{z-index:30;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.feedback-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a3d;border:0;position:absolute;inset:0}.feedback-card{z-index:1;text-align:center;background:#fff;border-radius:10px;justify-items:center;gap:12px;width:min(100%,320px);padding:18px 16px;display:grid;position:relative;box-shadow:0 18px 40px #0f172a2e}.feedback-card-success{border-top:6px solid var(--color-brand)}.feedback-card-error{border-top:6px solid #dc2626}.feedback-icon{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;border-radius:999px;width:52px;height:52px;padding:10px}.feedback-icon-success{color:var(--color-brand);background:#eaf2ff}.feedback-icon-error{color:#dc2626;background:#fee2e2}.feedback-copy{gap:4px;display:grid}.feedback-title{color:#111827;margin:0;font-family:Nunito Sans,sans-serif;font-size:18px;font-weight:800;line-height:26px}.feedback-message{color:#4b5563;margin:0;font-size:14px;line-height:20px}.feedback-close{background:var(--color-brand);color:#fff;border:0;border-radius:6px;min-height:42px;padding:0 18px;font-size:13px;font-weight:700}.feedback-card-error .feedback-close{background:#dc2626}.skeleton-card{position:relative;overflow:hidden}.skeleton-card:after{content:"";background:linear-gradient(90deg,#0000 0%,#fff9 45%,#0000 100%);animation:1.4s infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-block{background:linear-gradient(90deg, var(--skeleton-base) 0%, var(--skeleton-highlight) 50%, var(--skeleton-base) 100%);border-radius:999px;display:inline-flex}.skeleton-icon{border-radius:6px;width:28px;height:28px;margin-bottom:16px}.skeleton-text{height:12px}.skeleton-text-sm{width:92px}.skeleton-text-md{width:120px}.skeleton-text-lg{width:140px;height:16px}.skeleton-text-full{width:100%}.skeleton-chip{width:90px;height:30px}.skeleton-status{width:74px;height:28px}.skeleton-chevron{border-radius:6px;width:22px;height:22px}.skeleton-tab{border-radius:8px;width:72px;height:40px}.skeleton-tab-wide{width:148px}.pr-metric-skeleton{border-radius:6px;width:100%;height:68px}.skeleton-stack{flex:1;gap:8px;display:grid}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.detail-page{padding-top:20px}.back-link{color:var(--color-brand);align-items:center;margin-bottom:16px;font-size:14px;font-weight:600;display:inline-flex}.detail-card{padding:24px 20px}.detail-kicker{color:var(--color-brand);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.detail-copy{margin-top:12px}.detail-meta{gap:12px;margin-top:20px;display:grid}.detail-meta-item{background:var(--color-surface-soft);border-radius:6px;padding:14px 16px}.detail-shell{background:linear-gradient(#f4f8fd 0%,#eef4fb 100%)}.detail-topbar{z-index:12;background:#fff;grid-template-columns:40px 1fr 40px;align-items:center;gap:12px;min-height:62px;padding:10px 20px;display:grid;position:sticky;top:0}.detail-nav-button{width:34px;height:34px;color:var(--color-brand);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.detail-screen-title{color:#202124;text-align:center;margin:0;font-family:Nunito Sans,sans-serif;font-size:16px;font-weight:700;line-height:24px}.detail-nav-icon,.detail-edit-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.detail-edit-icon{color:#4b5563;width:20px;height:20px}.settings-menu-overlay{z-index:24;position:fixed;inset:0}.settings-menu-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a47;border:0;position:absolute;inset:0}.settings-menu-card{background:#fff;border-radius:8px;width:min(100% - 48px,254px);display:grid;position:absolute;top:76px;right:max(16px,50vw - 199px);overflow:hidden;box-shadow:0 16px 36px #0f172a2e}.settings-menu-row{color:#202124;text-align:left;background:#fff;border:0;align-items:center;gap:14px;min-height:52px;padding:0 18px;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:800;display:flex}.settings-menu-row+.settings-menu-row{border-top:1px solid #eceef0}.settings-menu-row-danger{color:#c8102e}.settings-menu-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}.settings-menu-icon-danger{color:#c8102e}.detail-page{background:linear-gradient(#f4f8fd 0%,#eef4fb 100%)}.print-page{background:#fff;min-height:calc(100vh - 62px);padding:0}.pdf-view-card,.print-state-card{min-height:calc(100vh - 62px);box-shadow:none;background:#fff;border-radius:0;overflow:hidden}.pdf-view-frame{background:#fff;border:0;width:100%;height:calc(100vh - 62px);display:block}.pdf-webview-note,.pdf-fallback-card{background:#fff;gap:10px;padding:16px;display:grid}.pdf-webview-title{color:#173056;margin:0;font-size:16px;font-weight:700}.pdf-webview-copy{color:#5d6b84;margin:0;font-size:13px;line-height:1.5}.pdf-webview-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pdf-action-button{color:#fff;cursor:pointer;background:#1746a2;border:0;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.pdf-action-button-secondary{color:#173056;background:#eef4fb}.pdf-action-icon{stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.pdf-action-link{color:#1746a2;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.print-state-card{align-content:start;gap:14px;padding:16px;display:grid}.print-skeleton-preview{border-radius:8px;width:100%;height:420px}.pr-header-card,.pr-item-card,.approval-card,.vendor-recommendation-card,.bidding-comparison-card{box-shadow:none;background:#fff;border-radius:8px}.pr-header-card{padding:14px 14px 16px}.pr-header-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pr-header-title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pr-header-title-block{min-width:0}.pr-header-grid{gap:12px;margin-top:14px;display:grid}.pr-header-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:12px 0 0;display:grid}.pr-header-info-item{min-width:0}.pr-header-info-wide{grid-column:1/-1}.pr-header-label,.pr-metric-label,.pr-footer-label,.approval-date{color:#5f6368;margin:0;font-size:12px;font-weight:600;line-height:18px}.pr-request-number,.pr-header-value,.pr-metric-value,.pr-footer-value,.approval-name{color:#202124;margin:4px 0 0;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:700;line-height:21px}.pr-header-info-item dt{color:#5f6368;margin:0;font-size:11px;font-weight:700;line-height:16px}.pr-header-info-item dd{overflow-wrap:anywhere;color:#202124;min-width:0;margin:2px 0 0;font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:700;line-height:17px}.pr-amount-value,.pr-footer-amount,.pr-item-code{color:var(--color-brand)}.pr-status-badge{color:#5b21b6;letter-spacing:.08em;text-transform:uppercase;background:#efe7ff;border-radius:6px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.pr-status-badge-approved{color:#0b9f49;background:#d1f5dc}.pr-status-badge-pending{color:#5b21b6;background:#efe7ff}.pr-requested-by{align-items:center;gap:10px;margin-top:4px;display:flex}.requested-avatar{width:28px;height:28px;color:var(--color-brand);background:#d1e4ff;border-radius:999px;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.pr-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;margin-top:14px;display:flex;overflow-x:auto}.pr-tabs::-webkit-scrollbar{display:none}.pr-tab{color:#4b5563;min-width:max-content;min-height:36px;box-shadow:none;background:#fff;border:0;border-radius:6px;flex:none;padding:0 14px;font-size:12px;font-weight:700}.pr-tab-active{background:var(--color-brand);color:#fff}.detail-section{margin-top:14px}.detail-section-title{color:#202124;margin:0 0 12px;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:800;line-height:22px}.detail-stack{gap:10px;display:grid}.pr-item-card{border-left:4px solid var(--color-brand);padding:12px 12px 0}.pr-item-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pr-item-heading-grid{flex:1;grid-template-columns:minmax(86px,.8fr) minmax(0,1.2fr);gap:10px;min-width:0;display:grid}.pr-item-heading-label{color:#5f6368;margin:0;font-size:11px;font-weight:700;line-height:15px;display:block}.pr-item-code,.approval-meta,.approval-note{margin:0;font-size:12px;line-height:18px}.pr-item-name{color:#202124;margin:2px 0 0;font-family:Nunito Sans,sans-serif;font-size:13px;font-weight:800;line-height:18px}.pr-item-action{background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.pr-item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.pr-metric-card{background:#f2f3f7;border-radius:6px;padding:10px 12px}.pr-item-footer{border-top:1px solid #eceef0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;padding:12px 0;display:grid}.pr-footer-align-right{text-align:right}.pr-item-dropdown-toggle{width:100%;min-height:38px;color:var(--color-brand);text-align:left;background:0 0;border:0;border-top:1px solid #eceef0;justify-content:space-between;align-items:center;margin-top:8px;padding:0;font-size:12px;font-weight:800;display:flex}.pr-item-dropdown-icon{color:#334155;justify-content:center;align-items:center;width:24px;height:24px;transition:transform .18s;display:inline-flex}.pr-item-dropdown-icon-open{transform:rotate(180deg)}.pr-item-detail-grid{border-top:1px solid #eceef0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin:0;padding:10px 0 12px;display:grid}.pr-item-detail-row{background:#f2f3f7;border-radius:6px;min-width:0;padding:8px}.pr-item-detail-row dt{color:#5f6368;margin:0;font-size:11px;font-weight:700;line-height:15px}.pr-item-detail-row dd{overflow-wrap:anywhere;color:#202124;min-width:0;margin:2px 0 0;font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:700;line-height:17px}.approval-card{padding:12px}.approval-card-head{align-items:flex-start;gap:10px;display:flex}.approval-person-badge{flex-shrink:0;width:44px;height:44px}.approval-card-main{flex:1}.approval-meta,.approval-note{color:#5f6368;margin-top:3px}.approval-status{color:#4b5563;letter-spacing:.06em;text-transform:uppercase;background:#e5e7eb;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.approval-status-approved{color:#0b9f49;background:#d1f5dc}.approval-date{margin-top:12px}.vendor-recommendation-card{padding:14px}.vendor-recommendation-label{color:#5f6368;letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.vendor-recommendation-copy{color:#202124;margin:0;font-size:15px;font-weight:800;line-height:22px}.bidding-comparison-card{padding:12px}.bidding-comparison-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.bidding-comparison-label{color:#5f6368;margin:0;font-size:11px;font-weight:700;line-height:15px}.bidding-comparison-title{color:#202124;margin:2px 0 0;font-family:Nunito Sans,sans-serif;font-size:15px;font-weight:800;line-height:20px}.bidding-comparison-status{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.bidding-comparison-status-active{color:#0b9f49;background:#d1f5dc}.bidding-comparison-status-inactive{color:#4b5563;background:#e5e7eb}.bidding-comparison-grid{border-top:1px solid #eceef0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:10px 0 12px;display:grid}.bidding-comparison-row{background:#f2f3f7;border-radius:6px;min-width:0;padding:8px}.bidding-comparison-row dt{color:#5f6368;margin:0;font-size:11px;font-weight:700;line-height:15px}.bidding-comparison-row dd{overflow-wrap:anywhere;color:#202124;min-width:0;margin:2px 0 0;font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:700;line-height:17px}.detail-fab{z-index:20;background:var(--color-brand);color:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;padding:0;display:inline-flex;position:fixed;bottom:28px;right:max(20px,50vw - 195px);box-shadow:0 14px 32px #1d4f9547}.fab-icon,.action-icon{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.fab-icon{stroke-width:1.9px;width:18px;height:18px}.action-overlay,.approve-overlay{z-index:22;position:fixed;inset:0}.action-overlay-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a29;border:0;position:absolute;inset:0}.action-sheet{gap:8px;width:min(100% - 40px,172px);display:grid;position:absolute;bottom:28px;right:max(20px,50vw - 195px)}.action-list{gap:8px;display:grid}.action-row{color:#111827;background:#fff;border:0;border-radius:8px;justify-content:space-between;align-items:center;min-height:46px;padding:0 10px 0 12px;display:flex;box-shadow:0 8px 24px #0f172a1f}.action-row-label{font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:700;line-height:16px}.action-badge{color:#fff;border-radius:7px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.action-badge-success{background:var(--color-brand)}.action-badge-danger{background:#dc2626}.action-badge-info{background:#7aa7ff}.action-badge-accent{background:#7c3aed}.action-close-button{background:var(--color-brand);color:#fff;text-transform:uppercase;letter-spacing:.04em;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 12px;font-family:Nunito Sans,sans-serif;font-size:11px;font-weight:800;line-height:18px;display:inline-flex;box-shadow:0 14px 32px #1d4f9547}.action-close-mark{justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.action-icon{stroke-width:2px;width:15px;height:15px}.approve-modal{background:#fff;border-radius:10px;max-width:390px;margin:0 auto;padding:14px;position:absolute;bottom:28px;left:20px;right:20px;box-shadow:0 18px 40px #0f172a2e}.approve-modal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.approve-modal-title{color:#111827;margin:0;font-family:Nunito Sans,sans-serif;font-size:20px;font-weight:800;line-height:28px}.approve-close-button{width:36px;height:36px;color:var(--color-brand);background:#edf3fb;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.approve-modal-copy{color:#4b5563;margin:8px 0 0;font-size:14px;line-height:20px}.approve-label{color:#111827;margin-top:12px;font-size:14px;font-weight:700;line-height:20px;display:inline-block}.approve-select,.approve-textarea{resize:vertical;background:var(--color-surface-soft);color:#111827;width:100%;font:inherit;border:0;border-radius:6px;margin-top:6px;padding:10px 12px;line-height:22px}.approve-select{appearance:none;min-height:42px}.approve-field-error{color:#dc2626;margin:6px 0 0;font-size:12px;font-weight:700;line-height:16px}.approve-select:focus,.approve-textarea:focus{outline:none;box-shadow:0 0 0 3px #1d4f951f}.approve-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.approve-secondary-button,.approve-primary-button{border:0;border-radius:6px;min-height:40px;padding:0 12px;font-size:14px;font-weight:700}.approve-secondary-button{color:#334155;background:#edf3fb}.approve-primary-button{background:var(--color-brand);color:#fff}.approve-danger-button{background:#dc2626}.approve-secondary-button:disabled,.approve-primary-button:disabled{opacity:.7;cursor:not-allowed}.auth-subtitle,.field-label,.button,.inline-link,.status-banner,.settings-menu-row,.approve-modal-copy,.approve-label,.approve-secondary-button,.approve-primary-button{font-size:15px}.text-input{font-size:17px}.field-message,.pr-header-label,.pr-metric-label,.pr-footer-label,.approval-date,.detail-kicker,.vendor-recommendation-label,.approve-field-error{font-size:13px}.office-subtitle,.transfer-helper,.detail-copy,.detail-meta-label,.filter-button,.dashboard-message-card,.feedback-close{font-size:14px}.stat-label,.pr-tab,.detail-section-title,.pr-request-number,.pr-header-value,.pr-metric-value,.pr-footer-value,.approval-name,.pr-header-info-item dd,.pr-item-code,.approval-meta,.approval-note,.pr-item-dropdown-toggle,.pr-item-detail-row dd,.bidding-comparison-row dd,.action-row-label{font-size:13px}.pr-header-info-item dt,.pr-item-heading-label,.pr-item-detail-row dt,.bidding-comparison-label,.bidding-comparison-row dt,.purchase-request-status,.transfer-chip,.status-pill,.approval-status,.bidding-comparison-status,.action-close-button{font-size:12px}.transfer-id,.transfer-name,.detail-meta-value,.pr-item-name,.feedback-message{font-size:16px}.detail-screen-title{font-size:17px}.office-title,.section-title,.detail-title{font-size:23px}.stat-count,.feedback-title{font-size:19px}.approve-modal-title{font-size:21px}@media (width<=639px){.auth-page{padding:16px 12px}.mobile-page{padding:14px 12px 84px}.auth-card{padding:20px 16px 24px}.auth-brand-wrap{margin-bottom:20px}.auth-title,.office-title,.section-title,.detail-title{font-size:22px;line-height:28px}.office-card{padding:14px 16px}.logout-link{font-size:11px}.detail-topbar{padding:10px 14px}.pr-item-grid,.pr-item-footer,.pr-item-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pr-footer-align-right{text-align:left}.detail-fab,.action-sheet{right:16px}.approve-modal{padding:18px 16px;bottom:16px;left:12px;right:12px}.approve-actions{grid-template-columns:1fr}.feedback-card{width:min(100%,300px)}}.approver-shell{background:linear-gradient(#f4f8fd 0%,#eef4fb 100%);min-height:100vh}.approver-topbar{border-bottom:0}.approver-screen-title{color:#202124;font-size:17px;font-weight:700}.approver-page{min-height:calc(100vh - 62px);padding:14px 12px 96px}.approver-search-wrap{min-height:46px;box-shadow:var(--shadow-subtle);background:#fff;border-radius:8px;align-items:center;padding:0 12px 0 42px;display:flex;position:relative}.approver-search-icon{fill:none;stroke:#64748b;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;position:absolute;left:14px}.approver-search-input{color:#202124;background:0 0;border:0;outline:0;width:100%;font-size:15px;font-weight:500;line-height:22px}.approver-search-input::placeholder{color:var(--color-text-soft)}.approver-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;margin-top:14px;display:flex;overflow-x:auto}.approver-tabs::-webkit-scrollbar{display:none}.approver-tab{color:#4b5563;min-width:max-content;min-height:36px;box-shadow:none;background:#fff;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex;position:relative}.approver-tab-active{background:var(--color-brand);color:#fff}.approver-count-badge{min-width:22px;height:22px;color:var(--color-brand);background:#dbe9fb;border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.approver-tab-active .approver-count-badge{color:var(--color-brand);background:#fff}.approver-section{margin-top:14px}.approver-section-title{color:#202124;margin:0;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:800;line-height:22px}.approver-context{color:#5f6368;margin:2px 0 10px;font-size:13px;font-weight:600}.approver-card{min-height:64px;box-shadow:none;background:#fff;border-radius:8px;grid-template-columns:40px minmax(0,1fr) 32px;align-items:center;gap:10px;padding:12px;display:grid}.approver-avatar-wrap{width:40px;height:40px;position:relative}.approver-avatar,.approver-avatar-skeleton{border-radius:999px;width:40px;height:40px}.approver-avatar{color:var(--color-brand);background:#dbe9fb;justify-content:center;align-items:center;font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:800;display:inline-flex}.approver-status-dot{background:#9ca3af;border:2px solid #fff;border-radius:999px;width:12px;height:12px;position:absolute;bottom:1px;right:0}.approver-status-dot-selected{background:var(--color-brand)}.approver-card-main{text-align:left;background:0 0;border:0;min-width:0;padding:0;display:grid}.approver-name{color:#202124;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:700;line-height:20px;overflow:hidden}.approver-meta{color:#5f6368;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;line-height:18px;overflow:hidden}.approver-toggle-button{color:#7a7388;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.approver-toggle-button-remove{color:#dc2626}.approver-toggle-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.approver-toggle-icon-selected{color:#dc2626}.approver-bottom-bar{z-index:18;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:10px;display:grid;position:fixed;bottom:14px;left:max(12px,50vw - 203px);right:max(12px,50vw - 203px)}.approver-cancel-button,.approver-save-button{border-radius:6px;justify-content:center;align-items:center;min-height:44px;font-family:Nunito Sans,sans-serif;font-size:15px;font-weight:700;display:inline-flex}.approver-cancel-button{color:#334155;box-shadow:var(--shadow-subtle);background:#fff;border:0}.approver-save-button{background:var(--color-brand);color:#fff;box-shadow:var(--shadow-subtle);border:0;gap:8px}.approver-save-button:disabled{background:var(--color-border);color:var(--color-text-soft);cursor:not-allowed;box-shadow:none}.approver-save-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}@media (width<=639px){.approver-page{padding:14px 12px 92px}.approver-search-wrap{min-height:46px;padding-left:42px}.approver-search-input{font-size:15px}.approver-card{grid-template-columns:40px minmax(0,1fr) 32px;gap:10px;padding:12px}.approver-name{font-size:14px}.approver-meta{font-size:13px}.approver-cancel-button,.approver-save-button{min-height:44px;font-size:15px}}
