/* =================================================================
   AI LANDLORD — LEGAL / CONTENT pages (load AFTER al.css)
   Quiet editorial document pages in the Night Shift Dossier system.
================================================================= */
body.legal { background: var(--paper); color: var(--ink); }

/* top bar (dark, secure) */
.lbar { background: var(--night-2); border-bottom: 1px solid var(--line-d2); position: sticky; top: 0; z-index: 60; }
.lbar-inner { max-width: 880px; margin: 0 auto; padding: 15px 32px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.lbar .brand { color: var(--bone); }
.lbar .brand small { opacity: .55; }
.lbar .back { font-family: var(--mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: rgba(246,241,231,.62); display: inline-flex; align-items: center; gap: 8px; transition: color .2s; }
.lbar .back:hover { color: var(--ember-2); }
@media (max-width: 560px) { .lbar .brand .brand-name { display: none; } }

/* document shell */
.ldoc { max-width: 760px; margin: 0 auto; padding: 64px 32px 120px; }
@media (max-width: 560px) { .ldoc { padding: 44px 22px 90px; } }

.ldoc-head { border-bottom: 1px solid var(--ink); padding-bottom: 34px; margin-bottom: 44px; }
.ldoc-head .kicker { font-family: var(--mono); font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pine); display: inline-flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.ldoc-head .kicker::before { content: ""; width: 30px; height: 1.5px; background: var(--ember); }
.ldoc-head h1 { font-family: var(--disp); font-weight: 800; font-size: clamp(34px, 6vw, 54px); letter-spacing: -.035em; line-height: 1; color: var(--ink); }
.ldoc-head .updated { font-family: var(--mono); font-size: 12px; letter-spacing: .04em; color: var(--ink-3); margin-top: 18px; display: flex; flex-wrap: wrap; gap: 8px 22px; }
.ldoc-head .updated b { color: var(--ink-2); font-weight: 600; }

/* lede / summary callout */
.ldoc-lede { background: var(--paper-2); border: 1px solid var(--line); border-left: 3px solid var(--ember); border-radius: var(--r); padding: 22px 24px; margin-bottom: 44px; }
.ldoc-lede p { font-size: 16.5px; line-height: 1.6; color: var(--ink-2); }
.ldoc-lede p strong { color: var(--ink); font-weight: 600; }

/* body typography */
.ldoc-body h2 { font-family: var(--disp); font-weight: 700; font-size: 23px; letter-spacing: -.02em; color: var(--ink); margin: 46px 0 14px; display: flex; align-items: baseline; gap: 14px; }
.ldoc-body h2 .n { font-family: var(--mono); font-size: 13px; font-weight: 600; color: var(--ember); flex: none; }
.ldoc-body h3 { font-family: var(--disp); font-weight: 700; font-size: 17px; color: var(--ink); margin: 28px 0 8px; }
.ldoc-body p { font-size: 16px; line-height: 1.68; color: var(--ink-2); margin: 12px 0; }
.ldoc-body a { color: var(--pine); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: rgba(46,90,64,.35); }
.ldoc-body a:hover { text-decoration-color: var(--pine); }
.ldoc-body strong { color: var(--ink); font-weight: 600; }
.ldoc-body ul { list-style: none; margin: 14px 0; display: grid; gap: 11px; }
.ldoc-body ul li { position: relative; padding-left: 26px; font-size: 16px; line-height: 1.6; color: var(--ink-2); }
.ldoc-body ul li::before { content: ""; position: absolute; left: 4px; top: 10px; width: 7px; height: 7px; border-radius: 2px; background: var(--ember); transform: rotate(45deg); }
.ldoc-body .fine { font-size: 13.5px; color: var(--ink-3); line-height: 1.6; }

/* table for content sections (e.g. what we collect) */
.ldoc-table { width: 100%; border-collapse: collapse; margin: 18px 0; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; }
.ldoc-table th { text-align: left; font-family: var(--mono); font-weight: 600; font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); padding: 11px 16px; background: var(--paper-3); }
.ldoc-table td { padding: 13px 16px; border-top: 1px solid var(--line-2); font-size: 14.5px; color: var(--ink-2); line-height: 1.5; vertical-align: top; }
.ldoc-table td b { color: var(--ink); font-family: var(--disp); }

/* refund highlight card */
.refund-seal { display: grid; grid-template-columns: 64px 1fr; gap: 22px; align-items: center; background: var(--night); color: var(--bone); border-radius: var(--r-lg); padding: 28px 30px; margin: 8px 0 40px; box-shadow: var(--shadow-d); }
.refund-seal .seal { width: 64px; height: 64px; border-radius: 50%; border: 1.5px solid rgba(240,169,78,.45); display: grid; place-items: center; color: var(--ember-2); flex: none; }
.refund-seal h2 { font-family: var(--disp); font-weight: 700; font-size: 22px; color: var(--bone); margin: 0 0 6px; }
.refund-seal p { color: rgba(246,241,231,.72); font-size: 15px; line-height: 1.55; margin: 0; }
.refund-seal a { color: var(--ember-2); }

/* doc footer nav */
.ldoc-foot { margin-top: 64px; padding-top: 30px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: center; }
.ldoc-foot a { font-family: var(--mono); font-size: 12px; letter-spacing: .04em; color: var(--ink-3); text-decoration: none; transition: color .2s; }
.ldoc-foot a:hover { color: var(--pine); }
.ldoc-foot .sep { color: var(--line); }
.ldoc-foot .copy { margin-left: auto; font-family: var(--mono); font-size: 11px; color: var(--ink-3); letter-spacing: .03em; }
