
/*
 * Oracle Minerals — Akaunting Theme Integration
 *
 * Uses the compiled Tailwind theme from the user's Akaunting 3.1.15 package,
 * with a thin compatibility layer for the existing Oracle portal Blade views.
 *
 * Akaunting palette:
 *   Purple #55588b
 *   Lilac  #F2F4FC / #DCE2F9
 *   Green  #6ea152
 *   Body   #fcfcfc
 */

:root{
    /* Oracle Minerals adaptation of the Akaunting UI system */
    --oa-purple:#5f6368;
    --oa-purple-dark:#45494d;
    --oa-purple-deep:#303336;

    --oa-lilac:#f3f4f5;
    --oa-lilac-deep:#e2e4e6;

    --oa-green:#e7832f;
    --oa-green-dark:#c86b20;

    --oa-orange:#e7832f;
    --oa-orange-soft:#fff4ea;

    --oa-body:#f7f7f7;
    --oa-card:#ffffff;

    --oa-text:#35383b;
    --oa-muted:#777d82;
    --oa-soft-text:#9aa0a5;

    --oa-border:#e2e3e5;
    --oa-border-dark:#d1d3d5;

    --oa-danger:#b54848;
    --oa-success:#557a63;
    --oa-warning:#a7762a;

    --oa-shadow:0 1px 2px rgba(25,30,35,.03),0 8px 22px rgba(25,30,35,.035);
}

html,body{margin:0;min-height:100%}
.oa-body{
    margin:0;
    min-height:100vh;
    background:var(--oa-body);
    color:var(--oa-text);
    font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:14px;
}
.oa-body *{box-sizing:border-box}
.oa-body a{text-decoration:none}
.oa-app{min-height:100vh}

/* Sidebar follows Akaunting's narrow purple rail + lilac menu */
.oa-sidebar{
    position:fixed;
    inset:0 auto 0 0;
    z-index:70;
    width:280px;
    display:grid;
    grid-template-columns:56px 224px;
    transition:transform .22s ease;
}
.oa-rail{
    background:var(--oa-lilac-deep);
    padding:24px 6px 16px;
    display:flex;
    flex-direction:column;
    align-items:center;
}
.oa-rail-logo{
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:8px;
    background:var(--oa-purple);
    color:#fff;
    font-size:11px;
    font-weight:800;
    margin-bottom:24px;
}
.oa-rail-button{
    width:34px;height:34px;
    display:grid;place-items:center;
    border:0;
    background:transparent;
    border-radius:8px;
    color:var(--oa-purple);
    cursor:pointer;
    margin-bottom:8px;
    font-size:18px;
}
.oa-rail-button:hover,.oa-rail-button.active{
    background:#fff;
    color:var(--oa-purple-dark);
}
.oa-rail-spacer{flex:1}
.oa-rail-avatar{
    width:32px;height:32px;
    border-radius:50%;
    background:var(--oa-purple);
    color:white;
    display:grid;place-items:center;
    font-size:11px;font-weight:800;
}

