@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root { --ink:#1e255a; --muted:#647083; --line:#dce4ea; --blue:#28306b; --blue-dark:#1b2257; --green:#8ac63f; --cyan:#4da8c4; --surface:#fff; --canvas:#f5f8fb; }
* { box-sizing:border-box; }
html { min-height:100%; }
body { margin:0; min-height:100vh; font-family:Inter,Arial,sans-serif; color:var(--ink); background:var(--canvas); -webkit-font-smoothing:antialiased; }
button,input { font:inherit; }
.login-page { display:flex; align-items:center; justify-content:center; min-height:100svh; padding:clamp(28px,6vh,64px) 22px; background:radial-gradient(circle at 50% -10%, #fff 0, #f5f8fb 52%, #edf4f7 100%); }
.login-shell { width:min(100%, 480px); display:grid; gap:20px; }
.login-brand { display:grid; justify-items:center; gap:10px; }
.brand-logo-wrap { display:flex; align-items:center; justify-content:center; width:min(100%, 370px); min-height:66px; padding:4px 16px; }
.brand-logo { display:block; width:100%; max-width:330px; height:auto; filter:drop-shadow(0 7px 11px rgba(30,37,90,.08)); }
.brand-caption { margin:0; color:#788395; font-size:11px; letter-spacing:.02em; }
.login-card { position:relative; width:100%; max-width:480px; justify-self:center; padding:clamp(30px,5vw,48px); border:1px solid rgba(213,222,230,.92); border-radius:20px; background:rgba(255,255,255,.98); box-shadow:0 20px 50px rgba(30,37,90,.09), 0 2px 7px rgba(30,37,90,.03); }
.login-card::before { content:""; position:absolute; top:-1px; left:34px; right:34px; height:3px; border-radius:0 0 5px 5px; background:linear-gradient(90deg,var(--green),var(--cyan)); }
.login-heading { margin-bottom:28px; }
.eyebrow { margin:0 0 10px; color:var(--green); font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.login-heading h1 { margin:0; font-size:clamp(30px,4vw,36px); line-height:1.14; letter-spacing:-.045em; }
.login-heading > p:last-child { margin:10px 0 0; color:var(--muted); font-size:13px; line-height:1.6; }
.login-form { display:grid; gap:19px; }
.field-group label { display:block; margin:0 0 8px; color:#303957; font-size:12px; font-weight:600; letter-spacing:.01em; }
.input-shell { display:flex; align-items:center; min-height:52px; gap:11px; padding:0 14px; border:1px solid var(--line); border-radius:11px; background:#fff; transition:border-color .2s,box-shadow .2s,background .2s; }
.input-shell:focus-within { border-color:#7aaebb; box-shadow:0 0 0 4px rgba(77,168,196,.12); }
.input-shell svg { width:18px; height:18px; flex:0 0 auto; color:#8994a2; }
.input-shell input { width:100%; min-width:0; height:50px; border:0; outline:0; color:var(--ink); background:transparent; font-size:13px; }
.input-shell input::placeholder { color:#a2abb5; }
.input-shell input:-webkit-autofill,.input-shell input:-webkit-autofill:hover,.input-shell input:-webkit-autofill:focus { -webkit-text-fill-color:var(--ink); -webkit-box-shadow:0 0 0 1000px #fff inset; transition:background-color 9999s ease-in-out 0s; }
.input-error { border-color:#d84b55; }
.field-error { margin:7px 0 0; color:#c83d48; font-size:12px; }
.password-toggle { display:grid; place-items:center; width:28px; height:32px; margin-right:-5px; padding:0; border:0; color:#7f8a98; background:transparent; cursor:pointer; }
.password-toggle svg { width:19px; height:19px; }
.eye-closed { display:none; }
.password-toggle.is-visible .eye-open { display:none; }
.password-toggle.is-visible .eye-closed { display:block; }
.form-options { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:-1px; font-size:11px; }
.form-options a,.back-link { color:var(--blue); text-decoration:none; font-weight:600; }
.form-options a:hover,.back-link:hover { text-decoration:underline; }
.remember-option { display:flex; align-items:center; gap:8px; color:var(--muted); cursor:pointer; }
.remember-option input { position:absolute; opacity:0; pointer-events:none; }
.custom-check { width:17px; height:17px; border:1px solid #cbd2db; border-radius:5px; background:#fff; transition:all .2s; }
.remember-option input:checked + .custom-check { border-color:var(--green); background:var(--green); box-shadow:inset 0 0 0 3px #fff; }
.login-button { display:flex; align-items:center; justify-content:center; gap:12px; min-height:52px; margin-top:4px; border:0; border-radius:11px; color:#fff; background:var(--blue); box-shadow:0 10px 18px rgba(30,37,90,.18); font-size:13px; font-weight:600; cursor:pointer; transition:background .2s,transform .2s,box-shadow .2s; }
.login-button svg { width:18px; height:18px; }
.login-button:hover { background:var(--blue-dark); box-shadow:0 12px 24px rgba(30,37,90,.28); transform:translateY(-1px); }
.login-button:active { transform:translateY(0); }
.login-footer { margin:24px 0 0; color:#8a95a1; font-size:10px; line-height:1.6; text-align:center; }
.notice { margin:-12px 0 20px; padding:11px 13px; border-radius:10px; font-size:12px; }
.notice-success { color:#176c4b; background:#edf9f3; }
.compact-card { justify-self:center; }
.back-link { display:inline-block; margin-bottom:36px; font-size:13px; }
.home-page { display:grid; place-items:center; padding:24px; }
.home-shell { width:min(100%,520px); padding:48px; text-align:center; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 22px 60px rgba(23,32,43,.08); }
.brand-mark.small { width:46px; height:46px; margin:0 auto 22px; border-radius:14px; font-size:22px; }
.home-shell h1 { margin:0 0 10px; }
.home-shell p:not(.eyebrow) { color:var(--muted); }
.secondary-button { margin-top:20px; padding:12px 18px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:#fff; cursor:pointer; }
.app-page { background:#f5f8fb; }
.app-layout { display:flex; min-height:100svh; }
.app-sidebar { position:sticky; top:0; z-index:30; display:flex; align-self:flex-start; flex:0 0 238px; flex-direction:column; width:238px; height:100svh; overflow-y:auto; padding:28px 18px 22px; border-right:1px solid #e4eaf0; background:rgba(255,255,255,.97); box-shadow:8px 0 24px rgba(30,37,90,.035); }
.app-brand { display:block; padding:4px 12px 24px; }
.app-brand img { display:block; width:164px; height:auto; filter:drop-shadow(0 5px 8px rgba(30,37,90,.08)); }
.sidebar-label { padding:0 13px 10px; color:#98a3b1; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.app-nav { display:grid; gap:5px; }
.app-nav-group { display:grid; gap:2px; }
.app-nav-group .app-nav-link { position:relative; }
.nav-chevron { margin-left:auto; color:#97a4b1; font-size:14px; line-height:1; }
.app-nav-sub { display:grid; gap:2px; margin:0 0 5px 37px; padding-left:12px; border-left:1px solid #e2e9ef; }
.app-nav-sub a { padding:7px 8px; border-radius:7px; color:#8994a1; font-size:10px; font-weight:600; text-decoration:none; }
.app-nav-sub a:hover,.app-nav-sub a.active { color:var(--blue); background:#f0f5f9; }
.app-nav-group:not(.expanded) .app-nav-sub { display:none; }
.app-nav-link { display:flex; align-items:center; gap:11px; padding:12px 13px; border-radius:10px; color:#687486; font-size:13px; font-weight:600; text-decoration:none; }
.app-nav-link.active { color:var(--blue); background:#eef1fb; }
.app-nav-link.muted { color:#a4aebb; cursor:default; }
.nav-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:7px; color:var(--cyan); background:#edf7f8; font-size:0; font-weight:400; }
.nav-icon::before { content:"▦"; font-size:14px; line-height:1; }
.app-nav-link.muted .nav-icon { color:#a4aebb; background:#f3f5f7; }
.app-nav-link.muted .nav-icon::before { content:"○"; font-size:13px; }
.sidebar-bottom { margin-top:auto; padding:18px 8px 0; border-top:1px solid #edf0f3; }
.user-mini { display:flex; align-items:center; gap:9px; min-width:0; }
.user-avatar { display:grid; place-items:center; flex:0 0 auto; width:31px; height:31px; border-radius:10px; color:#fff; background:var(--blue); font-size:12px; font-weight:700; }
.user-mini strong,.user-mini small { display:block; overflow:hidden; max-width:145px; text-overflow:ellipsis; white-space:nowrap; }
.user-mini strong { color:var(--ink); font-size:11px; }
.user-mini small { margin-top:3px; color:#98a3b1; font-size:10px; }
.logout-link { margin:17px 0 0; padding:0; border:0; color:#8b96a3; background:transparent; font-size:11px; cursor:pointer; }
.app-main { width:100%; min-width:0; padding:42px clamp(22px,5vw,72px) 58px; }
.app-header { position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:20px; max-width:1120px; margin:0 auto 32px; padding:12px 0 18px; background:rgba(245,248,251,.94); backdrop-filter:blur(12px); }
.section-kicker { margin:0 0 7px; color:var(--green); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.app-header h1 { margin:0; color:var(--ink); font-size:32px; letter-spacing:-.045em; }
.topbar-actions { display:flex; align-items:center; gap:10px; }
.topbar-search { display:flex; align-items:center; width:min(250px, 24vw); height:38px; padding:0 8px 0 11px; border:1px solid #dce4ea; border-radius:10px; background:#fff; box-shadow:0 3px 10px rgba(30,37,90,.025); }
.topbar-search > span { color:#8b96a3; font-size:20px; line-height:1; }
.topbar-search input { width:100%; min-width:0; height:34px; padding:0 8px; border:0; outline:0; color:var(--ink); background:transparent; font-size:11px; }
.topbar-search button { display:grid; place-items:center; width:27px; height:27px; border:0; border-radius:7px; color:#fff; background:var(--blue); font-size:14px; cursor:pointer; }
.notification-center { position:relative; }
.notification-dock-trigger { position:relative; display:grid; place-items:center; width:44px; height:44px; border:1px solid #dce4ea; border-radius:12px; color:var(--blue); background:#fff; box-shadow:0 4px 12px rgba(30,37,90,.06); cursor:pointer; transition:transform .18s,box-shadow .18s,border-color .18s; }
.notification-dock-trigger:hover,.notification-dock-trigger[aria-expanded="true"] { border-color:#9eb4cf; background:#f4f8fc; box-shadow:0 8px 20px rgba(30,37,90,.12); transform:translateY(-1px); }
.notification-bell-icon { position:relative; display:block; width:27px; height:27px; border-radius:9px; background:var(--blue); }
.notification-bell-icon::before { content:""; position:absolute; left:8px; top:5px; width:10px; height:12px; border:2px solid #fff; border-radius:7px 7px 4px 4px; }.notification-bell-icon::after { content:""; position:absolute; left:6px; bottom:5px; width:15px; height:2px; border-radius:3px; background:#fff; box-shadow:6px 3px 0 -1px #fff; }
.notification-badge { position:absolute; top:-9px; right:-9px; display:grid; place-items:center; min-width:23px; height:23px; padding:0 6px; border:3px solid #fff; border-radius:99px; color:#fff; background:#dc4050; box-shadow:0 4px 9px rgba(220,64,80,.3); font-size:10px; font-weight:900; }
.notification-drawer { padding-top:13px; border-top:1px solid #edf0f3; }
.notification-dock-panel { position:absolute; top:47px; right:0; width:min(370px, calc(100vw - 82px)); max-height:min(620px, 78vh); overflow:auto; padding:17px; border:1px solid #dce4ea; border-radius:16px; background:#fff; box-shadow:0 18px 45px rgba(30,37,90,.18); }
.notification-dock-header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:12px; }
.notification-dock-header h2 { margin:4px 0 0; color:var(--ink); font-size:17px; letter-spacing:-.02em; }
.notification-dock-header > span { display:grid; place-items:center; min-width:24px; height:24px; border-radius:8px; color:var(--blue); background:#eef1fb; font-size:10px; font-weight:800; }
.topbar-logout button { padding:0 4px; border:0; color:#7a8796; background:transparent; font-size:11px; cursor:pointer; }
.topbar-logout button:hover { color:var(--blue); }
.notification-list { display:grid; gap:7px; margin-top:15px; }
.notification-item { display:flex; align-items:center; gap:10px; min-width:0; padding:10px 11px; border:1px solid #edf0f3; border-radius:10px; color:var(--ink); text-decoration:none; transition:transform .16s, box-shadow .16s, border-color .16s; }
.notification-item:hover { border-color:#cbd9e7; box-shadow:0 5px 14px rgba(30,37,90,.07); transform:translateY(-1px); }
.notification-dot { flex:0 0 auto; width:9px; height:9px; border-radius:50%; background:#4da8c4; box-shadow:0 0 0 4px rgba(77,168,196,.12); }
.notification-content { display:grid; min-width:0; gap:2px; flex:1; }
.notification-content strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.notification-content span,.notification-content small { overflow:hidden; color:#687486; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
.notification-content small { color:#8994a1; font-size:9px; }
.notification-arrow { color:var(--blue); font-size:16px; }
.notification-soon { border-color:#eadca8; background:#fffdf3; }.notification-soon .notification-dot { background:#d4a72c; box-shadow:0 0 0 4px rgba(212,167,44,.14); }
.notification-new { border-color:#c9e5bc; background:#f5fbf1; }.notification-new .notification-dot { background:#6eaa3d; box-shadow:0 0 0 4px rgba(110,170,61,.14); }.notification-new .notification-content strong { color:#4f8128; }
.notification-pending { border-color:#cbdced; background:#f7faff; }.notification-pending .notification-dot { background:#4d83b7; box-shadow:0 0 0 4px rgba(77,131,183,.14); }.notification-pending .notification-content strong { color:#315e8e; }
.notification-urgent { border-color:#f0c7c7; background:#fff8f8; }.notification-urgent .notification-dot,.notification-critical .notification-dot { background:#d84b55; box-shadow:0 0 0 4px rgba(216,75,85,.13); }
.notification-critical { border-color:#e8aeb3; background:#fff1f2; }.notification-critical .notification-content strong { color:#b73543; }
.notification-empty { margin-top:14px; padding:12px; border-radius:9px; color:#687486; background:#f8fafc; font-size:11px; }
.header-actions { display:flex; align-items:center; gap:14px; }
.role-chip { padding:8px 11px; border:1px solid #dce4ea; border-radius:20px; color:var(--blue); background:#fff; font-size:11px; font-weight:600; }
.mobile-menu { display:none; border:0; color:var(--blue); background:transparent; font-size:20px; }
.module-hero { position:relative; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; max-width:1120px; margin:0 auto 28px; padding:30px 32px; overflow:hidden; border-radius:18px; color:#fff; background:var(--blue); box-shadow:0 14px 32px rgba(30,37,90,.14); }
.module-hero::after { content:"▦"; position:absolute; right:190px; bottom:-32px; color:rgba(255,255,255,.08); font-size:150px; line-height:1; pointer-events:none; }
.module-hero .eyebrow { margin-bottom:8px; color:#a8d86e; }
.module-hero h2 { margin:0; font-size:26px; letter-spacing:-.035em; }
.module-hero p:last-child { max-width:530px; margin:9px 0 0; color:#dce2fb; font-size:13px; line-height:1.6; }
.primary-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; flex:0 0 auto; min-height:43px; padding:0 16px; border-radius:10px; color:var(--blue); background:#fff; font-size:12px; font-weight:700; text-decoration:none; box-shadow:0 7px 16px rgba(18,25,75,.12); }
.primary-action span { color:var(--green); font-size:18px; font-weight:400; line-height:1; }
.primary-action.small { min-height:40px; color:#fff; background:var(--blue); box-shadow:none; }
.primary-action.small span { color:#fff; }
.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; max-width:1120px; margin:0 auto 28px; }
.metric-card { min-height:136px; padding:20px; border:1px solid #e1e8ee; border-radius:15px; background:#fff; box-shadow:0 5px 18px rgba(30,37,90,.035); }
.metric-card.accent { border-color:#f0d9d4; }
.metric-label,.metric-note { display:block; color:#778393; font-size:11px; }
.metric-card strong { display:block; margin:17px 0 7px; color:var(--ink); font-size:29px; letter-spacing:-.04em; }
.metric-card.accent strong { color:#c56a58; }
.filter-panel { max-width:1120px; margin:0 auto 20px; padding:22px 24px 24px; border:1px solid #e1e8ee; border-radius:15px; background:#fff; box-shadow:0 5px 18px rgba(30,37,90,.035); }
.filter-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.filter-heading h2 { margin:4px 0 0; color:var(--ink); font-size:16px; letter-spacing:-.02em; }
.filter-heading p { margin:5px 0 0; color:#8994a1; font-size:11px; }
.filter-eyebrow { color:var(--cyan); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.clear-filters { margin-top:5px; color:#758294; font-size:11px; font-weight:600; text-decoration:none; white-space:nowrap; }
.clear-filters:hover { color:var(--blue); text-decoration:underline; }
.filter-form { display:grid; grid-template-columns:2fr repeat(4,minmax(120px,1fr)); gap:13px; align-items:end; }
.filter-field { display:grid; gap:6px; min-width:0; }
.filter-field span { color:#6f7b8b; font-size:10px; font-weight:700; }
.filter-field input,.filter-field select { width:100%; min-height:42px; padding:0 11px; border:1px solid var(--line); border-radius:9px; outline:0; color:var(--ink); background:#fff; font:inherit; font-size:11px; }
.filter-field input:focus,.filter-field select:focus { border-color:#7aaebb; box-shadow:0 0 0 4px rgba(77,168,196,.11); }
.filter-actions { display:flex; align-items:end; }
.filter-submit { width:100%; min-height:42px; padding:0 13px; border:0; border-radius:9px; color:#fff; background:var(--blue); font-size:11px; font-weight:700; cursor:pointer; }
.filter-submit span { margin-left:5px; color:var(--green); font-size:15px; }
.filter-live-status { margin:10px 0 0; color:var(--cyan); font-size:10px; font-weight:600; }
.filter-form { display:grid; grid-template-columns:1fr; gap:12px; width:100%; }
.filter-main-row,.filter-secondary-row { display:grid; width:100%; align-items:end; gap:14px; }
.filter-main-row { grid-template-columns:minmax(260px,2fr) repeat(3,minmax(145px,1fr)); }
.filter-secondary-row { grid-template-columns:repeat(4,minmax(135px,1fr)) minmax(145px,auto); padding-top:14px; border-top:1px solid #edf0f3; }
.filter-actions { min-width:145px; }
.inbox-panel { max-width:1120px; min-height:270px; margin:0 auto; padding:26px; border:1px solid #e1e8ee; border-radius:15px; background:#fff; }
.workflow-panel { margin-top:22px; padding:16px; border:1px solid #dbe4ef; border-left:4px solid var(--cyan); border-radius:12px; background:#f8fbfd; }
.workflow-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--blue); font-size:12px; }
.workflow-panel-heading span { color:#718096; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.workflow-panel p { margin:8px 0 14px; color:#687486; font-size:11px; line-height:1.5; }
.workflow-form { display:grid; gap:9px; padding-top:12px; border-top:1px solid #e4ebf0; }
.workflow-form + .workflow-form { margin-top:12px; }
.workflow-form label { display:grid; gap:5px; color:#687486; font-size:10px; font-weight:700; }
.workflow-form select,.workflow-form textarea,.workflow-form input { width:100%; padding:9px 10px; border:1px solid #dce4ea; border-radius:8px; outline:0; color:var(--ink); background:#fff; font:inherit; font-size:11px; font-weight:400; resize:vertical; }
.workflow-form select { min-height:40px; padding-right:34px; border-color:#cbd9e5; color:var(--blue); background-color:#fff; font-weight:700; cursor:pointer; }
.workflow-form select:hover { border-color:#8eabc0; }
.workflow-form select option { color:var(--ink); font-weight:500; }
.workflow-form select:focus,.workflow-form textarea:focus { border-color:#7aaebb; box-shadow:0 0 0 3px rgba(77,168,196,.11); }
.workflow-recipient-preview { display:flex; align-items:flex-start; gap:9px; padding:10px 12px; border:1px solid #dcebc9; border-radius:9px; color:#4f713b; background:#f5faef; }
.workflow-recipient-preview[hidden] { display:none; }
.workflow-recipient-preview > span { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; color:#fff; background:#8bc53f; font-size:11px; }
.workflow-recipient-preview strong,.workflow-recipient-preview small { display:block; }
.workflow-recipient-preview strong { color:#496b37; font-size:10px; }
.workflow-recipient-preview small { margin-top:3px; color:#71805f; font-size:10px; font-weight:400; }
.workflow-label-hint { color:#8994a1; font-weight:400; }
.workflow-form .secondary-button,.workflow-form .primary-action { justify-self:start; margin-top:2px; min-height:37px; padding:0 13px; font-size:11px; }
.workflow-route-action { width:100%; min-height:42px!important; color:#fff!important; background:var(--blue)!important; border:1px solid var(--blue); box-shadow:0 8px 16px rgba(38,52,124,.16); }
.workflow-route-action:hover { background:#202d78!important; transform:translateY(-1px); }
.workflow-return-form .primary-action { color:#fff; background:var(--blue); }
.panel-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.panel-heading h2 { margin:0; color:var(--ink); font-size:17px; letter-spacing:-.02em; }
.panel-heading p { margin:6px 0 0; color:#8994a1; font-size:12px; }
.text-action,.back-action { color:var(--blue); font-size:11px; font-weight:700; text-decoration:none; }
.form-header { align-items:flex-start; }
.form-header .back-action { display:inline-block; margin-bottom:19px; }
.header-description { margin:9px 0 0; color:#7f8b9a; font-size:12px; line-height:1.6; }
.header-description b,.field-control label b { color:#c56a58; }
.form-notice { max-width:900px; margin:0 auto 17px; padding:12px 15px; border:1px solid #d9efdf; border-radius:10px; color:#246743; background:#f1fbf4; font-size:12px; }
.form-notice.error { border-color:#f1d6d1; color:#a54c40; background:#fff6f4; }
.pqr-form { max-width:900px; margin:0 auto; }
.form-section { margin-bottom:17px; padding:26px; border:1px solid #e1e8ee; border-radius:15px; background:#fff; }
.form-section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:22px; }
.form-section-heading h2 { margin:0; color:var(--ink); font-size:16px; letter-spacing:-.02em; }
.form-section-heading p { margin:6px 0 0; color:#8994a1; font-size:11px; line-height:1.5; }
.section-number { color:#a8b2bf; font-size:11px; font-weight:700; letter-spacing:.08em; }
.optional-label { margin-left:6px; color:#94a0ae; font-size:10px; font-weight:500; letter-spacing:0; }
.person-switch { display:flex; gap:8px; margin-bottom:20px; padding:4px; border:1px solid #e1e8ee; border-radius:11px; background:#f7f9fb; }
.person-switch label { flex:1; cursor:pointer; }
.person-switch input { position:absolute; opacity:0; pointer-events:none; }
.person-switch span { display:block; padding:10px; border-radius:8px; color:#7b8795; font-size:11px; font-weight:600; text-align:center; }
.person-switch input:checked + span { color:var(--blue); background:#fff; box-shadow:0 2px 8px rgba(30,37,90,.08); }
.resource-reference { margin:0 0 20px; padding:15px; border:1px solid #dce8ef; border-radius:11px; background:#f8fbfd; }.resource-reference[hidden] { display:none; }.resource-reference .field-control { max-width:520px; }.resource-validation { display:block; margin-top:7px; color:#82909d; font-size:10px; font-weight:600; }.resource-validation.valid { color:#4c7c3d; }.resource-validation.invalid { color:#b24747; }
.type-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.type-option { cursor:pointer; }
.type-option input { position:absolute; opacity:0; pointer-events:none; }
.type-option span { display:flex; align-items:center; min-height:49px; padding:11px 13px; border:1px solid var(--line); border-radius:10px; color:#647083; background:#fff; font-size:11px; font-weight:600; transition:border-color .2s,background .2s,box-shadow .2s,color .2s; }
.type-option input:checked + span { border-color:#a9cb86; color:var(--blue); background:#f6fbf2; box-shadow:0 0 0 3px rgba(138,198,63,.1); }
.type-option span:hover { border-color:#b9cbd4; }
.form-grid { display:grid; gap:17px; }
.form-grid.two-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.company-field[hidden] { display:none; }
.field-control label { display:block; margin:0 0 7px; color:#303957; font-size:11px; font-weight:600; }
.field-control input,.field-control select { width:100%; min-height:46px; padding:0 13px; border:1px solid var(--line); border-radius:9px; outline:0; color:var(--ink); background:#fff; font:inherit; font-size:12px; transition:border-color .2s,box-shadow .2s; }
.field-control select { cursor:pointer; }
.field-control input:focus,.field-control select:focus { border-color:#7aaebb; box-shadow:0 0 0 4px rgba(77,168,196,.11); }
.field-control textarea { width:100%; min-height:130px; padding:13px; border:1px solid var(--line); border-radius:9px; outline:0; resize:vertical; color:var(--ink); background:#fff; font:inherit; font-size:12px; line-height:1.6; transition:border-color .2s,box-shadow .2s; }
.field-control textarea:focus { border-color:#7aaebb; box-shadow:0 0 0 4px rgba(77,168,196,.11); }
.field-control input::placeholder { color:#a2abb5; }
.field-control .field-error { display:block; margin-top:6px; }
.toggle-row { display:flex; align-items:center; gap:10px; color:#586577; font-size:12px; cursor:pointer; }
.toggle-row input { position:absolute; opacity:0; pointer-events:none; }
.toggle-control { position:relative; width:37px; height:21px; border-radius:20px; background:#d7dee5; transition:background .2s; }
.toggle-control::after { content:""; position:absolute; top:3px; left:3px; width:15px; height:15px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.16); transition:transform .2s; }
.toggle-row input:checked + .toggle-control { background:var(--green); }
.toggle-row input:checked + .toggle-control::after { transform:translateX(16px); }
.representative-fields { display:grid; gap:17px; margin-top:21px; padding-top:21px; border-top:1px solid #edf0f3; }
.representative-fields[hidden] { display:none; }
.file-field { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px; border:1px dashed #cbd6df; border-radius:9px; color:#536073; font-size:11px; cursor:pointer; }
.file-field small { display:block; margin-top:4px; color:#9aa5b1; font-size:10px; }
.file-field input { max-width:220px; font-size:10px; }
.form-actions { display:flex; align-items:center; justify-content:flex-end; gap:12px; padding:4px 0 30px; }
.form-actions .secondary-button { margin:0; text-decoration:none; font-size:12px; }
.form-submit { min-height:44px; border:0; cursor:pointer; }
.form-submit span { color:var(--green); }
.text-action span { margin-left:5px; color:var(--green); font-size:16px; }
.empty-state { display:grid; justify-items:center; padding:38px 20px 18px; text-align:center; }
.empty-icon { display:grid; place-items:center; width:40px; height:40px; margin-bottom:13px; border-radius:13px; color:var(--cyan); background:#eaf6f8; font-size:22px; }
.empty-state h3 { margin:0; color:var(--ink); font-size:14px; }
.empty-state p { max-width:410px; margin:8px 0 18px; color:#8994a1; font-size:11px; line-height:1.6; }
.pqr-row { display:grid; grid-template-columns:1.4fr 1fr auto; align-items:center; gap:20px; padding:18px 0; border-bottom:1px solid #edf0f3; }
.pqr-row:last-of-type { border-bottom:0; }
.pqr-main,.pqr-person,.pqr-status { min-width:0; }
.pqr-main strong,.pqr-person span { display:block; margin-top:5px; color:var(--ink); font-size:12px; }
.pqr-radicado { color:var(--blue); font-size:11px; font-weight:700; }
.pqr-subject,.pqr-person small,.pqr-status small { display:block; margin-top:5px; color:#8994a1; font-size:10px; }
.pqr-status { text-align:right; }
.status-pill { display:inline-block; padding:6px 9px; border-radius:20px; color:#45703d; background:#eef8e9; font-size:10px; font-weight:700; }
.pqr-pagination { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0 2px; border-top:1px solid #edf0f3; }
.pagination-summary { color:#8994a1; font-size:10px; }
.pagination-controls { display:flex; align-items:center; gap:5px; }
.pagination-arrow,.pagination-number { display:grid; place-items:center; min-width:30px; height:30px; border:1px solid transparent; border-radius:8px; color:var(--blue); background:transparent; font-size:11px; font-weight:700; text-decoration:none; }
.pagination-arrow:hover,.pagination-number:hover { border-color:#dfe7ec; background:#f7fafb; }
.pagination-arrow.disabled { color:#bdc6ce; cursor:default; }
.pagination-number.active { border-color:#dce7d1; color:#496b37; background:#f1f8eb; }
.filter-panel { margin-bottom:0; border-bottom:0; border-radius:15px 15px 0 0; box-shadow:none; }
.filter-panel + .inbox-panel { margin-top:0; border-top:1px solid #edf0f3; border-radius:0 0 15px 15px; }
.table-scroll { overflow-x:auto; }
.pqr-table { width:100%; min-width:860px; border-collapse:collapse; table-layout:fixed; }
.pqr-table th { padding:15px 12px; border-bottom:1px solid #e4eaf0; color:#8a96a3; font-size:10px; font-weight:700; letter-spacing:.04em; text-align:left; text-transform:uppercase; }
.pqr-table td { padding:17px 12px; border-bottom:1px solid #edf0f3; color:var(--ink); font-size:11px; vertical-align:middle; }
.pqr-table tr:last-child td { border-bottom:0; }
.pqr-table td strong,.pqr-table td span,.pqr-table td small { display:block; }
.pqr-table td strong { color:var(--ink); font-size:11px; }
.pqr-table td small { margin-top:5px; color:#8994a1; font-size:10px; line-height:1.35; }
.pqr-table td .pqr-radicado { color:var(--blue); font-size:11px; font-weight:700; }
.pqr-table .status-pill { display:inline-block; }
.pqr-row-open { cursor:pointer; transition:background .18s ease; }
.pqr-row-open:hover,.pqr-row-open:focus-within { background:#f8fbfe; }
.pqr-detail-trigger { padding:0; border:0; color:var(--blue); background:transparent; cursor:pointer; font:inherit; font-size:11px; font-weight:700; text-align:left; }
.modal-open { overflow:hidden; }
.pqr-modal { position:fixed; inset:0; z-index:80; display:grid; place-items:center; padding:22px; animation:modal-fade-in .18s ease-out both; }
.pqr-modal[hidden] { display:none; }
.pqr-modal-backdrop { position:absolute; inset:0; background:rgba(13,22,52,.52); backdrop-filter:blur(8px); }
.pqr-modal-panel { position:relative; width:min(820px,100%); max-height:min(780px,90vh); overflow:auto; border:1px solid rgba(214,223,234,.9); border-radius:24px; background:#fff; box-shadow:0 30px 90px rgba(18,31,76,.28),0 4px 14px rgba(18,31,76,.1); animation:modal-rise-in .24s cubic-bezier(.2,.8,.2,1) both; }
.pqr-modal-panel::before { content:""; position:absolute; top:0; left:28px; right:28px; height:3px; border-radius:0 0 3px 3px; background:#8bc53f; }
.pqr-modal-header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:34px 34px 25px; border-bottom:1px solid #e9eff4; background:#f7fafc; }
.pqr-modal-header > div:first-child { position:relative; padding-left:16px; }
.pqr-modal-header > div:first-child::before { content:""; position:absolute; top:1px; bottom:1px; left:0; width:4px; border-radius:4px; background:#8bc53f; }
.pqr-modal-header h2 { margin:8px 0 5px; color:var(--ink); font-size:29px; letter-spacing:-.05em; }
.pqr-modal-header p { margin:0; color:var(--muted); font-size:12px; }
.modal-close { display:grid; place-items:center; width:36px; height:36px; border:1px solid #dce4ec; border-radius:50%; color:#718096; background:#fff; cursor:pointer; font-size:22px; line-height:1; transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease; }
.modal-close:hover,.modal-close:focus-visible { border-color:#b9c8d8; color:var(--ink); background:#f2f6fa; transform:rotate(4deg); outline:0; }
.pqr-modal-body { padding:26px 32px 28px; }
.pqr-detail-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; padding-bottom:25px; border-bottom:1px solid #edf1f5; }
.pqr-detail-grid div { min-height:76px; padding:14px 15px; border:1px solid #e5ecf2; border-radius:13px; background:#fbfcfd; box-shadow:0 4px 12px rgba(33,48,84,.035); }
.pqr-detail-grid div:nth-child(1),.pqr-detail-grid div:nth-child(2) { background:#f4f9ed; border-color:#dcebc9; }
.pqr-detail-grid div:nth-child(3),.pqr-detail-grid div:nth-child(4) { background:#f5f8fc; border-color:#dfe8f2; }
.pqr-detail-grid span,.pqr-detail-copy > span,.pqr-detail-history > span { display:block; margin-bottom:5px; color:#8a96a3; font-size:10px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.pqr-detail-grid strong { color:var(--ink); font-size:12px; }
.pqr-detail-copy { margin-top:22px; padding:21px 22px 7px; border:1px solid #e7edf2; border-radius:15px; background:#fbfcfd; }
.pqr-detail-copy strong { display:block; margin-bottom:17px; color:var(--ink); font-size:15px; line-height:1.4; }
.pqr-detail-copy p { margin:0 0 16px; color:#526174; font-size:13px; line-height:1.6; white-space:pre-wrap; }
.pqr-detail-history { position:relative; margin-top:22px; padding:21px 22px 8px; border:1px solid #e7edf2; border-radius:15px; background:#fff; }
.pqr-detail-history::after { content:""; position:absolute; top:51px; bottom:22px; left:29px; width:1px; background:#dfe8ef; }
.pqr-detail-history div { position:relative; display:flex; justify-content:space-between; gap:15px; padding:10px 0 10px 23px; color:var(--ink); font-size:12px; }
.pqr-detail-history div::before { content:""; position:absolute; z-index:1; top:15px; left:1px; width:9px; height:9px; border:3px solid #fff; border-radius:50%; background:#8bc53f; box-shadow:0 0 0 1px #8bc53f; }
.pqr-detail-history small { color:var(--muted); }
.pqr-detail-history p { margin:0; color:var(--muted); font-size:12px; }
.pqr-modal-footer { display:flex; align-items:center; justify-content:flex-end; gap:10px; padding:20px 34px 29px; border-top:1px solid #e9eff4; background:#f7fafc; }
.modal-unavailable { margin-right:auto; color:var(--muted); font-size:11px; }
@keyframes modal-fade-in { from { opacity:0; } to { opacity:1; } }
@keyframes modal-rise-in { from { opacity:0; transform:translateY(12px) scale(.985); } to { opacity:1; transform:translateY(0) scale(1); } }
.coming-panel { display:grid; justify-items:center; max-width:700px; margin:70px auto 0; padding:56px 32px; border:1px solid #e1e8ee; border-radius:18px; text-align:center; background:#fff; }
.coming-panel h2 { margin:0; color:var(--ink); font-size:22px; }
.coming-panel p { max-width:470px; margin:10px 0; color:#8994a1; font-size:13px; line-height:1.7; }
.back-action { white-space:nowrap; }
.module-launch-panel { min-height:0; }
.module-launch { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:15px; margin-top:22px; padding:18px; border:1px solid #e1e8ee; border-radius:12px; color:inherit; text-decoration:none; transition:border-color .2s,box-shadow .2s,transform .2s; }
.module-launch:hover { border-color:#b8cbd5; box-shadow:0 8px 20px rgba(30,37,90,.07); transform:translateY(-1px); }
.module-launch-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:#fff; background:var(--blue); font-size:20px; }
.module-launch strong,.module-launch small { display:block; }
.module-launch strong { color:var(--ink); font-size:14px; }
.module-launch small { margin-top:5px; color:#8994a1; font-size:11px; }
.module-launch-arrow { color:var(--green); font-size:20px; }
.module-launch-icon-green { color:#fff; background:var(--green); }
.module-launch-icon-cyan { color:#fff; background:var(--cyan); }
.workspace-create-link { color:#fff; border:0; background:var(--blue); text-decoration:none; }
.workspace-hero { align-items:center; }.workspace-hero-metric { display:grid; justify-items:end; padding-left:35px; border-left:1px solid rgba(255,255,255,.22); }.workspace-hero-metric strong { font-size:34px; line-height:1; }.workspace-hero-metric span { margin-top:7px; color:#dce2fb; font-size:10px; }.workspace-list { display:grid; }.workspace-item { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 0; border-bottom:1px solid #edf0f3; }.workspace-item:last-child { border-bottom:0; }.workspace-item-main { min-width:0; }.workspace-item-main h3 { margin:7px 0 6px; color:var(--ink); font-size:14px; }.workspace-item-main p { margin:0; color:#8994a1; font-size:11px; }.workspace-dates { display:flex; flex-wrap:wrap; gap:16px; margin-top:13px; color:#7c8995; font-size:10px; }.workspace-dates strong { color:var(--ink); }.workspace-item-action { display:grid; justify-items:end; gap:10px; flex:0 0 auto; }.workspace-item-action form { margin:0; }.workspace-owned { color:#4d743a; font-size:10px; font-weight:700; }.workspace-panel .empty-state { padding:35px 0; }
.users-hero { align-items:center; }
.hero-action { display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:0 15px; border-radius:9px; color:var(--blue); background:#fff; font-size:11px; font-weight:700; text-decoration:none; box-shadow:0 5px 15px rgba(18,31,76,.14); }.hero-action span { color:var(--green); font-size:18px; }
.users-panel { padding:24px; }.users-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }.users-search { display:flex; align-items:center; width:min(430px,100%); height:40px; padding-left:12px; border:1px solid var(--line); border-radius:9px; background:#fff; }.users-search span { color:#8b96a3; font-size:16px; }.users-search input { flex:1; min-width:0; height:36px; padding:0 9px; border:0; outline:0; color:var(--ink); font-size:11px; }.users-search button { height:30px; margin-right:5px; padding:0 10px; border:0; border-radius:7px; color:#fff; background:var(--blue); font-size:10px; font-weight:700; cursor:pointer; }.users-count { color:#8994a1; font-size:11px; }.users-table-wrap { overflow-x:auto; }.users-table { width:100%; min-width:640px; border-collapse:collapse; }.users-table th { padding:12px; border-bottom:1px solid #e5ebef; color:#8a96a3; font-size:10px; text-align:left; text-transform:uppercase; letter-spacing:.04em; }.users-table td { padding:15px 12px; border-bottom:1px solid #edf0f3; color:#526174; font-size:12px; }.user-table-name { display:flex; align-items:center; gap:10px; }.user-table-name>span { display:grid; place-items:center; width:32px; height:32px; border-radius:10px; color:#fff; background:var(--blue); font-size:11px; font-weight:800; }.user-table-name strong { color:var(--ink); font-size:12px; }.user-status { display:inline-block; padding:5px 9px; border-radius:20px; color:#4d743a; background:#eff8e9; font-size:10px; font-style:normal; font-weight:700; }.user-access { color:#9aa5ae; font-size:10px; }.users-empty { padding:35px!important; color:#8994a1!important; text-align:center; }
.destination-recipient { display:flex; flex-direction:column; justify-content:center; min-height:46px; padding:12px 14px; border:1px solid #dfe8ed; border-radius:9px; background:#f8fafb; }
.destination-recipient span,.destination-recipient small { color:#8994a1; font-size:10px; }
.destination-recipient strong { margin:5px 0 2px; color:var(--ink); font-size:12px; }
.response-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.response-options label { cursor:pointer; }
.response-options input { position:absolute; opacity:0; pointer-events:none; }
.response-options span { display:block; padding:13px; border:1px solid var(--line); border-radius:10px; color:#647083; background:#fff; font-size:11px; font-weight:600; text-align:center; }
.response-options input:checked + span { border-color:#a9cb86; color:var(--blue); background:#f6fbf2; box-shadow:0 0 0 3px rgba(138,198,63,.1); }
.response-fields { margin-top:17px; }
.response-fields [hidden] { display:none; }
.notification-preferences { margin-top:16px; }
.notification-channel-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.notification-channel-option { display:flex; align-items:flex-start; gap:11px; min-height:66px; padding:14px 15px; border:1px solid #dfe7ee; border-radius:12px; background:#fbfcfd; cursor:pointer; transition:border-color .18s ease,background .18s ease,box-shadow .18s ease; }
.notification-channel-option:hover { border-color:#b9d692; background:#f7fbf3; }
.notification-channel-option input { flex:0 0 auto; margin-top:3px; accent-color:#2878e8; }
.notification-channel-option span,.notification-channel-option strong,.notification-channel-option small { display:block; }
.notification-channel-option strong { color:var(--ink); font-size:12px; }
.notification-channel-option small { margin-top:5px; color:#8994a1; font-size:10px; line-height:1.4; }
.area-recipient-note { display:flex; align-items:flex-start; gap:10px; margin:15px 0; padding:13px 15px; border:1px solid #dcebc9; border-radius:12px; color:#4f713b; background:#f5faef; }
.area-recipient-note > span { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; color:#fff; background:#8bc53f; font-size:12px; font-weight:800; }
.area-recipient-note strong,.area-recipient-note small { display:block; }
.area-recipient-note strong { color:#496b37; font-size:11px; }
.area-recipient-note small { margin-top:4px; color:#71805f; font-size:10px; }
.field-control > label span { color:#8994a1; font-weight:400; }
.field-hint { display:block; margin-top:6px; color:#8994a1; font-size:10px; }
.consent-row { margin:4px 0 8px; padding:15px 16px; border:1px solid #e1e8ee; border-radius:10px; background:#fff; }
.consent-row label { display:flex; align-items:flex-start; gap:10px; color:#687486; font-size:11px; line-height:1.6; }
.consent-row input { flex:0 0 auto; margin-top:3px; }
.consent-row a { color:var(--blue); font-weight:700; }
.privacy-page { min-height:100svh; display:grid; place-items:center; }
.privacy-card { width:min(720px,100%); padding:34px; border:1px solid #e1e8ee; border-radius:15px; background:#fff; box-shadow:0 10px 30px rgba(30,37,90,.05); }
.privacy-card h1 { margin:14px 0 0; color:var(--ink); font-size:28px; letter-spacing:-.035em; }
.signature-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.signature-options label { display:flex; align-items:center; gap:10px; min-height:48px; padding:12px 14px; border:1px solid var(--line,#dfe5ec); border-radius:10px; color:var(--ink); background:#fff; cursor:pointer; }
.signature-options input { accent-color:var(--blue,#2878e8); }
.signature-upload { margin-top:16px; }
.signature-panel { margin-top:16px; padding:15px; border:1px solid #dce8ef; border-radius:12px; background:#f8fbfd; }
.signature-panel[hidden] { display:none; }
.signature-panel-heading,.public-signature-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.signature-panel-heading strong,.public-signature-toolbar span { display:block; color:var(--ink); font-size:12px; }
.signature-panel-heading small { display:block; margin-top:4px; color:var(--muted); font-size:10px; }
.signature-clear { min-height:30px; padding:0 11px; border:1px solid #d4e0e7; border-radius:8px; color:var(--blue); background:#fff; font-size:10px; font-weight:700; cursor:pointer; }
.signature-canvas { display:block; width:100%; height:220px; touch-action:none; border:1px dashed #a9c2cf; border-radius:9px; background:#fff; cursor:crosshair; }
.signature-hint { display:block; margin-top:8px; color:#8994a1; font-size:10px; }
.confirmation-grid { display:grid; grid-template-columns:minmax(0,820px); gap:16px; }
.summary-list { display:grid; grid-template-columns:minmax(130px,.35fr) minmax(0,1fr); gap:12px 22px; margin:0; font-size:13px; }
.summary-list dt { color:var(--muted); font-weight:700; }
.summary-list dd { margin:0; color:var(--ink); white-space:pre-wrap; }
.confirmation-actions { justify-content:flex-start; margin-top:18px; }
.confirmation-success { width:min(680px,100%); padding:42px clamp(24px,5vw,58px); border:1px solid #dfe6ee; border-radius:18px; background:#fff; box-shadow:0 18px 44px rgba(30,37,90,.07); text-align:center; }
.success-mark { display:grid; place-items:center; width:58px; height:58px; margin:0 auto 18px; border-radius:50%; color:#fff; background:#8bc53f; font-size:30px; font-weight:800; box-shadow:0 8px 18px rgba(139,197,63,.25); }
.confirmation-success h2 { margin:8px 0 4px; color:var(--ink); font-size:30px; letter-spacing:-.04em; }
.success-meta { margin:0; color:var(--muted); font-size:13px; }
.success-copy { margin:18px 0 0; color:#687486; font-size:13px; }
.confirmation-success .confirmation-actions { align-items:center; flex-wrap:wrap; justify-content:center; }
.confirmation-success .primary-action,.confirmation-success .secondary-button { min-width:180px; }
.confirmation-success .text-action { flex-basis:100%; }
@media (max-width:640px) { .signature-options { grid-template-columns:1fr; } }
.privacy-copy { color:#687486; font-size:13px; line-height:1.7; }
@media (max-width:1100px) { .filter-main-row { grid-template-columns:repeat(2,minmax(0,1fr)); } .filter-search { grid-column:span 2; } .filter-secondary-row { grid-template-columns:repeat(2,minmax(0,1fr)); } .filter-actions { min-width:0; } }
@media (max-width:900px) { .app-sidebar { flex-basis:210px; width:210px; } .metric-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:700px) { .app-layout { display:block; } .app-sidebar { position:fixed; top:0; left:0; right:0; z-index:40; width:100%; height:104px; min-height:104px; padding:10px 18px 8px; border-right:0; border-bottom:1px solid #e4eaf0; box-shadow:0 6px 18px rgba(30,37,90,.08); } .app-brand { padding:0 4px 7px; } .app-brand img { width:136px; } .sidebar-label,.app-nav-link.muted,.sidebar-bottom { display:none; } .app-nav { display:flex; align-items:center; gap:4px; overflow-x:auto; } .app-nav-link { width:max-content; padding:6px 10px; } .app-nav-group { display:flex; align-items:center; gap:2px; flex:0 0 auto; } .app-nav-group.expanded .app-nav-sub { display:flex; gap:2px; margin:0; padding:0; border:0; } .app-nav-sub a { padding:6px 8px; font-size:9px; white-space:nowrap; } .nav-chevron { display:none; } .app-main { padding:118px 18px 42px; } .app-header { top:104px; margin-bottom:24px; padding:14px 0 16px; background:rgba(245,248,251,.98); box-shadow:0 1px 0 rgba(30,37,90,.05); } .app-header h1 { font-size:27px; } .topbar-actions { gap:6px; } .topbar-search { width:38px; padding:0; justify-content:center; } .topbar-search input { display:none; } .topbar-search button { width:27px; color:var(--blue); background:transparent; } .topbar-logout { display:none; } .role-chip { display:none; } .mobile-menu { display:block; } .notification-dock-panel { position:fixed; top:174px; right:12px; width:min(370px, calc(100vw - 24px)); max-height:70vh; } .module-hero { align-items:flex-start; flex-direction:column; padding:25px 22px; } .module-hero::after { right:16px; bottom:-35px; font-size:120px; } .module-hero h2 { font-size:23px; } .primary-action { width:100%; } .filter-panel { padding:19px 16px; } .filter-heading { align-items:flex-start; flex-direction:column; gap:8px; } .filter-main-row,.filter-secondary-row { grid-template-columns:1fr; gap:12px; padding-top:0; border-top:0; } .filter-search,.filter-actions { grid-column:auto; } .filter-submit { width:100%; } .inbox-panel { padding:20px 16px; } .panel-heading { align-items:flex-start; flex-direction:column; gap:10px; } .text-action { display:none; } .coming-panel { margin-top:30px; padding:42px 22px; } }
@media (max-width:700px) { .pqr-table { min-width:820px; } .pqr-table th,.pqr-table td { padding-left:9px; padding-right:9px; } }
@media (max-width:700px) { .pqr-pagination { align-items:flex-start; flex-direction:column; gap:10px; } .pagination-controls { width:100%; justify-content:flex-end; } }
@media (max-width:700px) { .module-launch { grid-template-columns:auto 1fr; } .module-launch-arrow { grid-column:2; justify-self:end; margin-top:-22px; } }
@media (max-width:700px) { .users-toolbar { align-items:stretch; flex-direction:column; }.users-search { width:100%; }.users-hero { align-items:flex-start; }.hero-action { width:100%; justify-content:center; }.users-panel { padding:18px 16px; } }
@media (max-width:700px) { .workspace-hero { align-items:flex-start; }.workspace-hero-metric { justify-items:start; margin-top:12px; padding:12px 0 0; border-top:1px solid rgba(255,255,255,.22); border-left:0; }.workspace-item { align-items:flex-start; flex-direction:column; gap:14px; }.workspace-item-action { justify-items:start; width:100%; }.workspace-item-action .secondary-button { width:100%; text-align:center; }.workspace-create-link { display:none; } }
.area-selection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.area-selection-option { display:flex; align-items:flex-start; gap:10px; min-height:65px; padding:13px; border:1px solid #dfe7ee; border-radius:11px; color:var(--ink); background:#fff; cursor:pointer; transition:border-color .18s,background .18s,box-shadow .18s; }.area-selection-option:hover { border-color:#a9cb86; background:#f8fbf5; }.area-selection-option input { margin-top:3px; accent-color:var(--blue); }.area-selection-option strong,.area-selection-option small { display:block; }.area-selection-option strong { font-size:11px; }.area-selection-option small { margin-top:4px; color:#8994a1; font-size:9px; }.user-area-list { display:flex; flex-wrap:wrap; gap:5px; }.user-area-list span { display:inline-block; padding:4px 7px; border-radius:12px; color:#4f713b; background:#eff8e9; font-size:9px; font-weight:700; }
@media (max-width:700px) { .area-selection-grid { grid-template-columns:1fr; } }
@media (max-width:700px) { .form-section { padding:21px 18px; } .form-grid.two-columns { grid-template-columns:1fr; gap:15px; } .type-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .form-section-heading { margin-bottom:18px; } .form-actions { flex-direction:column-reverse; align-items:stretch; } .form-actions > * { width:100%; text-align:center; } .file-field { align-items:flex-start; flex-direction:column; gap:10px; } .file-field input { max-width:none; width:100%; } }
@media (max-width:700px) { .response-options,.notification-channel-grid { grid-template-columns:1fr; } }
@media (max-width:700px) { .pqr-modal { align-items:end; padding:0; } .pqr-modal-panel { max-height:92vh; border-radius:18px 18px 0 0; } .pqr-modal-header,.pqr-modal-body { padding-left:20px; padding-right:20px; } .pqr-detail-grid { grid-template-columns:1fr; } .pqr-modal-footer { align-items:stretch; flex-direction:column; padding:16px 20px 22px; } .pqr-modal-footer .primary-action,.pqr-modal-footer .secondary-button { width:100%; text-align:center; } .modal-unavailable { margin:0 0 4px; } .pqr-detail-history div { align-items:flex-start; flex-direction:column; gap:4px; } }
@media (max-width:760px) { .login-page { align-items:flex-start; padding:clamp(30px,10vh,80px) 18px 28px; } .login-shell { display:block; } .login-brand { margin:0 0 25px; } .login-card { max-width:none; padding:30px 24px; border-radius:18px; } }
@media (max-width:380px) { .login-page { padding:24px 14px; } .brand-logo-wrap { width:100%; min-height:66px; padding:8px 16px; } .login-brand { margin-bottom:20px; } .login-card { padding:26px 19px; } .form-options { align-items:flex-start; flex-direction:column; gap:10px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }

.workspace-item-rich { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; }
.workspace-workflow { grid-column:1/-1; display:grid; gap:12px; margin-top:4px; padding:16px; border:1px solid #dfe8f0; border-left:3px solid var(--cyan); border-radius:12px; background:#f8fbfd; }
.workspace-workflow-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:11px; border-bottom:1px solid #e5edf2; color:var(--blue); }
.workspace-workflow-head span { color:#81909d; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.workspace-workflow-head strong { font-size:12px; }
.workspace-action-form { display:grid; gap:9px; padding-top:3px; }
.workspace-action-form + .workspace-action-form { padding-top:13px; border-top:1px solid #e5edf2; }
.workspace-reject-form { padding:12px; border:1px solid #f1d6d2; border-radius:10px; background:#fff9f8; }
.workflow-reject-action { justify-self:start; color:#a34f49; border-color:#e1b8b3; background:#fff; }
.workflow-reject-action:hover { color:#8c3e39; border-color:#cb8d85; background:#fff4f2; }
.workspace-action-form label { display:grid; gap:5px; color:#687486; font-size:10px; font-weight:700; }
.workspace-action-form select,.workspace-action-form textarea,.workspace-action-form input { width:100%; padding:10px 11px; border:1px solid #d5e0e8; border-radius:8px; outline:0; color:var(--ink); background:#fff; font:inherit; font-size:11px; resize:vertical; }
.workspace-action-form select:focus,.workspace-action-form textarea:focus,.workspace-action-form input:focus { border-color:#7aaebb; box-shadow:0 0 0 3px rgba(77,168,196,.11); }
.workspace-action-form .primary-action { justify-self:start; min-height:40px; color:#fff; background:var(--blue); }
.workflow-area-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:9px; border:1px solid #d5e0e8; border-radius:10px; background:#fff; }
.workflow-area-option { display:flex !important; grid-template-columns:none !important; align-items:center; gap:8px !important; padding:8px 9px; border:1px solid #e4ebf0; border-radius:8px; color:var(--ink) !important; background:#fbfdfe; cursor:pointer; transition:background .15s ease,border-color .15s ease,box-shadow .15s ease; }
.workflow-area-option:has(input:checked) { border-color:#8fc63d; background:#f4fae9; box-shadow:0 0 0 2px rgba(143,198,61,.1); }
.workflow-area-option input { width:15px !important; height:15px; margin:0; accent-color:#8fc63d; }
.workflow-selection-count { display:block; margin-top:4px; color:#81909d; font-size:10px; font-weight:600; }
.workflow-selection-count.is-invalid { color:#c85c55; }
.workflow-shared-progress { display:grid; gap:5px; max-width:360px; margin-top:12px; padding:10px 12px; border:1px solid #dfe8f0; border-radius:9px; background:#fbfdfe; }
.workflow-shared-progress > div:first-child { display:flex; justify-content:space-between; gap:12px; color:#74818d; font-size:10px; }
.workflow-shared-progress strong { color:var(--blue); }
.workflow-shared-progress small { color:#8994a1; font-size:9px; }
.workflow-progress-track { height:6px; overflow:hidden; border-radius:99px; background:#e7edf1; }
.workflow-progress-track span { display:block; height:100%; border-radius:inherit; background:#8fc63d; transition:width .2s ease; }
.workspace-final-response .primary-action { background:#4f8128; }
.workspace-upload-field,.workflow-upload-field { padding:12px; border:1px dashed #b9cbd5; border-radius:9px; color:#687486!important; background:#fbfdfe; }.workspace-upload-field input[type=file],.workflow-upload-field input[type=file] { margin-top:3px; padding:0; border:0; background:transparent; cursor:pointer; }.workspace-selected-files { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }.workspace-selected-file { display:flex; align-items:center; gap:8px; min-width:0; padding:8px 9px; border:1px solid #dce8ed; border-radius:8px; background:#fff; }.workspace-selected-file-icon { display:grid; place-items:center; flex:0 0 auto; width:28px; height:28px; border-radius:7px; color:#fff; background:#7185c4; font-size:7px; font-weight:900; }.workspace-selected-file-meta { display:grid; min-width:0; gap:3px; }.workspace-selected-file strong { overflow:hidden; color:var(--ink); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.workspace-selected-file small { color:#8b98a4; font-size:8px; font-weight:400; }
.workspace-history { margin-top:14px; padding-top:13px; border-top:1px solid #edf1f4; }.workspace-history-row { display:flex; gap:9px; padding:8px 0; }.workspace-history-dot { flex:0 0 auto; width:7px; height:7px; margin-top:4px; border:2px solid #8bc53f; border-radius:50%; background:#fff; }.workspace-history-row strong { color:var(--ink); font-size:10px; }.workspace-history-row p { margin:3px 0; color:#687486; font-size:10px; line-height:1.4; }.workspace-history-row small { color:#96a2ad; font-size:9px; }
.pqr-history-attachments { margin-top:17px; padding:14px; border:1px solid #e1e9ee; border-radius:10px; background:#fbfdfe; }.pqr-history-attachments-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }.pqr-history-attachments-heading span { color:var(--blue); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.pqr-history-attachments-heading small { color:#8b98a4; font-size:9px; }.pqr-history-attachment { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #edf1f4; }.pqr-history-file-icon { display:grid; place-items:center; width:30px; height:30px; border-radius:7px; color:#fff; background:#7185c4; font-size:7px; font-weight:900; }.pqr-history-attachment strong,.pqr-history-attachment small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.pqr-history-attachment strong { color:var(--ink); font-size:10px; }.pqr-history-attachment small { margin-top:3px; color:#8b98a4; font-size:8px; }.pqr-history-attachment a { color:var(--blue); font-size:9px; font-weight:800; text-decoration:none; }.pqr-history-attachment a:hover { text-decoration:underline; }
@media (max-width:700px) { .workspace-item-rich { display:flex; }.workspace-workflow { width:100%; box-sizing:border-box; }.workspace-workflow-head { align-items:flex-start; flex-direction:column; }.workspace-action-form .primary-action { width:100%; }.workflow-area-options { grid-template-columns:1fr; } }
.workspace-request-context { grid-column:1/-1; margin-top:2px; padding:16px; border:1px solid #e2eaf0; border-radius:12px; background:#fff; box-shadow:0 5px 16px rgba(30,37,90,.035); }
.workspace-context-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:11px; border-bottom:1px solid #edf1f4; color:var(--blue); }
.workspace-context-heading span,.workspace-attachments-heading span { color:#63809a; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.workspace-context-heading strong { color:var(--ink); font-size:11px; font-weight:700; }.workspace-context-heading b { color:#a8b4bf; font-weight:500; }
.workspace-context-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 18px; padding:14px 0 4px; }
.workspace-context-grid > div { min-width:0; }.workspace-context-grid .workspace-context-wide { grid-column:1/-1; }
.workspace-context-grid span { display:block; margin-bottom:5px; color:#8a98a6; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.workspace-context-grid strong,.workspace-context-grid p { display:block; margin:0; color:var(--ink); font-size:11px; line-height:1.55; }.workspace-context-grid p { color:#5f6e7d; white-space:pre-wrap; }
.workspace-attachments { margin-top:13px; padding-top:13px; border-top:1px solid #edf1f4; }.workspace-attachments-heading { display:flex; align-items:center; gap:9px; margin-bottom:9px; }.workspace-attachments-heading small { color:#94a0aa; font-size:10px; }
.workspace-attachment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.workspace-attachment-card { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:9px; min-width:0; padding:10px; border:1px solid #e1e9ee; border-radius:9px; background:#fbfdfe; }.workspace-attachment-card:hover { border-color:#b9d6df; background:#f7fbfd; }
.workspace-attachment-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; color:#fff; font-size:8px; font-weight:900; letter-spacing:.03em; }.workspace-attachment-icon.pdf { background:#d7695e; }.workspace-attachment-icon.image { background:#4ca6be; }.workspace-attachment-icon.document { background:#7185c4; }
.workspace-attachment-info { min-width:0; }.workspace-attachment-info strong { display:block; overflow:hidden; color:var(--ink); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.workspace-attachment-info small { display:block; margin-top:4px; color:#8b98a4; font-size:9px; }.workspace-attachment-actions { grid-column:2; display:flex; flex-wrap:wrap; gap:9px; }.workspace-attachment-actions a { color:var(--blue); font-size:9px; font-weight:800; text-decoration:none; }.workspace-attachment-actions a + a { color:#6d8190; }.workspace-attachment-actions a:hover { text-decoration:underline; }.workspace-no-attachments { margin:0; color:#94a0aa; font-size:10px; }
@media (max-width:700px) { .workspace-request-context { width:100%; box-sizing:border-box; }.workspace-context-heading { align-items:flex-start; flex-direction:column; gap:6px; }.workspace-context-grid { grid-template-columns:1fr; }.workspace-context-grid .workspace-context-wide { grid-column:auto; }.workspace-attachment-grid { grid-template-columns:1fr; } }
@media (max-width:700px) { .pqr-history-attachment { grid-template-columns:auto minmax(0,1fr); }.pqr-history-attachment a { grid-column:2; }.pqr-history-attachments-heading { align-items:flex-start; flex-direction:column; gap:4px; } }
.public-anonymous { display:flex!important; align-items:center; gap:10px; padding:0!important; border:0!important; background:transparent!important; }
.public-anonymous input { width:18px!important; min-width:18px; height:18px; min-height:18px!important; margin:0; padding:0!important; accent-color:#273879; }
.public-identity-fields > label { display:grid; gap:7px; margin-bottom:16px; color:#546276; font-size:11px; font-weight:700; }
.public-identity-fields > label input { width:100%; min-height:43px; padding:11px 13px; border:1px solid #dce5eb; border-radius:9px; outline:0; color:#23325f; background:#fff; font:inherit; font-size:12px; font-weight:400; }
.public-pqr-page { min-height:100svh; color:#17245c; background:linear-gradient(145deg,#f7fbfd 0%,#eef6f6 52%,#f8fbf4 100%); }
.public-pqr-header { display:flex; align-items:center; justify-content:space-between; width:min(1160px,calc(100% - 40px)); margin:0 auto; padding:25px 0; }
.public-pqr-brand img { display:block; width:min(190px,42vw); height:auto; }
.public-pqr-track { color:#24336f; font-size:12px; font-weight:700; text-decoration:none; }
.public-pqr-track span { margin-left:7px; color:#74b73a; font-size:17px; }
.public-pqr-main { width:min(930px,calc(100% - 32px)); margin:20px auto 70px; }
.public-pqr-intro { max-width:680px; margin:0 auto 28px; text-align:center; }
.public-eyebrow { color:#6eaf35; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.public-pqr-intro h1,.public-success h1 { margin:10px 0 9px; color:#202d70; font-size:clamp(30px,5vw,48px); letter-spacing:-.045em; }
.public-pqr-intro p,.public-success>p { margin:0 auto; max-width:570px; color:#677589; font-size:14px; line-height:1.65; }
.public-steps { display:flex; justify-content:center; gap:22px; margin-top:23px; color:#9aa7b3; font-size:11px; font-weight:700; }
.public-steps span { display:flex; align-items:center; gap:6px; }.public-steps b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; color:#fff; background:#c8d2d4; font-size:10px; }.public-steps .active { color:#24336f; }.public-steps .active b { background:#273879; }
.public-alert { margin:0 auto 16px; padding:13px 17px; border:1px solid #f1c2bd; border-radius:10px; color:#a23f38; background:#fff4f3; font-size:12px; }
.public-pqr-form { overflow:hidden; border:1px solid #e1e9ed; border-radius:22px; background:#fff; box-shadow:0 22px 60px rgba(36,53,93,.1); }
.public-form-section { padding:28px clamp(20px,5vw,48px); border-bottom:1px solid #edf1f2; }.public-section-title { display:flex; align-items:flex-start; gap:13px; margin-bottom:22px; }.public-section-title>span { display:grid; place-items:center; width:29px; height:29px; border-radius:9px; color:#fff; background:#273879; font-size:11px; font-weight:800; }.public-section-title h2 { margin:0; color:#1d2d68; font-size:18px; letter-spacing:-.02em; }.public-section-title p { margin:5px 0 0; color:#8793a0; font-size:11px; }
.public-grid { display:grid; gap:16px; margin-bottom:16px; }.public-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }.public-form-section>label,.public-grid label { display:grid; gap:7px; margin-bottom:16px; color:#546276; font-size:11px; font-weight:700; }.public-grid label { margin-bottom:0; }.public-form-section input,.public-form-section select,.public-form-section textarea { width:100%; min-height:43px; padding:11px 13px; border:1px solid #dce5eb; border-radius:9px; outline:0; color:#23325f; background:#fff; font:inherit; font-size:12px; font-weight:400; }.public-form-section textarea { min-height:110px; resize:vertical; }.public-form-section input:focus,.public-form-section select:focus,.public-form-section textarea:focus { border-color:#6da8b8; box-shadow:0 0 0 3px rgba(78,161,183,.12); }
.public-choice-row { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:19px; }.public-choice-row label { margin:0; cursor:pointer; }.public-choice-row input { position:absolute; opacity:0; }.public-choice-row span { display:block; padding:12px 16px; border:1px solid #dce5eb; border-radius:9px; color:#627083; background:#fff; font-size:11px; font-weight:700; }.public-choice-row input:checked+span { border-color:#a4ca78; color:#26366f; background:#f5faef; box-shadow:0 0 0 3px rgba(139,197,63,.1); }
.public-resource-reference { margin:0 0 18px; padding:14px; border:1px solid #dce8ef; border-radius:11px; background:#f8fbfd; }.public-resource-reference[hidden] { display:none; }.public-resource-reference label { display:grid; gap:7px; color:#546276; font-size:11px; font-weight:700; }.public-resource-reference input { margin:0; }.resource-validation { display:block; margin-top:7px; color:#82909d; font-size:10px; font-weight:600; }.resource-validation.valid { color:#4c7c3d; }.resource-validation.invalid { color:#b24747; }
.public-signature-panel { margin-top:2px; padding:15px; border:1px solid #dce8ef; border-radius:11px; background:#f8fbfd; }.public-signature-panel[hidden] { display:none; }
.public-signature-toolbar { margin-bottom:10px; }.public-signature-toolbar span { color:#546276; font-weight:700; }
.public-anonymous { display:flex; align-items:center; gap:10px; margin-bottom:20px; color:#5c6b7c; font-size:12px; font-weight:700; }.public-anonymous input,.public-consent input { accent-color:#273879; }.public-identity-fields[hidden] { display:none; }.public-file-field { display:flex!important; align-items:center; flex-wrap:wrap; gap:12px; padding:15px; border:1px dashed #b9cbd5; border-radius:10px; color:#526174!important; background:#fbfdfe; }.public-file-field input { width:auto!important; min-height:auto!important; padding:0!important; border:0!important; }.public-file-field small { width:100%; color:#8994a1; font-size:10px; font-weight:400; }
.public-consent { margin:20px clamp(20px,5vw,48px); padding:15px; border:1px solid #e5ebef; border-radius:10px; background:#fbfcfd; }.public-consent label { display:flex; align-items:flex-start; gap:10px; color:#667486; font-size:11px; line-height:1.6; }.public-consent a { color:#273879; font-weight:700; }.public-submit { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:0 24px; border:0; border-radius:10px; color:#fff; background:#273879; box-shadow:0 8px 17px rgba(39,56,121,.2); font-size:12px; font-weight:800; text-decoration:none; cursor:pointer; }.public-pqr-form>.public-submit { display:flex; width:calc(100% - clamp(40px,10vw,96px)); margin:0 clamp(20px,5vw,48px) 30px; }.public-submit span { color:#8bc53f; font-size:18px; }.public-success { width:min(650px,calc(100% - 32px)); margin:70px auto; padding:55px 35px; border:1px solid #e1e9ed; border-radius:22px; text-align:center; background:#fff; box-shadow:0 22px 60px rgba(36,53,93,.1); }.public-success-icon { display:grid; place-items:center; width:65px; height:65px; margin:0 auto 22px; border-radius:50%; color:#fff; background:#8bc53f; font-size:34px; font-weight:800; }.public-radicado { display:grid; gap:5px; margin:27px 0; padding:21px; border:1px solid #dbe9ca; border-radius:12px; background:#f5faef; }.public-radicado small { color:#71915a; font-size:10px; font-weight:700; text-transform:uppercase; }.public-radicado strong { color:#26366f; font-size:25px; letter-spacing:.04em; }.public-radicado span { color:#77838e; font-size:11px; }.public-success-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }.public-secondary { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border:1px solid #dce5eb; border-radius:10px; color:#273879; background:#fff; font-size:12px; font-weight:800; text-decoration:none; }
@media (max-width:640px) { .public-pqr-header { width:calc(100% - 28px); padding:18px 0; }.public-pqr-main { width:calc(100% - 22px); margin-top:12px; }.public-pqr-intro { margin-bottom:20px; }.public-steps { gap:8px; font-size:9px; }.public-steps b { width:19px; height:19px; }.public-form-section { padding:23px 17px; }.public-grid.two { grid-template-columns:1fr; gap:0; }.public-choice-row { display:grid; grid-template-columns:1fr; }.public-choice-row span { text-align:center; }.public-success { margin:35px auto; padding:40px 20px; }.public-radicado strong { font-size:20px; }.public-success-actions>* { width:100%; } }
.public-pqr-page { overflow-x:hidden; }
.public-identity-fields > label[hidden] { display:none!important; }
.attachment-preview-page { min-height:100svh; background:#f4f7fa; }.attachment-preview-shell { width:min(1080px,calc(100% - 36px)); margin:0 auto; padding:30px 0 60px; }.attachment-preview-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:20px; }.attachment-preview-header .back-action { display:block; margin-bottom:16px; }.attachment-preview-header h1 { margin:0; max-width:740px; overflow:hidden; color:var(--ink); font-size:25px; text-overflow:ellipsis; white-space:nowrap; }.attachment-preview-header p:last-child { margin:7px 0 0; color:#8794a2; font-size:11px; }.attachment-preview-header .primary-action { flex:0 0 auto; text-decoration:none; }.attachment-preview-canvas { min-height:560px; padding:34px; border:1px solid #dde7ed; border-radius:16px; background:#fff; box-shadow:0 18px 44px rgba(30,37,90,.07); }.office-document-preview { width:min(780px,100%); min-height:600px; margin:0 auto; padding:42px 48px; border:1px solid #e1e7eb; background:#fff; box-shadow:0 8px 22px rgba(30,37,90,.06); }.office-document-brand { display:inline-flex; align-items:center; min-height:26px; padding:0 10px; border-radius:5px; color:#fff; background:#2c63a8; font-size:10px; font-weight:900; letter-spacing:.08em; }.office-document-brand.spreadsheet { background:#4e9b62; }.office-document-content { margin-top:28px; color:#26344f; font-size:13px; line-height:1.75; white-space:pre-wrap; }.office-document-content p { margin:0 0 15px; }.office-table-wrap { margin-top:22px; overflow:auto; border:1px solid #dbe5eb; }.office-table-wrap table { width:100%; border-collapse:collapse; color:#33425b; font-size:11px; }.office-table-wrap td { min-width:80px; padding:8px 10px; border:1px solid #e2e9ee; vertical-align:top; }.office-table-wrap tr:first-child td { color:var(--ink); background:#f1f6fa; font-weight:800; }.attachment-preview-message { display:grid; place-items:center; min-height:480px; text-align:center; }.attachment-preview-message strong { color:var(--ink); font-size:17px; }.attachment-preview-message p { max-width:520px; color:#758395; font-size:12px; line-height:1.6; }.attachment-empty { color:#8a97a4; font-style:italic; }.office-spreadsheet-preview { min-width:0; }.office-spreadsheet-preview .office-table-wrap { max-height:680px; margin-top:18px; }
.attachment-modal[hidden] { display:none; }.attachment-modal { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:24px; }.attachment-modal-backdrop { position:absolute; inset:0; background:rgba(17,28,61,.62); backdrop-filter:blur(4px); }.attachment-modal-panel { position:relative; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(1040px,100%); height:min(88vh,820px); overflow:hidden; border:1px solid rgba(255,255,255,.5); border-radius:18px; background:#f4f7fa; box-shadow:0 24px 70px rgba(15,27,66,.3); }.attachment-modal-header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 22px; border-bottom:1px solid #e2e9ee; background:#fff; }.attachment-modal-header h2 { margin:3px 0 0; overflow:hidden; color:var(--ink); font-size:16px; text-overflow:ellipsis; white-space:nowrap; }.attachment-modal-close { display:grid; place-items:center; width:34px; height:34px; border:1px solid #dbe5eb; border-radius:50%; color:var(--blue); background:#fff; font-size:22px; line-height:1; cursor:pointer; }.attachment-modal-body { min-height:0; padding:14px; }.attachment-modal-body iframe { width:100%; height:100%; border:1px solid #dbe5eb; border-radius:10px; background:#fff; }.attachment-modal-footer { display:flex; justify-content:flex-end; gap:9px; padding:14px 22px; border-top:1px solid #e2e9ee; background:#fff; }.attachment-modal-footer .primary-action,.attachment-modal-footer .secondary-button { min-height:38px; text-decoration:none; }
body.modal-open { overflow:hidden; }
@media (max-width:700px) { .attachment-preview-shell { width:calc(100% - 24px); padding-top:20px; }.attachment-preview-header { align-items:flex-start; flex-direction:column; gap:16px; }.attachment-preview-header h1 { max-width:100%; font-size:20px; }.attachment-preview-header .primary-action { width:100%; text-align:center; }.attachment-preview-canvas { padding:16px; }.office-document-preview { min-height:480px; padding:25px 20px; } }
@media (max-width:700px) { .attachment-modal { align-items:end; padding:0; }.attachment-modal-panel { height:92vh; border-radius:18px 18px 0 0; }.attachment-modal-header,.attachment-modal-footer { padding-left:17px; padding-right:17px; }.attachment-modal-footer { justify-content:stretch; }.attachment-modal-footer>* { flex:1; text-align:center; } }
.chat-main { max-width:1400px; }.chat-shell { display:grid; grid-template-columns:310px minmax(0,1fr); min-height:650px; overflow:hidden; border:1px solid #e0e8ee; border-radius:17px; background:#fff; box-shadow:0 18px 45px rgba(30,37,90,.07); }.chat-list-panel { border-right:1px solid #e5ebef; background:#fbfcfd; }.chat-list-header { display:flex; align-items:center; justify-content:space-between; padding:21px 18px 15px; }.chat-list-header h2 { margin:5px 0 0; color:var(--ink); font-size:18px; }.chat-new-button { display:grid; place-items:center; width:34px; height:34px; border:0; border-radius:10px; color:#fff; background:var(--blue); font-size:21px; line-height:1; cursor:pointer; }.chat-new-form { display:grid; gap:9px; margin:0 13px 12px; padding:12px; border:1px solid #dbe6ed; border-radius:11px; background:#fff; }.chat-new-form[hidden] { display:none; }.chat-new-form label { display:grid; gap:5px; color:#738293; font-size:10px; font-weight:700; }.chat-new-form select { width:100%; min-height:38px; border:1px solid #d7e2e9; border-radius:8px; color:var(--ink); background:#fff; font:inherit; font-size:10px; }.chat-new-form .primary-action { min-height:36px; font-size:10px; }.chat-conversation-list { display:grid; gap:2px; padding:0 9px 15px; }.chat-conversation { display:flex; align-items:center; gap:10px; min-width:0; padding:11px 9px; border-radius:10px; color:var(--ink); text-decoration:none; }.chat-conversation:hover,.chat-conversation.active { background:#eef3fb; }.chat-conversation.active { box-shadow:inset 3px 0 0 var(--blue); }.chat-avatar { display:grid; place-items:center; flex:0 0 auto; width:35px; height:35px; border-radius:12px; color:#fff; background:var(--blue); font-size:12px; font-weight:800; }.chat-avatar.large { width:43px; height:43px; border-radius:14px; font-size:15px; }.chat-conversation-copy { display:grid; min-width:0; flex:1; gap:4px; }.chat-conversation-copy strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.chat-conversation-copy small { overflow:hidden; color:#8a97a4; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.chat-online-dot { width:7px; height:7px; border-radius:50%; background:#8bc53f; box-shadow:0 0 0 3px #edf7e8; }.chat-empty-list { display:grid; justify-items:center; gap:6px; padding:55px 20px; color:#8c99a6; text-align:center; }.chat-empty-list span { color:#8bc53f; font-size:24px; }.chat-empty-list strong { color:var(--ink); font-size:12px; }.chat-empty-list p { margin:0; font-size:10px; line-height:1.5; }.chat-room { display:grid; grid-template-rows:auto minmax(0,1fr) auto; min-width:0; background:#f8fafc; }.chat-room-header { display:flex; align-items:center; gap:12px; min-height:80px; padding:15px 22px; border-bottom:1px solid #e2eaf0; background:#fff; }.chat-room-header h2 { margin:0; color:var(--ink); font-size:16px; }.chat-room-header p { margin:5px 0 0; color:#8794a2; font-size:10px; }.chat-presence { margin-left:auto; color:#81909d; font-size:10px; }.chat-presence i { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#8bc53f; }.chat-messages { display:flex; flex-direction:column; gap:8px; overflow:auto; padding:25px clamp(17px,4vw,48px); }.chat-message { align-self:flex-start; max-width:min(600px,78%); padding:10px 13px; border:1px solid #e0e8ee; border-radius:13px 13px 13px 4px; background:#fff; }.chat-message.mine { align-self:flex-end; border-color:#cbd7f1; border-radius:13px 13px 4px 13px; background:#eaf0ff; }.chat-message-author { display:block; margin-bottom:5px; color:#758597; font-size:9px; font-weight:800; }.chat-message p { margin:0; color:var(--ink); font-size:12px; line-height:1.55; white-space:pre-wrap; }.chat-message time { display:block; margin-top:6px; color:#9aa6b0; font-size:8px; text-align:right; }.chat-composer { display:flex; align-items:flex-end; gap:9px; padding:13px 18px; border-top:1px solid #e0e8ee; background:#fff; }.chat-composer textarea { flex:1; min-height:40px; max-height:120px; padding:11px 13px; border:1px solid #d6e1e8; border-radius:12px; outline:0; resize:vertical; color:var(--ink); background:#fbfdfe; font:inherit; font-size:12px; }.chat-composer textarea:focus { border-color:#7aaebb; box-shadow:0 0 0 3px rgba(77,168,196,.11); }.chat-composer button { display:grid; place-items:center; width:42px; height:40px; border:0; border-radius:11px; color:#fff; background:var(--blue); font-size:20px; cursor:pointer; }.chat-room-placeholder { width:100%; text-align:center; }.chat-room-placeholder span { color:#91c750; font-size:28px; }.chat-room-placeholder h2 { margin:8px 0 4px; color:var(--ink); font-size:17px; }.chat-room-placeholder p { margin:0; color:#8a97a4; font-size:11px; }
@media (max-width:760px) { .chat-shell { display:block; min-height:calc(100svh - 210px); }.chat-list-panel { border-right:0; border-bottom:1px solid #e5ebef; }.chat-conversation-list { display:flex; overflow:auto; padding:0 9px 10px; }.chat-conversation { min-width:190px; }.chat-room { min-height:540px; }.chat-room-header { padding:13px 15px; }.chat-presence { display:none; }.chat-message { max-width:88%; } }
.history-request-card { padding:20px 0; border-bottom:1px solid #edf1f4; }.history-request-card:last-child { border-bottom:0; }.history-request-header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }.history-request-header h2 { margin:7px 0 5px; color:var(--ink); font-size:15px; }.history-request-header p { margin:0; color:#8994a1; font-size:10px; }.history-request-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:17px; padding:15px; border:1px solid #e3ebf0; border-radius:11px; background:#fbfdfe; }.history-label { display:block; margin-bottom:9px; color:#68809a; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.history-event,.history-file { display:flex; align-items:flex-start; gap:8px; padding:9px 0; border-top:1px solid #edf1f4; }.history-event:first-of-type,.history-file:first-of-type { border-top:0; }.history-event strong,.history-file strong { color:var(--ink); font-size:10px; }.history-event p { margin:3px 0; color:#687486; font-size:10px; line-height:1.4; }.history-event small,.history-file small { display:block; color:#96a2ad; font-size:9px; }.history-file > div { min-width:0; flex:1; }.history-file strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.history-file a { color:var(--blue); font-size:9px; font-weight:800; text-decoration:none; }.history-request-footer { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-top:13px; color:#8994a1; font-size:10px; }.history-request-footer strong { color:var(--ink); }.history-hero { margin-bottom:18px; }
@media (max-width:700px) { .history-request-header,.history-request-footer { align-items:flex-start; flex-direction:column; }.history-request-body { grid-template-columns:1fr; gap:15px; }.history-request-footer .text-action { display:block; } }
.chat-widget { position:fixed; right:24px; bottom:24px; z-index:90; }.chat-widget-launcher { display:flex; align-items:center; gap:9px; min-height:48px; padding:0 16px 0 12px; border:0; border-radius:16px; color:#fff; background:var(--blue); box-shadow:0 12px 28px rgba(30,37,90,.24); font:inherit; font-size:11px; font-weight:800; cursor:pointer; transition:transform .18s,box-shadow .18s; }.chat-widget-launcher:hover { transform:translateY(-2px); box-shadow:0 16px 32px rgba(30,37,90,.3); }.chat-widget-launcher-icon { display:grid; place-items:center; width:27px; height:27px; border-radius:9px; color:var(--blue); background:#fff; font-size:18px; }.chat-widget-launcher b { display:grid; place-items:center; min-width:19px; height:19px; padding:0 5px; border-radius:10px; color:#fff; background:#e34f5c; font-size:9px; }.chat-widget-panel { position:absolute; right:0; bottom:60px; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(360px,calc(100vw - 32px)); height:min(540px,calc(100vh - 115px)); overflow:hidden; border:1px solid #dce6ed; border-radius:18px; background:#fff; box-shadow:0 24px 60px rgba(24,38,74,.22); }.chat-widget-panel[hidden] { display:none; }.chat-widget-header { display:flex; align-items:center; justify-content:space-between; padding:16px 18px; color:#fff; background:var(--blue); }.chat-widget-header strong { display:block; margin-top:4px; font-size:16px; }.chat-widget-header .filter-eyebrow { color:#b7de77; }.chat-widget-close { display:grid; place-items:center; width:29px; height:29px; border:1px solid rgba(255,255,255,.3); border-radius:9px; color:#fff; background:transparent; font-size:21px; cursor:pointer; }.chat-widget-body { min-height:0; background:#f8fafc; }.chat-widget-list { display:grid; gap:4px; height:100%; overflow:auto; padding:10px; }.chat-widget-conversation { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; width:100%; padding:11px 10px; border:0; border-radius:11px; color:var(--ink); background:#fff; text-align:left; cursor:pointer; }.chat-widget-conversation:hover { background:#eef3fb; }.chat-widget-conversation span:not(.chat-widget-avatar) { display:grid; min-width:0; gap:4px; }.chat-widget-conversation strong,.chat-widget-conversation small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.chat-widget-conversation strong { font-size:11px; }.chat-widget-conversation small { color:#8c99a6; font-size:9px; }.chat-widget-conversation>b { display:grid; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:10px; color:#fff; background:#df5965; font-size:9px; }.chat-widget-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; color:#fff; background:#4da8c4; font-size:12px; font-weight:800; }.chat-widget-loading,.chat-widget-empty { display:grid; place-items:center; min-height:150px; padding:24px; color:#8794a2; font-size:11px; line-height:1.6; text-align:center; }.chat-widget-empty a { color:var(--blue); font-weight:800; }.chat-widget-room { display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; height:100%; }.chat-widget-back { justify-self:start; margin:12px 14px 0; padding:0; border:0; color:var(--blue); background:transparent; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }.chat-widget-room-title { padding:11px 14px; color:var(--ink); font-size:13px; font-weight:800; }.chat-widget-messages { display:flex; flex-direction:column; gap:7px; overflow:auto; padding:10px 14px; }.chat-widget-message { align-self:flex-start; max-width:88%; padding:8px 10px; border:1px solid #e0e8ee; border-radius:11px 11px 11px 3px; background:#fff; }.chat-widget-message p { margin:0; color:var(--ink); font-size:11px; line-height:1.45; white-space:pre-wrap; }.chat-widget-message small { display:block; margin-top:5px; color:#98a4ae; font-size:8px; }.chat-widget-composer { display:flex; gap:7px; padding:10px; border-top:1px solid #e0e8ee; background:#fff; }.chat-widget-composer input { min-width:0; flex:1; padding:9px 10px; border:1px solid #d6e1e8; border-radius:9px; outline:0; color:var(--ink); background:#fbfdfe; font:inherit; font-size:11px; }.chat-widget-composer button { width:35px; border:0; border-radius:9px; color:#fff; background:var(--blue); font-size:17px; cursor:pointer; }.chat-widget-footer { padding:11px 16px; border-top:1px solid #e7edf1; background:#fff; }.chat-widget-footer a { color:var(--blue); font-size:10px; font-weight:800; text-decoration:none; }.chat-widget-footer a span { color:#77b63b; font-size:14px; }
@media (max-width:700px) { .chat-widget { right:14px; bottom:14px; }.chat-widget-panel { right:-2px; bottom:58px; height:min(570px,calc(100vh - 100px)); } }
.chat-widget-list[hidden],.chat-widget-room[hidden] { display:none!important; }
.ai-assistant { position:fixed; left:24px; bottom:24px; z-index:89; }.ai-assistant-launcher { display:flex; align-items:center; gap:9px; min-height:48px; padding:0 16px 0 12px; border:1px solid #dbe5ee; border-radius:16px; color:var(--blue); background:#fff; box-shadow:0 12px 28px rgba(30,37,90,.15); font:inherit; font-size:11px; cursor:pointer; transition:transform .18s,box-shadow .18s; }.ai-assistant-launcher:hover { transform:translateY(-2px); box-shadow:0 16px 32px rgba(30,37,90,.2); }.ai-assistant-launcher span { display:grid; place-items:center; width:27px; height:27px; border-radius:9px; color:#fff; background:#8bc53f; font-size:18px; }.ai-assistant-panel { position:absolute; left:0; bottom:60px; display:grid; grid-template-rows:auto minmax(0,1fr) auto auto; width:min(365px,calc(100vw - 32px)); height:min(550px,calc(100vh - 115px)); overflow:hidden; border:1px solid #dbe5ed; border-radius:18px; background:#f8fafc; box-shadow:0 24px 60px rgba(24,38,74,.22); }.ai-assistant-panel[hidden] { display:none; }.ai-assistant-header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:17px 18px; color:#fff; background:var(--blue); }.ai-assistant-header span { display:block; color:#b7de77; font-size:9px; font-weight:800; letter-spacing:.12em; }.ai-assistant-header strong { display:block; margin-top:5px; font-size:16px; }.ai-assistant-header small { display:block; margin-top:5px; color:#d5def1; font-size:9px; }.ai-assistant-header button { display:grid; place-items:center; width:29px; height:29px; border:1px solid rgba(255,255,255,.3); border-radius:9px; color:#fff; background:transparent; font-size:21px; cursor:pointer; }.ai-assistant-messages { display:flex; flex-direction:column; gap:9px; overflow:auto; padding:16px; }.ai-assistant-message { max-width:88%; padding:10px 12px; border:1px solid #dfe7ee; border-radius:12px 12px 12px 4px; color:var(--ink); background:#fff; font-size:11px; line-height:1.55; white-space:pre-wrap; }.ai-assistant-message.user { align-self:flex-end; border-color:#cbd7f1; border-radius:12px 12px 4px 12px; color:#fff; background:var(--blue); }.ai-assistant-message.loading { color:#7e8d9e; font-style:italic; }.ai-assistant-form { display:flex; align-items:flex-end; gap:8px; padding:11px; border-top:1px solid #e0e8ee; background:#fff; }.ai-assistant-form textarea { min-width:0; flex:1; min-height:39px; max-height:100px; padding:10px 11px; border:1px solid #d6e1e8; border-radius:10px; outline:0; resize:vertical; color:var(--ink); background:#fbfdfe; font:inherit; font-size:11px; }.ai-assistant-form button { display:grid; place-items:center; width:37px; height:39px; border:0; border-radius:10px; color:#fff; background:var(--blue); font-size:17px; cursor:pointer; }.ai-assistant-footer { display:flex; align-items:center; justify-content:space-between; padding:8px 14px 10px; color:#9aa6b0; background:#fff; font-size:8px; }.ai-assistant-footer button { padding:0; border:0; color:var(--blue); background:transparent; font:inherit; font-weight:800; cursor:pointer; }
@media (max-width:700px) { .ai-assistant { left:14px; bottom:14px; }.ai-assistant-panel { left:-2px; bottom:58px; height:min(580px,calc(100vh - 100px)); } }
.ai-assistant { top:14px; right:180px; bottom:auto; left:auto; }.ai-assistant-panel { position:fixed; top:72px; right:180px; bottom:auto; left:auto; }
@media (max-width:700px) { .ai-assistant { top:8px; right:62px; left:auto; bottom:auto; }.ai-assistant-panel { top:112px; right:12px; left:auto; bottom:auto; width:min(365px,calc(100vw - 24px)); height:min(580px,calc(100vh - 130px)); } }
.ai-assistant { position:relative; top:auto; right:auto; bottom:auto; left:auto; z-index:25; }.ai-assistant-panel { position:absolute; top:54px; right:0; bottom:auto; left:auto; }.ai-assistant-launcher { position:relative; }
.ai-assistant-message.error { border-color:#f2d29b; color:#72531b; background:#fff9ed; }.ai-assistant-retry { display:inline-flex; align-items:center; justify-content:center; margin-top:9px; padding:6px 10px; border:1px solid #d9b15b; border-radius:8px; color:#72531b; background:#fff; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }.ai-assistant-retry:hover { background:#fff3d7; }.ai-assistant-footer [data-ai-finish] { color:#9b4c47; }.ai-assistant-footer [data-ai-finish]:hover { color:#7f302c; text-decoration:underline; }
.ai-assistant-file { align-self:flex-start; max-width:88%; padding:8px 10px; border:1px solid #cfe0ee; border-radius:9px; background:#eef6fb; }.ai-assistant-file a { color:var(--blue); font-size:10px; font-weight:800; text-decoration:none; }.ai-assistant-file a:hover { text-decoration:underline; }
@media (max-width:700px) { .ai-assistant { top:auto; right:auto; }.ai-assistant-panel { position:absolute; top:52px; right:-8px; left:auto; width:min(365px,calc(100vw - 24px)); height:min(580px,calc(100vh - 130px)); } }

.module-launch-icon-cyan { color:#fff; background:#4da8c4; }
.inventory-hero { margin-bottom:18px; }
.inventory-panel { padding-bottom:0; }
.inventory-panel .panel-heading { align-items:center; }
.inventory-search { display:flex; align-items:center; gap:7px; width:min(280px,100%); }
.inventory-search input { min-width:0; flex:1; min-height:38px; padding:9px 11px; border:1px solid #d6e1e8; border-radius:9px; outline:0; color:var(--ink); background:#fbfdfe; font:inherit; font-size:11px; }
.inventory-search input:focus { border-color:#7aaebb; box-shadow:0 0 0 3px rgba(77,168,196,.11); }
.inventory-search button { display:grid; place-items:center; width:38px; height:38px; border:0; border-radius:9px; color:#fff; background:var(--blue); font-size:18px; cursor:pointer; }
.inventory-table-wrap { overflow-x:auto; }
.inventory-table { width:100%; border-collapse:collapse; min-width:650px; }
.inventory-table th { padding:12px 10px; border-bottom:1px solid #dfe8ee; color:#74869a; font-size:9px; font-weight:800; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.inventory-table td { padding:15px 10px; border-bottom:1px solid #edf1f4; color:#5d6d7d; font-size:11px; vertical-align:middle; }
.inventory-table tbody tr:hover { background:#fbfdfe; }
.inventory-table td:first-child { min-width:190px; color:var(--ink); }.inventory-table td strong,.inventory-table td small { display:block; }.inventory-table td strong { font-size:11px; }.inventory-table td small { margin-top:4px; color:#94a0aa; font-size:9px; }
.inventory-status { display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; font-size:9px; font-weight:800; }.inventory-status.available { color:#47762c; background:#edf7e8; }.inventory-status.low { color:#8b6814; background:#fff6d9; }.inventory-status.out { color:#a24943; background:#fff0ee; }
.inventory-empty { display:grid; justify-items:center; gap:8px; padding:60px 20px 66px; text-align:center; }.inventory-empty-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:15px; color:#fff; background:#4da8c4; font-size:26px; }.inventory-empty h3 { margin:8px 0 0; color:var(--ink); font-size:16px; }.inventory-empty p { margin:0 0 12px; color:#8a97a4; font-size:11px; }.inventory-pagination { padding:15px 20px 19px; border-top:1px solid #edf1f4; }.inventory-pagination nav { display:flex; justify-content:center; }.inventory-pagination svg { width:16px; }.inventory-pagination a,.inventory-pagination span { display:inline-flex; align-items:center; justify-content:center; min-width:30px; height:30px; margin:0 2px; border:1px solid #e0e8ee; border-radius:7px; color:var(--blue); font-size:10px; text-decoration:none; }.inventory-pagination span[aria-current="page"] { color:#fff; background:var(--blue); }
.inventory-form-panel { max-width:920px; padding:28px; }.inventory-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }.inventory-form-grid label { display:grid; gap:7px; color:#546276; font-size:11px; font-weight:700; }.inventory-form-grid input,.inventory-form-grid textarea { width:100%; box-sizing:border-box; padding:11px 13px; border:1px solid #dce5eb; border-radius:9px; outline:0; color:#23325f; background:#fff; font:inherit; font-size:12px; font-weight:400; }.inventory-form-grid input { min-height:42px; }.inventory-form-grid textarea { resize:vertical; }.inventory-form-grid input:focus,.inventory-form-grid textarea:focus { border-color:#6da8b8; box-shadow:0 0 0 3px rgba(78,161,183,.12); }.inventory-form-wide { grid-column:1/-1; }.field-error { color:#a24a43; font-size:9px; font-weight:500; }.inventory-form-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:24px; padding-top:19px; border-top:1px solid #edf1f4; }.inventory-form-actions .primary-action { border:0; }.inventory-form-actions .secondary-button { display:inline-flex; align-items:center; min-height:42px; padding:0 17px; border:1px solid #dce5eb; border-radius:9px; color:var(--blue); background:#fff; font-size:11px; font-weight:800; text-decoration:none; }
@media (max-width:700px) { .inventory-panel .panel-heading { align-items:flex-start; flex-direction:column; }.inventory-search { width:100%; }.inventory-form-panel { padding:20px 17px; }.inventory-form-grid { grid-template-columns:1fr; }.inventory-form-wide { grid-column:auto; }.inventory-form-actions { flex-direction:column-reverse; }.inventory-form-actions>* { justify-content:center; width:100%; box-sizing:border-box; } }
.inventory-hero-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:9px; }.inventory-hero-actions .secondary-button { min-height:42px; margin-top:0; }.secondary-button.on-dark { border-color:rgba(255,255,255,.25); color:#fff; background:rgba(255,255,255,.08); }.secondary-button.on-dark:hover { background:rgba(255,255,255,.16); }
.material-requests-table td:first-child { min-width:150px; }.inventory-status.pending { color:#8b6814; background:#fff6d9; }.inventory-status.approved { color:#47762c; background:#edf7e8; }.inventory-status.rejected { color:#a24943; background:#fff0ee; }
.material-request-form { display:grid; gap:17px; }.request-section { padding:26px 28px; }.form-section-heading { display:flex; align-items:flex-start; gap:13px; margin-bottom:22px; }.form-section-heading h2 { margin:4px 0 0; color:var(--ink); font-size:17px; }.form-section-heading p { margin:5px 0 0; color:#8994a1; font-size:10px; line-height:1.5; }.form-section-number { display:grid; place-items:center; flex:0 0 auto; width:29px; height:29px; border-radius:9px; color:#fff; background:var(--blue); font-size:10px; font-weight:800; }.request-section select { width:100%; min-height:42px; padding:10px 13px; border:1px solid #dce5eb; border-radius:9px; outline:0; color:#23325f; background:#fff; font:inherit; font-size:12px; }.request-section select:focus { border-color:#6da8b8; box-shadow:0 0 0 3px rgba(78,161,183,.12); }.material-items { display:grid; gap:9px; }.material-item-row { display:grid; grid-template-columns:32px minmax(0,1fr) 130px 100px 34px; align-items:center; gap:9px; }.material-item-row input { min-width:0; min-height:40px; padding:10px 11px; border:1px solid #dce5eb; border-radius:8px; outline:0; color:var(--ink); background:#fff; font:inherit; font-size:11px; }.material-item-row input:focus { border-color:#6da8b8; box-shadow:0 0 0 3px rgba(78,161,183,.12); }.material-item-number { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; color:var(--blue); background:#edf3fb; font-size:10px; font-weight:800; }.icon-button { display:grid; place-items:center; width:32px; height:32px; border:1px solid #e2e8ed; border-radius:8px; color:#a04b45; background:#fff; font-size:18px; cursor:pointer; }.icon-button:hover { border-color:#e5b0aa; background:#fff5f3; }.add-material { margin-top:14px; min-height:37px; border:1px dashed #b9cbd5; border-radius:8px; color:var(--blue); background:#fbfdfe; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }.add-material:hover { border-color:#7aaebb; background:#f3fafc; }
@media (max-width:800px) { .inventory-hero-actions { justify-content:flex-start; }.material-item-row { grid-template-columns:28px minmax(0,1fr) 85px 72px 30px; gap:6px; }.request-section { padding:22px 17px; } }
@media (max-width:560px) { .inventory-hero-actions { width:100%; }.inventory-hero-actions>* { flex:1 1 100%; justify-content:center; text-align:center; }.material-item-row { grid-template-columns:26px minmax(0,1fr) 30px; }.material-item-row input:nth-of-type(2),.material-item-row input:nth-of-type(3) { grid-column:2; }.material-item-row input:nth-of-type(2) { grid-row:2; }.material-item-row input:nth-of-type(3) { grid-row:3; }.material-item-row .remove-material { grid-column:3; grid-row:1; }.material-item-number { grid-row:1 / span 3; align-self:start; margin-top:7px; } }
.ai-assistant-composer { display:flex; align-items:flex-end; gap:7px; }.ai-assistant-composer textarea { flex:1; }.ai-assistant-attach { display:grid; place-items:center; flex:0 0 auto; width:34px; height:39px; border:1px solid #d6e1e8; border-radius:10px; color:var(--blue); background:#fbfdfe; font-size:18px; cursor:pointer; }.ai-assistant-attach:hover { border-color:#7aaebb; background:#f1f8fb; }.ai-assistant-attach input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }.ai-assistant-file-list { display:flex; flex-wrap:wrap; gap:5px; padding:0 11px 8px; background:#fff; }.ai-assistant-file-list[hidden] { display:none; }.ai-assistant-file-list span { max-width:100%; overflow:hidden; padding:4px 7px; border:1px solid #d6e7ee; border-radius:6px; color:#537083; background:#f2f8fa; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }.ai-assistant-uploaded-files { font-size:9px; }
.ai-assistant-launcher { min-height:46px; padding:0 15px 0 11px; border:1px solid #d7e4eb; border-radius:14px; background:#fff; box-shadow:0 12px 28px rgba(27,43,78,.13); color:var(--blue); font-size:11px; font-weight:800; }.ai-assistant-launcher:hover { border-color:#c0d6df; background:#fff; box-shadow:0 16px 34px rgba(27,43,78,.19); }.ai-assistant-launcher span { width:28px; height:28px; border-radius:10px; background:#8bc53f; box-shadow:0 4px 10px rgba(139,197,63,.25); }
.ai-assistant-panel { width:min(390px,calc(100vw - 28px)); height:min(590px,calc(100vh - 110px)); border:1px solid #d6e3ea; border-radius:21px; background:#f7fafc; box-shadow:0 25px 70px rgba(25,39,77,.24); }
.ai-assistant-header { min-height:82px; padding:18px 18px 16px; background:var(--blue); }.ai-assistant-header strong { margin-top:7px; font-size:17px; letter-spacing:-.02em; }.ai-assistant-header small { margin-top:6px; color:#cbd7eb; font-size:9px; }.ai-assistant-brand { display:flex!important; align-items:center; gap:6px; color:#b7de77!important; }.ai-assistant-brand i { display:inline-block; width:7px; height:7px; border-radius:50%; background:#8bc53f; box-shadow:0 0 0 4px rgba(139,197,63,.15); }.ai-assistant-header button { border-radius:10px; background:rgba(255,255,255,.06); transition:background .15s,transform .15s; }.ai-assistant-header button:hover { background:rgba(255,255,255,.16); transform:rotate(4deg); }
.ai-assistant-messages { gap:11px; padding:18px 15px; background:#f7fafc; }.ai-assistant-message { max-width:89%; padding:11px 13px; border:1px solid #dde8ee; border-radius:15px 15px 15px 5px; color:#34435f; background:#fff; box-shadow:0 3px 9px rgba(30,48,78,.035); font-size:11px; line-height:1.6; }.ai-assistant-message.user { border-color:#cbd8f4; border-radius:15px 15px 5px 15px; color:#fff; background:var(--blue); box-shadow:0 5px 12px rgba(39,56,121,.13); }.ai-assistant-message.loading { color:#708197; background:#fff; }.ai-assistant-message.error { border-color:#efd19b; background:#fffaf0; }.ai-assistant-file { padding:9px 11px; border-radius:11px; background:#edf7fb; box-shadow:0 3px 8px rgba(30,48,78,.035); }.ai-assistant-file a { font-size:10px; }
.ai-assistant-form { display:block; padding:11px 12px 10px; border-top:1px solid #e1e9ee; background:#fff; }.ai-assistant-composer { padding:5px; border:1px solid #d8e4ea; border-radius:14px; background:#f9fbfc; box-shadow:inset 0 1px 1px rgba(30,48,78,.025); }.ai-assistant-composer textarea { min-height:39px; padding:10px 10px; border:0; background:transparent; box-shadow:none; }.ai-assistant-composer textarea:focus { box-shadow:none; }.ai-assistant-attach { width:34px; height:34px; border:0; border-radius:10px; background:#eaf3f6; }.ai-assistant-attach:hover { background:#dcecf0; }.ai-assistant-composer>button { width:35px; height:34px; border-radius:10px; background:var(--blue); box-shadow:0 4px 9px rgba(39,56,121,.2); }.ai-assistant-composer>button:hover { background:#33478b; transform:translateY(-1px); }.ai-assistant-file-list { padding:7px 5px 0; background:#fff; }.ai-assistant-file-list span { padding:5px 8px; border-radius:8px; color:#4e6e7d; background:#edf7fa; }.ai-assistant-footer { padding:8px 15px 12px; background:#fff; }.ai-assistant-footer button { padding:4px 0; }.ai-assistant-retry { border-radius:9px; background:#fff; }
@media (max-width:700px) { .ai-assistant-panel { width:min(390px,calc(100vw - 24px)); height:min(610px,calc(100vh - 105px)); } }
.ai-assistant-voice { display:grid; place-items:center; flex:0 0 auto; width:34px; height:34px; border:0; border-radius:10px; color:#527483; background:#eaf3f6; font-size:11px; cursor:pointer; transition:color .15s,background .15s,box-shadow .15s,transform .15s; }.ai-assistant-voice:hover { color:var(--blue); background:#dcecf0; transform:translateY(-1px); }.ai-assistant-voice.is-listening { color:#fff; background:#df5965; box-shadow:0 0 0 5px rgba(223,89,101,.14); animation:ai-voice-pulse 1.2s ease-in-out infinite; }.ai-assistant-voice-status { padding:7px 8px 0; color:#6c8491; background:#fff; font-size:9px; line-height:1.4; }.ai-assistant-voice-status[hidden] { display:none; }@keyframes ai-voice-pulse { 0%,100% { box-shadow:0 0 0 4px rgba(223,89,101,.12); } 50% { box-shadow:0 0 0 8px rgba(223,89,101,.22); } }
.ai-assistant-message { position:relative; padding-right:37px; }.ai-assistant-message.user { padding-right:13px; }.ai-assistant-message-text { white-space:pre-wrap; }.ai-assistant-speak { position:absolute; right:8px; bottom:8px; display:grid; place-items:center; width:23px; height:23px; border:1px solid #dbe7ed; border-radius:7px; color:#527483; background:#f5fafb; font-size:8px; line-height:1; cursor:pointer; transition:color .15s,background .15s,border-color .15s,transform .15s; }.ai-assistant-speak:hover { border-color:#a9cbd5; color:var(--blue); background:#eaf5f7; transform:translateY(-1px); }.ai-assistant-speak.is-speaking { border-color:#d98983; color:#fff; background:#df5965; }
.material-request-form { max-width:980px; margin:0 auto; }
.material-request-form .form-section-heading { justify-content:flex-start; }
.inventory-hero .secondary-button.on-dark { border:0; color:var(--blue); background:#fff; box-shadow:0 7px 16px rgba(18,25,75,.12); font:inherit; font-size:12px; font-weight:700; text-decoration:none; }
.inventory-hero .secondary-button.on-dark span { color:var(--green); font-size:18px; font-weight:400; line-height:1; }
.inventory-hero .secondary-button.on-dark:hover { color:var(--blue); background:#fff; box-shadow:0 10px 20px rgba(18,25,75,.18); transform:translateY(-1px); }
.metric-card.rejected { border-color:#f0d6d1; }.metric-card.rejected strong { color:#c96258; }
.material-request-form .request-section { min-height:0; margin:0; padding:28px 30px; border:1px solid #e0e8ee; border-radius:16px; background:#fff; box-shadow:0 10px 28px rgba(30,37,90,.045); }
.material-request-form .request-section:hover { border-color:#d3e0e8; box-shadow:0 13px 32px rgba(30,37,90,.065); }
.material-request-form .form-section-heading { margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid #edf1f4; }
.material-request-form .form-section-number { width:30px; height:30px; box-shadow:0 5px 12px rgba(39,56,121,.16); }
.material-request-form .material-item-row { padding:7px 0; }
.material-request-form .add-material { padding:0 14px; }
.material-request-form .inventory-form-actions { max-width:none; margin-top:0; padding:8px 0 0; border-top:0; }
.material-request-form .inventory-form-actions .secondary-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin-top:0; padding:0 18px; border:1px solid #d9e3e9; border-radius:10px; color:var(--blue); background:#fff; font:inherit; font-size:11px; font-weight:800; text-decoration:none; }
.material-request-form .inventory-form-actions .primary-action { min-height:44px; padding:0 19px; border:0; border-radius:10px; color:#fff; background:var(--blue); box-shadow:0 8px 18px rgba(39,56,121,.2); font-size:11px; cursor:pointer; }
.material-request-form .inventory-form-actions .primary-action span { color:#b7de77; }
.material-request-form .inventory-form-actions .primary-action:hover { background:#33478b; transform:translateY(-1px); }
@media (max-width:700px) { .material-request-form .request-section { padding:22px 17px; }.material-request-form .inventory-form-actions { padding-top:0; } }
.inventory-form-empty { display:grid; gap:8px; justify-items:start; padding:18px; border:1px solid #e5edf2; border-radius:10px; color:#788694; background:#fbfdfe; font-size:11px; }.inventory-form-empty strong { color:var(--ink); font-size:12px; }.inventory-form-empty .secondary-button { margin-top:4px; }
.inventory-form-hint { display:block; margin-top:12px; color:#8994a1; font-size:10px; }
.material-request-form .material-item-row { grid-template-columns:32px minmax(230px,1.25fr) minmax(180px,1fr) 70px 90px 34px; }
.material-request-form .material-item-row > select { min-width:0; }
.material-item-reference { display:grid; min-width:0; gap:3px; padding:7px 9px; border:1px solid #e3ebf0; border-radius:8px; background:#f8fbfd; }.material-item-reference strong { overflow:hidden; color:var(--blue); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.material-item-reference span { overflow:hidden; color:#7c8995; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.material-item-unit { overflow:hidden; color:#6f7e8c; font-size:10px; font-weight:700; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:800px) { .material-request-form .material-item-row { grid-template-columns:28px minmax(170px,1fr) minmax(125px,1fr) 58px 70px 30px; } }
@media (max-width:560px) { .material-request-form .material-item-row { grid-template-columns:26px minmax(0,1fr) 30px; gap:6px; }.material-request-form .material-item-row > select { grid-column:2; grid-row:1; }.material-request-form .material-item-reference { grid-column:2; grid-row:2; }.material-request-form .material-item-unit { grid-column:2; grid-row:3; justify-self:start; padding:6px 0; }.material-request-form .material-item-row input[type="number"] { grid-column:2; grid-row:4; }.material-request-form .material-item-row .remove-material { grid-column:3; grid-row:1; }.material-request-form .material-item-number { grid-row:1 / span 4; align-self:start; margin-top:7px; } }

.inventory-table-wrap { overflow-x:auto; border:1px solid #e6edf2; border-radius:10px; background:#fff; }
.inventory-table { width:100%; min-width:720px; table-layout:fixed; border-collapse:collapse; }
.inventory-table th:nth-child(1) { width:17%; }
.inventory-table th:nth-child(2) { width:43%; }
.inventory-table th:nth-child(3) { width:12%; }
.inventory-table th:nth-child(4) { width:13%; }
.inventory-table th:nth-child(5) { width:15%; }
.inventory-table th { padding:12px 14px; background:#f8fafc; }
.inventory-table td { padding:13px 14px; }
.inventory-table td:nth-child(2) { overflow-wrap:anywhere; line-height:1.45; }
.inventory-table td:nth-child(3),.inventory-table td:nth-child(4),.inventory-table td:nth-child(5) { white-space:nowrap; }
.inventory-code { display:inline-flex; align-items:center; min-height:25px; padding:0 8px; border:1px solid #e2eaf0; border-radius:6px; color:#344779; background:#f3f6fb; font-size:10px; font-weight:800; white-space:nowrap; }
.inventory-material-cell strong { line-height:1.45; }
.inventory-table .inventory-status.out { color:#a34c45; background:#fff0ee; }
.material-item-reference { grid-template-columns:minmax(0,1fr) auto; align-items:center; column-gap:8px; }
.material-item-reference strong,.material-item-reference span { grid-column:1 / -1; }
.material-item-reference small { grid-column:1 / -1; color:#66808b; font-size:9px; line-height:1.35; }
.material-item-reference small.empty { color:#b6534d; font-weight:800; }
@media (max-width:700px) { .inventory-table { min-width:690px; }.inventory-table th,.inventory-table td { padding-right:10px; padding-left:10px; } }
