.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 15% 20%,rgba(91,79,232,.16),transparent 45%),radial-gradient(circle at 85% 80%,rgba(34,195,166,.14),transparent 45%),var(--color-bg);padding:2rem}.login-card{background:var(--color-surface);padding:2.75rem 2.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);width:380px;display:flex;flex-direction:column;gap:.5rem}.login-card h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text)}.login-card .subtitle{margin:0 0 1.25rem;color:var(--color-text-muted);font-size:.92rem}.login-card label{font-size:.78rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.6rem}.login-card input{padding:.65rem .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.95rem;font-family:var(--font-body);transition:border-color .15s ease,box-shadow .15s ease}.login-card input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.login-card button[type=submit]{margin-top:1.5rem;padding:.75rem;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;box-shadow:0 6px 16px #5b4fe84d;transition:transform .12s ease,box-shadow .12s ease}.login-card button[type=submit]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #5b4fe861}.login-card button[type=submit]:disabled{opacity:.6;cursor:default;box-shadow:none}.login-card .error{color:#b3261e;background:var(--status-cancelled-bg);border-radius:var(--radius-sm);padding:.5rem .7rem;font-size:.85rem;margin-top:.5rem}.demo-accounts{margin-top:1.75rem;padding-top:1.1rem;border-top:1px solid var(--color-border);font-size:.8rem;color:var(--color-text-muted)}.demo-accounts p{margin:0 0 .5rem;font-weight:600;color:var(--color-text-faint);text-transform:uppercase;font-size:.7rem;letter-spacing:.05em}.demo-accounts ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.demo-accounts button{background:var(--color-surface-alt);border:1px solid var(--color-border);color:var(--color-primary-dark);cursor:pointer;padding:.4rem .6rem;border-radius:var(--radius-sm);font-size:.8rem;text-align:left;font-family:var(--font-body);font-weight:500;transition:background .12s ease,border-color .12s ease}.demo-accounts button:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header h1{font-size:1.55rem;font-weight:700;margin:0;color:var(--color-text)}.page-header-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-sm)}.btn{display:inline-block;border:none;border-radius:var(--radius-sm);padding:.6rem 1.15rem;font-weight:600;font-size:.85rem;font-family:var(--font-body);text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;box-shadow:0 4px 12px #5b4fe847}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #5b4fe859}.btn-secondary{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover{background:var(--color-surface-alt)}.btn-sm{padding:.2rem .65rem;font-size:.78rem}.btn-danger{background:#b3261e;border:1px solid #b3261e;color:#fff}.btn-danger:hover{background:#93000a;border-color:#93000a}.task-doc-actions{display:flex;gap:.4rem}.task-raw-data-stack{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.app-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#10121c8c;z-index:50}.app-dialog{width:min(92vw,420px);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 18px 48px #0000003d;padding:1.25rem}.note-dialog-textarea{width:100%;resize:vertical;min-height:90px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);font:inherit;font-size:.86rem;padding:.6rem .75rem;margin:.4rem 0 .9rem;box-sizing:border-box}.note-dialog-textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.app-dialog h3{margin:0 0 .5rem;font-size:1rem;font-weight:700;color:var(--color-text)}.app-dialog p{margin:0;color:var(--color-text-muted);line-height:1.5}.app-dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.25rem}.raw-data-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt);overflow:hidden}.raw-data-card summary{list-style:none;cursor:pointer;padding:.8rem 1rem;font-weight:700;color:var(--color-text);display:flex;align-items:center;justify-content:space-between}.raw-data-card summary::-webkit-details-marker{display:none}.raw-data-card summary:after{content:"▾";color:var(--color-text-muted);font-size:.8rem;transition:transform .15s ease}.raw-data-card[open] summary:after{transform:rotate(180deg)}.raw-data-card .details-content{padding:.9rem 1rem;border-top:1px solid var(--color-border)}.task-summary-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.1rem}.task-summary-name{font-size:1.05rem;font-weight:700;color:var(--color-text)}.raw-data-card .data-json{margin:0;border:0;border-top:1px solid var(--color-border);border-radius:0;background:transparent;max-height:320px;overflow:auto}table.data-table.task-doc-table{font-size:.82rem}table.data-table{width:100%;border-collapse:collapse;font-size:.9rem}@media (max-width: 720px){table.data-table{display:block;overflow-x:auto;white-space:nowrap}}table.data-table th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--color-text-faint);border-bottom:1px solid var(--color-border);padding:.7rem .85rem}table.data-table td{padding:.8rem .85rem;border-bottom:1px solid var(--color-surface-alt);color:var(--color-text)}table.data-table tr:last-child td{border-bottom:none}table.data-table tr:hover td{background:var(--color-surface-alt)}table.data-table a{font-weight:600;text-decoration:none}table.data-table a:hover{text-decoration:underline}.badge-active{background:var(--status-completed-bg);color:var(--status-completed-text)}.badge{display:inline-block;padding:.22rem .65rem;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.badge-draft{background:var(--status-draft-bg);color:var(--status-draft-text)}.badge-in_progress{background:var(--status-progress-bg);color:var(--status-progress-text)}.badge-completed{background:var(--status-completed-bg);color:var(--status-completed-text)}.badge-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.badge-waiting_external{background:var(--status-progress-bg);color:var(--status-progress-text)}.badge-failed{background:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.badge-pending{background:var(--status-draft-bg);color:var(--status-draft-text)}.badge-role{background:var(--color-primary-light);color:var(--color-primary-dark)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.1rem;margin-bottom:1.75rem}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.15rem 1.35rem;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent))}.stat-card .value{font-family:var(--font-display);font-size:1.85rem;font-weight:700;color:var(--color-text)}.stat-card .label{font-size:.82rem;color:var(--color-text-muted);font-weight:500}.empty-state{color:var(--color-text-muted);font-size:.9rem;padding:2.5rem 0;text-align:center}.notice-banner{background:var(--color-primary-light);border:1px solid #d7d3fb;color:var(--color-primary-dark);border-radius:var(--radius-md);padding:.85rem 1.1rem;font-size:.85rem;font-weight:500;margin-bottom:1.5rem}.notice-banner-error{background:#fdecec;border-color:#f5b8b8;color:#9c1f1f}.ai-review-card{margin:0 -1.5rem 1.5rem;width:calc(100% + 3rem)}.ai-review-text{margin:0;white-space:pre-wrap;font-size:.9rem;line-height:1.6;color:var(--color-text)}.ai-review-meta{margin:.9rem 0 0;font-size:.76rem;color:var(--color-text-faint)}.ai-review-body{display:flex;align-items:stretch;gap:2rem}@media (max-width: 720px){.ai-review-body{flex-direction:column}.ai-review-divider{width:100%;height:1px}.ai-review-side{width:100%;flex-direction:row;flex-wrap:wrap;justify-content:center}.ai-review-side-half{width:auto;flex:1 1 220px}.ai-review-side-divider{display:none}}.ai-review-body-main{flex:1;min-width:0}.ai-review-divider{width:1px;flex-shrink:0;background:var(--color-border);align-self:stretch}.ai-review-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;flex-shrink:0;width:152px;padding:.25rem 0}.ai-review-pie{position:relative;width:112px;height:112px;border-radius:50%;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 6px 14px rgba(20,24,40,.18)) drop-shadow(0 1px 2px rgba(20,24,40,.12));transition:filter .2s ease;animation:ai-review-pie-pop .5s cubic-bezier(.34,1.56,.64,1)}.ai-review-pie:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--color-surface);box-shadow:inset 0 1px 3px #1418281f}.ai-review-pie.is-loading{background:conic-gradient(var(--color-border) 0deg,var(--color-border) 360deg);animation:ai-review-pie-spin 1.1s linear infinite}.ai-review-pie-value{position:relative;font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:var(--color-text)}.ai-review-pie-spinner{position:relative;width:22px;height:22px;border-radius:50%;border:3px solid rgba(91,79,232,.18);border-top-color:var(--color-primary);animation:ai-review-pie-spin .75s linear infinite}@keyframes ai-review-pie-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ai-review-pie-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.ai-review-progress-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-faint)}.ai-review-side{display:flex;flex-direction:column;align-items:center;gap:.85rem;flex-shrink:0;width:320px}.ai-review-side-half{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%}.ai-review-side-divider{width:100%;height:1px;background:var(--color-border);flex-shrink:0}.ai-review-success-placeholder{text-align:center;font-size:.76rem;padding:.5rem 0}.ai-review-top-banks{display:flex;flex-direction:column;align-items:center;gap:.4rem;width:100%}.ai-review-top-banks-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:.35rem}.ai-review-top-bank-item{display:grid;grid-template-columns:1fr 3.4rem auto;align-items:center;gap:.55rem;padding:.45rem .65rem;background:var(--color-surface-alt);border-radius:var(--radius-sm);font-size:.78rem;white-space:nowrap}.ai-review-top-bank-name{font-weight:700;color:var(--color-text);white-space:nowrap}.ai-review-top-bank-rate{font-family:var(--font-display);font-weight:700;color:#0f8b5d;text-align:center}.ai-review-top-bank-term{color:var(--color-text-faint);text-align:right;flex-shrink:0}.ai-review-top-banks-empty{text-align:center;font-size:.72rem}.ai-review-pie.is-compact{width:68px;height:68px}.ai-review-pie.is-compact:before{top:7px;right:7px;bottom:7px;left:7px}.ai-review-pie.is-compact .ai-review-pie-value{font-size:.85rem}.ai-review-progress.is-compact{width:100%}.ai-review-refresh-btn{width:100%;margin-top:auto}.ai-review-schedule{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%}.ai-review-due-date{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;padding:.25rem .6rem;border-radius:999px;white-space:nowrap}.ai-review-due-date.tone-none{color:var(--color-text-faint);background:var(--color-surface-alt)}.ai-review-due-date.tone-normal{color:var(--color-text-muted);background:var(--color-surface-alt)}.ai-review-due-date.tone-soon{color:#b06a00;background:#f59e0b24}.ai-review-due-date.tone-overdue{color:#c62828;background:#dc26261f}.ai-review-schedule-date-input{width:100%;font:inherit;font-size:.78rem;padding:.3rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.ai-review-schedule-date-text{font-size:.76rem;color:var(--color-text-muted)}.ai-review-priority-select{width:100%;font:inherit;font-size:.76rem;font-weight:700;padding:.3rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);cursor:pointer;text-transform:uppercase;letter-spacing:.02em}.ai-review-priority-badge{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.22rem .65rem;border-radius:999px}.priority-low,select.ai-review-priority-select.priority-low{color:#4b5563;background:#eef1f6}.priority-medium,select.ai-review-priority-select.priority-medium{color:var(--color-primary-dark);background:var(--color-primary-light)}.priority-high,select.ai-review-priority-select.priority-high{color:#b06a00;background:#f59e0b29}.priority-urgent,select.ai-review-priority-select.priority-urgent{color:#fff;background:#dc2626}.status-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.status-icon svg{width:100%;height:100%}.status-icon-completed{color:#0f8b5d}.status-icon-in_progress,.status-icon-waiting_external{color:#b06a00}.status-icon-failed{color:#c62828}.status-icon-skipped,.status-icon-pending{color:#8a94a6}.badge-with-icon{display:inline-flex;align-items:center;gap:.35rem}.ai-review-card-fancy{position:relative;border:1px solid rgba(91,79,232,.18);background:linear-gradient(var(--color-surface),var(--color-surface)) padding-box,linear-gradient(135deg,#5b4fe859,#22c55e40) border-box;border-radius:var(--radius-md);box-shadow:0 1px 2px #1418280a,0 12px 32px -12px #5b4fe859,0 4px 16px -4px #1418281a;overflow:hidden}.ai-review-card-fancy:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent),#22c55e)}.ai-review-title{display:inline-flex;align-items:center;gap:.45rem}.ai-review-sparkle{display:inline-flex;width:18px;height:18px;color:var(--color-primary)}.ai-review-heading{margin:0 0 .5rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary-dark)}.ai-review-block+.ai-review-block{margin-top:1.1rem;padding-top:1.1rem;border-top:1px dashed var(--color-border)}.ai-review-suggestion-list{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.55rem}.ai-review-suggestion{display:flex;align-items:flex-start;gap:.55rem;font-size:.88rem;line-height:1.5;color:var(--color-text)}.ai-review-suggestion-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border-radius:50%;padding:3px;margin-top:.05rem}.ai-review-suggestion-icon svg{width:100%;height:100%}.ai-review-suggestion.tone-done .ai-review-suggestion-icon{color:#0f8b5d;background:#0f8b5d1f}.ai-review-suggestion.tone-warning .ai-review-suggestion-icon{color:#b06a00;background:#f59e0b24}.ai-review-suggestion.tone-check .ai-review-suggestion-icon{color:#2563eb;background:#2563eb1f}.ai-review-suggestion.tone-idea .ai-review-suggestion-icon{color:#7c3aed;background:#7c3aed1f}.ai-review-pending-block{margin-top:1.1rem;padding-top:1.1rem;border-top:1px dashed var(--color-border)}.ai-review-pending-list{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.ai-review-pending-item{display:flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--color-text)}.ai-review-pending-item .status-icon{width:15px;height:15px}.ai-review-number{background:#5b4fe824;color:var(--color-primary-dark);font-weight:700;padding:.05rem .3rem;border-radius:.25rem}.ai-review-pending-status{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-faint)}.stepper{display:flex;flex-direction:column;gap:0}.step{display:flex;align-items:stretch;gap:.85rem;position:relative;padding-bottom:1rem}.step:last-child{padding-bottom:0}.step-marker-col{position:relative;display:flex;align-items:center;flex-shrink:0;width:30px}.step-interactive{flex:1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid transparent;background:var(--color-surface-alt);text-align:left;font:inherit;color:inherit;cursor:pointer;border-radius:var(--radius-md);padding:.7rem .9rem;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.step-interactive:hover:not(.is-not-started){transform:translate(3px);box-shadow:0 4px 14px #14182814;border-color:var(--color-border-strong)}.step-interactive:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.step-interactive.is-active{background:#5b4fe81f;border-color:#5b4fe859}.step-interactive.is-completed{background:#21a06214;border-color:#21a06240}.step-interactive.is-pending{background:var(--color-surface-alt)}.step-interactive.is-not-started{cursor:default;opacity:.55}.application-type-badge{margin-bottom:.45rem}.step-marker{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;font-family:var(--font-display);flex-shrink:0;z-index:1;transition:transform .15s ease,box-shadow .15s ease}.step:hover .step-marker{transform:scale(1.08)}.step-marker.completed{background:linear-gradient(135deg,#18a06a,#0f8b5d);color:#fff;box-shadow:0 3px 10px #18a06a47}.step-marker.active{background:var(--color-surface);color:var(--color-primary-dark);border:2px solid #18a06a;box-shadow:0 0 0 4px #18a06a2e,0 0 12px #18a06a8c;animation:step-marker-glow 2.2s ease-in-out infinite}.step-marker.pending{background:#eef1f6;border:1px solid #d4dae6;color:#8a94a6}.step-marker.urgent{background:var(--color-surface);color:#c62828;border:2px solid #e5484d}.step-marker.attention{background:var(--color-surface);color:#b06a00;border:2px solid #f5a623}@keyframes step-marker-glow{0%,to{box-shadow:0 0 0 4px #18a06a2e,0 0 12px #18a06a8c}50%{box-shadow:0 0 0 7px #18a06a1a,0 0 18px #18a06abf}}.step-line{position:absolute;left:14px;top:0;bottom:-1rem;width:2px;background:var(--color-border);z-index:0}.step-body{padding-top:.1rem;min-width:0}.step-title{font-weight:600;font-size:.94rem;color:var(--color-text)}.step-meta{font-size:.78rem;color:var(--color-text-muted);margin-top:.1rem;display:flex;align-items:center;gap:.3rem}.step-meta .status-icon{width:12px;height:12px}.step-percent-col{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-shrink:0}.step-percent{font-size:.8rem;font-weight:700;color:var(--color-text-muted);font-family:var(--font-display)}.step-percent.is-done{color:#0f8b5d}.step-percent-bar{width:52px;height:4px;border-radius:2px;background:var(--color-border);overflow:hidden}.step-percent-bar-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--color-primary) 0%,#0f8b5d 100%);transition:width .3s ease}.task-details-grid{display:flex;flex-direction:column;gap:.65rem}.task-detail-row{display:flex;align-items:baseline;justify-content:space-between;gap:.9rem}.task-detail-row-stack{flex-direction:column;align-items:flex-start}.task-detail-label{font-size:.74rem;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.task-detail-value{font-size:.86rem;color:var(--color-text);font-weight:600}.task-contact-empty{margin:0}.task-contact-card{display:flex;flex-direction:column;gap:.9rem}.task-contact-row{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem;border-bottom:1px dashed var(--color-border)}.task-contact-row:last-child{padding-bottom:0;border-bottom:none}.task-contact-heading{display:flex;align-items:center;gap:.5rem}.task-contact-label{font-size:.72rem;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.task-contact-name{font-size:.92rem;color:var(--color-text);font-weight:700}.task-contact-links{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;font-size:.82rem}.task-contact-links a{color:var(--color-primary);text-decoration:none;font-weight:600}.task-contact-links a:hover{text-decoration:underline}.task-request-action{margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--color-border)}.task-request-composer{display:flex;flex-direction:column;gap:.5rem}.task-request-composer textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.84rem;padding:.55rem .7rem}.task-request-composer-actions{display:flex;justify-content:flex-end;gap:.5rem}.task-request-error{margin:.5rem 0 0;font-size:.8rem;color:#b3261e}.task-request-note{margin:.5rem 0 0;font-size:.8rem;color:var(--color-text-muted)}.task-request-note.is-success{color:#0f8b5d;font-weight:600}.task-actions-list{width:100%;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.45rem}.task-actions-list li{display:flex;flex-direction:column;gap:.15rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.55rem .65rem;font-size:.82rem;color:var(--color-text)}.task-actions-list li small{font-size:.72rem;color:var(--color-text-muted)}.empty-inline{margin:0;font-size:.82rem;color:var(--color-text-muted)}.attachment-editor{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1rem}.attachment-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.attachment-editor-title{display:block;font-size:.78rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.2rem}.attachment-editor-hint{margin:0;font-size:.82rem;color:var(--color-text-muted)}.attachment-editor-list{display:flex;flex-direction:column;gap:.85rem}.attachment-editor-row{display:grid;grid-template-columns:minmax(180px,200px) 1fr auto;gap:.75rem;align-items:end;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt)}.attachment-editor-field{margin-bottom:0}@media (max-width: 860px){.attachment-editor-header{flex-direction:column}.attachment-editor-row{grid-template-columns:1fr}}.form-row{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.1rem;min-width:0}.form-row label{display:flex;align-items:flex-end;min-height:2.5em;font-size:.72rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;line-height:1.25}.form-row input,.form-row select,.form-row textarea{width:100%;box-sizing:border-box;padding:.6rem .75rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.9rem;font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);transition:border-color .12s ease,box-shadow .12s ease}.form-row input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.form-row input[type=number]::-webkit-inner-spin-button,.form-row input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.form-row textarea{resize:vertical}.bank-category-tag-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.6rem .75rem;margin-bottom:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.bank-category-tag-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.loan-criteria-textarea{width:100%;box-sizing:border-box;padding:.7rem .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.88rem;font-family:var(--font-body);line-height:1.5;background:var(--color-surface);color:var(--color-text);resize:vertical}.loan-criteria-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.loan-type-criteria-selector{display:grid;grid-template-columns:auto minmax(220px,360px) 1fr;align-items:center;gap:.75rem;margin-bottom:1.25rem}.loan-type-criteria-selector label{font-weight:700}.loan-type-criteria-selector .empty-inline{margin:0}@media (max-width: 760px){.loan-type-criteria-selector{grid-template-columns:1fr}}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.form-grid-3{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 1.25rem}.form-grid-3 .form-row input,.form-grid-3 .form-row select{padding:.4rem .55rem}.form-grid-3 .form-row{gap:.2rem;margin-bottom:.55rem}.form-grid-3 .form-row label{min-height:2.1em}@media (max-width: 1100px){.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 820px){.form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.form-grid-3{grid-template-columns:1fr}}.section-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:.25rem 0 .75rem;padding-top:.5rem;border-top:1px solid var(--color-border-strong)}.section-total-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.section-total-value{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.section-total-row--grand{margin-top:.75rem;padding:1rem 1.25rem;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-primary-light),var(--color-surface-alt));box-shadow:0 1px 2px #1418280f}.section-total-row--grand .section-total-label{font-size:.85rem;color:var(--color-primary-dark)}.section-total-row--grand .section-total-value{font-size:1.55rem;color:var(--color-primary-dark)}.task-form-section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:0 1px 2px #1418280a;padding:.75rem 1.1rem .15rem;margin-bottom:1rem}.task-form-section legend{font-size:.76rem;font-weight:700;color:var(--color-primary-dark);text-transform:uppercase;letter-spacing:.05em;padding:0 .5rem}@media (max-width: 640px){.form-grid-2{grid-template-columns:1fr}}.new-app-form{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.new-app-form-row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}.new-app-title{flex:2 1 260px}.new-app-form input,.new-app-form select,.new-app-form textarea{flex:1 1 200px;padding:.6rem .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.9rem;font-family:var(--font-body);background:#fff;color:var(--color-text)}.new-app-form input:focus,.new-app-form select:focus,.new-app-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.new-app-multiselect{min-height:2.4rem;flex:1 1 220px}.form-hint{margin:-.35rem 0 0;font-size:.8rem;color:var(--color-text-muted)}.card-title{margin:0 0 1.1rem;font-size:1.02rem;font-weight:700;color:var(--color-text)}.card-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.card-header-row .card-title{margin-bottom:0}.icon-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:999px;font-size:.78rem;font-weight:700;padding:.42rem .75rem;cursor:pointer;white-space:nowrap}.icon-btn:hover{background:var(--color-surface-alt)}.detail-split{display:flex;align-items:flex-start}.detail-split-pane{min-width:0;display:flex;flex-direction:column}.detail-split-pane-right{flex:1 1 auto;padding-left:1.5rem}.detail-split-resizer{flex:0 0 auto;width:17px;align-self:stretch;display:flex;align-items:center;justify-content:center;cursor:col-resize;touch-action:none}.detail-split-resizer-grip{width:4px;height:48px;border-radius:999px;background:var(--color-border-strong);transition:background .12s ease,height .12s ease}.detail-split-resizer:hover .detail-split-resizer-grip,.detail-split.is-dragging .detail-split-resizer-grip{background:var(--color-primary);height:64px}.detail-split.is-dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}.detail-split.is-dragging .detail-split-pane{pointer-events:none}@media (max-width: 860px){.detail-split{flex-direction:column}.detail-split-pane{flex-basis:auto!important;width:100%}.detail-split-pane-right{padding-left:0;margin-top:1.5rem}.detail-split-resizer{display:none}}.data-json{font-size:.8rem;white-space:pre-wrap;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.9rem 1rem;color:var(--color-text);font-family:SF Mono,Menlo,monospace}.plain-list{padding-left:1.15rem;font-size:.9rem;color:var(--color-text);margin:0}.plain-list li{margin-bottom:.4rem}.icon-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:6px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.icon-action-btn:hover{background:var(--color-surface-hover, #f0f0f0);color:var(--color-text);border-color:var(--color-text-muted)}.icon-action-btn--danger{color:#b3261e;border-color:#f2b8b5}.icon-action-btn--danger:hover{background:#fceeee;border-color:#b3261e}.icon-action-btn--active{color:#0f8b5d;border-color:#0f8b5d;background:#0f8b5d1a}.icon-action-btn--active:hover{background:#0f8b5d2e;color:#0f8b5d}.icon-action-btn--flagged{color:#b06a00;border-color:#f5a623;background:#f5a6231f}.icon-action-btn--flagged:hover{background:#f5a62333;color:#b06a00}.activity-log{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.activity-log-item{display:flex;gap:.6rem;align-items:flex-start;font-size:.84rem;padding:.45rem .6rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-surface, #fafafa)}.activity-icon{flex-shrink:0;font-size:.85rem;width:18px;text-align:center;margin-top:.05rem;color:var(--color-text-muted)}.activity-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.activity-label{font-weight:500;color:var(--color-text);word-break:break-word}.activity-task{font-size:.78rem;color:var(--color-text-muted)}.activity-meta{display:flex;gap:.5rem;font-size:.74rem;color:var(--color-text-muted);margin-top:.1rem}.activity-actor{font-weight:500;text-transform:capitalize}.activity-task_completed{border-left:3px solid #4caf50}.activity-task_failed{border-left:3px solid #f44336}.activity-workflow_started{border-left:3px solid var(--color-primary, #4a6cf7)}.activity-document_deleted{border-left:3px solid #ff9800}.back-link{display:inline-block;font-size:.85rem;font-weight:600;color:var(--color-text-muted);text-decoration:none;margin-bottom:1rem}.back-link:hover{color:var(--color-primary)}.customer-heading{display:flex;align-items:center;gap:1rem}.customer-avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);box-shadow:0 4px 12px #5b4fe847}.customer-heading-meta{display:flex;gap:.75rem;font-size:.85rem;color:var(--color-text-muted);margin-top:.15rem}.save-confirmation{font-size:.82rem;font-weight:600;color:var(--status-completed-text, #0f8b5d)}.form-hint-error{color:#b3261e}.app-dialog p.app-dialog-subtitle{margin:.35rem 0 1.1rem;font-size:.85rem;color:var(--color-text-muted);line-height:1.5}.app-dialog form .form-row:last-of-type{margin-bottom:0}.workflow-steps-list{display:flex;flex-direction:column;gap:.85rem}.workflow-step-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.workflow-step-card.is-dragging{opacity:.45}.workflow-step-card.is-drag-over{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.workflow-step-header{display:flex;align-items:center;gap:.75rem;padding:.9rem 1.1rem;flex-wrap:wrap}.drag-handle{cursor:grab;color:var(--color-text-faint);font-size:1.1rem;line-height:1;padding:.2rem .3rem;-webkit-user-select:none;user-select:none;flex-shrink:0}.drag-handle:active{cursor:grabbing}.step-number-badge{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;font-family:var(--font-display);background:var(--color-primary-light);color:var(--color-primary-dark)}.workflow-step-header-fields{display:flex;flex-wrap:wrap;gap:.6rem;flex:1 1 420px}.workflow-step-header-fields input,.workflow-step-header-fields select{padding:.5rem .65rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.85rem;font-family:var(--font-body);background:var(--color-surface);color:var(--color-text)}.workflow-step-header-fields input:focus,.workflow-step-header-fields select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.workflow-step-name-input{flex:2 1 200px;font-weight:600}.workflow-step-key-input{flex:1 1 140px;font-family:SF Mono,Menlo,monospace;font-size:.8rem;color:var(--color-text-muted)}.workflow-step-header-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0;margin-left:auto}.icon-btn-danger-text{color:#b3261e;border-color:#f2b8b5}.icon-btn-danger-text:hover{background:#fceeee}.workflow-step-body{border-top:1px solid var(--color-border);padding:1.1rem;display:flex;flex-direction:column;gap:.85rem}.field-editor{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.9rem;background:var(--color-surface-alt);display:flex;flex-direction:column;gap:.7rem}.field-editor-header-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.field-editor-header-row label{font-size:.8rem;font-weight:700;color:var(--color-text)}.field-editor-list{display:flex;flex-direction:column;gap:.6rem}.field-editor-row{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:.6rem;display:flex;flex-direction:column;gap:.5rem}.field-editor-row-main{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.field-editor-row-main input,.field-editor-row-main select{padding:.4rem .6rem;font-size:.82rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body)}.field-editor-name{width:140px;font-family:var(--font-mono, monospace)}.field-editor-label{flex:1;min-width:160px}.field-editor-section{width:140px}.field-editor-row-attrs{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.field-editor-row-attrs input{flex:1;min-width:140px;padding:.35rem .55rem;font-size:.78rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt);color:var(--color-text);font-family:var(--font-body)}.checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:500;color:var(--color-text)}.checkbox-row input{width:auto}.checkbox-row-inline{white-space:nowrap;font-size:.8rem}.ai-verification-panel{display:flex;flex-direction:column;gap:.75rem;padding:.9rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt)}@media (max-width: 860px){.workflow-step-header-actions{margin-left:0}}.progress-bar-track{width:100%;min-width:90px;height:8px;border-radius:999px;background:var(--color-surface-alt, #eef0f6);overflow:hidden}.progress-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);transition:width .2s ease}.progress-bar-fill.is-complete{background:linear-gradient(90deg,#18a06a,#0f8b5d)}.progress-bar-row{display:flex;align-items:center;gap:.6rem}.progress-bar-label{font-size:.78rem;font-weight:600;color:var(--color-text-muted);white-space:nowrap;min-width:2.6rem;text-align:right}.progress-bar-header{display:flex;flex-direction:column;gap:.4rem;max-width:320px;margin-top:.6rem}.workflow-progress-summary{width:200px;flex-shrink:0}@media (max-width: 640px){.workflow-progress-summary{width:140px}}.status-chart{display:flex;flex-direction:column;gap:.75rem}.status-chart-row{display:grid;grid-template-columns:110px 1fr 2.5rem;align-items:center;gap:.75rem;font-size:.85rem}.status-chart-label{color:var(--color-text-muted);font-weight:600}.status-chart-track{height:12px;border-radius:999px;background:var(--color-surface-alt, #eef0f6);overflow:hidden}.status-chart-fill{height:100%;border-radius:999px}.status-chart-count{text-align:right;font-weight:700;color:var(--color-text)}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.75rem;font-weight:700;font-family:var(--font-display);background:var(--color-surface-alt);color:var(--color-text-muted)}.rank-badge.rank-1{background:linear-gradient(135deg,#f6c453,#e0a52c);color:#5a3d00}.rank-badge.rank-2{background:linear-gradient(135deg,#d8dde6,#b9c0cd);color:#333}.rank-badge.rank-3{background:linear-gradient(135deg,#e3b48a,#c9905f);color:#402400}.credit-score-value{font-weight:700;color:var(--color-text)}.credit-score-value.is-empty{font-weight:400;color:var(--color-text-faint)}.doc-flag-actions{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.badge-verified{background:var(--status-completed-bg);color:var(--status-completed-text)}.badge-flagged{background:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.badge-unverified{background:var(--color-surface-alt);color:var(--color-text-faint)}.banks-grid{display:flex;flex-direction:column;gap:1.25rem}.bank-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}.bank-card:hover{box-shadow:var(--shadow-md, 0 8px 24px rgba(20, 20, 43, .1));transform:translateY(-1px)}.bank-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;background:linear-gradient(120deg,#5b4fe814,#5b4fe800 65%);border-bottom:1px solid var(--color-border)}.bank-card:nth-of-type(4n+1) .bank-card-header{background:linear-gradient(120deg,#5b4fe817,#5b4fe800 65%)}.bank-card:nth-of-type(4n+2) .bank-card-header{background:linear-gradient(120deg,#22c55e17,#22c55e00 65%)}.bank-card:nth-of-type(4n+3) .bank-card-header{background:linear-gradient(120deg,#f59e0b1a,#f59e0b00 65%)}.bank-card:nth-of-type(4n+4) .bank-card-header{background:linear-gradient(120deg,#2563eb17,#2563eb00 65%)}.bank-card:nth-of-type(4n+1) .bank-avatar{background:linear-gradient(135deg,#6d5ff0,#4b3fd1);box-shadow:0 4px 10px #5b4fe84d}.bank-card:nth-of-type(4n+2) .bank-avatar{background:linear-gradient(135deg,#22c55e,#0f8b5d);box-shadow:0 4px 10px #22c55e4d}.bank-card:nth-of-type(4n+3) .bank-avatar{background:linear-gradient(135deg,#f59e0b,#b06a00);box-shadow:0 4px 10px #f59e0b4d}.bank-card:nth-of-type(4n+4) .bank-avatar{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 10px #2563eb4d}.bank-card-identity{display:flex;align-items:center;gap:.85rem}.bank-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;font-weight:700;font-size:1.05rem;box-shadow:0 4px 10px #5b4fe84d}.bank-icon-img{width:42px;height:42px;flex-shrink:0;border-radius:12px;object-fit:contain;background:#fff;border:1px solid var(--color-border);padding:6px}.bank-card-name{margin:0;font-size:1.15rem;font-weight:700;color:var(--color-text)}.bank-card-website{display:block;font-size:.78rem;font-weight:500;color:var(--color-primary);text-decoration:none}.bank-card-website:hover{text-decoration:underline}.bank-card-rate-count{display:block;font-size:.72rem;color:var(--color-text-faint);margin-top:.15rem}.bank-card-actions{display:flex;gap:.5rem;flex-shrink:0}.bank-card-edit-row{display:flex;gap:.5rem;flex:1;align-items:center}.bank-card-edit-row input:first-child{max-width:220px}.bank-card-edit-row input:nth-child(2){flex:1}.bank-rate-table-scroll{overflow-x:auto}.bank-rate-table{margin:0;min-width:560px}table.data-table.bank-rate-table th,table.data-table.bank-rate-table td{padding:.3rem 1.5rem;transition:background .12s ease}table.data-table.bank-rate-table th{padding-top:.4rem;padding-bottom:.4rem}.bank-rate-table tbody tr:nth-child(2n){background:#14182804}.bank-rate-table tbody tr:hover{background:#5b4fe80d}.bank-rate-row-set{background:#5b4fe80b!important}.bank-rate-loantype{font-weight:600;color:var(--color-text)}.bank-rate-input{position:relative;display:inline-flex;align-items:center}.bank-rate-input input{width:84px;padding-right:1.4rem;text-align:right;border-radius:var(--radius-sm);transition:border-color .12s ease,box-shadow .12s ease}.bank-rate-input input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #5b4fe81f}.bank-rate-suffix{position:absolute;right:.55rem;font-size:.78rem;color:var(--color-text-faint);pointer-events:none}.bank-term-select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);padding:.32rem .6rem;font-size:.82rem;font-family:var(--font-body);cursor:pointer;transition:border-color .12s ease}.bank-term-select:hover{border-color:var(--color-primary)}.bank-rate-error{color:#b3261e;font-size:.78rem;margin-left:.4rem}.banks-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;align-items:start}@media (max-width: 900px){.banks-page-layout{grid-template-columns:minmax(0,1fr)}}.banks-main-column{min-width:0}.banks-sort-row{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.banks-sort-row label{font-size:.8rem;font-weight:600;color:var(--color-text-faint)}.bank-news-panel{position:sticky;top:1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.25rem}.bank-news-title{margin:0;font-size:1rem;font-weight:700;color:var(--color-text)}.bank-news-subtitle{margin:.15rem 0 1rem;font-size:.72rem;color:var(--color-text-faint)}.bank-news-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}.bank-news-item{padding-bottom:.9rem;border-bottom:1px solid var(--color-border)}.bank-news-item:last-child{border-bottom:none;padding-bottom:0}.bank-news-item a{display:block;font-size:.85rem;font-weight:600;color:var(--color-text);text-decoration:none;line-height:1.35}.bank-news-item a:hover{color:var(--color-primary)}.bank-news-excerpt{margin:.35rem 0 0;font-size:.76rem;line-height:1.45;color:var(--color-text-muted)}.bank-news-date{display:block;margin-top:.3rem;font-size:.7rem;color:var(--color-text-faint)}.top-banks-strip-card{margin-bottom:1.5rem}.top-banks-strip-title{margin-bottom:0}.top-banks-strip-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.top-banks-strip-updated{font-size:.72rem;color:var(--color-text-faint)}.top-banks-strip{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.15rem}.top-banks-strip-item{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;flex:1 1 0;min-width:128px;padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.top-banks-strip-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.top-banks-strip-item.is-best{border-color:#0f8b5d59;background:linear-gradient(160deg,rgba(15,139,93,.08) 0%,var(--color-surface-alt) 70%)}.top-banks-strip-row{display:flex;align-items:center;gap:.5rem;width:100%}.top-banks-strip-avatar{width:26px;height:26px;border-radius:8px;font-size:.75rem}.top-banks-strip-name{font-weight:700;font-size:.8rem;color:var(--color-text);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-banks-strip-rate{font-family:var(--font-display);font-weight:700;font-size:1.1rem;color:#0f8b5d;flex-shrink:0}.top-banks-strip-meta{font-size:.68rem;color:var(--color-text-faint);line-height:1.3}.top-banks-strip-updated-item{font-size:.64rem;color:var(--color-text-faint);opacity:.85}@media (max-width: 860px){.top-banks-strip{flex-wrap:nowrap}.top-banks-strip-item{min-width:112px}}.refresh-rates-control{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.refresh-rates-icon{display:inline-block;margin-right:.35rem}.refresh-rates-icon.is-spinning{animation:refresh-rates-spin .9s linear infinite}@keyframes refresh-rates-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.refresh-rates-result{font-size:.78rem;font-weight:600}.refresh-rates-result.is-success{color:#0f8b5d}.refresh-rates-result.is-error{color:#b3261e}.profile-menu-container{position:relative}.profile-avatar-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:.78rem;font-weight:700;font-family:var(--font-display);cursor:pointer;letter-spacing:.02em}.profile-avatar-btn--static{cursor:default;width:40px;height:40px;font-size:.85rem;flex-shrink:0}.profile-menu{position:absolute;top:calc(100% + 10px);right:0;width:240px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 18px 48px #0003;z-index:60;padding:.9rem}.profile-menu-header{display:flex;align-items:center;gap:.7rem}.profile-menu-identity{display:flex;flex-direction:column;min-width:0}.profile-menu-name{font-size:.86rem;font-weight:700;color:var(--color-text)}.profile-menu-email{font-size:.72rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-role{margin-top:.2rem;align-self:flex-start;font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-primary-dark);background:var(--color-primary-light);padding:.15rem .5rem;border-radius:999px}.profile-menu-divider{height:1px;background:var(--color-border);margin:.8rem 0 .6rem}.profile-menu-item{width:100%;display:flex;align-items:center;gap:.55rem;border:none;background:transparent;padding:.5rem .4rem;border-radius:var(--radius-sm);font:inherit;font-size:.84rem;font-weight:600;color:var(--color-text);cursor:pointer;text-align:left}.profile-menu-item:hover{background:var(--color-surface-alt)}.profile-menu-item--danger{color:#b3261e}.profile-menu-item--danger:hover{background:#fceeee}.global-search{position:relative;flex:1;max-width:420px}.global-search-input{width:100%;box-sizing:border-box;padding:.5rem .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:.85rem;font-family:var(--font-body);background:var(--color-surface-alt);color:var(--color-text)}.global-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.global-search-dropdown{position:absolute;top:calc(100% + .4rem);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 12px 28px #14182824;max-height:420px;overflow-y:auto;z-index:40}.global-search-status{padding:.9rem 1rem;font-size:.82rem;color:var(--color-text-muted)}.global-search-error{color:#b3261e}.global-search-group+.global-search-group{border-top:1px solid var(--color-border)}.global-search-group-label{padding:.55rem 1rem .3rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-faint)}.global-search-result{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.55rem 1rem;border:0;background:transparent;text-align:left;font:inherit;cursor:pointer}.global-search-result:hover,.global-search-result:focus-visible{background:var(--color-surface-alt);outline:none}.global-search-result-title{font-size:.87rem;font-weight:600;color:var(--color-text)}.global-search-result-subtitle{font-size:.76rem;color:var(--color-text-muted)}.notif-bell-container{position:relative}.notif-bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.notif-bell-btn:hover{background:var(--color-surface-hover, #f0f0f0);color:var(--color-text);border-color:var(--color-text-muted)}.notif-bell-badge{position:absolute;top:-3px;right:-3px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#e5484d;color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 0 2px var(--color-surface)}.notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:380px;max-height:70vh;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 18px 48px #0003;z-index:60}.notif-panel-header{padding:.85rem 1rem;font-weight:700;font-size:.85rem;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-surface)}.notif-panel-empty{padding:1.5rem 1rem}.notif-list{list-style:none;margin:0;padding:0}.notif-item{border-bottom:1px solid var(--color-border)}.notif-item:last-child{border-bottom:none}.notif-item-header{width:100%;display:flex;align-items:flex-start;gap:.5rem;text-align:left;border:none;background:transparent;cursor:pointer;padding:.75rem 1rem;font:inherit;color:inherit}.notif-item-header:hover{background:var(--color-surface-alt)}.notif-item-unread .notif-item-subject{font-weight:700}.notif-dot{width:7px;height:7px;border-radius:50%;background:var(--color-primary);margin-top:.4rem;flex-shrink:0}.notif-item-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.notif-item-subject{font-size:.85rem;color:var(--color-text)}.notif-item-preview{font-size:.78rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-item-time{font-size:.7rem;color:var(--color-text-faint)}.notif-thread{padding:0 1rem .9rem;display:flex;flex-direction:column;gap:.6rem}.notif-thread-messages{display:flex;flex-direction:column;gap:.5rem;max-height:220px;overflow-y:auto}.notif-message{background:var(--color-surface-alt);border-radius:var(--radius-sm);padding:.5rem .65rem}.notif-message-mine{background:var(--color-primary-light)}.notif-message-meta{display:flex;justify-content:space-between;gap:.5rem;font-size:.68rem;color:var(--color-text-faint);margin-bottom:.2rem}.notif-message-body{margin:0;font-size:.82rem;color:var(--color-text);white-space:pre-wrap}.notif-thread-reply{display:flex;gap:.5rem;align-items:flex-end}.notif-thread-reply textarea{flex:1;resize:vertical;min-height:38px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.82rem;padding:.45rem .6rem}.notif-thread-reply textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.admin-menu-container{position:relative}.admin-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.admin-menu-btn:hover{background:var(--color-surface-alt);color:var(--color-text)}.admin-menu{position:absolute;top:calc(100% + 10px);right:0;width:260px;max-height:70vh;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 18px 48px #0003;z-index:60;padding:.9rem}.admin-menu-title{font-size:.86rem;font-weight:700;color:var(--color-text);margin-bottom:.6rem}.admin-menu-group+.admin-menu-group{margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--color-border)}.admin-menu-group-label{font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-faint);padding:0 .4rem .35rem}.admin-menu-item{display:block;width:100%;padding:.5rem .4rem;border-radius:var(--radius-sm);font-size:.84rem;font-weight:600;color:var(--color-text);text-decoration:none}.admin-menu-item:hover{background:var(--color-surface-alt)}.admin-menu-item.active{background:var(--color-primary-light);color:var(--color-primary-dark)}.app-shell{display:flex;min-height:100vh;background:var(--color-bg)}.sidebar{width:232px;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;padding:1.5rem 1rem;flex-shrink:0}.brand{font-family:var(--font-display);font-weight:700;font-size:1.15rem;padding:0 .5rem 1.75rem;color:var(--color-sidebar-text-active);display:flex;align-items:center;gap:.5rem}.brand:before{content:"◆";color:var(--color-primary);font-size:.9rem}.sidebar nav{display:flex;flex-direction:column;gap:.2rem}.nav-link{color:var(--color-sidebar-text);text-decoration:none;padding:.6rem .75rem;border-radius:var(--radius-sm);font-size:.88rem;font-weight:500;transition:background .12s ease,color .12s ease}.nav-link:hover{background:#ffffff0f;color:var(--color-sidebar-text-active)}.nav-link.active{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;box-shadow:0 4px 12px #5b4fe859}.nav-group{display:flex;flex-direction:column;margin-bottom:.15rem}.nav-children{display:flex;flex-direction:column;gap:0;margin:.15rem 0 .25rem 1.05rem;padding-left:.75rem;border-left:1px solid rgba(255,255,255,.12)}.nav-link-child{position:relative;font-size:.8rem;font-weight:400;padding:.42rem .6rem;border-radius:var(--radius-sm);color:var(--color-sidebar-text-muted, rgba(255, 255, 255, .6));opacity:1}.nav-link-child:hover{background:#ffffff0d;color:var(--color-sidebar-text-active)}.nav-link-child.active{background:#ffffff12;color:var(--color-sidebar-text-active);font-weight:600;box-shadow:none}.nav-link-child.active:before{content:"";position:absolute;left:-.75rem;top:50%;transform:translateY(-50%);width:3px;height:16px;border-radius:2px;background:var(--color-primary)}.nav-dropdown-wrap{margin:.2rem 0 .25rem .45rem}.nav-dropdown{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);background:#ffffff0f;color:var(--color-sidebar-text);padding:.5rem .65rem;font-size:.8rem;font-weight:500;cursor:pointer}.nav-dropdown:focus{outline:2px solid rgba(91,79,232,.35);outline-offset:1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.main-column{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:60px;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 1.75rem}.topbar-left{display:flex;align-items:center;gap:1rem;min-width:0}.topbar-right{display:flex;align-items:center;gap:.7rem;flex-shrink:0}.topbar-role{font-family:var(--font-display);font-size:.7rem;font-weight:700;letter-spacing:.06em;color:var(--color-primary-dark);background:var(--color-primary-light);padding:.28rem .7rem;border-radius:999px;flex-shrink:0}.content{flex:1;padding:2rem 2.25rem;overflow-y:auto}.page-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--color-text-muted);font-family:var(--font-body)}.hamburger-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer}.hamburger-btn:hover{background:var(--color-surface-alt)}.hamburger-icon,.hamburger-icon:before,.hamburger-icon:after{display:block;width:18px;height:2px;background:var(--color-text);border-radius:1px}.hamburger-icon{position:relative}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;left:0}.hamburger-icon:before{top:-6px}.hamburger-icon:after{top:6px}.sidebar-backdrop{display:none}@media (max-width: 900px){.hamburger-btn{display:inline-flex}.sidebar{position:fixed;inset:0 auto 0 0;z-index:60;transform:translate(-100%);transition:transform .2s ease}.sidebar.is-open{transform:translate(0);box-shadow:12px 0 32px #14182847}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#10121c80;z-index:55}.topbar{padding:0 1rem;gap:.5rem}.topbar-role{display:none}.content{padding:1.25rem 1rem}}@media (max-width: 480px){.topbar{padding:0 .75rem}.content{padding:1rem .75rem}.brand{font-size:1.05rem}}:root{--font-display: "Sora", "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--color-bg: #f4f5fb;--color-surface: #ffffff;--color-surface-alt: #f8f9fd;--color-border: #e6e8f2;--color-border-strong: #d7dae8;--color-text: #1c1f36;--color-text-muted: #6b7089;--color-text-faint: #9498ac;--color-primary: #5b4fe8;--color-primary-dark: #4438d1;--color-primary-light: #eeecfd;--color-accent: #22c3a6;--color-accent-light: #e3faf5;--color-sidebar-bg: linear-gradient(180deg, #191a34 0%, #14152a 100%);--color-sidebar-text: #b6b8d6;--color-sidebar-text-active: #ffffff;--shadow-sm: 0 1px 2px rgba(24, 24, 60, .05);--shadow-md: 0 4px 16px rgba(30, 26, 90, .08);--shadow-lg: 0 12px 32px rgba(30, 26, 90, .14);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--status-draft-bg: #eef0f6;--status-draft-text: #565a72;--status-progress-bg: #fff2d9;--status-progress-text: #a15c00;--status-completed-bg: #dcf8f0;--status-completed-text: #0d7a5f;--status-cancelled-bg: #fde3e3;--status-cancelled-text: #b3261e}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em}a{color:var(--color-primary)}::selection{background:var(--color-primary-light);color:var(--color-primary-dark)}
