:root{--bg:#f4f7f5;--surface:#fff;--ink:#0d2118;--muted:#68776f;--line:#d8e2dc;--green:#23643e;--dark:#123e29;--red:#b33a32;--amber:#9a6a00}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 Arial,sans-serif}main{max-width:1440px;margin:auto;padding:34px 40px 90px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:#587065}.eyebrow.light{color:#cde1d4}h1{font-size:34px;margin:8px 0}h2{font-size:27px}h3{font-size:19px}p{color:var(--muted)}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);text-decoration:none;cursor:pointer}.button.primary{background:var(--green);color:#fff;border-color:var(--green)}.button.danger{color:var(--red)}.panel,.stats article,.report-page,.score-grid article{background:var(--surface);border:1px solid var(--line);border-radius:20px}.panel{padding:32px;margin:20px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stats article{padding:22px}.stats small,.stats strong{display:block}.stats strong{font-size:24px;margin-top:8px}.report-list{display:grid;gap:10px}.report-row{display:flex;justify-content:space-between;padding:18px;border:1px solid var(--line);border-radius:13px;color:inherit;text-decoration:none}.report-row span{display:block;color:var(--muted);font-size:13px}.empty{text-align:center;padding:60px}.alert{padding:16px 18px;border-radius:13px;margin-bottom:18px}.alert.error{background:#fdebea;color:#9f2f28}.form-section{display:grid;grid-template-columns:260px 1fr;padding:0;overflow:hidden}.form-section aside{padding:34px;border-right:1px solid var(--line)}.form-section aside span{color:var(--green);font-weight:700}.fields{padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.fields.one{grid-template-columns:1fr}.fields label{font-weight:700;font-size:13px}.fields input,.fields select,.fields textarea{width:100%;margin-top:8px;padding:14px;border:1px solid #c9d6ce;border-radius:11px;font:inherit;background:#fbfcfb}.fields .wide{grid-column:1/-1}.upload{border:1px dashed #b8cabe;border-radius:14px;padding:20px}.upload small{display:block;color:var(--muted);font-weight:400;margin-top:8px}.actions{text-align:right;margin-top:20px}.report-cover{min-height:400px;background:var(--dark);color:#fff;border-radius:28px;padding:55px;display:flex;justify-content:space-between;align-items:flex-end}.report-cover h1{font-size:56px}.report-cover p{color:#d5e6dc}.hero-score{display:flex;align-items:end;gap:18px}.hero-score strong{font-size:96px;line-height:.8}.report-actions{display:flex;justify-content:flex-end;gap:10px;margin:16px 0}.score-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.score-grid article{padding:22px}.score-grid small,.score-grid strong{display:block}.score-grid strong{font-size:36px;margin:8px 0}.score-grid i{display:block;height:6px;background:#e9efeb;border-radius:99px;overflow:hidden}.score-grid b{display:block;height:100%;background:var(--green)}.report-page{padding:42px;margin:22px 0}.lead{font-size:20px;color:var(--ink);max-width:1000px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:34px}.finding{padding:24px 0;border-top:1px solid var(--line)}.finding>div:first-child{display:flex;justify-content:space-between}.badge{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.badge.pilne{background:#fdebea;color:#a4312a}.badge.wazne{background:#fff2d0;color:#8d6200}.badge.rozwojowe{background:#eaf5ed;color:#23643e}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.timeline article{background:#f7faf8;border-radius:14px;padding:22px}pre{white-space:pre-wrap;background:#f6f8f7;padding:20px;border-radius:14px;overflow:auto}@media(max-width:900px){main{padding:24px 16px}.form-section{grid-template-columns:1fr}.form-section aside{border-right:0;border-bottom:1px solid var(--line)}.fields,.two-cols{grid-template-columns:1fr}.score-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:1fr}.report-cover{padding:30px}.report-cover h1{font-size:38px}}@media print{body{background:#fff}.report-actions{display:none}main{max-width:none;padding:0}.report-cover,.report-page{break-after:page;border-radius:0;border:0}.score-grid{break-after:page}.report-page{min-height:270mm}.button{display:none}}

/* FER M3.1 — Sources Manager */
.head-actions{display:flex;gap:10px;align-items:center}.source-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:22px;align-items:start}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.source-list{display:grid;gap:12px}.source-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px;border:1px solid #dce6df;border-radius:16px;background:#fff}.source-card h3{margin:0 0 4px}.source-card p{margin:0 0 8px;color:#67766c}.source-card code{font-size:12px;color:#385244;word-break:break-all}.source-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eaf4ed;color:#1d6038;font-weight:800}.source-state{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.source-state a,.text-link{font-size:13px;color:#1f6b3e;text-decoration:none}.status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;border-radius:999px}.status.on{background:#e6f4ea;color:#1d6b3b}.status.off{background:#eef1ef;color:#6b746e}.source-form{display:grid;gap:13px;position:sticky;top:18px}.source-form label{display:grid;gap:7px;font-size:13px;font-weight:650}.source-form input,.source-form select,.source-form textarea{width:100%;padding:12px 13px;border:1px solid #cad8cf;border-radius:11px;background:#fbfdfb}.toggle{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.toggle input{width:auto}.source-picker{border:1px solid #d6e2da;border-radius:16px;padding:18px;background:#fafcfb}.source-picker>.muted{margin:4px 0 14px;color:#6e7b73}.source-option{display:grid!important;grid-template-columns:auto 1fr auto!important;gap:12px!important;align-items:center;padding:13px;border-top:1px solid #e3ebe6;font-weight:400!important}.source-option input{width:auto}.source-option span{display:grid;gap:2px}.source-option small{color:#6d7971}.source-option em{font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#247043}.source-option.disabled{opacity:.55}.alert.success{background:#e8f5eb;color:#185d34;border-color:#cde7d4}
@media(max-width:900px){.source-layout{grid-template-columns:1fr}.source-form{position:static}.source-card{grid-template-columns:44px 1fr}.source-state{grid-column:2;flex-direction:row;align-items:center}.head-actions{flex-wrap:wrap}}

