/* Production templates keep their form actions and controls; these rules give them
   the spacing, surfaces and typography of the supplied redesign. */
:root { --bs-body-color: var(--text); --bs-body-bg: var(--bg); --bs-border-color: var(--line); --bs-secondary-color: var(--muted); --bs-tertiary-color: var(--quiet); --bs-emphasis-color: var(--text); --bs-heading-color: var(--text); }
[data-bs-theme="light"] { --bs-body-color: var(--text); --bs-body-bg: var(--bg); --bs-border-color: var(--line); --bs-secondary-color: var(--muted); --bs-tertiary-color: var(--quiet); --bs-emphasis-color: var(--text); --bs-heading-color: var(--text); }
body { background: var(--bg); color: var(--text); }
a { color: inherit; }
a:hover { color: var(--cyan); }
h1,h2,h3,h4,h5,h6 { color: var(--text); }
[data-theme="light"] .text-body-secondary { color: var(--muted)!important; }
[data-theme="light"] .text-body-tertiary { color: var(--quiet)!important; }
.site-header .menu-btn { display: none; }
.ev-page { width: 100%; max-width: 1440px; margin: 0 auto; padding: 28px 40px 64px !important; }
.ev-page-narrow { max-width: 1050px; }
.ev-page h1 { font-size: clamp(25px,3vw,32px); letter-spacing:-.025em; font-weight:600; }
.ev-page h2 { font-size:17px; font-weight:600; }
.ev-page .eyebrow { font-size:12px; text-transform:uppercase; letter-spacing:.09em; color:var(--quiet); }
.ev-page .ev-back { display:inline-block; margin-bottom:20px; color:var(--muted); font-size:14px; }
.ev-page .card,.ev-marketing .card { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); color:var(--text); box-shadow:none; overflow:hidden; }
.ev-page .card-header,.ev-marketing .card-header { background:var(--surface); border-color:var(--line); }
.ev-page .card-body { padding:20px !important; }
.ev-page .table-responsive { border-radius:var(--r-lg); }
.ev-page .table { --bs-table-color:var(--text); --bs-table-bg:transparent; --bs-table-border-color:var(--line); --bs-table-hover-color:var(--text); --bs-table-hover-bg:var(--hover); margin-bottom:0; }
.ev-page .table th { font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.08em; color:var(--quiet); padding:12px 18px; white-space:nowrap; }
.ev-page .table td { padding:14px 18px; border-color:var(--line); }
.ev-page .table td a { color:var(--text); }
.ev-page .table td a:hover { color:var(--cyan); }
.ev-page .form-control,.ev-page .form-select { color:var(--text); background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm); min-height:42px; }
.ev-page .form-control:focus,.ev-page .form-select:focus { color:var(--text); background:var(--surface); border-color:var(--cyan); box-shadow:0 0 0 3px var(--cyan-soft); }
.ev-page .form-label { font-size:13px; font-weight:500; color:var(--muted); }
.ev-page .list-group-item { background:var(--surface); border-color:var(--line); color:var(--text); padding:16px 20px; }
.ev-page .list-group-item:hover { background:var(--hover); }
.ev-page .ev-env { background:var(--code-bg); color:var(--text); border:1px solid var(--line-2); min-height:300px; }
.ev-page .ev-plaintext { background:var(--code-bg); color:var(--text); border:1px solid var(--line); border-radius:var(--r-sm); padding:16px; overflow:auto; }
.ev-page .ev-stat { font-size:34px; font-weight:600; color:var(--text); }
.ev-page .badge { border-radius:4px; }
.ev-page .btn-outline-secondary,.ev-marketing .btn-outline-secondary { border:1px solid var(--line-2); background:var(--surface); color:var(--text); }
.ev-page .btn-outline-secondary:hover,.ev-marketing .btn-outline-secondary:hover { background:var(--hover); color:var(--text); }
.ev-page .btn-outline-danger { color:var(--danger); border:1px solid var(--danger); }
.ev-page .btn-outline-danger:hover { background:var(--danger-soft); color:var(--danger); }
.ev-page .btn-primary,.ev-marketing .btn-primary { background:var(--cyan); color:var(--cyan-ink); border-color:var(--cyan); }
.ev-page .btn-primary:hover,.ev-marketing .btn-primary:hover { background:var(--cyan-hover); border-color:var(--cyan-hover); color:var(--cyan-ink); }
.ev-page .btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.ev-page .ev-notice { border-radius:var(--r-sm); padding:12px 16px; }
.ev-page summary { padding:16px 20px; cursor:pointer; }
.ev-page .form-check-input { background-color:var(--bg-2); border-color:var(--line-2); }
.ev-page .form-check-input:checked { background-color:var(--cyan); border-color:var(--cyan); }
.ev-marketing .container-xl { max-width:1200px; }
.ev-marketing .ev-landing-hero { padding:96px 0 80px; text-align:center; background:radial-gradient(circle at 50% 85%, rgba(8,223,241,.08), transparent 48%),var(--bg); }
.ev-marketing .ev-landing-hero .row { justify-content:center; }
.ev-marketing .ev-landing-hero .col-lg-6 { width:100%; max-width:1100px; }
.ev-marketing .ev-landing-hero .ev-display { max-width:900px; margin:auto; font-size:clamp(44px,6vw,76px); line-height:1.08; letter-spacing:-.055em; }
.ev-marketing .ev-landing-hero .ev-lead { max-width:650px; margin:20px auto 26px; font-size:18px; }
.ev-marketing .ev-landing-hero .d-flex { justify-content:center; }
.ev-marketing .ev-landing-hero .ev-envelope { max-width:800px; margin:50px auto 0 !important; text-align:left; box-shadow:var(--shadow); }
.ev-marketing .ev-section { padding-top:72px; padding-bottom:72px; }
.ev-marketing .ev-section-title { font-size:clamp(28px,3vw,42px); letter-spacing:-.035em; }
.ev-marketing .ev-feature { border:1px solid var(--line); background:var(--surface); padding:22px; border-radius:var(--r-lg); height:100%; }
.ev-marketing .ev-cta { background:linear-gradient(140deg,var(--surface),var(--bg-2)); }
.ev-marketing main.container-xl { padding-top:64px !important; padding-bottom:90px !important; }
.ev-marketing main.container-xl h1 { font-size:clamp(36px,5vw,60px); letter-spacing:-.045em; }
.ev-marketing main.container-xl h2 { font-size:21px; }
.ev-marketing main.container-xl p,.ev-marketing main.container-xl li { color:var(--muted); }
.ev-marketing pre { background:var(--code-bg); color:var(--text); padding:20px; border-radius:var(--r-sm); overflow:auto; }
.ev-marketing .ev-footer { background:var(--surface); border-color:var(--line)!important; }
.ev-marketing .ev-footer a { color:var(--muted); }
.ev-marketing .ev-footer a:hover { color:var(--cyan); }
.ev-marketing .ev-footer ul { padding:0; list-style:none; }
.ev-marketing .ev-footer li { margin-bottom:7px; }
.ev-marketing .ev-footer .ev-brand { display:inline-flex; align-items:center; gap:8px; color:var(--text); }
.ev-marketing .ev-footer .ev-brand img { width:30px; height:30px; }
.ev-marketing .ev-footer-legal { border-color:var(--line)!important; }
.ev-marketing .ev-lockup { max-width:150px; height:auto; }
.ev-marketing .ev-price { font-size:42px; font-weight:600; color:var(--text); }
.ev-marketing .ev-price small { font-size:14px; color:var(--muted); }
@media(max-width:960px) { .ev-page { padding:24px 20px 60px !important; } .site-header .menu-btn { display:flex; } }
@media(max-width:680px) { .ev-page { padding:20px 16px 48px !important; } .ev-page .table th,.ev-page .table td { padding:10px 12px; } .ev-marketing .ev-landing-hero { padding:70px 0 50px; } }
.content:has(> .ev-vault-page) { display:flex; flex-direction:column; }
.ev-vault-page { width:100%; min-height:100%; }
.ev-vault-page .list-pane .badge { font-size:11px; padding:3px 6px; }
.ev-vault-page .list-pane .secret-row { color:var(--text); }
.ev-vault-page .list-pane .secret-row:hover { color:var(--text); }
.ev-vault-page .detail-inner { max-width:none; }
.ev-vault-page h1 { font-size:28px; margin-bottom:8px; }
.ev-vault-page .panel { overflow:hidden; }
.ev-vault-page .form-control,.ev-vault-page .form-select { color:var(--text); background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-sm); min-height:42px; }
.ev-vault-page .form-control:focus,.ev-vault-page .form-select:focus { color:var(--text); background:var(--surface); border-color:var(--cyan); box-shadow:0 0 0 3px var(--cyan-soft); }
.ev-vault-page .form-label { display:block; color:var(--muted); font-size:13px; margin-bottom:6px; }
.ev-vault-page .ev-env { background:var(--code-bg); color:var(--text); min-height:300px; font-family:var(--mono); }
.ev-vault-page .ev-detail-tabs { display:flex; gap:28px; border-bottom:1px solid var(--line); color:var(--quiet); font-size:14px; }
.ev-vault-page .ev-detail-tabs > * { padding:10px 4px; }
.ev-vault-page .ev-detail-tabs [aria-current="page"] { color:var(--text); border-bottom:2px solid var(--cyan); }
.ev-vault-page .table { --bs-table-color:var(--text); --bs-table-bg:transparent; --bs-table-border-color:var(--line); width:100%; }
.ev-vault-page .ev-back { display:block; color:var(--muted); font-size:13px; margin-bottom:6px; }
.ev-vault-page .detail-head .secret-icon { text-transform:uppercase; }
.ev-vault-page .badge { display:inline-block; }
.ev-pricing-stage { padding:40px; }
.ev-auth-page { min-height:70vh; }
.ev-auth-page .auth-main { width:55%; }
.ev-auth-page .auth-side { width:45%; }
.ev-auth-page .auth-card { max-width:480px; }
.ev-auth-page .auth-side h2 { font-size:24px; line-height:1.3; }
@media(max-width:960px) { .ev-vault-page { display:block; overflow:auto; } .ev-vault-page .list-pane { min-height:220px; max-height:35vh; border-bottom:1px solid var(--line); } .ev-vault-page .detail-inner { padding:24px 20px 60px; } .ev-auth-page .auth-main { width:100%; } .ev-auth-page .auth-side { display:none; } }
.ev-vault-preview { width:100%; height:auto; display:block; border-radius:var(--r-lg) var(--r-lg) 0 0; }
.ev-envelope-caption { border-top:1px solid var(--line); }
.ev-marketing .ev-envelope { max-width:980px !important; }
.ev-security-stage { padding:40px; }
.ev-marketing .flow-node h3 { font-size:16px; }
.ev-marketing .flow-node .holds { list-style:none; }
.ev-marketing .docs .doc-section pre { margin:0; }
.ev-marketing .docs-nav a { color:var(--muted); }
.ev-marketing .docs-nav a:hover { color:var(--cyan); }
.ev-new-page { max-width:1450px; }
.ev-new-page .composer { grid-template-columns:minmax(0,1.55fr) minmax(310px,.8fr); align-items:start; }
.ev-new-page .ev-new-side { display:grid; gap:16px; }
.ev-new-page .editor-wrap { min-height:580px; }
.ev-new-page .editor-body { min-height:510px; }
.ev-new-page .editor-body textarea { width:100%; min-height:510px; }
.ev-new-page .panel .field-label { display:block; margin-bottom:6px; }
.ev-new-page .panel .input,.ev-new-page .panel .select { width:100%; }
.ev-new-page .panel textarea.input { min-height:72px; }
.ev-new-page .panel .notice { margin-top:12px; }
@media(max-width:900px) { .ev-new-page .composer { grid-template-columns:1fr; } .ev-new-page .editor-wrap,.ev-new-page .editor-body,.ev-new-page .editor-body textarea { min-height:330px; } }
.ev-login .auth { min-height:100vh; min-height:100dvh; }
.ev-login .auth-main { position:relative; display:flex; flex-direction:column; justify-content:center; padding:100px clamp(28px,4vw,72px) 70px; }
.ev-login .ev-auth-top { position:absolute; top:38px; left:clamp(28px,4vw,72px); right:clamp(28px,4vw,72px); display:flex; align-items:center; justify-content:space-between; }
.ev-login .auth-card { width:100%; max-width:530px; }
.ev-login .auth-card h1 { font-size:clamp(28px,3vw,38px); }
.ev-login .auth-card .btn-google { display:flex; align-items:center; justify-content:center; gap:12px; }
.ev-google-mark { font-family:Arial,sans-serif; font-weight:700; font-size:24px; background:conic-gradient(#4285f4 0 25%,#34a853 25% 50%,#fbbc05 50% 75%,#ea4335 75%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ev-login .ev-auth-foot { position:absolute; bottom:38px; left:clamp(28px,4vw,72px); font-size:12px; }
.ev-login .auth-side { display:flex; align-items:center; padding:clamp(28px,4vw,72px); }
.ev-login .ev-auth-side-inner { max-width:620px; display:grid; gap:26px; }
.ev-login .ev-auth-side-inner h2 { font-size:25px; line-height:1.3; }
.ev-login .locked-list { width:100%; }
.ev-login .locked-row { display:flex; align-items:center; gap:14px; }
.ev-login .locked-row .quiet { margin-left:auto; }
@media(max-width:900px) { .ev-login .auth-main { min-height:100vh; } .ev-login .auth-side { display:none; } }
.topbar .ev-secret-search { flex:1; max-width:560px; }
.topbar .ev-secret-search .input { height:36px; width:100%; }
.ev-vault-page .list-filters .chip { cursor:pointer; }
.ev-vault-page .list-filters .chip[aria-pressed="true"] { background:var(--elev); color:var(--text); }
.app,.app .main,.app .content,.app .topbar { min-width:0; }
.app .content { overflow-x:hidden; }
.ev-new-page .composer,.ev-new-page .composer > *,.ev-new-page .editor-wrap,.ev-new-page .editor-body,.ev-new-page .editor-body textarea { min-width:0; max-width:100%; }
.ev-page .page-title > * { min-width:0; }
@media(max-width:680px) {
  .app .topbar { padding:0 12px; gap:8px; }
  .app .topbar .ev-secret-search { min-width:0; flex:1; }
  .app .topbar .ev-secret-search .input { width:100%; min-width:0; font-size:13px; }
  .app .topbar .topbar-actions { flex:none; }
  .app .topbar .topbar-actions .btn { width:36px; height:36px; padding:0; }
  .app .topbar .topbar-actions .new-secret-text { display:none; }
  .app .topbar .crumbs { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:12px; }
  .ev-vault-page .list-pane { width:100%; }
  .ev-vault-page .secret-list { width:100%; }
  .ev-vault-page .list-foot { gap:8px; }
  .ev-vault-page .list-foot span { white-space:nowrap; }
  .ev-new-page .page-title { display:block; }
  .ev-new-page .page-title p { overflow-wrap:anywhere; }
  .ev-new-page .editor-wrap,.ev-new-page .editor-body,.ev-new-page .editor-body textarea { width:100%; }
}
