/* MOIYENA Premium Visual System v4 — presentation-only overrides */
:root{
  --pv4-radius-xl:22px;
  --pv4-radius-lg:18px;
  --pv4-radius-md:13px;
  --pv4-hairline:rgba(28,42,32,.10);
  --pv4-glass:rgba(255,253,249,.78);
  --pv4-shadow:0 20px 54px rgba(18,31,22,.075);
  --pv4-shadow-hover:0 26px 64px rgba(18,31,22,.115);
  --pv4-green:#17301f;
  --pv4-green-2:#24432c;
  --pv4-sage:#9eb09a;
  --pv4-gold:#b49b68;
}
*{scrollbar-width:thin;scrollbar-color:#aab3a7 transparent}
*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#b7bfb4;border:3px solid transparent;background-clip:padding-box;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#929d90;border:2px solid transparent;background-clip:padding-box}
::selection{background:#cad8c6;color:#142018}

/* first impression / shell */
.dashboard-view{background:transparent!important}
.workspace{position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(250,248,243,.55),rgba(244,240,232,.88))}
.workspace:before,.workspace:after{content:"";position:fixed;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(2px)}
.workspace:before{width:460px;height:460px;right:-150px;top:90px;background:radial-gradient(circle,rgba(129,151,124,.11),rgba(129,151,124,0) 68%)}
.workspace:after{width:520px;height:520px;left:140px;bottom:-260px;background:radial-gradient(circle,rgba(190,168,119,.08),rgba(190,168,119,0) 70%)}
.sidebar{border-right:1px solid rgba(126,151,132,.14)!important}
.side-brand{position:relative;padding-bottom:30px!important;margin-bottom:7px}
.side-brand:after{content:"";position:absolute;left:8px;right:8px;bottom:11px;height:1px;background:linear-gradient(90deg,transparent,rgba(165,186,164,.22),transparent)}
.side-brand img{opacity:.98;filter:brightness(0) invert(1) drop-shadow(0 5px 15px rgba(0,0,0,.16))!important}
.side-brand span{padding:5px 7px;border:1px solid rgba(173,194,173,.14);border-radius:999px;background:rgba(255,255,255,.025)}
.nav-item{min-height:43px!important;padding:10px 12px!important;border-radius:11px!important;font-weight:650!important;letter-spacing:-.005em}
.nav-icon{width:22px!important;height:22px!important;border-radius:7px!important}
.side-bottom{position:relative}
.side-bottom:before{content:"";position:absolute;left:8px;right:8px;top:0;height:1px;background:linear-gradient(90deg,transparent,#314136,transparent)}

/* topbar: turn all dynamic controls into a compact right cluster */
.topbar{height:72px!important;padding:0 30px!important;gap:8px!important;justify-content:flex-start!important;border-bottom-color:rgba(115,128,117,.13)!important}
.topbar>div:first-child{margin-right:auto!important}
.topbar-label{font-size:7.5px!important;letter-spacing:.19em!important}
.topbar strong{font-size:14.5px!important}
.topbar button{flex:0 0 auto}
.user-chip{min-height:40px;padding:4px 9px 4px 5px!important;box-shadow:0 8px 22px rgba(20,32,24,.045)}
.user-chip>span{width:31px!important;height:31px!important}
.moiyena-theme-toggle,.moiyena-density-toggle{height:36px!important;min-height:36px!important;padding:0 12px!important;border-radius:11px!important;background:rgba(255,253,249,.82)!important;backdrop-filter:blur(10px);box-shadow:0 6px 18px rgba(20,32,24,.045)!important}

/* section titles */
.workspace-body{padding:38px 38px 48px!important}
.app-section.active{animation:pv4-section-in .26s cubic-bezier(.2,.75,.25,1)}
@keyframes pv4-section-in{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}
.section-title-row{align-items:center!important;margin-bottom:28px!important}
.section-title-row .eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:3px;font-size:8px!important;letter-spacing:.19em!important;font-weight:800!important}
.section-title-row .eyebrow:before{content:"";width:17px;height:1px;background:currentColor;opacity:.55}
.section-title-row h1{font-size:37px!important;line-height:1.02!important;letter-spacing:-.052em!important;margin:8px 0 9px!important;font-weight:650!important}
.section-title-row p{font-size:11.5px!important;max-width:680px}
.status-pill{padding:8px 12px!important;border-radius:999px!important;letter-spacing:.1em!important;backdrop-filter:blur(12px)}

/* premium surfaces */
.panel,.metric-card,.workspace-settings-card,.issue-workflow-card,.team-card,.security-card{border-radius:var(--pv4-radius-lg)!important;border:1px solid var(--pv4-hairline)!important;box-shadow:var(--pv4-shadow)!important;background:linear-gradient(155deg,rgba(255,254,251,.93),rgba(252,249,243,.84))!important;backdrop-filter:blur(14px) saturate(112%)}
.panel{padding:23px!important}
.panel-head{align-items:center!important;border-bottom-color:rgba(32,47,35,.075)!important}
.panel-head>div>span,.report-placeholder span{display:inline-block;font-size:7.5px!important;letter-spacing:.18em!important;font-weight:800!important}
.panel-head h2,.report-placeholder h2{font-size:21px!important;letter-spacing:-.04em!important;font-weight:650!important}
.text-button{border:1px solid rgba(68,85,70,.10)!important;background:rgba(255,255,255,.35)!important;border-radius:9px!important;padding:7px 10px!important;text-decoration:none!important}
.text-button:hover{background:#fffdf9!important;border-color:rgba(68,85,70,.17)!important;box-shadow:0 5px 15px rgba(20,32,24,.05)}

/* hero metrics */
.metric-grid{gap:15px!important;margin-bottom:19px!important}
.metric-card{min-height:154px!important;padding:19px 20px 18px!important;border-radius:20px!important;box-shadow:0 16px 42px rgba(20,32,24,.065)!important}
.metric-card:hover{transform:translateY(-3px)!important;box-shadow:var(--pv4-shadow-hover)!important}
.metric-card>span{display:flex;align-items:center;gap:7px;font-size:9.5px!important;font-weight:750!important;text-transform:none;letter-spacing:.01em!important}
.metric-card>span:before{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#829a7e;box-shadow:0 0 0 4px rgba(130,154,126,.10)}
.metric-card:nth-child(2)>span:before{background:#b76756;box-shadow:0 0 0 4px rgba(183,103,86,.10)}
.metric-card:nth-child(3)>span:before{background:#ae8c52;box-shadow:0 0 0 4px rgba(174,140,82,.11)}
.metric-card:nth-child(4)>span:before{background:#7f8b7e;box-shadow:0 0 0 4px rgba(127,139,126,.10)}
.metric-card strong{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:43px!important;margin-top:28px!important}
.metric-card.health strong{font-size:60px!important;letter-spacing:-.065em!important}
.metric-card.health{border-color:rgba(97,129,91,.19)!important;box-shadow:0 18px 48px rgba(61,91,59,.09)!important}
.metric-card.health:after{width:170px!important;height:170px!important;right:-74px!important;top:-88px!important;background:radial-gradient(circle,rgba(113,145,107,.14),rgba(113,145,107,0) 70%)!important}
.metric-card p{margin-top:9px!important;font-size:9px!important}

/* work queue — this is the visual anchor of the dashboard */
#my-work-panel.my-work-panel{position:relative;overflow:hidden;border:1px solid rgba(161,185,162,.16)!important;border-radius:19px!important;background:linear-gradient(115deg,#0e1c13 0%,#15291b 58%,#122318 100%)!important;box-shadow:0 22px 54px rgba(11,26,16,.20)!important;margin:0 0 20px!important}
#my-work-panel.my-work-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 14% -20%,rgba(168,195,163,.14),transparent 35%),linear-gradient(90deg,rgba(255,255,255,.025),transparent 36%)}
#my-work-panel .my-work-lead,#my-work-panel .my-work-stat{position:relative;padding:18px 20px!important;border-color:rgba(180,199,181,.13)!important}
#my-work-panel .my-work-lead span,#my-work-panel .my-work-stat span{font-size:7.5px!important;letter-spacing:.12em!important;color:#91a594!important;font-weight:700}
#my-work-panel .my-work-lead strong{font-size:18px!important;letter-spacing:-.035em}
#my-work-panel .my-work-stat strong{font-size:27px!important;font-weight:650;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
#my-work-panel .my-work-stat small{color:#859789!important;line-height:1.35}
#my-work-panel .my-work-stat.clickable{transition:background .16s ease,transform .16s ease}
#my-work-panel .my-work-stat.clickable:hover{background:rgba(255,255,255,.045)!important;transform:translateY(-1px)}
#my-work-panel .my-work-action{border:1px solid rgba(220,232,218,.18)!important;background:#edf2e9!important;color:#17301f!important;border-radius:9px!important;padding:8px 11px!important;box-shadow:0 7px 20px rgba(0,0,0,.13)}
#my-work-panel .my-work-action:hover{background:#fff!important;transform:translateY(-1px)}

/* dashboard panels */
#section-overview .content-grid{grid-template-columns:minmax(0,1.55fr) minmax(290px,.58fr)!important;gap:19px!important}
#section-overview .issue-panel{min-height:360px}
#section-overview .analysis-panel{background:linear-gradient(160deg,rgba(252,250,245,.95),rgba(239,244,236,.68))!important}
.issue-row{min-height:44px}
.issue-row b{font-weight:650!important;letter-spacing:-.01em}
.issue-row span{font-weight:700!important;border:1px solid rgba(70,82,71,.06)}
.issue-row strong{font-size:16px!important;font-variant-numeric:tabular-nums}
.analysis-facts div{padding:13px 0!important}
.analysis-facts dt{font-size:8px!important;letter-spacing:.03em}
.analysis-facts dd{font-size:16px!important;font-weight:600!important}

/* tables: premium data product rather than spreadsheet imitation */
.data-table{border-radius:14px;overflow:hidden}
.table-row,.issue-detail-row,.audit-row{border-bottom-color:rgba(44,57,47,.075)!important}
.table-row.head,.issue-detail-row.head{background:linear-gradient(180deg,rgba(248,246,241,.98),rgba(244,241,235,.96))!important;color:#7b857c!important;letter-spacing:.13em!important}
.table-row:not(.head),.issue-detail-row:not(.head){background:rgba(255,255,255,.08)}
.table-row:not(.head):hover,.issue-detail-row:not(.head):hover,.audit-row:hover{background:rgba(105,126,105,.055)!important}
.analysis-history-row{border-radius:10px!important;margin:2px 0}
.analysis-history-row.selected{box-shadow:inset 3px 0 0 #527059,0 6px 18px rgba(20,32,24,.045)!important}

/* issue operations */
#issue-toolbar{border-radius:14px!important;border:1px solid rgba(52,68,55,.09)!important;padding:10px!important}
.issue-collab-bar{border-radius:13px!important;background:rgba(255,253,249,.72)!important;backdrop-filter:blur(12px)}
.bulk-issue-bar{border-radius:14px!important;border:1px solid rgba(183,201,184,.14)!important}
.issue-status-select,.issue-collab-bar select,.bulk-issue-bar select{border-radius:9px!important}
.issue-drawer{border-left-color:rgba(46,62,50,.14)!important;background:rgba(252,250,246,.96)!important;backdrop-filter:blur(18px) saturate(110%)}
.issue-drawer-backdrop{backdrop-filter:blur(3px)}
.issue-note{border-radius:12px!important}

/* upload / mapping — strongest conversion screen after dashboard */
#section-upload .upload-panel,#section-upload .mapping-panel{min-height:355px}
#section-upload .upload-step>span{width:31px!important;height:31px!important;border-radius:10px!important;background:linear-gradient(145deg,#102217,#294331)!important;box-shadow:0 8px 18px rgba(20,32,24,.16)}
#section-upload .upload-step b{font-size:16px!important;letter-spacing:-.025em}
.drop-zone{position:relative;overflow:hidden;border:1.5px dashed #b8c0b4!important;border-radius:17px!important;background:linear-gradient(145deg,rgba(249,247,242,.9),rgba(238,243,235,.62))!important}
.drop-zone:before{content:"+";display:grid;place-items:center;width:40px;height:40px;margin-bottom:8px;border-radius:12px;background:#17301f;color:#fff;font-family:"Manrope";font-size:23px;font-weight:500;box-shadow:0 10px 24px rgba(23,48,31,.16)}
.drop-zone:hover,.drop-zone.dragging{border-color:#6f876d!important;background:linear-gradient(145deg,#f8f7f2,#eaf1e7)!important;box-shadow:inset 0 0 0 1px rgba(111,135,109,.06),0 16px 36px rgba(20,32,24,.055)}
.drop-zone strong{font-size:17px!important;letter-spacing:-.025em}
.file-meta{border-radius:12px!important;background:rgba(255,253,249,.78)!important;box-shadow:0 7px 20px rgba(20,32,24,.035)}
.mapping-field select{border-radius:10px!important;min-height:41px}
.analysis-action{border-color:rgba(65,86,68,.12)!important;background:linear-gradient(120deg,rgba(255,253,249,.95),rgba(237,244,234,.72))!important}
.run-analysis,.primary-small,.workspace-settings-save,.issue-note-form button{background:linear-gradient(145deg,#13251a,#1d3825)!important;border:1px solid rgba(255,255,255,.04)!important;border-radius:10px!important;box-shadow:0 10px 24px rgba(18,42,26,.17)!important}
.run-analysis:hover,.primary-small:hover,.workspace-settings-save:hover,.issue-note-form button:hover{background:linear-gradient(145deg,#183020,#25462e)!important;box-shadow:0 14px 30px rgba(18,42,26,.22)!important}

/* reports/settings/team/security */
.report-placeholder{position:relative;overflow:hidden;min-height:290px!important;background:linear-gradient(135deg,rgba(255,253,249,.96),rgba(238,244,236,.78))!important}
.report-placeholder:after{content:"";position:absolute;width:280px;height:280px;right:-120px;top:-130px;border-radius:50%;border:1px solid rgba(96,121,94,.10);box-shadow:0 0 0 42px rgba(96,121,94,.025),0 0 0 84px rgba(96,121,94,.014)}
.workspace-settings-card{padding:22px!important}
.workspace-settings-card h2{font-size:19px!important;letter-spacing:-.035em!important}
.workspace-settings-help{border:1px solid rgba(65,84,67,.075);background:rgba(240,244,237,.66)!important}

/* empty states */
.empty-state{position:relative;overflow:hidden;text-align:left!important;min-height:92px;display:flex;align-items:center;padding-left:55px!important}
.empty-state:before{content:"";position:absolute;left:18px;width:22px;height:22px;border-radius:8px;border:1px solid rgba(100,117,101,.18);background:linear-gradient(145deg,#edf2ea,#fffdf9);box-shadow:0 5px 14px rgba(20,32,24,.05)}

/* login: premium first touch */
.login-brand-panel{background:radial-gradient(circle at 76% 18%,rgba(119,151,120,.13),transparent 30%),linear-gradient(145deg,#0b150e 0%,#15251a 52%,#0c1710 100%)!important}
.login-brand-panel:before{content:"";position:absolute;left:-130px;bottom:-170px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(166,187,160,.07),transparent 68%)}
.login-brand-panel:after{opacity:.72}
.login-brand-copy h1{text-shadow:0 16px 42px rgba(0,0,0,.16)}
.login-points span{background:rgba(255,255,255,.025);backdrop-filter:blur(10px)}
.login-form-panel{background:radial-gradient(circle at 100% 0,rgba(130,153,124,.09),transparent 30%),linear-gradient(180deg,#fcfaf6,#f3eee6)!important}
.login-box{padding:6px}
.login-box input{min-height:48px;border-radius:12px!important;background:rgba(255,253,249,.9)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.login-box button{min-height:48px;border-radius:12px!important;background:linear-gradient(145deg,#12251a,#203a28)!important;box-shadow:0 12px 26px rgba(20,45,29,.18)}

/* dark mode premium overrides */
body.moiyena-dark{--pv4-hairline:rgba(188,211,191,.10);--pv4-glass:rgba(17,25,19,.78);--pv4-shadow:0 22px 56px rgba(0,0,0,.24);--pv4-shadow-hover:0 28px 70px rgba(0,0,0,.34)}
body.moiyena-dark .workspace{background:linear-gradient(180deg,rgba(10,16,12,.72),rgba(11,17,13,.94))}
body.moiyena-dark .workspace:before{background:radial-gradient(circle,rgba(81,117,84,.13),rgba(81,117,84,0) 68%)}
body.moiyena-dark .workspace:after{background:radial-gradient(circle,rgba(120,101,66,.08),rgba(120,101,66,0) 70%)}
body.moiyena-dark .topbar{border-bottom-color:rgba(176,200,179,.09)!important}
body.moiyena-dark .moiyena-theme-toggle,body.moiyena-dark .moiyena-density-toggle{background:rgba(25,36,28,.88)!important;border-color:#35443a!important;color:#cbd7cd!important}
body.moiyena-dark .panel,body.moiyena-dark .metric-card,body.moiyena-dark .workspace-settings-card,body.moiyena-dark .issue-workflow-card,body.moiyena-dark .team-card,body.moiyena-dark .security-card{background:linear-gradient(150deg,rgba(19,28,21,.95),rgba(14,22,17,.90))!important;border-color:rgba(164,190,169,.11)!important;box-shadow:var(--pv4-shadow)!important}
body.moiyena-dark .metric-card.health{background:linear-gradient(150deg,rgba(21,36,25,.98),rgba(15,25,18,.94))!important;border-color:rgba(112,158,115,.20)!important}
body.moiyena-dark .metric-card:nth-child(2){background:linear-gradient(150deg,rgba(41,25,22,.95),rgba(20,20,17,.94))!important}
body.moiyena-dark .metric-card:nth-child(3){background:linear-gradient(150deg,rgba(38,32,20,.94),rgba(20,21,17,.94))!important}
body.moiyena-dark .metric-card:nth-child(4){background:linear-gradient(150deg,rgba(25,31,26,.96),rgba(17,23,18,.94))!important}
body.moiyena-dark .metric-card>span:before{box-shadow:0 0 0 4px rgba(130,154,126,.08)}
body.moiyena-dark #section-overview .analysis-panel{background:linear-gradient(155deg,rgba(18,28,21,.96),rgba(17,32,21,.72))!important}
body.moiyena-dark .table-row.head,body.moiyena-dark .issue-detail-row.head{background:linear-gradient(180deg,rgba(23,33,25,.98),rgba(18,28,21,.98))!important;color:#91a094!important}
body.moiyena-dark .table-row:not(.head):hover,body.moiyena-dark .issue-detail-row:not(.head):hover,body.moiyena-dark .audit-row:hover{background:rgba(151,180,153,.055)!important}
body.moiyena-dark #issue-toolbar,body.moiyena-dark .issue-collab-bar{background:rgba(17,26,19,.91)!important;border-color:rgba(164,190,169,.11)!important}
body.moiyena-dark .issue-drawer{background:rgba(14,22,17,.97)!important;border-left-color:#2d3b31!important}
body.moiyena-dark .drop-zone{background:linear-gradient(145deg,rgba(18,27,20,.96),rgba(20,35,23,.75))!important;border-color:#405147!important}
body.moiyena-dark .drop-zone:before{background:linear-gradient(145deg,#b8c9b4,#dce7da);color:#142018;box-shadow:0 10px 28px rgba(0,0,0,.28)}
body.moiyena-dark .drop-zone:hover,body.moiyena-dark .drop-zone.dragging{background:linear-gradient(145deg,#15241a,#1d3322)!important;border-color:#6f8a70!important}
body.moiyena-dark .analysis-action{background:linear-gradient(120deg,rgba(17,26,19,.96),rgba(18,36,22,.78))!important}
body.moiyena-dark .workspace-settings-help{background:rgba(28,41,31,.74)!important;border-color:#314038}
body.moiyena-dark .report-placeholder{background:linear-gradient(135deg,rgba(17,26,19,.98),rgba(19,37,23,.80))!important}
body.moiyena-dark .empty-state:before{background:linear-gradient(145deg,#1c2b20,#25392a);border-color:#3a4a40}
body.moiyena-dark ::selection{background:#36503b;color:#eff5ef}

@media(max-width:1100px){
  .workspace-body{padding:30px 28px 40px!important}
  #section-overview .content-grid{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  .workspace{background:#f4f0e8}.topbar{height:62px!important;padding:0 16px!important}.workspace-body{padding:23px 17px 34px!important}.section-title-row h1{font-size:32px!important}.panel{padding:18px!important}.metric-card{min-height:132px!important}.metric-card strong{margin-top:22px!important}.metric-card.health strong{font-size:52px!important}.sidebar{box-shadow:none}.nav-item{min-height:42px!important;border-radius:9px!important}.side-brand:after{display:none}
  body.moiyena-dark .workspace{background:#0b110d}
}
@media(max-width:560px){
  .workspace-body{padding:20px 13px 30px!important}.section-title-row{margin-bottom:21px!important}.section-title-row h1{font-size:30px!important}.metric-grid{gap:10px!important}.metric-card{border-radius:16px!important;padding:17px!important}.metric-card:hover{transform:none!important}.user-chip{box-shadow:none}.panel{border-radius:16px!important}.empty-state{padding-left:48px!important}.empty-state:before{left:14px}
}
@media(prefers-reduced-motion:reduce){.app-section.active{animation:none!important}}