.alert.warning{background:#fff4d8;color:#7b5700;border:1px solid #efd69a}
.alert details{margin-top:10px}.alert summary{cursor:pointer;font-weight:700}.alert details pre{background:rgba(255,255,255,.6);margin-top:8px}
.status.local{background:#eaf1ff;color:#28538a}


/* FER M4 Sprint B — Audit Inbox & Draft Reports */
.workspace-stats{grid-template-columns:repeat(4,1fr)}
.workspace-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.workspace-card{position:relative;overflow:hidden}
.workspace-card .workspace-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#eaf4ed;color:#23643e;font-weight:900}
.workspace-card h2{margin:18px 0 8px}
.row-status{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.lifecycle{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.lifecycle.draft{background:#eaf1ff;color:#28538a}
.lifecycle.review{background:#fff1c9;color:#825d00}
.lifecycle.approved{background:#e4f4e8;color:#21633a}
.lifecycle.generated{background:#dff2e5;color:#145b32}
.lifecycle.sent{background:#e8e4f6;color:#514283}
.lifecycle.archived{background:#ecefed;color:#667069}
.lifecycle.ready{background:#fff1c9;color:#825d00}
.inbox-toolbar{display:flex;justify-content:space-between;align-items:center}
.inbox-toolbar form{display:flex;gap:10px;flex:1;max-width:720px}
.inbox-toolbar input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:11px}
.inbox-list{display:grid;gap:14px}
.inbox-card{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:24px;align-items:center}
.inbox-score{width:94px;height:94px;border-radius:50%;display:flex;align-items:end;justify-content:center;padding-bottom:25px;background:#edf6ef;color:#1f6039;position:relative}
.inbox-score strong{font-size:34px;line-height:1}.inbox-score span{font-size:12px;margin-bottom:2px}
.inbox-main h2{margin:6px 0}.inbox-main p{margin:3px 0}
.inbox-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:170px}.inbox-actions form{display:contents}
.preview-scores{margin-bottom:20px}
.draft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.draft-card{border:1px solid var(--line);border-radius:17px;padding:22px;background:#fff}
.draft-head{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.draft-card h2{margin:18px 0 5px}.draft-meta{display:grid;grid-template-columns:1fr;gap:8px;margin:20px 0}.draft-meta span{display:flex;justify-content:space-between;color:var(--muted)}.draft-meta strong{color:var(--ink)}
.draft-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.55fr);gap:20px;align-items:start}
.draft-editor{margin:0}.draft-editor .fields{padding:10px 0 0}
.draft-summary{margin:0;position:sticky;top:20px}.big-score{display:flex;align-items:end;gap:7px;margin:20px 0}.big-score strong{font-size:64px;line-height:.9}.big-score span{color:var(--muted)}
.draft-summary dl{display:grid;gap:10px}.draft-summary dl div{border-top:1px solid var(--line);padding-top:10px}.draft-summary dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.draft-summary dd{margin:4px 0 0;font-weight:700;word-break:break-word}
.status-actions{display:grid;gap:8px}.status-actions form{display:contents}.status-actions .button{width:100%;justify-content:flex-start}.status-actions .button.active{background:#eaf4ed;border-color:#8bb39a;color:#1e5f38;font-weight:800}
@media(max-width:1000px){.workspace-grid,.draft-layout{grid-template-columns:1fr}.draft-grid{grid-template-columns:1fr 1fr}.draft-summary{position:static}.inbox-card{grid-template-columns:90px 1fr}.inbox-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}}
@media(max-width:700px){.workspace-stats{grid-template-columns:1fr 1fr}.workspace-grid,.draft-grid{grid-template-columns:1fr}.inbox-card{grid-template-columns:1fr}.inbox-score{width:76px;height:76px;padding-bottom:19px}.inbox-toolbar{align-items:stretch;gap:12px;flex-direction:column}.inbox-toolbar form{flex-direction:column}.inbox-actions{flex-direction:column}}


/* FDL 002 — Product Studio */
.product-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px}
.product-tabs a{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff;text-decoration:none;color:var(--ink)}
.product-tabs a span{font-size:12px;color:var(--muted)}
.product-tabs a.active{border-color:#6fa583;background:#edf6ef;box-shadow:0 8px 24px rgba(31,96,57,.08)}
.studio-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:20px;align-items:start}
.studio-composer{margin:0}.studio-side{display:grid;gap:20px;position:sticky;top:20px}
.fdl-schema{display:inline-flex;padding:7px 10px;border-radius:999px;background:#173b27;color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}
.section-editor{display:grid;gap:10px;margin:22px 0}
.section-editor-row{display:grid;grid-template-columns:34px 90px minmax(180px,.65fr) minmax(230px,1fr) 74px;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfdfb}
.drag-handle{color:#8a978e;font-size:20px;text-align:center}
.visibility-toggle{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800}
.section-identity{display:flex;flex-direction:column}.section-identity small{color:var(--muted);font-family:ui-monospace,monospace}
.section-title-input{display:grid;gap:5px}.section-title-input span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.section-title-input input{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px}
.order-actions{display:flex;gap:6px}.order-actions button{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
.order-actions button:hover{background:#edf6ef}
.studio-preview-card iframe{width:100%;height:500px;border:1px solid var(--line);border-radius:12px;background:#fff;margin:12px 0}
.version-panel form{margin:12px 0}.version-list{display:grid;gap:8px;margin-top:14px}.version-list a{display:flex;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink)}.version-list span{font-size:12px;color:var(--muted)}
.document-json{white-space:pre-wrap;word-break:break-word;background:#13231a;color:#e5f3e9;padding:22px;border-radius:14px;max-height:75vh;overflow:auto}
.muted{color:var(--muted)}
@media(max-width:1100px){.studio-layout{grid-template-columns:1fr}.studio-side{position:static}.product-tabs{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.product-tabs{grid-template-columns:1fr}.section-editor-row{grid-template-columns:30px 1fr}.visibility-toggle,.section-identity,.section-title-input,.order-actions{grid-column:2}.studio-preview-card iframe{height:380px}}

/* FER Sprint 003 — Foresting Intelligence Navigation */
:root{
  --fi-sidebar:#102c1f;
  --fi-sidebar-deep:#0b2117;
  --fi-sidebar-line:rgba(255,255,255,.08);
  --fi-sidebar-text:#eaf4ed;
  --fi-sidebar-muted:#8da99a;
  --fi-accent:#6baa3a;
  --fi-accent-soft:rgba(107,170,58,.14);
  --fi-shell-width:272px;
}
html{scroll-behavior:smooth}
body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.fi-app-shell{min-height:100vh;display:grid;grid-template-columns:var(--fi-shell-width) minmax(0,1fr)}
.fi-sidebar{position:sticky;top:0;height:100vh;z-index:40;display:flex;flex-direction:column;padding:22px 16px 18px;background:linear-gradient(180deg,var(--fi-sidebar) 0%,var(--fi-sidebar-deep) 100%);border-right:1px solid rgba(7,24,16,.35);color:var(--fi-sidebar-text);overflow-y:auto;overscroll-behavior:contain;box-shadow:12px 0 34px rgba(9,31,20,.08)}
.fi-brand{display:flex;align-items:center;gap:12px;padding:3px 8px 22px;color:#fff;text-decoration:none;border-bottom:1px solid var(--fi-sidebar-line)}
.fi-brand-mark{width:39px;height:39px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:var(--fi-accent);color:#10291d;font-size:20px;font-weight:900;box-shadow:0 8px 24px rgba(107,170,58,.2)}
.fi-brand-copy{display:grid;line-height:1.05}.fi-brand-copy strong{font-size:17px;letter-spacing:-.02em}.fi-brand-copy small{margin-top:5px;color:#a9c1b4;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.fi-product{display:flex;align-items:flex-start;gap:10px;margin:17px 8px 12px;padding:12px 13px;border:1px solid var(--fi-sidebar-line);border-radius:13px;background:rgba(255,255,255,.035)}
.fi-product-dot{width:7px;height:7px;margin-top:6px;border-radius:50%;background:var(--fi-accent);box-shadow:0 0 0 5px rgba(107,170,58,.11)}
.fi-product div{display:grid;line-height:1.25}.fi-product strong{font-size:12px}.fi-product small{margin-top:4px;color:var(--fi-sidebar-muted);font-size:10px}
.fi-nav{display:grid;gap:20px;padding:8px 0 24px}.fi-nav-group{display:grid;gap:5px}.fi-nav-label{padding:0 12px 5px;color:#6f8d7d;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.fi-nav-item{position:relative;display:flex;align-items:center;gap:12px;min-height:43px;padding:10px 12px;border:1px solid transparent;border-radius:11px;color:#abc0b5;text-decoration:none;font-size:13px;font-weight:650;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}
.fi-nav-item svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.88}
.fi-nav-item:hover{color:#fff;background:rgba(255,255,255,.055);transform:translateX(2px)}
.fi-nav-item.active{color:#f6fff8;background:linear-gradient(90deg,var(--fi-accent-soft),rgba(107,170,58,.055));border-color:rgba(107,170,58,.2)}
.fi-nav-item.active::before{content:"";position:absolute;left:-16px;top:10px;bottom:10px;width:3px;border-radius:0 5px 5px 0;background:var(--fi-accent)}
.fi-nav-item.active svg{color:#8fca61}
.fi-sidebar-footer{margin-top:auto;padding:15px 8px 0;border-top:1px solid var(--fi-sidebar-line)}
.fi-system-state{display:flex;align-items:center;gap:10px}.fi-system-state>span{width:8px;height:8px;border-radius:50%;background:#69bd52;box-shadow:0 0 0 5px rgba(105,189,82,.1)}.fi-system-state div{display:grid}.fi-system-state strong{font-size:11px}.fi-system-state small,.fi-version{color:#718d7e;font-size:9px}.fi-version{display:block;margin-top:13px;letter-spacing:.12em;text-transform:uppercase}
.fi-workspace{min-width:0}.fi-main{max-width:1540px;margin:0 auto;padding:34px 42px 90px}.fi-mobile-bar,.fi-sidebar-backdrop{display:none}
.page-head{padding-bottom:22px;border-bottom:1px solid rgba(27,70,46,.1)}
.page-head h1{letter-spacing:-.035em}.page-head>div:first-child p{max-width:760px}
.button{font-weight:650;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.button:hover{transform:translateY(-1px);border-color:#a9bcb0;box-shadow:0 8px 18px rgba(24,68,44,.07)}.button.primary{background:#235f3d}.button.primary:hover{background:#1b5133;border-color:#1b5133}
.panel,.stats article,.report-page,.score-grid article{box-shadow:0 10px 34px rgba(22,60,39,.035)}
@media(max-width:1040px){
  .fi-app-shell{display:block}.fi-sidebar{position:fixed;left:0;top:0;width:min(86vw,290px);height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:22px 0 50px rgba(4,18,11,.25)}
  .fi-menu-open .fi-sidebar{transform:translateX(0)}
  .fi-mobile-bar{position:sticky;top:0;z-index:35;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:rgba(244,247,245,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
  .fi-mobile-brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none}.fi-mobile-brand span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:var(--fi-accent);font-weight:900}.fi-mobile-brand strong{font-size:14px;letter-spacing:.05em}
  .fi-menu-toggle{width:40px;height:40px;display:grid;place-content:center;gap:4px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}.fi-menu-toggle span{display:block;width:18px;height:2px;border-radius:4px;background:var(--ink)}
  .fi-sidebar-backdrop{position:fixed;inset:0;z-index:38;display:block;background:rgba(7,22,14,.42);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.fi-menu-open .fi-sidebar-backdrop{opacity:1;visibility:visible}.fi-menu-open{overflow:hidden}
  .fi-main{padding:28px 24px 70px}
}
@media(max-width:700px){.fi-main{padding:22px 15px 60px}.page-head{gap:18px}.page-head,.head-actions{flex-direction:column}.head-actions{width:100%;align-items:stretch}.head-actions .button{width:100%}.page-head h1{font-size:30px}.panel{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fi-sidebar,.fi-nav-item,.button,.fi-sidebar-backdrop{transition:none!important}}
@media print{.fi-sidebar,.fi-mobile-bar,.fi-sidebar-backdrop{display:none!important}.fi-app-shell{display:block}.fi-main{max-width:none;padding:0}.fi-workspace{display:block}}

/* FER M6 — Enterprise Product Studio */
.studio-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 18px}.studio-settings-grid>label,.studio-settings-grid fieldset{display:grid;gap:7px;padding:14px;border:1px solid rgba(105,170,58,.18);border-radius:14px;background:rgba(255,255,255,.02)}.studio-settings-grid fieldset{grid-column:1/-1}.studio-settings-grid legend{font-weight:700;padding:0 6px}.format-option{display:inline-flex!important;align-items:center;gap:7px;margin-right:14px}.product-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-family-card{display:flex;flex-direction:column;gap:12px}.product-family-head{display:flex;justify-content:space-between;align-items:center}.product-family-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.product-family-card dl div{padding:10px;border-radius:10px;background:rgba(255,255,255,.025)}.product-family-card dt{font-size:11px;text-transform:uppercase;opacity:.58}.product-family-card dd{margin:4px 0 0;font-weight:700}.readiness-badge,.format-chip{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;letter-spacing:.04em}.readiness-badge.ready,.format-chip.available{background:rgba(107,170,58,.16);color:#9bd76e}.readiness-badge.conditional,.format-chip.model-ready{background:rgba(218,170,60,.15);color:#e3bd65}.readiness-badge.blocked,.format-chip.blocked{background:rgba(208,83,83,.15);color:#e88a8a}.format-statuses{display:flex;flex-wrap:wrap;gap:7px}.product-family-card .actions{margin-top:auto}@media(max-width:900px){.product-family-grid,.studio-settings-grid{grid-template-columns:1fr}.studio-settings-grid fieldset{grid-column:auto}}@media(max-width:620px){.product-family-card dl{grid-template-columns:1fr}}

/* FER M7 Export Center */
.export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.export-card{display:flex;flex-direction:column;align-items:flex-start;min-height:250px}.export-card h2{margin:18px 0 8px}.export-card p{flex:1}.export-card .button{margin-top:18px}.readiness-badge.print-ready{background:#e7f3df;color:#2f6d1d}@media(max-width:800px){.export-grid{grid-template-columns:1fr}}

/* FER Sprint 003 M8B — Enterprise Product Review */
.review-hero{align-items:center}.review-decision{min-width:310px;padding:18px 20px;border:1px solid rgba(107,170,58,.25);border-radius:16px;background:linear-gradient(135deg,rgba(107,170,58,.12),rgba(255,255,255,.7));display:grid;gap:5px}.review-decision small{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.review-decision strong{font-size:14px;color:#235f3d}.review-decision span{font-size:12px;color:var(--muted)}
.review-summary-grid{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:16px;margin:24px 0}.review-summary-grid .panel{min-height:150px}.review-score-card{display:grid;grid-template-columns:auto auto;align-content:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#153b29,#102c1f);color:#fff}.review-score-card span{grid-column:1/-1;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#a9c1b4}.review-score-card strong{font-size:62px;line-height:1}.review-score-card small{align-self:end;padding-bottom:9px;color:#8fca61}
.review-matrix{display:grid;gap:12px;margin-top:18px}.review-area{padding:16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.68)}.review-area-head{display:flex;justify-content:space-between;gap:20px}.review-area-head>div{display:grid;gap:4px}.review-area-head span{font-size:12px;color:var(--muted)}.review-area-head b{font-size:27px;color:#235f3d}.review-progress{height:7px;margin:13px 0 10px;border-radius:999px;background:#e4ebe6;overflow:hidden}.review-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#235f3d,#6baa3a)}.review-action{display:flex;gap:12px;font-size:12px;color:var(--muted)}.review-action span{flex:0 0 auto;font-weight:800;color:#2f6d1d}
.review-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px}.review-actions{display:grid;gap:12px;margin-top:18px}.review-actions>div{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:12px;border-radius:12px;background:#f3f7f4}.review-actions b{width:38px;height:28px;display:grid;place-items:center;border-radius:8px;background:#dcebd9;color:#275f34;font-size:11px}.review-actions p{display:grid;gap:4px;margin:0}.review-actions span{font-size:12px;color:var(--muted)}.review-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.review-tags span{padding:7px 10px;border-radius:999px;background:#eef3ef;color:#53685b;font-size:11px}.review-note{margin-top:18px;padding:15px;border-left:3px solid #6baa3a;background:#f2f7ef}.review-note p{margin:6px 0 0;color:var(--muted)}
@media(max-width:1100px){.review-summary-grid{grid-template-columns:repeat(2,1fr)}.review-columns{grid-template-columns:1fr}}@media(max-width:700px){.review-summary-grid{grid-template-columns:1fr}.review-decision{min-width:0;width:100%}.review-area-head,.review-action{flex-direction:column}.review-score-card{min-height:180px}}

/* FER Sprint 004 M1 — Client Workspace */
.client-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.client-toolbar form{display:flex;gap:10px}.client-toolbar input{flex:1;min-width:220px}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.client-card{display:flex;flex-direction:column;gap:18px;color:var(--ink);text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.client-card:hover{transform:translateY(-2px);border-color:rgba(107,170,58,.35);box-shadow:0 18px 42px rgba(22,60,39,.08)}.client-card-head{display:flex;align-items:center;justify-content:space-between}.client-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#173b27,#6baa3a);color:#fff;font-size:20px;font-weight:900}.client-card h2{margin:0 0 5px;font-size:20px}.client-card p{margin:0;color:var(--muted)}.client-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.client-card-metrics span{padding:10px;border-radius:10px;background:#f3f7f4;color:var(--muted);font-size:11px}.client-card-metrics b{display:block;color:#235f3d;font-size:19px}.client-card-foot{display:flex;justify-content:space-between;gap:15px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.client-card-foot strong{color:var(--ink);font-weight:700}.client-workspace-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:20px;align-items:start}.client-main-column,.client-side-column{display:grid;gap:20px}.client-side-column{position:sticky;top:20px}.client-journey{margin:24px 0}.client-journey .section-head{align-items:flex-end}.client-journey form{display:flex;gap:8px}.client-journey select{min-width:180px}.journey-track{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin-top:22px}.journey-step{position:relative;display:grid;justify-items:center;gap:8px;color:#93a39a;font-size:11px;text-align:center}.journey-step:not(:last-child)::after{content:"";position:absolute;left:58%;right:-42%;top:16px;height:2px;background:#dfe7e1}.journey-step i{position:relative;z-index:1;width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#edf2ee;border:2px solid #d7e0da;color:#7e9185;font-style:normal;font-weight:800}.journey-step.done i,.journey-step.current i{background:#235f3d;border-color:#235f3d;color:#fff}.journey-step.done:not(:last-child)::after{background:#6baa3a}.journey-step.current span{color:#235f3d;font-weight:800}.client-note-form form{display:grid;gap:12px}.client-note-form textarea{width:100%;resize:vertical}.note-pin{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.client-notes{display:grid;gap:12px}.client-note{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfdfb}.client-note.pinned{border-color:rgba(107,170,58,.35);background:#f2f8ef}.client-note p{margin:0 0 12px;line-height:1.55}.client-note footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.client-note footer strong{color:var(--ink)}.note-badge{display:inline-flex;margin-bottom:9px;padding:4px 7px;border-radius:999px;background:#dcebd9;color:#275f34;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.client-timeline{display:grid;gap:0}.client-timeline>div{position:relative;display:grid;grid-template-columns:18px 1fr;gap:12px;padding:0 0 18px}.client-timeline>div:not(:last-child)::after{content:"";position:absolute;left:6px;top:12px;bottom:0;width:1px;background:#dbe4dd}.client-timeline i{position:relative;z-index:1;width:13px;height:13px;margin-top:4px;border-radius:50%;background:#6baa3a;box-shadow:0 0 0 4px #edf5e9}.client-timeline p{display:grid;gap:3px;margin:0}.client-timeline span{color:var(--muted);font-size:11px}
@media(max-width:1100px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-workspace-grid{grid-template-columns:1fr}.client-side-column{position:static}}@media(max-width:760px){.client-grid,.client-stats{grid-template-columns:1fr}.client-toolbar form,.client-journey .section-head,.client-journey form{flex-direction:column}.journey-track{grid-template-columns:repeat(3,1fr);row-gap:18px}.journey-step::after{display:none}.client-card-metrics{grid-template-columns:1fr}.client-card-foot{flex-direction:column}}


/* FER Sprint 003 Addendum M8C — Source Bundle & Merge Engine */
.source-bundle-panel{margin-top:22px}.source-count{display:inline-flex;padding:7px 11px;border-radius:999px;background:#edf5e9;color:#2f6d1d;font-size:11px;font-weight:800}.source-bundle-grid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:20px;margin-top:20px}.source-upload-card{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f7faf7}.source-upload-card label{display:grid;gap:7px;font-weight:700}.source-upload-card small{color:var(--muted);line-height:1.5}.source-bundle-list{display:grid;gap:12px}.source-bundle-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.source-bundle-item h3{margin:5px 0 4px;font-size:15px}.source-bundle-item p{margin:0 0 6px;color:var(--muted);font-size:12px}.source-bundle-item small{color:var(--muted);font-size:10px}.source-kind{display:inline-flex;padding:4px 7px;border-radius:999px;background:#e7f2e2;color:#2f6d1d;font-size:9px;font-weight:900;letter-spacing:.08em}.source-merge-action{display:flex;justify-content:flex-end;padding-top:8px}@media(max-width:900px){.source-bundle-grid{grid-template-columns:1fr}.source-bundle-item{align-items:flex-start;flex-direction:column}.source-bundle-item form,.source-bundle-item .button{width:100%}}

/* FER Client Branding */
.client-avatar img,.client-profile-logo img{width:100%;height:100%;object-fit:contain;display:block}
.client-profile-identity{display:flex;align-items:center;gap:18px}
.client-profile-logo{width:72px;height:72px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--fi-sidebar);font-size:30px;font-weight:900;overflow:hidden;padding:8px}
.client-logo-panel{display:grid;gap:14px}.client-logo-panel h2{margin:0}.client-logo-panel>p{margin:0;color:var(--muted)}
.client-logo-preview{min-height:130px;display:grid;place-items:center;padding:18px;border:1px dashed var(--line);border-radius:14px;background:#f8fbf9;color:var(--muted)}
.client-logo-preview img{max-width:100%;max-height:110px;object-fit:contain}.client-logo-panel form{display:grid;gap:10px}.client-logo-panel input[type=file]{width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.client-logo-panel form small{color:var(--muted)}
@media(max-width:700px){.client-profile-identity{align-items:flex-start}.client-profile-logo{width:58px;height:58px;border-radius:14px}}

/* FPE M2 — Report View Unification */
.fpe-m2-summary{margin-bottom:24px}
.fpe-m2-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.fpe-m2-preview{background:#dfe8e2;border:1px solid #cbd9d0;border-radius:24px;padding:12px;box-shadow:0 24px 60px rgba(18,54,36,.08);min-width:0}
.fpe-m2-preview iframe{display:block;width:100%;height:calc(100vh - 190px);min-height:760px;border:0;border-radius:16px;background:#edf3ef}
.fpe-m2-workspace .fpe-quality{position:sticky;top:24px}
@media(max-width:1100px){.fpe-m2-workspace{grid-template-columns:1fr}.fpe-m2-workspace .fpe-quality{position:static}.fpe-m2-preview iframe{height:78vh;min-height:620px}}
@media(max-width:680px){.fpe-m2-preview{padding:6px;border-radius:16px}.fpe-m2-preview iframe{min-height:560px;border-radius:12px}}

.visual-delivery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:18px}.visual-delivery-toolbar h2{margin:0 0 8px}.visual-actions{display:flex;gap:10px;flex-wrap:wrap}.visual-status{margin:0 0 16px;padding:12px 16px;border:1px solid #cfe1d3;border-radius:14px;background:#edf6ef;color:#214b32;font-weight:700}.visual-status.error{border-color:#e8c7c0;background:#fff1ee;color:#923b2d}.visual-preview-shell{overflow:hidden;border:1px solid #d8e4dc;border-radius:24px;background:#dfe9e2;box-shadow:0 22px 60px rgba(16,47,34,.12)}.visual-preview-shell iframe{display:block;width:100%;height:82vh;min-height:760px;border:0;background:#fff}@media(max-width:900px){.visual-delivery-toolbar{align-items:flex-start;flex-direction:column}.visual-preview-shell iframe{min-height:620px}}
.fi-product small{word-break:break-word}.format-help{display:block;margin:-2px 0 8px;color:#7f9488;font-size:11px;line-height:1.35}.visual-actions a.button{display:inline-flex;align-items:center}

/* FER Access Gate & Domain Grouping */
.login-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 72% 12%,rgba(107,170,58,.2),transparent 30%),linear-gradient(145deg,#102d1e,#153825 58%,#235f3d);color:#fff}
.login-shell{width:min(100%,460px)}
.login-card{padding:34px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 28px 80px rgba(4,24,13,.28);color:var(--ink)}
.login-kicker{display:block;color:#2f7d45;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.login-card h1{margin:10px 0 8px;font-size:34px;line-height:1.05}
.login-card p{margin:0 0 22px;color:var(--muted);line-height:1.5}
.login-card form{display:grid;gap:14px}
.login-card label{display:grid;gap:7px;color:var(--ink);font-weight:800}
.login-card input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit}
.login-alert{margin:0 0 14px;padding:11px 13px;border:1px solid #e8c7c0;border-radius:12px;background:#fff1ee;color:#923b2d;font-weight:800}
.fi-logout{display:inline-flex;margin-top:10px;color:#8fca61;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fi-logout:hover{color:#fff}
.client-domain-stack{display:grid;gap:24px}
.client-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.client-domain-group{display:grid;gap:14px}
.client-domain-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;padding:0 2px}
.client-domain-head h2{margin:3px 0 0;font-size:22px;line-height:1.15}
.client-domain-metrics{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.client-domain-metrics span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:#edf5e9;color:#2f6d1d;font-size:11px;font-weight:800}
.client-domain-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){.client-domain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.client-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.client-domain-head{align-items:flex-start;flex-direction:column}.client-domain-metrics{justify-content:flex-start}.client-domain-grid,.client-stats{grid-template-columns:1fr}}
