
:root{--ep-bg:#eef4f8;--ep-surface:#fff;--ep-navy:#071827;--ep-navy2:#0b2d49;--ep-blue:#0b8fd3;--ep-blue2:#20a9e8;--ep-text:#102b44;--ep-muted:#6b8295;--ep-line:#d9e4ec;--ep-shadow:0 14px 34px rgba(11,43,68,.08)}
html{scroll-behavior:smooth}body{background:linear-gradient(180deg,#edf4f8 0,#f7fafc 100%)!important;color:var(--ep-text)!important}
header,.topbar,.portal-header{background:linear-gradient(105deg,var(--ep-navy),#0a263f)!important;box-shadow:0 8px 25px rgba(2,20,34,.18)!important}
.apms-logo-link{transition:transform .18s ease,filter .18s ease}.apms-logo-link:hover{transform:translateY(-1px) scale(1.015);filter:brightness(1.08)}
aside,.sidebar,.portal-sidebar{background:linear-gradient(180deg,#081a2a,#0b263d)!important;border-right:1px solid rgba(255,255,255,.06)!important}
aside button,aside a,.sidebar a,.portal-sidebar a{position:relative;overflow:hidden;border-radius:10px!important;transition:.2s ease!important}
aside button:before,aside a:before,.sidebar a:before,.portal-sidebar a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:.2s ease}
aside button:hover,aside a:hover,.sidebar a:hover,.portal-sidebar a:hover{transform:translateX(3px);background:rgba(35,162,225,.12)!important;color:#fff!important}
aside button:hover:before,aside a:hover:before,.sidebar a:hover:before,.portal-sidebar a:hover:before{background:var(--ep-blue2)}
.card,.panel,.form-section,.tool-card{background:rgba(255,255,255,.97)!important;border:1px solid var(--ep-line)!important;border-radius:16px!important;box-shadow:var(--ep-shadow)!important}
.tool-kicker,.eyebrow{color:var(--ep-blue)!important;font-weight:800;letter-spacing:.09em}
.btn,.s2-btn,.apms-btn{border-radius:9px!important;min-height:40px!important;font-weight:750!important;transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important}
.btn:hover,.s2-btn:hover,.apms-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(10,78,120,.12)}
input,select,textarea{border-radius:9px!important;border:1px solid #c9d8e2!important;background:#fbfdff!important;transition:border .15s ease,box-shadow .15s ease!important}
input:focus,select:focus,textarea:focus{outline:0!important;border-color:#5bb9e8!important;box-shadow:0 0 0 3px rgba(11,143,211,.11)!important}
.ep-hero{background:linear-gradient(135deg,#071827 0,#0c385b 72%,#0b8fd3 160%);color:#fff;border-radius:20px;padding:26px 28px;margin-bottom:22px;position:relative;overflow:hidden;box-shadow:0 18px 42px rgba(6,35,58,.18)}
.ep-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-60px;top:-100px;background:rgba(43,174,235,.12)}.ep-hero h1{margin:0 0 8px;color:#fff}.ep-hero p{margin:0;color:#c7dbe9;max-width:700px}
.ep-quick{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px;margin:20px 0}.ep-quick a{background:#fff;border:1px solid var(--ep-line);border-radius:15px;padding:18px;text-decoration:none;color:var(--ep-text);box-shadow:0 9px 24px rgba(12,46,72,.06);transition:.18s ease;position:relative;overflow:hidden}.ep-quick a:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(12,46,72,.12);border-color:#b7dff3}.ep-quick a:after{content:"→";position:absolute;right:16px;bottom:14px;color:var(--ep-blue);font-size:20px;transition:.18s ease}.ep-quick a:hover:after{transform:translateX(4px)}.ep-quick b{display:block;margin-bottom:5px}.ep-quick span{font-size:12px;color:var(--ep-muted)}
.ep-preview-shell{display:none!important}.ep-preview-modal{position:fixed;inset:0;z-index:9999;background:rgba(2,16,28,.78);backdrop-filter:blur(4px);padding:28px;overflow:auto;display:none}body.ep-preview-open .ep-preview-modal{display:block}.ep-preview-modal .ep-preview-inner{max-width:1100px;margin:0 auto;background:#fff;border-radius:16px;padding:22px;box-shadow:0 25px 70px rgba(0,0,0,.3)}.ep-preview-close{position:sticky;top:0;float:right;z-index:3}.ep-fade{animation:epFade .35s ease both}@keyframes epFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.ep-quick{grid-template-columns:1fr 1fr}}@media(max-width:640px){.ep-quick{grid-template-columns:1fr}.ep-hero{padding:20px}.ep-preview-modal{padding:10px}}
@media print{.ep-preview-modal{position:static!important;display:block!important;background:#fff!important;padding:0!important;overflow:visible!important}.ep-preview-inner{box-shadow:none!important;border-radius:0!important;padding:0!important;max-width:none!important}.ep-preview-close{display:none!important}}

/* Rev3: preview is NEVER visible until user explicitly opens it */
.ep-preview-shell,
.document-preview.ep-preview-shell,
.doc-preview.ep-preview-shell,
.quotation-preview.ep-preview-shell,
.proposal-preview.ep-preview-shell,
.preview-shell.ep-preview-shell {display:none !important;visibility:hidden !important;height:0 !important;overflow:hidden !important;margin:0 !important;padding:0 !important;border:0 !important;}
body:not(.ep-preview-open) .ep-preview-modal {display:none !important;}
body.ep-preview-open .ep-preview-modal {display:block !important;}
/* Full editor width while preview is closed */
body:not(.ep-preview-open) .workspace,
body:not(.ep-preview-open) .workspace-main,
body:not(.ep-preview-open) .editor-pane,
body:not(.ep-preview-open) .editor-column,
body:not(.ep-preview-open) .workspace-editor {width:100% !important;max-width:none !important;grid-column:1/-1 !important;}
