/* MOIYENA premium functional polish */
:root{
  --focus-ring:0 0 0 3px rgba(91,113,88,.16);
  --soft-shadow:0 14px 38px rgba(20,32,24,.055);
  --card-shadow:0 18px 46px rgba(20,32,24,.07);
  --surface:#fffdf9;
  --surface-soft:#f8f4ed;
  --forest-deep:#0f1912;
  --forest-mid:#18271d;
  --sage-soft:#edf2ea;
  --danger-soft:#f8ebe7;
  --amber-soft:#f5efe2;
}
html{scroll-behavior:smooth}
body{background:
  radial-gradient(circle at 88% 4%,rgba(116,139,111,.08),transparent 26%),
  radial-gradient(circle at 8% 92%,rgba(199,185,159,.12),transparent 24%),
  #f4f0e8;
}
button,select,input,textarea{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease,transform .16s ease}
button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:none;box-shadow:var(--focus-ring)!important}
button:not(:disabled):active{transform:translateY(1px)}

/* navigation */
.sidebar{background:linear-gradient(180deg,#0d1710 0%,#111d15 58%,#0d1710 100%);box-shadow:10px 0 34px rgba(10,18,12,.08)}
.side-nav{gap:5px}
.nav-item{position:relative;overflow:hidden;transition:background .16s ease,color .16s ease,transform .16s ease;border:1px solid transparent}
.nav-item:hover{transform:translateX(2px);background:#19291e;color:#f4f7f2;border-color:#22362a}
.nav-item.active{background:linear-gradient(90deg,#1a2d20,#1c3023);color:#fff;border-color:#29402f;box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 8px 20px rgba(0,0,0,.08)}
.nav-item.active:before{content:"";position:absolute;left:4px;top:9px;bottom:9px;width:3px;border-radius:5px;background:#aec0aa;box-shadow:0 0 14px rgba(174,192,170,.35)}
.nav-icon{background:rgba(255,255,255,.018)}
.nav-item.active .nav-icon{border-color:#536a59;background:#21362a;color:#e9f0e7}
.side-bottom{border-color:#26372b}

/* topbar */
.topbar{background:rgba(252,250,246,.91);box-shadow:0 1px 0 rgba(20,32,24,.025),0 10px 30px rgba(20,32,24,.025);backdrop-filter:blur(18px) saturate(120%)}
.topbar strong{letter-spacing:-.015em}
.user-chip{display:flex;align-items:center;gap:10px;padding:5px 8px 5px 5px;border:1px solid rgba(217,211,201,.85);border-radius:999px;background:rgba(255,253,249,.7)}
.user-chip>span{box-shadow:0 5px 14px rgba(20,32,24,.16)}
.moiyena-theme-toggle,.moiyena-density-toggle{min-height:34px;border:1px solid #d7d1c7;border-radius:999px;background:#fffdfa;color:#536053;padding:7px 12px;font-size:8.5px;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 5px 14px rgba(20,32,24,.04)}
.moiyena-theme-toggle{display:inline-flex;align-items:center;gap:6px}
.moiyena-theme-toggle>span:first-child{font-size:13px;line-height:1}
.moiyena-theme-toggle:hover,.moiyena-density-toggle:hover{background:#f2eee6;border-color:#c8c0b5}

/* section hierarchy */
.workspace-body{position:relative}
.section-title-row{margin-bottom:28px}
.section-title-row .eyebrow{color:#72836f;letter-spacing:.2em}
.section-title-row h1{max-width:860px;font-size:36px;letter-spacing:-.05em;text-wrap:balance}
.section-title-row p{line-height:1.58;color:#70796f}
.status-pill{background:rgba(255,253,249,.86);box-shadow:0 6px 18px rgba(20,32,24,.035);font-weight:800}

/* cards */
.panel,.metric-card,.workspace-settings-card,.issue-workflow-card{border-color:#ded7cd;box-shadow:var(--soft-shadow);background:rgba(255,253,249,.9)}
.panel{backdrop-filter:blur(5px)}
.metric-grid{gap:14px}
.metric-card{position:relative;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;background:linear-gradient(155deg,#fffdf9 0%,#fbf8f2 100%)}
.metric-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#d4ddd0}
.metric-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-48px;top:-54px;background:rgba(105,117,101,.035)}
.metric-card.health{background:linear-gradient(155deg,#fffdf9 0%,#f0f5ed 100%)}
.metric-card.health:before{background:linear-gradient(90deg,#71866d,#a4b59f)}
.metric-card:nth-child(2){background:linear-gradient(155deg,#fffdf9 0%,#fbf2ef 100%)}
.metric-card:nth-child(2):before{background:linear-gradient(90deg,#b96a58,#d6a092)}
.metric-card:nth-child(3){background:linear-gradient(155deg,#fffdf9 0%,#faf5e9 100%)}
.metric-card:nth-child(3):before{background:linear-gradient(90deg,#a3834c,#ccb889)}
.metric-card:nth-child(4){background:linear-gradient(155deg,#fffdf9 0%,#f3f4ed 100%)}
.metric-card:nth-child(4):before{background:linear-gradient(90deg,#778175,#a8b0a3)}
.metric-card:hover{transform:translateY(-2px);border-color:#cbc3b7;box-shadow:var(--card-shadow)}
.metric-card>span{font-weight:700;letter-spacing:.02em;color:#788078}
.metric-card strong{font-weight:650}
.metric-card.health strong{color:#183020}
.metric-card p{color:#848c83}

/* work queue */
.work-queue,.work-queue-bar,#work-queue,.dashboard-work-queue{box-shadow:0 18px 40px rgba(15,27,18,.14)}
#section-overview .content-grid{gap:20px}
.panel-head{padding-bottom:17px}
.panel-head span,.report-placeholder span{color:#839082}
.panel-head h2,.report-placeholder h2{line-height:1.15;font-size:21px}
.text-button{border-radius:7px;padding:6px 8px}
.text-button:hover{background:#f0ece4;color:#344437}

/* rows and tables */
.table-row:not(.head),.issue-detail-row:not(.head),.audit-row{transition:background .14s ease,transform .14s ease}
.table-row:not(.head):hover,.issue-detail-row:not(.head):hover,.audit-row:hover{background:rgba(105,117,101,.045)}
.table-row.head,.issue-detail-row.head{position:sticky;top:0;z-index:2;background:rgba(255,253,249,.97);backdrop-filter:blur(10px)}
.analysis-history-row.selected{background:linear-gradient(90deg,#edf3ea,#f8f7f2)!important;box-shadow:inset 3px 0 0 #38513c!important}
.issue-row{transition:background .14s ease,padding .14s ease}
.issue-row:hover{background:rgba(105,117,101,.035);padding-left:8px;padding-right:8px;border-radius:8px}
.analysis-facts dd{letter-spacing:-.025em}

/* issue tools */
#issue-toolbar{position:sticky;top:88px;z-index:8;box-shadow:0 12px 28px rgba(20,32,24,.075);backdrop-filter:blur(12px);background:rgba(247,244,238,.94)}
.issue-collab-bar,.issue-utility-bar{box-shadow:0 6px 18px rgba(20,32,24,.03)}
.issue-collab-bar select,.issue-collab-bar button,.issue-utility-actions button,.bulk-issue-bar select,.bulk-issue-bar button,.team-action,.primary-small,.text-button{min-height:36px}
.issue-utility-actions button:hover,.team-action:hover{border-color:#c4bcb0}
.bulk-issue-bar{background:linear-gradient(135deg,#102017,#17291d)!important;box-shadow:0 14px 30px rgba(16,32,23,.14)!important}
.issue-status-select{box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}

/* badges, states, drawers */
.status-pill,.badge,.team-pill,.audit-pill{font-weight:800}
.badge.critical{box-shadow:inset 0 0 0 1px rgba(168,88,69,.08)}
.empty-state{border:1px dashed #d7d0c6;border-radius:12px;margin:8px 0;padding:25px 18px!important;background:linear-gradient(135deg,rgba(247,244,238,.7),rgba(255,253,249,.62))}
.issue-drawer{box-shadow:-34px 0 80px rgba(20,32,24,.18)}
.issue-drawer-head{background:linear-gradient(180deg,#fffdf9,#f6f2eb)}
.issue-drawer-head h3{letter-spacing:-.03em}
.issue-note{box-shadow:0 6px 18px rgba(20,32,24,.03);background:#fffdf9}
.issue-drawer-section select,.issue-note-form textarea{background:#fffefa}

/* forms */
input,select,textarea{border-color:#d5cec4!important}
input:hover,select:hover,textarea:hover{border-color:#c8c0b4!important}
input:focus,select:focus,textarea:focus{border-color:#82917e!important;box-shadow:var(--focus-ring)!important}
.primary-small,.workspace-settings-save,.issue-note-form button,.run-analysis{box-shadow:0 8px 18px rgba(20,32,24,.11)}
.primary-small:hover,.workspace-settings-save:hover,.issue-note-form button:hover,.run-analysis:hover{transform:translateY(-1px)}

/* density */
body.moiyena-compact .workspace-body{padding-top:24px;padding-bottom:24px}
body.moiyena-compact .section-title-row{margin-bottom:18px}
body.moiyena-compact .section-title-row h1{font-size:30px;margin-top:6px}
body.moiyena-compact .metric-card{min-height:118px;padding:16px}
body.moiyena-compact .metric-card strong{margin-top:20px;font-size:36px}
body.moiyena-compact .metric-card.health strong{font-size:48px}
body.moiyena-compact .panel{padding:17px}
body.moiyena-compact .panel-head{padding-bottom:13px}
body.moiyena-compact .issue-row,body.moiyena-compact .analysis-facts div,body.moiyena-compact .table-row,body.moiyena-compact .issue-detail-row,body.moiyena-compact .audit-row{padding-top:9px!important;padding-bottom:9px!important}
body.moiyena-compact .issue-workflow-card{padding:13px 15px}
body.moiyena-compact .issue-workflow-card strong{font-size:21px}
body.moiyena-compact .issue-toolbar,body.moiyena-compact .issue-collab-bar,body.moiyena-compact .bulk-issue-bar,body.moiyena-compact .issue-utility-bar{margin-bottom:9px;padding-top:7px;padding-bottom:7px}
.moiyena-scroll-top{position:fixed;right:24px;bottom:24px;z-index:80;width:42px;height:42px;border:1px solid #d2cbc0;border-radius:14px;background:#fcfaf6;color:#263126;box-shadow:0 12px 32px rgba(20,32,24,.16);font-size:17px;font-weight:800;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,background .18s ease}
.moiyena-scroll-top:hover{background:#eef2eb}
.moiyena-scroll-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}

/* dark mode */
html.moiyena-dark,body.moiyena-dark{background:#0b110d;color:#dce5dd}
body.moiyena-dark{
  --forest:#e7eee8;
  --forest2:#cbd8cd;
  --cream:#0d1410;
  --paper:#121a14;
  --stone:#1a241d;
  --sand:#8d826d;
  --sage:#91a392;
  --olive:#9cad9c;
  --line:#2c3930;
  --ink:#e4ebe5;
  --muted:#96a198;
  --danger:#e18c79;
  --warn:#d2ad69;
  --ok:#91b08d;
  --focus-ring:0 0 0 3px rgba(147,171,145,.2);
  --soft-shadow:0 16px 42px rgba(0,0,0,.22);
  --card-shadow:0 20px 52px rgba(0,0,0,.3);
  background:
    radial-gradient(circle at 88% 4%,rgba(75,104,79,.13),transparent 28%),
    radial-gradient(circle at 8% 92%,rgba(114,101,78,.09),transparent 25%),
    #0b110d;
}
body.moiyena-dark .dashboard-view{background:#0b110d}
body.moiyena-dark .workspace{background:transparent}
body.moiyena-dark .topbar{background:rgba(14,21,16,.9);border-color:#26332a;box-shadow:0 1px 0 rgba(255,255,255,.025),0 12px 30px rgba(0,0,0,.12)}
body.moiyena-dark .topbar-label,body.moiyena-dark .user-chip small{color:#87958a}
body.moiyena-dark .topbar strong,body.moiyena-dark .user-chip b{color:#e7eee8}
body.moiyena-dark .user-chip{border-color:#2c3a31;background:rgba(21,31,24,.78)}
body.moiyena-dark .user-chip>span{background:#dbe6dc;color:#122016;box-shadow:0 5px 16px rgba(0,0,0,.28)}
body.moiyena-dark .moiyena-theme-toggle,body.moiyena-dark .moiyena-density-toggle{background:#18221b;color:#cbd8cd;border-color:#334139;box-shadow:0 5px 16px rgba(0,0,0,.16)}
body.moiyena-dark .moiyena-theme-toggle:hover,body.moiyena-dark .moiyena-density-toggle:hover{background:#202d24;border-color:#435248}
body.moiyena-dark .section-title-row .eyebrow,body.moiyena-dark .eyebrow{color:#91a590}
body.moiyena-dark .section-title-row h1,body.moiyena-dark .panel-head h2,body.moiyena-dark .report-placeholder h2,body.moiyena-dark .analysis-facts dd{color:#edf3ee}
body.moiyena-dark .section-title-row p,body.moiyena-dark .metric-card p,body.moiyena-dark .workspace-settings-card>p,body.moiyena-dark .report-placeholder p{color:#98a49a}
body.moiyena-dark .status-pill{background:#172019;border-color:#344139;color:#bbc8bd;box-shadow:none}
body.moiyena-dark .panel,body.moiyena-dark .workspace-settings-card,body.moiyena-dark .issue-workflow-card{background:rgba(18,26,20,.94);border-color:#2a382f;box-shadow:var(--soft-shadow)}
body.moiyena-dark .panel-head,body.moiyena-dark .analysis-facts div,body.moiyena-dark .issue-row,body.moiyena-dark .table-row,body.moiyena-dark .audit-row{border-color:#28352d}
body.moiyena-dark .panel-head span,body.moiyena-dark .report-placeholder span,body.moiyena-dark .analysis-facts dt{color:#829087}
body.moiyena-dark .text-button{color:#a7b8a8}
body.moiyena-dark .text-button:hover{background:#1d2921;color:#dce7dd}
body.moiyena-dark .metric-card{border-color:#2a382f;background:linear-gradient(155deg,#151e17 0%,#101711 100%);box-shadow:var(--soft-shadow)}
body.moiyena-dark .metric-card.health{background:linear-gradient(155deg,#162219 0%,#111a13 100%)}
body.moiyena-dark .metric-card:nth-child(2){background:linear-gradient(155deg,#201915 0%,#151411 100%)}
body.moiyena-dark .metric-card:nth-child(3){background:linear-gradient(155deg,#201d15 0%,#151511 100%)}
body.moiyena-dark .metric-card:nth-child(4){background:linear-gradient(155deg,#191d18 0%,#121612 100%)}
body.moiyena-dark .metric-card:after{background:rgba(188,209,187,.035)}
body.moiyena-dark .metric-card>span{color:#94a097}
body.moiyena-dark .metric-card strong,body.moiyena-dark .metric-card.health strong{color:#eef4ef}
body.moiyena-dark .metric-card:hover{border-color:#405047;box-shadow:var(--card-shadow)}
body.moiyena-dark .issue-row b,body.moiyena-dark .table-row b,body.moiyena-dark .analysis-history-row b{color:#dfe8e0}
body.moiyena-dark .issue-row span,body.moiyena-dark .badge{background:#202b24;color:#aebdb0}
body.moiyena-dark .issue-row.critical span,body.moiyena-dark .badge.critical{background:#3a2420;color:#e6a597}
body.moiyena-dark .table-row,body.moiyena-dark .issue-detail-row,body.moiyena-dark .audit-row{color:#aeb9b0;border-color:#29362e}
body.moiyena-dark .table-row.head,body.moiyena-dark .issue-detail-row.head{background:rgba(18,26,20,.98);color:#819087}
body.moiyena-dark .table-row:not(.head):hover,body.moiyena-dark .issue-detail-row:not(.head):hover,body.moiyena-dark .audit-row:hover,body.moiyena-dark .issue-row:hover{background:rgba(154,177,155,.055)}
body.moiyena-dark .analysis-history-row.selected{background:linear-gradient(90deg,#1c2b20,#151e18)!important;box-shadow:inset 3px 0 0 #8da78d!important}
body.moiyena-dark #issue-toolbar,body.moiyena-dark .issue-toolbar{background:rgba(18,27,21,.96);border-color:#2c3a31;box-shadow:0 12px 28px rgba(0,0,0,.25)}
body.moiyena-dark .issue-collab-bar,body.moiyena-dark .issue-utility-bar{background:#121a14;border-color:#2b3830}
body.moiyena-dark .issue-workflow-card span,body.moiyena-dark .issue-workflow-card small,body.moiyena-dark .issue-filter-result{color:#8f9d92}
body.moiyena-dark .issue-workflow-card strong{color:#e7eee8}
body.moiyena-dark .issue-progress-track{background:#27342c}
body.moiyena-dark input,body.moiyena-dark select,body.moiyena-dark textarea,body.moiyena-dark .issue-collab-bar select,body.moiyena-dark .issue-collab-bar button,body.moiyena-dark .issue-utility-actions button,body.moiyena-dark .issue-status-select{background:#172019!important;border-color:#344139!important;color:#dbe5dc!important}
body.moiyena-dark input::placeholder,body.moiyena-dark textarea::placeholder{color:#718078}
body.moiyena-dark input:hover,body.moiyena-dark select:hover,body.moiyena-dark textarea:hover{border-color:#4a5a50!important}
body.moiyena-dark .primary-small,body.moiyena-dark .workspace-settings-save,body.moiyena-dark .issue-note-form button,body.moiyena-dark .run-analysis,body.moiyena-dark .login-box button{background:#dbe6dc!important;color:#122016!important;box-shadow:0 8px 20px rgba(0,0,0,.2)}
body.moiyena-dark .empty-state,body.moiyena-dark .issue-note-empty{background:linear-gradient(135deg,rgba(22,31,24,.9),rgba(16,23,18,.75));border-color:#334139;color:#8e9a91}
body.moiyena-dark .issue-drawer{background:#111912;border-color:#304037;box-shadow:-34px 0 80px rgba(0,0,0,.38)}
body.moiyena-dark .issue-drawer-head{background:linear-gradient(180deg,#18221a,#121a14);border-color:#2a382f}
body.moiyena-dark .issue-drawer-head h3,body.moiyena-dark .issue-drawer-section>label{color:#e5ece6}
body.moiyena-dark .issue-drawer-close{background:#1a251d;border-color:#36443b;color:#dbe5dc}
body.moiyena-dark .issue-note{background:#172019;border-color:#2f3c33;box-shadow:0 6px 18px rgba(0,0,0,.16)}
body.moiyena-dark .issue-note-head,body.moiyena-dark .issue-note-head b,body.moiyena-dark .issue-note p{color:#b9c6bb}
body.moiyena-dark .pt-modal{background:#121a14;border-color:#304038;color:#dce5dd}
body.moiyena-dark .pt-modal h3{color:#eaf1eb}
body.moiyena-dark .pt-modal p{color:#9aa79c}
body.moiyena-dark .pt-modal-actions button.secondary{background:#243028;color:#c5d0c7}
body.moiyena-dark .workspace-settings-help{background:#18221b;color:#9daaa0}
body.moiyena-dark .workspace-settings-status.ok{color:#9aba95}
body.moiyena-dark .workspace-settings-status.err{color:#e39a89}
body.moiyena-dark .audit-summary article{background:#121a14;border-color:#2c3931}
body.moiyena-dark .audit-summary span,body.moiyena-dark .audit-time,body.moiyena-dark .audit-actor small,body.moiyena-dark .audit-event p{color:#87958b}
body.moiyena-dark .audit-summary strong,body.moiyena-dark .audit-actor b,body.moiyena-dark .audit-event b{color:#e2eae3}
body.moiyena-dark .audit-avatar,body.moiyena-dark .audit-pill{background:#202c24;color:#b6c5b8}
body.moiyena-dark .audit-toolbar{border-color:#2b3830}
body.moiyena-dark .audit-toolbar button{background:#18221b;border-color:#344139;color:#c9d5cb}
body.moiyena-dark .drop-zone{background:#111913;border-color:#3a493f;color:#cbd7cd}
body.moiyena-dark .drop-zone:hover{background:#162019;border-color:#526257}
body.moiyena-dark .file-meta,body.moiyena-dark .mapping-note{background:#172019;border-color:#2d3b32;color:#9aa79d}
body.moiyena-dark .upload-step b,body.moiyena-dark .analysis-action h2{color:#e7eee8}
body.moiyena-dark .upload-step small,body.moiyena-dark .analysis-action p,body.moiyena-dark .upload-status{color:#94a197}
body.moiyena-dark .login-form-panel{background:linear-gradient(180deg,#111912,#0c120e)}
body.moiyena-dark .login-box h2,body.moiyena-dark .login-box label{color:#e9f0ea}
body.moiyena-dark .login-box>p,body.moiyena-dark .login-help{color:#98a59a}
body.moiyena-dark .login-help{border-color:#2d3931}
body.moiyena-dark .login-box input{background:#172019!important;color:#e1e9e2!important}
body.moiyena-dark .moiyena-scroll-top{background:#19231c;border-color:#3a493f;color:#dce6dd;box-shadow:0 12px 32px rgba(0,0,0,.34)}
body.moiyena-dark .moiyena-scroll-top:hover{background:#233027}

@media(max-width:820px){
  body{background:#f4f0e8}
  body.moiyena-dark{background:#0b110d}
  #issue-toolbar{top:61px}
  .nav-item:hover{transform:none}
  .moiyena-density-toggle{display:none}
  .moiyena-theme-toggle{width:36px;height:36px;justify-content:center;padding:0}
  .moiyena-theme-toggle>span:last-child{display:none}
  .moiyena-scroll-top{right:14px;bottom:14px}
  .nav-item.active:before{left:8px;right:8px;top:auto;bottom:3px;width:auto;height:2px}
  .table-row.head,.issue-detail-row.head{position:static}
  .user-chip{border:0;background:transparent;padding:0}
}
@media(max-width:560px){
  #issue-toolbar{position:static}
  .metric-card:hover{transform:none}
  .section-title-row h1{font-size:31px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