.oa-menu{
    min-width:0;
    background:var(--oa-lilac);
    padding:24px 18px;
    overflow-y:auto;
    display:flex;
    flex-direction:column;
}
.oa-company{
    display:flex;
    align-items:center;
    gap:10px;
    padding-bottom:22px;
    margin-bottom:8px;
}
.oa-company img{
    width:34px;height:34px;
    object-fit:contain;
}
.oa-company strong,.oa-company small{display:block}
.oa-company strong{font-size:13px;color:var(--oa-text)}
.oa-company small{font-size:10px;color:var(--oa-muted);margin-top:2px}
.oa-menu-heading{
    color:#9a9aaf;
    font-size:9px;
    font-weight:800;
    letter-spacing:.09em;
    padding:15px 10px 5px;
}
.oa-menu>a{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:38px;
    padding:8px 10px;
    margin:2px 0;
    color:var(--oa-purple);
    border-radius:8px;
    font-size:12px;
    font-weight:600;
}
.oa-menu>a>span{
    width:20px;
    text-align:center;
    color:var(--oa-purple);
    font-size:15px;
}
.oa-menu>a:hover{
    background:#fff;
}
.oa-menu>a.active{
    background:var(--oa-purple);
    color:#fff;
}
.oa-menu>a.active>span{color:#fff}
.oa-menu-footer{
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid #dddfee;
}
.oa-profile{display:flex;gap:9px;align-items:center}
.oa-profile-avatar,.oa-top-avatar{
    width:32px;height:32px;
    border-radius:50%;
    display:grid;place-items:center;
    background:var(--oa-purple);
    color:#fff;
    font-size:11px;font-weight:800;
}
.oa-profile strong,.oa-profile small{display:block}
.oa-profile strong{font-size:11px}
.oa-profile small{font-size:9px;color:var(--oa-muted);margin-top:2px}
.oa-menu-footer form button{
    margin-top:10px;
    border:0;
    padding:0;
    background:none;
    color:var(--oa-purple);
    font-size:10px;
    cursor:pointer;
}

.oa-workspace{
    min-height:100vh;
    margin-left:280px;
    display:flex;
    flex-direction:column;
    transition:margin-left .22s ease;
}
.oa-topbar{
    min-height:62px;
    background:#fff;
    border-bottom:1px solid var(--oa-border);
    display:flex;
    align-items:center;
    padding:0 26px;
    position:sticky;
    top:0;
    z-index:40;
}
.oa-breadcrumb{font-size:12px;color:var(--oa-muted)}
.oa-topbar-right{margin-left:auto;display:flex;align-items:center;gap:14px}
.oa-secure{font-size:10px;color:var(--oa-muted)}
.oa-secure i{
    display:inline-block;width:7px;height:7px;border-radius:50%;
    background:var(--oa-green);margin-right:5px;
}
.oa-mobile-menu{
    display:none;
    border:0;background:transparent;
    font-size:20px;color:var(--oa-purple);
    margin-right:10px;cursor:pointer;
}
.oa-main{
    flex:1;
    width:100%;
    max-width:1480px;
    margin:0 auto;
    padding:26px 32px 42px;
}
.oa-footer{
    display:flex;
    justify-content:space-between;
    padding:18px 32px;
    border-top:1px solid var(--oa-border);
    color:#aaa;
    font-size:9px;
    background:#fff;
}
.oa-toast{
    position:fixed;right:22px;top:76px;z-index:100;
    padding:10px 13px;border-radius:8px;
    background:var(--oa-green);color:#fff;font-size:11px;
}

/* Existing working Blade view compatibility ------------------------- */
.oa-main .page{max-width:none;margin:0}
.oa-main .page-header{
    display:flex;align-items:flex-end;justify-content:space-between;
    gap:20px;margin:0 0 24px;
}
.oa-main .page-header h1{
    margin:0 0 6px;
    font-size:36px;
    line-height:1.1;
    font-weight:300;
    color:#111;
}
.oa-main .page-header p{margin:0;color:var(--oa-muted);font-size:12px}
.oa-main .page-actions{display:flex;gap:8px}

.oa-main .btn{
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:8px;padding:9px 14px;
    font-size:11px;font-weight:700;
    border:1px solid transparent;cursor:pointer;
}
.oa-main .btn.primary{
    background:var(--oa-green);color:#fff;
}
.oa-main .btn.primary:hover{background:var(--oa-green-dark)}
.oa-main .btn.secondary,.oa-main .btn.ghost{
    background:#fff;color:var(--oa-purple);
    border-color:#dddfee;
}
.oa-main .btn.compact{padding:7px 9px}

.oa-main .kpi-grid,.oa-main .summary-grid,.oa-main .metric-grid{
    display:grid;grid-template-columns:repeat(4,1fr);
    gap:14px;margin-bottom:18px;
}
.oa-main .kpi-card,.oa-main .summary-card,.oa-main .kpi{
    background:#fff;border:1px solid var(--oa-border);
    border-radius:12px;padding:18px;
    box-shadow:0 1px 2px rgba(0,0,0,.02);
}
.oa-main .kpi-card{
    display:flex;align-items:center;gap:13px;
}
.oa-main .kpi-icon{
    width:38px;height:38px;border-radius:9px;
    background:var(--oa-lilac);color:var(--oa-purple);
    display:grid;place-items:center;font-size:17px;
}
.oa-main .kpi-card span,.oa-main .summary-card span,.oa-main .kpi small{
    display:block;color:var(--oa-muted);font-size:10px;font-weight:600;
}
.oa-main .kpi-card strong,.oa-main .summary-card strong,.oa-main .kpi strong{
    display:block;color:#111;font-size:24px;font-weight:400;margin:4px 0 1px;
}
.oa-main .kpi-card small{font-size:9px;color:#aaa}

.oa-main .dashboard-grid{
    display:grid;grid-template-columns:repeat(12,1fr);gap:16px;
}
.oa-main .span-7{grid-column:span 7}
.oa-main .span-5{grid-column:span 5}
.oa-main .span-12{grid-column:span 12}
.oa-main .card,.oa-main .panel{
    background:#fff;border:1px solid var(--oa-border);
    border-radius:12px;overflow:visible;
    box-shadow:0 1px 2px rgba(0,0,0,.02);
}
.oa-main .card-header,.oa-main .paneltitle{
    display:flex;align-items:flex-start;justify-content:space-between;
    gap:15px;padding:17px 19px;border-bottom:1px solid var(--oa-border);
}
.oa-main .card-header h2,.oa-main .paneltitle h2{
    margin:0;font-size:14px;color:#111;font-weight:600;
}
.oa-main .card-header p,.oa-main .paneltitle span{
    margin:3px 0 0;font-size:10px;color:var(--oa-muted);
}
.oa-main .card-header a,.oa-main .paneltitle a{
    color:var(--oa-green);font-size:10px;font-weight:700;
}

.oa-main .activity-list,.oa-main .people-list{padding:4px 18px 12px}
.oa-main .activity-item,.oa-main .people-item{
    display:flex;align-items:center;gap:10px;
    padding:11px 0;border-bottom:1px solid #f1f1f1;
}
.oa-main .activity-item:last-child,.oa-main .people-item:last-child{border-bottom:0}
.oa-main .activity-dot{
    width:8px;height:8px;border-radius:50%;background:var(--oa-green)
}
.oa-main .activity-copy{flex:1}
.oa-main .activity-copy strong,.oa-main .activity-copy span{display:block}
.oa-main .activity-copy strong{font-size:11px;color:#111}
.oa-main .activity-copy span{font-size:9px;color:var(--oa-muted);margin-top:2px}
.oa-main .activity-item time{font-size:9px;color:#aaa}
.oa-main .people-item{justify-content:space-between}
.oa-main .person{display:flex;align-items:center;gap:9px}
.oa-main .avatar{
    width:34px;height:34px;border-radius:50%;
    display:grid;place-items:center;
    background:var(--oa-purple);color:#fff;
    font-size:11px;font-weight:800;
}
.oa-main .avatar.soft{background:var(--oa-lilac-deep);color:var(--oa-purple)}
.oa-main .person strong,.oa-main .person small{display:block}
.oa-main .person strong{font-size:11px;color:#111}
.oa-main .person small{font-size:9px;color:var(--oa-muted);margin-top:2px}

.oa-main .quick-grid{
    display:grid;grid-template-columns:repeat(4,1fr);
    gap:10px;padding:16px;
}
.oa-main .quick-grid a{
    border:1px solid var(--oa-border);border-radius:10px;
    padding:14px;color:var(--oa-purple);background:#fff;
}
.oa-main .quick-grid a:hover{background:var(--oa-lilac)}
.oa-main .quick-grid a>span{display:block;margin-bottom:7px}
.oa-main .quick-grid strong,.oa-main .quick-grid small{display:block}
.oa-main .quick-grid strong{font-size:11px;color:#111}
.oa-main .quick-grid small{font-size:9px;color:var(--oa-muted);margin-top:4px;line-height:1.4}

/* Investor management */
.oa-main .tabs{
    display:flex;padding:0 16px;border-bottom:1px solid var(--oa-border)
}
.oa-main .tab{
    border:0;background:none;padding:14px 9px;margin-right:12px;
    color:var(--oa-muted);font-size:11px;font-weight:700;
    border-bottom:2px solid transparent;cursor:pointer;
}
.oa-main .tab i{
    font-style:normal;background:var(--oa-lilac);
    border-radius:999px;padding:2px 5px;font-size:8px;
}
.oa-main .tab.active{color:var(--oa-purple);border-bottom-color:var(--oa-purple)}
.oa-main .tab-panel{display:none}
.oa-main .tab-panel.active{display:block}
.oa-main .table-toolbar{
    display:flex;align-items:center;justify-content:space-between;
    padding:16px 18px;
}
.oa-main .table-toolbar h2{margin:0;font-size:14px;color:#111}
.oa-main .table-toolbar p{margin:3px 0 0;font-size:9px;color:var(--oa-muted)}
.oa-main .search{
    width:230px;padding:9px 11px;border:1px solid #dfe1ea;
    border-radius:8px;background:#fff;font-size:10px;
}
.oa-main .table-wrap{overflow-x:auto}
.oa-main .data-table{width:100%;border-collapse:collapse}
.oa-main .data-table th{
    background:#fafafa;text-align:left;padding:10px 12px;
    color:#8b8b99;font-size:8px;letter-spacing:.07em;
    text-transform:uppercase;border-top:1px solid var(--oa-border);
    border-bottom:1px solid var(--oa-border);
}
.oa-main .data-table td{
    padding:12px;border-bottom:1px solid #f1f1f1;
    font-size:10px;vertical-align:middle;
}
.oa-main .data-table tbody tr:hover{background:#fcfcff}
.oa-main .badge{
    display:inline-flex;border-radius:999px;padding:4px 7px;
    font-size:8px;font-weight:800;letter-spacing:.04em;
}
.oa-main .badge.tier{background:var(--oa-lilac);color:var(--oa-purple)}
.oa-main .badge.good{background:#f1f6ee;color:var(--oa-green-dark)}
.oa-main .badge.bad{background:#fae6e6;color:#990000}
.oa-main .badge.warn{background:#fef5e7;color:#935f07}
.oa-main .badge.neutral{background:#f2f2f5;color:#777}
.oa-main .verify-stack{display:flex;gap:5px}
.oa-main .verify-stack span{font-size:8px;font-weight:700}
.oa-main .verify-stack .ok{color:var(--oa-green-dark)}
.oa-main .muted{color:var(--oa-muted)}
.oa-main .actions-cell{position:relative;text-align:right}
.oa-main .dots{border:0;background:none;color:var(--oa-purple);cursor:pointer;letter-spacing:2px}
.oa-main .action-menu{
    display:none;position:absolute;right:12px;top:38px;
    min-width:160px;background:#fff;border:1px solid var(--oa-border);
    border-radius:8px;box-shadow:0 12px 28px rgba(0,0,0,.12);
    z-index:90;overflow:hidden;
}
.oa-main .action-menu.open{display:block}
.oa-main .action-menu button{
    width:100%;display:block;text-align:left;
    border:0;background:#fff;padding:9px 11px;
    color:var(--oa-text);font-size:10px;cursor:pointer;
}
.oa-main .action-menu button:hover{background:var(--oa-lilac)}
.oa-main .danger-text{color:#990000!important}

/* Modal hooks remain identical to the working views */
.oa-main .modal-backdrop,.modal-backdrop{
    position:fixed;inset:0;background:rgba(0,0,0,.3);
    display:none;place-items:center;padding:20px;z-index:120;
}
.modal-backdrop.open{display:grid}
.modal{
    width:min(620px,100%);background:#fff;border-radius:12px;
    box-shadow:0 24px 65px rgba(0,0,0,.22);
}
.modal.small{width:min(460px,100%)}
.modal-header{
    display:flex;justify-content:space-between;align-items:flex-start;
    padding:20px;border-bottom:1px solid var(--oa-border);
}
.modal-header h2{margin:0;font-size:17px;color:#111}
.modal-header p{margin:4px 0 0;font-size:10px;color:var(--oa-muted)}
.modal-close{border:0;background:none;font-size:23px;color:#888;cursor:pointer}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:20px}
.form-grid.one{grid-template-columns:1fr}
.form-grid .full{grid-column:1/-1}
.form-grid label span{display:block;font-size:9px;font-weight:700;margin-bottom:5px}
.form-grid input,.form-grid select{
    width:100%;padding:10px;border:1px solid #dfe1ea;
    border-radius:8px;background:#fff;font-size:11px;
}
.modal-actions{display:flex;justify-content:flex-end;gap:8px}

/* Existing investor dashboard classes */
.oa-main .portalhead{
    display:flex;justify-content:space-between;align-items:flex-end;
    gap:20px;margin-bottom:22px;
}
.oa-main .portalhead .eyebrow{color:var(--oa-green);font-size:9px;font-weight:800;letter-spacing:.09em}
.oa-main .portalhead h1{font-size:36px;font-weight:300;color:#111;margin:5px 0}
.oa-main .portalhead p{margin:0;color:var(--oa-muted);font-size:12px}
.oa-main .dashboard{display:grid;gap:18px}
.oa-main .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.oa-main .progress{height:7px;background:#eee;margin:18px;border-radius:99px;overflow:hidden}
.oa-main .progress span{display:block;height:100%;background:var(--oa-green)}
.oa-main .timeline.compact{padding:0 18px 14px}
.oa-main .milestone{
    display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #eee
}
.oa-main .milestone i{width:8px;height:8px;border-radius:50%;background:#bbb}
.oa-main .milestone.complete i{background:var(--oa-green)}
.oa-main .milestone.active i{background:var(--oa-orange)}
.oa-main .milestone b,.oa-main .milestone span{display:block}
.oa-main .milestone b{font-size:10px;color:#111}
.oa-main .milestone span{font-size:8px;color:var(--oa-muted);margin-top:2px}
.oa-main .finrows{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--oa-border)}
.oa-main .finrows>div{padding:14px;border-right:1px solid var(--oa-border);border-bottom:1px solid var(--oa-border)}
.oa-main .finrows span,.oa-main .finrows b{display:block}
.oa-main .finrows span{font-size:9px;color:var(--oa-muted)}
.oa-main .finrows b{font-size:12px;color:#111;margin-top:4px}
.oa-main .doclist{padding:4px 18px 12px}
.oa-main .doclist>a{
    display:grid;grid-template-columns:42px 1fr auto;
    gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #eee;
    color:var(--oa-text);
}
.oa-main .docicon{
    width:36px;height:36px;border-radius:8px;background:var(--oa-lilac);
    color:var(--oa-purple);display:grid;place-items:center;font-size:8px;font-weight:800;
}
.oa-main .doclist b,.oa-main .doclist small{display:block}
.oa-main .doclist b{font-size:10px;color:#111}
.oa-main .doclist small{font-size:9px;color:var(--oa-muted)}
.oa-main .doclist em{font-size:9px;color:var(--oa-green);font-style:normal}
.oa-main .update{padding:13px 18px;border-bottom:1px solid #eee}
.oa-main .update small,.oa-main .update b{display:block}
.oa-main .update small{font-size:8px;color:var(--oa-green)}
.oa-main .update b{font-size:11px;color:#111;margin-top:3px}
.oa-main .update p{font-size:9px;color:var(--oa-muted);margin:4px 0 0}
.oa-main .notice{
    padding:12px 14px;background:var(--oa-lilac);
    border:1px solid #dddfee;border-radius:9px;
    color:var(--oa-purple);font-size:10px;
}
.oa-main .empty,.oa-main .empty-state{text-align:center;padding:28px;color:var(--oa-muted)}
.oa-main .empty b,.oa-main .empty-state strong{display:block;color:#111;margin-bottom:4px}

.alert{
    border-radius:9px;padding:11px 13px;margin-bottom:16px;font-size:10px;
}
.alert.danger{background:#fae6e6;color:#990000}
.alert.info{
    background:var(--oa-lilac);color:var(--oa-purple);
    display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.copy-row{display:flex;gap:6px;min-width:360px}
.copy-row input{flex:1;padding:8px;border:1px solid #dddfee;border-radius:7px}

@media(max-width:1100px){
    .oa-sidebar{width:240px;grid-template-columns:52px 188px}
    .oa-workspace{margin-left:240px}
    .oa-main .kpi-grid,.oa-main .summary-grid,.oa-main .metric-grid{grid-template-columns:1fr 1fr}
    .oa-main .span-7,.oa-main .span-5{grid-column:span 12}
    .oa-main .quick-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:780px){
    .oa-sidebar{transform:translateX(-100%);width:280px;grid-template-columns:56px 224px}
    .oa-sidebar.open{transform:translateX(0)}
    .oa-workspace{margin-left:0}
    .oa-mobile-menu{display:block}
    .oa-main{padding:20px 14px 34px}
    .oa-main .page-header,.oa-main .portalhead{align-items:flex-start;flex-direction:column}
    .oa-main .kpi-grid,.oa-main .summary-grid,.oa-main .metric-grid{grid-template-columns:1fr}
    .oa-main .grid2{grid-template-columns:1fr}
    .oa-main .quick-grid{grid-template-columns:1fr}
    .oa-main .table-toolbar{align-items:flex-start;flex-direction:column;gap:10px}
    .oa-main .search{width:100%}
    .form-grid{grid-template-columns:1fr}
    .form-grid .full{grid-column:auto}
    .alert.info{align-items:flex-start;flex-direction:column}
    .copy-row{min-width:0;width:100%}
}


/* ============================================================
   ORACLE MINERALS — COMPLETE AKAUNTING UI OVERRIDE
   Gray application chrome + Oracle orange interaction language
   ============================================================ */

/* Base application surfaces */
.oa-body {
    background: var(--oa-body);
    color: var(--oa-text);
}
.oa-rail {
    background: #dedfe1;
    border-right: 1px solid #d5d7d9;
}
.oa-menu {
    background: #f1f2f3;
    border-right: 1px solid var(--oa-border);
}
.oa-company {
    border-bottom: 1px solid var(--oa-border);
}
.oa-company strong {
    color: #303336;
}
.oa-company small {
    color: #858a8e;
}
.oa-menu-heading {
    color: #969a9e;
}
.oa-menu > a {
    color: #5f6368;
}
.oa-menu > a > span {
    color: #74797e;
}
.oa-menu > a:hover {
    background: #ffffff;
    color: #35383b;
}
.oa-menu > a.active {
    background: #ffffff;
    color: #35383b;
    box-shadow: inset 3px 0 0 var(--oa-orange);
}
.oa-menu > a.active > span {
    color: var(--oa-orange);
}

.oa-rail-logo,
.oa-rail-avatar,
.oa-profile-avatar,
.oa-top-avatar {
    background: #555a5e;
}
.oa-rail-logo {
    box-shadow: inset 0 -3px 0 var(--oa-orange);
}
.oa-rail-button {
    color: #666b70;
}
.oa-rail-button:hover,
.oa-rail-button.active {
    color: var(--oa-orange);
    background: #ffffff;
}

.oa-topbar {
    background: #ffffff;
    border-bottom-color: var(--oa-border);
}
.oa-breadcrumb {
    color: #6f7479;
}
.oa-secure i {
    background: var(--oa-orange);
}
.oa-footer {
    background: #ffffff;
}

/* Page headings */
.oa-main .page-header h1,
.oa-main .portalhead h1 {
    color: #303336;
}
.oa-main .portalhead .eyebrow {
    color: var(--oa-orange);
}

/* Cards and panels */
.oa-main .card,
.oa-main .panel,
.oa-main .kpi-card,
.oa-main .summary-card,
.oa-main .kpi {
    background: var(--oa-card);
    border-color: var(--oa-border);
    box-shadow: var(--oa-shadow);
}
.oa-main .card-header,
.oa-main .paneltitle {
    border-bottom-color: var(--oa-border);
}
.oa-main .card-header a,
.oa-main .paneltitle a {
    color: var(--oa-orange);
}

/* KPI treatment */
.oa-main .kpi-card:before,
.oa-main .summary-card:before,
.oa-main .kpi:before {
    content: "";
    display: block;
    width: 28px;
    height: 3px;
    margin-bottom: 10px;
    background: var(--oa-orange);
}
.oa-main .kpi-card {
    align-items: flex-start;
}
.oa-main .kpi-icon {
    background: #f0f1f2;
    color: var(--oa-orange);
}
.oa-main .kpi-card strong,
.oa-main .summary-card strong,
.oa-main .kpi strong {
    color: #303336;
}

/* Primary and secondary actions */
.oa-main .btn,
.modal .btn,
.oa-body button.btn {
    border-radius: 7px;
    transition: background .15s ease,border-color .15s ease,color .15s ease;
}
.oa-main .btn.primary,
.modal .btn.primary,
.oa-body button.btn.primary {
    background: var(--oa-orange);
    border-color: var(--oa-orange);
    color: #fff;
}
.oa-main .btn.primary:hover,
.modal .btn.primary:hover,
.oa-body button.btn.primary:hover {
    background: var(--oa-green-dark);
    border-color: var(--oa-green-dark);
}
.oa-main .btn.secondary,
.oa-main .btn.ghost,
.modal .btn.secondary {
    background: #fff;
    color: #555a5e;
    border-color: var(--oa-border-dark);
}
.oa-main .btn.secondary:hover,
.oa-main .btn.ghost:hover,
.modal .btn.secondary:hover {
    color: var(--oa-orange);
    border-color: var(--oa-orange);
}

/* Comprehensive form system — applies to content management and
   any future portal forms without rewriting the Blade templates */
.oa-main form label,
.modal form label {
    color: #4f5458;
}
.oa-main label > span,
.oa-main .form-label,
.modal label > span {
    display: block;
    margin-bottom: 6px;
    color: #5f6468;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .025em;
}

.oa-main input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.oa-main select,
.oa-main textarea,
.modal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.modal select,
.modal textarea {
    width: 100%;
    min-height: 40px;
    padding: 9px 11px;
    border: 1px solid var(--oa-border-dark);
    border-radius: 8px;
    outline: 0;
    background: #fff;
    color: var(--oa-text);
    font-size: 12px;
    box-shadow: none;
    transition: border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.oa-main textarea,
.modal textarea {
    min-height: 100px;
    resize: vertical;
}
.oa-main input:focus,
.oa-main select:focus,
.oa-main textarea:focus,
.modal input:focus,
.modal select:focus,
.modal textarea:focus {
    border-color: var(--oa-orange);
    box-shadow: 0 0 0 3px rgba(231,131,47,.12);
}
.oa-main input:disabled,
.oa-main select:disabled,
.oa-main textarea:disabled {
    background: #f3f4f4;
    color: #9a9ea2;
}
.oa-main input::placeholder,
.oa-main textarea::placeholder {
    color: #a8acaf;
}
.oa-main input[type="checkbox"],
.oa-main input[type="radio"],
.modal input[type="checkbox"],
.modal input[type="radio"] {
    accent-color: var(--oa-orange);
}

/* Common legacy form wrappers */
.oa-main .adminform,
.oa-main .form-grid,
.oa-main .form-stack,
.oa-main .stack,
.oa-main form.grid,
.oa-main .content-form {
    gap: 14px;
}
.oa-main .adminform label,
.oa-main .content-form label {
    display: block;
    margin-bottom: 14px;
}

/* Akaunting-style helper blocks */
.oa-main .form-help,
.oa-main .help-text,
.oa-main small.help,
.modal .form-help {
    display: block;
    margin-top: 5px;
    color: #92979b;
    font-size: 9px;
}

/* Tables */
.oa-main .data-table th,
.oa-main table th {
    background: #f5f6f6;
    color: #747a7e;
}
.oa-main .data-table tbody tr:hover,
.oa-main table tbody tr:hover {
    background: #fbfbfb;
}
.oa-main .data-table td,
.oa-main table td {
    border-bottom-color: #eeeeef;
}

/* Tabs */
.oa-main .tab {
    color: #777c80;
}
.oa-main .tab.active {
    color: #35383b;
    border-bottom-color: var(--oa-orange);
}
.oa-main .tab i {
    background: #eceeef;
}

/* Search bars */
.oa-main .search {
    background: #fff;
    border-color: var(--oa-border-dark);
}
.oa-main .search:focus {
    border-color: var(--oa-orange);
    box-shadow: 0 0 0 3px rgba(231,131,47,.10);
    outline: none;
}

/* Status badges — keep semantic states restrained */
.oa-main .badge.tier {
    background: #eceeef;
    color: #555a5e;
}
.oa-main .badge.good {
    background: #edf4ef;
    color: var(--oa-success);
}
.oa-main .badge.bad {
    background: #f9eaea;
    color: var(--oa-danger);
}
.oa-main .badge.warn {
    background: #fbf2e3;
    color: var(--oa-warning);
}
.oa-main .badge.neutral {
    background: #eeeeef;
    color: #707579;
}

/* Menus and dropdowns */
.oa-main .action-menu {
    border-color: var(--oa-border);
    box-shadow: 0 14px 30px rgba(32,36,40,.13);
}
.oa-main .action-menu button:hover {
    background: #f5f5f5;
    color: var(--oa-orange);
}

/* Modal treatment */
.modal-backdrop {
    background: rgba(30,33,36,.46);
}
.modal {
    border: 1px solid var(--oa-border);
    box-shadow: 0 25px 70px rgba(25,29,32,.22);
}
.modal-header {
    background: #fafafa;
}
.modal-header h2 {
    color: #303336;
}
.modal-close:hover {
    color: var(--oa-orange);
}

/* Alerts */
.alert.info,
.oa-main .notice {
    background: #f3f4f4;
    border-color: var(--oa-border);
    color: #5d6266;
}
.alert.success {
    background: #edf4ef;
    color: var(--oa-success);
}
.alert.danger {
    background: #f9eaea;
    color: var(--oa-danger);
}
.oa-toast {
    background: #4e5357;
    border-left: 4px solid var(--oa-orange);
}

/* Timeline/progress/dashboard highlights */
.oa-main .progress span,
.oa-main .milestone.active i,
.oa-main .activity-dot {
    background: var(--oa-orange);
}
.oa-main .milestone.complete i {
    background: var(--oa-success);
}
.oa-main .docicon {
    background: #f0f1f2;
    color: var(--oa-orange);
}
.oa-main .doclist em,
.oa-main .update small {
    color: var(--oa-orange);
}

/* Financial / content rows */
.oa-main .finrows > div {
    background: #fff;
}
.oa-main .finrows > div:nth-child(even) {
    background: #fafafa;
}

/* Content management generic sections */
.oa-main .content-section,
.oa-main .settings-section,
.oa-main .admin-section {
    margin-bottom: 18px;
    border: 1px solid var(--oa-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: var(--oa-shadow);
}
.oa-main .content-section > header,
.oa-main .settings-section > header,
.oa-main .admin-section > header {
    padding: 16px 18px;
    border-bottom: 1px solid var(--oa-border);
}
.oa-main .content-section > .body,
.oa-main .settings-section > .body,
.oa-main .admin-section > .body {
    padding: 18px;
}

/* File upload */
.oa-main input[type="file"] {
    padding: 7px;
    background: #fafafa;
}
.oa-main input[type="file"]::file-selector-button {
    margin-right: 10px;
    padding: 7px 11px;
    border: 1px solid var(--oa-border-dark);
    border-radius: 6px;
    background: #fff;
    color: #555a5e;
    cursor: pointer;
}
.oa-main input[type="file"]::file-selector-button:hover {
    color: var(--oa-orange);
    border-color: var(--oa-orange);
}

/* Links */
.oa-main a:not(.btn):not(.quick-grid a):not(.doclist a) {
    transition: color .15s ease;
}
.oa-main .card-header a,
.oa-main .paneltitle a,
.oa-main .doclist em {
    color: var(--oa-orange);
}

/* Remove remnants of Akaunting purple/lilac from the compiled
   stylesheet when its utility classes appear inside portal content */
.oa-body .bg-purple,
.oa-body .bg-purple-100,
.oa-body .bg-purple-200,
.oa-body .bg-lilac {
    background-color: #eeeeef !important;
}
.oa-body .text-purple,
.oa-body .text-purple-500,
.oa-body .text-purple-600 {
    color: #555a5e !important;
}
.oa-body .border-purple,
.oa-body .border-purple-500 {
    border-color: var(--oa-orange) !important;
}
.oa-body .hover\:text-purple:hover,
.oa-body .hover\:text-purple-500:hover {
    color: var(--oa-orange) !important;
}

/* Primary action utility replacements */
.oa-body .bg-green,
.oa-body .bg-green-500,
.oa-body .bg-green-600 {
    background-color: var(--oa-orange) !important;
}
.oa-body .hover\:bg-green-600:hover,
.oa-body .hover\:bg-green-700:hover {
    background-color: var(--oa-green-dark) !important;
}

/* Responsive */
@media(max-width:780px){
    .oa-topbar-right .oa-secure {
        display:none;
    }
}
