:root{--gold:#b8954f;--gold-soft:#d2b57b;--gold-deep:#8f6f35;--gold-glow:rgba(184,149,79,.18);--btn:#f58634;--btn-soft:#f8a566;--btn-deep:#d46e23;--btn-glow:rgba(245,134,52,.18);--btn-shadow:rgba(245,134,52,.35);--btn-shadow-hover:rgba(245,134,52,.45);--dark:#2c2931;--ink:#1f1c23;--light:#fffdfa;--gray:#f4f0e8;--ivory:#faf7f1;--text:#4f4d56;--text-muted:#8a8692;--shadow:rgba(20,16,28,.1);--shadow-md:rgba(20,16,28,.18);--shadow-lg:rgba(20,16,28,.28);--focus:#8a6a2d;--font-sans:"Sora", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--space-page:16px;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--transition:.2s ease;--transition-slow:.4s ease;--nav-h:64px;--sidebar-w:260px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--ivory);color:var(--text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}ol,ul{list-style:none}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--ink);line-height:1.2;font-weight:600}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:clamp(1.15rem,2vw,1.5rem)}h4{font-size:1.1rem}p{color:var(--text);line-height:1.7}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--gray)}::-webkit-scrollbar-thumb{background:var(--gold-soft);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--gold)}.gold-line{display:block;width:48px;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-soft));border-radius:2px;margin-block:.75rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;font-weight:600;letter-spacing:.03em;transition:all var(--transition);cursor:pointer}.btn-gold,.btn-primary{background:linear-gradient(135deg,var(--btn),var(--btn-deep));color:var(--light);box-shadow:0 4px 16px var(--btn-shadow)}.btn-gold:hover,.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 22px var(--btn-shadow-hover)}.btn-gold:active,.btn-primary:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--btn-deep);border:1.5px solid var(--btn)}.btn-outline:hover{background:var(--btn-glow)}.btn-ghost{background:transparent;color:var(--text)}.btn-ghost:hover{color:var(--btn-deep)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:.4rem 1rem;font-size:.82rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--light);border:1px solid rgba(184,149,79,.15);border-radius:var(--radius-lg);box-shadow:0 2px 16px var(--shadow);padding:1.75rem}.card-gold-border{border:1.5px solid var(--gold-soft);box-shadow:0 4px 24px var(--gold-glow),0 2px 8px var(--shadow)}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-size:.82rem;font-weight:600;color:var(--ink);letter-spacing:.04em;text-transform:uppercase}.field input,.field select,.field textarea{padding:.65rem 1rem;border:1.5px solid rgba(184,149,79,.25);border-radius:var(--radius-sm);background:var(--ivory);color:var(--ink);font-size:.95rem;transition:border-color var(--transition),box-shadow var(--transition);outline:none;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.field textarea{resize:vertical;min-height:90px}.field-error{font-size:.8rem;color:#dc2626;margin-top:.25rem}.badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:99px;font-size:.75rem;font-weight:600;letter-spacing:.03em}.badge-active{background:#d1fae5;color:#065f46}.badge-inactive{background:#fee2e2;color:#991b1b}.badge-expired{background:#fef3c7;color:#92400e}.badge-gold{background:#b8954f26;color:var(--gold-deep)}.ora-table{width:100%;border-collapse:collapse;font-size:.9rem}.ora-table th{text-align:left;padding:.6rem 1rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:2px solid var(--gray);background:var(--ivory)}.ora-table td{padding:.85rem 1rem;border-bottom:1px solid var(--gray);color:var(--text);vertical-align:middle}.ora-table tr:last-child td{border-bottom:none}.ora-table tr:hover td{background:#b8954f0a}.stat-card{background:var(--light);border:1px solid rgba(184,149,79,.15);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:0 2px 12px var(--shadow)}.stat-card .stat-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.stat-card .stat-value{font-family:var(--font-serif);font-size:2.25rem;font-weight:700;color:var(--ink);line-height:1}.stat-card .stat-icon{font-size:1.5rem;margin-bottom:.25rem}.page-actions-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.page-content :where(button.btn,button[class^=btn-],button[class*=" btn-"]){min-height:38px!important;display:inline-flex;align-items:center}.page-content :where(.btn-sm){min-height:34px!important}.page-content :where(.btn-xs){min-height:30px!important}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.page-header h1{font-size:clamp(1.6rem,3vw,2.25rem)}.page-header p{font-size:.9rem;color:var(--text-muted);margin-top:.25rem}.section-title{font-family:var(--font-serif);font-size:1.5rem;color:var(--ink);margin-bottom:.25rem}.section-subtitle{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3{display:grid;gap:1.25rem}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}@media(max-width:900px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.alert{padding:.8rem 1.2rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.6rem}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.alert-info{background:#b8954f1a;color:var(--gold-deep);border:1px solid var(--gold-soft)}.spinner{width:28px;height:28px;border:3px solid var(--gray);border-top-color:var(--gold);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;background:var(--ivory)}.loading-screen p{color:var(--text-muted);font-size:.9rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state p{font-size:.95rem}.modal-backdrop{position:fixed;inset:0;background:#14101c8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:0;overflow-y:auto}.modal{background:var(--light);border-radius:var(--radius-xl);padding:2rem;width:min(640px,100%);box-shadow:0 24px 64px var(--shadow-lg);border:1px solid rgba(184,149,79,.2);max-height:90vh;overflow-y:auto}.modal-lg{width:min(920px,100%)}.modal-xl{width:min(1160px,100%);max-height:94vh}.modal-xxl{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;padding:1.25rem 1.5rem!important;margin:0!important}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--gray)}.modal-header h2{font-size:1.35rem}.modal-close{width:32px;height:32px;border-radius:50%;background:var(--gray);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--text-muted);cursor:pointer;transition:background var(--transition);border:none}.modal-close:hover{background:#b8954f26;color:var(--gold)}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--gray)}.modal-backdrop{background:#14101c8c!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-backdrop .modal{background:var(--light)!important;border:1px solid rgba(184,149,79,.2)!important;border-radius:var(--radius-xl)!important;box-shadow:0 24px 64px var(--shadow-lg)!important;padding:0!important;width:min(640px,100%);max-height:95vh!important;display:flex!important;flex-direction:column!important}.modal-backdrop .modal-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:.75rem;padding:1.5rem 1.5rem 0!important;margin-bottom:0!important;border-bottom:1px solid var(--gray)!important;flex:0 0 auto!important}.modal-backdrop .modal-header h2,.modal-backdrop .modal-header h3{margin:0;font-family:var(--font-serif);color:var(--ink)}.modal-backdrop .modal-close{width:32px!important;height:32px!important;border-radius:50%!important;background:var(--gray)!important;color:var(--text-muted)!important;border:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:1.1rem!important;line-height:1}.modal-backdrop .modal-close:hover{background:#b8954f26!important;color:var(--gold)!important}.modal-backdrop .modal-actions,.modal-backdrop .modal-footer{display:flex!important;justify-content:flex-end!important;flex-wrap:wrap;gap:.75rem!important;padding:1rem 1.5rem 1.5rem!important;margin-top:0!important;border-top:1px solid var(--gray)!important;flex:0 0 auto!important}.page-content>:where([class$=-page],.page-container){padding:0!important;margin:0 auto!important;width:100%}.page-content :where(.page-header){gap:var(--space-md)!important;margin-bottom:var(--space-md)!important}.page-content :where(.stats-row,.summary-grid,.groups-wrap){gap:var(--space-md)!important}.page-content :where(.stats-row,.filter-bar,.toolbar,.summary-grid){margin-bottom:var(--space-md)!important}.page-content :where(.toolbar){gap:var(--space-md)!important}.page-content :where(.drawer-header,.drawer-body,.drawer-footer){padding-left:var(--space-lg)!important;padding-right:var(--space-lg)!important}.page-content :where(.drawer-header){gap:var(--space-md)!important;padding-top:var(--space-md)!important;padding-bottom:var(--space-md)!important}.page-content :where(.drawer-body){gap:var(--space-md)!important;padding-top:var(--space-md)!important;padding-bottom:var(--space-md)!important}.page-content :where(.drawer-footer){gap:var(--space-sm)!important;padding-top:var(--space-md)!important;padding-bottom:var(--space-md)!important}.modal-backdrop :where(.modal-header){gap:var(--space-md)!important;margin-bottom:var(--space-md)!important}.modal-backdrop :where(.modal-body,.modal-form,.quotation-body){gap:var(--space-md)!important;flex:1 1 auto!important;overflow-y:auto!important;padding:1rem 1.5rem!important}.modal-backdrop :where(.modal-footer,.modal-actions){gap:var(--space-sm)!important}.modal-backdrop :where(.modal-header,.modal-body,.modal-footer,.modal-form){margin-left:0!important;margin-right:0!important}@media(max-width:640px){.modal-backdrop .modal{width:100%!important;padding:0!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;max-height:90vh!important}.modal-backdrop .modal-header{padding:1rem .85rem .6rem!important;margin-bottom:0!important}.modal-backdrop :where(.modal-body,.modal-form,.quotation-body){padding:.8rem .85rem!important}.modal-backdrop .modal-actions,.modal-backdrop .modal-footer{padding:.6rem .85rem 1.25rem!important;flex-direction:column-reverse!important;gap:.5rem!important;margin-top:.8rem!important}.modal-backdrop .modal-actions .btn,.modal-backdrop .modal-footer .btn{width:100%;justify-content:center}.page-content>:where([class$=-page],.page-container){padding:0!important}.page-content :where(.page-header,.stats-row,.filter-bar,.toolbar,.summary-grid,.groups-wrap){margin-bottom:var(--space-md)!important;gap:var(--space-sm)!important}.page-content :where(.drawer-header,.drawer-body,.drawer-footer){padding-left:var(--space-md)!important;padding-right:var(--space-md)!important}}.ora-brand{gap:.6rem}.ora-brand,.ora-brand-mark{display:flex;align-items:center}.ora-brand-mark{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-deep));justify-content:center;color:var(--light);font-family:var(--font-serif);font-size:1.1rem;font-weight:700;flex-shrink:0}.ora-brand-text{display:flex;flex-direction:column;line-height:1.1}.ora-brand-name{font-family:var(--font-serif);font-size:1.1rem;font-weight:700;color:var(--ink)}.ora-brand-sub{font-size:.68rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md)}.form-section-title{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);margin-top:.5rem;margin-bottom:.25rem;padding-bottom:.35rem;border-bottom:1px solid rgba(184,149,79,.2)}.input-readonly{background:#b8954f0f!important;color:var(--ink);cursor:default;opacity:.85}@media(max-width:768px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.page-header{flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.page-header h1{font-size:1.45rem}}@media(max-width:640px){body{font-size:14px}.card{border-radius:10px;box-shadow:0 1px 6px var(--shadow)}.card,.stat-card{padding:.75rem}.stat-card .stat-value{font-size:1.5rem}.page-header{flex-direction:column;gap:.5rem;margin-bottom:.8rem;padding:0 .75rem}.page-header h1{font-size:1.2rem}.page-header>.btn{width:100%;justify-content:center;min-height:40px;font-size:.8rem}.modal-backdrop{padding:0;align-items:flex-end}.modal{padding:1rem .85rem 1.25rem;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal,.modal-lg,.modal-xl{max-height:90vh;width:100%!important}.modal-xxl{width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}.modal-header{margin-bottom:.8rem;padding-bottom:.6rem}.modal-header h2{font-size:1.1rem}.modal-footer{flex-direction:column-reverse;gap:.4rem;margin-top:.8rem;padding-top:.6rem}.modal-footer .btn{width:100%;justify-content:center;min-height:40px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important;gap:.6rem!important}.ora-table{font-size:.75rem}.ora-table th{padding:.4rem .45rem;font-size:.65rem}.ora-table td{padding:.45rem}.alert{font-size:.8rem;padding:.55rem .85rem}.filter-bar,.toolbar{padding:.65rem!important;gap:.4rem!important}table[class*=table]{font-size:.75rem}table[class*=table] th{padding:.4rem;font-size:.62rem;letter-spacing:.04em}table[class*=table] td{padding:.4rem;word-break:break-word}.row-actions{flex-direction:column;gap:.2rem!important;width:100%}.row-actions .btn{padding:.3rem .6rem;font-size:.7rem;width:100%;min-height:32px}.card{box-shadow:0 1px 6px var(--shadow)}.card,.stat-card{border-radius:var(--radius-md)}.form-actions .btn,.modal-footer .btn,.page-header>.btn{width:100%;justify-content:center}.form-actions{flex-direction:column-reverse;gap:.5rem}.page-actions-bar{gap:.6rem}.page-actions-bar .btn{flex:1;justify-content:center;min-width:0}.badge{padding:.25rem .6rem;font-size:.73rem}}@media(max-width:480px){.stat-card{padding:.9rem 1rem}.stat-card .stat-value{font-size:1.55rem}.stat-card .stat-label{font-size:.7rem}}@media(max-width:640px){.alert{border-radius:var(--radius-md)}}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}body.modal-open{overflow:hidden;position:fixed;width:100%}body.sidebar-body-lock{overflow:hidden;touch-action:none;overscroll-behavior:none}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}@media(max-width:640px){.chip-row,.filter-chips-row,.tabs-row{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap!important;padding-bottom:2px}.chip-row::-webkit-scrollbar,.filter-chips-row::-webkit-scrollbar,.tabs-row::-webkit-scrollbar{display:none}}@media(max-width:640px){.ora-table td,.ora-table th{white-space:nowrap}}@media(max-width:420px){body{font-size:13px}.card{padding:.6rem}.btn{padding:.45rem .85rem;font-size:.75rem;min-height:36px}.page-header h1{font-size:1.05rem}.page-header{gap:.4rem;margin-bottom:.6rem}.badge{font-size:.62rem;padding:.12rem .35rem}.stat-card .stat-value{font-size:1.3rem}.page-header>.btn{min-height:36px}.filter-bar,.toolbar{padding:.5rem!important;gap:.35rem!important}.ora-table{font-size:.7rem}.ora-table th{font-size:.6rem}.ora-table td,.ora-table th{padding:.35rem}.modal{padding:.8rem .7rem 1rem}.modal-header{margin-bottom:.6rem;padding-bottom:.5rem}.modal-header h2{font-size:1rem}}@media print{.app-loader-bar,.mobile-bottom-nav,.sidebar,.sidebar-overlay,.toast,.toast-container,.top-bar{display:none!important}.app-shell,.main-area{display:block!important;grid-template-columns:none!important;margin:0!important;padding:0!important;width:100%!important;max-width:100%!important}body{background:#fff!important}}.toast-stack[data-v-8f5c0574]{position:fixed;top:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:10000;max-width:360px}.toast[data-v-8f5c0574]{padding:10px 14px;border-radius:8px;font-size:.88rem;color:#fff;cursor:pointer;box-shadow:0 6px 20px #0000002e;line-height:1.4}.toast--success[data-v-8f5c0574]{background:#1e6e3e}.toast--error[data-v-8f5c0574]{background:#b91c1c}.toast--info[data-v-8f5c0574]{background:#2c2931}
