.journal{--j-line:#354055;--j-soft:#aebbd0;--j-accent:#d6b5ff;color:#edf1f8;max-width:1180px;margin:0 auto;padding:28px 20px 60px}.journal a{color:#ddc1ff}.journal h1{font-size:clamp(2rem,5vw,3.7rem);line-height:1.08;margin:.4em 0}.journal h2{font-size:1.45rem;line-height:1.35}.journal p{line-height:1.7}.journal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.j-panel{background:#182131;border:1px solid var(--j-line);border-radius:18px;padding:24px;margin:20px 0}.j-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.j-metrics a{background:#202a3c;border:1px solid var(--j-line);border-radius:14px;padding:20px;text-decoration:none}.j-metrics strong{display:block;font-size:2.1rem;color:#fff}.j-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.j-columns>.j-panel{margin:0}.journal label{display:block;margin:18px 0 8px;font-weight:600}.journal input:not([type=checkbox]),.journal textarea,.journal select{display:block;box-sizing:border-box;width:100%;background:#101827;border:1px solid #52617a;border-radius:9px;padding:12px;color:#f4f6fc;margin-top:8px;font:inherit}.journal textarea{resize:vertical;line-height:1.6}.journal .j-editor{font-family:ui-monospace,monospace;font-size:.95rem}.j-button{display:inline-block;padding:12px 18px;border:1px solid #d6b5ff;border-radius:9px;background:#d6b5ff;color:#241139!important;font-weight:700;text-decoration:none;cursor:pointer;font-size:.94rem}.j-secondary{background:transparent;color:#ddc1ff!important}.j-muted{color:var(--j-soft);font-size:.88rem}.j-notice{border-left:3px solid var(--j-accent);padding:16px 20px;background:#25263d;margin:20px 0;line-height:1.6}.j-tabs,.j-actions{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0}.j-tabs a{padding:8px 12px}.j-tabs [aria-current]{background:#34304b;border-radius:8px}.j-table{overflow:auto}.j-table table{width:100%;border-collapse:collapse;text-align:left}.j-table th,.j-table td{padding:16px 12px;border-bottom:1px solid var(--j-line)}.j-badge{display:inline-block;border:1px solid #64577b;border-radius:20px;padding:3px 10px;color:#e1caff;font-size:.8rem}.j-job{padding:18px 0;border-bottom:1px solid var(--j-line)}.journal .j-check{display:flex;align-items:flex-start;gap:12px;line-height:1.5}.j-check input{margin-top:5px}.j-hero{padding:32px 0}.j-hero>p{font-size:1.2rem;color:#c3ccdb}.j-articles{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.j-articles>.j-panel{margin:0}.j-story{max-width:800px}.j-story figure{margin:15px 0 32px}.j-story figure img{width:100%;max-height:580px;object-fit:contain;background:#101827;border-radius:16px}.j-story figcaption{margin-top:10px}.j-prose{font-size:1.1rem;line-height:1.8}.j-prose p{white-space:pre-wrap;overflow-wrap:anywhere}.j-prose h2{margin-top:2em}.j-video{margin:30px 0}.j-video summary{cursor:pointer;padding:16px;background:#25263d;border-radius:9px}.j-video iframe{width:100%;aspect-ratio:16/9;border:0}.journal :focus-visible{outline:3px solid #e8ceff;outline-offset:4px}@media(max-width:700px){.j-columns,.j-articles{grid-template-columns:1fr}.journal-heading{align-items:flex-start;flex-direction:column}.j-metrics{gap:8px}.j-metrics a{padding:13px}.j-panel{padding:18px}.journal{padding:20px 14px}.j-metrics strong{font-size:1.7rem}}


/* JOURNAL_V11_STYLES: shared by public stories and the Journal admin */
.j-story{max-width:760px}
.j-story .j-hero{padding:20px 0 15px}
.j-story .j-hero h1{font-size:clamp(1.75rem,4.3vw,2.65rem);line-height:1.18;letter-spacing:-.02em}
.j-story .j-hero>p{font-size:1.01rem;line-height:1.55}
.j-prose{font-size:1rem;line-height:1.72;overflow-wrap:anywhere}
.j-prose p{white-space:normal;margin:0 0 1.12em;line-height:1.72}
.j-prose h2{font-size:1.48rem;line-height:1.28;margin:1.75em 0 .65em;font-weight:750;letter-spacing:-.012em}
.j-prose h3{font-size:1.15rem;line-height:1.38;margin:1.4em 0 .5em}
.j-prose ul{padding-left:1.4rem;margin:1rem 0 1.2rem}
.j-prose li{margin:.5em 0}
.j-story .j-next-label{font-weight:700;color:#ebd6ff;font-size:1rem;margin:0 0 8px}
.j-story .j-video{max-width:100%;margin:20px auto 28px}
.j-story .j-video iframe{display:block;width:100%;aspect-ratio:16/9;border-radius:9px;margin-top:12px}
.journal input:not([type=checkbox]), .journal textarea, .journal select{font-size:16px;min-height:46px}
.journal textarea{min-height:110px}
.journal .j-editor{font-size:16px;line-height:1.6;min-height:320px;tab-size:2}
.journal label{font-size:.97rem}
.j-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.j-quick-actions a{border:1px solid #525f7a;padding:10px 12px;border-radius:10px;background:#1b2638;text-decoration:none;font-size:.94rem}
.j-tools{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 0}
.j-tools button{background:#26334a;border:1px solid #63738e;color:#fff;border-radius:9px;padding:10px 12px;min-height:44px;font:600 14px/1.2 system-ui,sans-serif;cursor:pointer}
.j-tools button:focus-visible{outline:3px solid #d6b5ff}
.j-editor-label{margin:8px 0!important}
.j-live-preview{padding:18px;background:#101827;border:1px solid #67728a;border-radius:12px;margin:14px 0}
.j-live-preview>h2{font-size:1.05rem;margin:0 0 10px;color:#d6b5ff}
.j-live-preview .j-prose{font-size:1rem}
.j-actions button{min-height:46px}
.j-dashboard-shortcuts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media(max-width:700px){
  .journal{padding:12px 12px 50px;max-width:100%}
  .journal h1{font-size:1.9rem;line-height:1.15}
  .journal h2{font-size:1.2rem}
  .journal p{line-height:1.55}
  .journal .j-panel{padding:15px;margin:14px 0;border-radius:13px}
  .journal .journal-heading{gap:8px;margin-bottom:10px}
  .journal .journal-heading .j-button{width:100%;text-align:center;box-sizing:border-box}
  .journal .j-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
  .journal .j-metrics{gap:6px;margin:14px 0}
  .journal .j-metrics a{min-width:0;padding:10px 8px;overflow-wrap:anywhere;font-size:.85rem}
  .journal .j-metrics strong{font-size:1.45rem}
  .journal .j-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .journal .j-quick-actions a{font-size:.86rem}
  .journal .j-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .journal .j-tools button{padding:10px 3px;font-size:.82rem}
  .journal .j-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .journal .j-actions .j-button{width:100%;box-sizing:border-box}
  .journal .j-table{overflow:visible}
  .journal .j-table table,.journal .j-table tbody,.journal .j-table tr,.journal .j-table td{display:block;width:100%;box-sizing:border-box}
  .journal .j-table thead{display:none}
  .journal .j-table tr{background:#121d30;border:1px solid #354055;border-radius:10px;padding:12px;margin:12px 0}
  .journal .j-table td{border:0;padding:5px 0;font-size:.94rem;overflow-wrap:anywhere}
  .journal .j-table td:nth-child(2):before{content:'Status: ';color:#b4bfd2}
  .journal .j-table td:nth-child(3):before{content:'Publish: ';color:#b4bfd2}
  .journal .j-table td:last-child a{display:inline-block;padding:11px 0;font-weight:700}
  .journal .j-tabs{overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;padding-bottom:8px}
  .journal .j-notice{padding:12px 14px;font-size:.9rem}
  .journal .j-hero h1{font-size:1.87rem}
  .journal .j-story .j-hero>p{font-size:1rem}
  .journal .j-prose{font-size:1rem;line-height:1.62}
  .journal .j-prose h2{font-size:1.3rem;line-height:1.32;margin:1.5em 0 .6em}
  .journal .j-prose h3{font-size:1.12rem}
}


/* WaifuDreams Journal approval checkbox alignment */
.j-check-fixed {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

.j-check-fixed input[type="checkbox"] {
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
}

.j-check-fixed span {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
}
