:root{--bg: #F7F3EB;--ink: #221E1B;--meta: #6B6560;--line: #E4DDD1;--rule: #CDC3B4;--card: #FDFBF7;--scrim: rgba(247, 243, 235, .78);--shadow: 0 18px 44px rgba(34, 30, 27, .07);--signal: #D97746;--signal-dim: #66705F;--card-min: 320px;--radius: 4px;--font-serif: "Newsreader", Georgia, serif;--font-display: "Bodoni Moda", Didot, Georgia, serif;--font-mono: "JetBrains Mono", monospace}html[data-theme=dark]{--bg: #0C0B0E;--ink: #F2EEE6;--meta: #9A9288;--line: #221F23;--rule: #332E33;--card: #131215;--scrim: rgba(12, 11, 14, .82);--shadow: 0 18px 44px rgba(0, 0, 0, .55);--signal: #D97746;--signal-dim: #8E9A8E}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .25s ease,color .25s ease}.wordmark{display:inline-flex;align-items:baseline;text-decoration:none;border-bottom:none!important;color:var(--ink)}.wordmark i{display:inline-block;width:.13em;height:.13em;margin-left:.06em;border-radius:50%;background:var(--signal);vertical-align:baseline;flex-shrink:0}.mono-tracked{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}.pill-btn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--meta);background:transparent;border:1px solid var(--line);border-radius:999px;padding:7px 13px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,border-color .15s ease,background-color .15s ease}.pill-btn:hover{color:var(--ink);border-color:var(--rule)}.pill-btn.primary{color:var(--bg);background:var(--ink);border:none}.pill-btn.primary:hover{opacity:.86}.circle-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:17px;font-weight:300;color:var(--bg);background:var(--ink);border:none;border-radius:999px;cursor:pointer;line-height:1;transition:opacity .15s ease,transform .15s ease}.circle-btn:hover{opacity:.84;transform:scale(1.04)}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-rise{animation:riseIn .4s ease both}.app-shell{min-height:100vh;background:var(--bg);color:var(--ink);padding:26px 30px 48px;display:flex;flex-direction:column;gap:24px}.app-header{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap}.brand-lockup{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.brand-heading{margin:0;font-size:inherit;font-weight:inherit;display:inline-flex;align-items:baseline}.brand-title{font-family:var(--font-serif);font-weight:400;font-size:34px;line-height:1;letter-spacing:0;color:var(--ink);white-space:nowrap}.brand-tagline{font-family:var(--font-serif);font-style:italic;font-weight:300;font-size:17px;line-height:1.3;letter-spacing:.005em;color:var(--meta)}.header-controls{display:flex;align-items:center;gap:10px;align-self:center}.cards-canvas{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--card-min),1fr));grid-auto-rows:minmax(280px,auto);gap:18px;flex:1;transition:all .35s ease}.cards-canvas.gallery-mode{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(300px,1fr);gap:22px}@media(max-width:880px){.cards-canvas.gallery-mode{grid-template-columns:1fr;grid-auto-rows:auto}}.cards-canvas.gallery-mode .cadence-card{padding:34px 40px 28px;min-height:290px;justify-content:space-between}.cards-canvas.gallery-mode .card-value{font-size:clamp(72px,15cqi,125px)}.cards-canvas.gallery-mode .card-phrase{font-size:clamp(20px,3.4cqi,27px);max-width:34ch;line-height:1.3}.cards-canvas.gallery-mode .reducing-bar-track{height:7px}.cards-canvas.gallery-mode .reducing-bar-endpoint{font-size:10.5px}.cards-canvas.poster-mode{min-height:calc(100vh - 140px);grid-template-columns:1fr}.cards-canvas.poster-mode .cadence-card{min-height:calc(100vh - 140px);padding:48px 56px 36px;justify-content:space-between}.cards-canvas.poster-mode .card-value{font-size:clamp(80px,15vw,180px)}.cards-canvas.poster-mode .card-phrase{font-size:clamp(24px,3.2vw,42px);max-width:32ch}.cadence-card{position:relative;container-type:inline-size;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px 32px 24px;display:flex;flex-direction:column;gap:20px;overflow:hidden;animation:riseIn .45s ease both;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.cadence-card:hover{border-color:var(--rule);box-shadow:var(--shadow)}.cadence-card[data-expired=true]{opacity:.52}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-kind{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta)}.card-example-tag{font-family:var(--font-mono);font-size:9px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--meta);padding:2px 7px;border:1px solid var(--line);border-radius:999px;line-height:1.4;opacity:.72;-webkit-user-select:none;user-select:none;transition:opacity .2s ease,border-color .2s ease}.cadence-card:hover .card-example-tag{opacity:.95;border-color:var(--rule)}.card-content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:0}.card-value{font-family:var(--font-display);font-weight:500;font-optical-sizing:none;font-variation-settings:"opsz" 10;font-size:clamp(62px,21cqi,140px);line-height:.9;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink)}.card-phrase{font-family:var(--font-serif);font-size:clamp(19px,4.6cqi,30px);line-height:1.25;max-width:26ch;text-wrap:pretty;color:var(--ink)}.viz-container{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.reducing-bar-viz{display:flex;flex-direction:column;gap:8px}.reducing-bar-header{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--meta)}.reducing-bar-endpoint{color:var(--ink);font-weight:500}.reducing-bar-arrow{color:var(--meta);font-size:11px}.reducing-bar-track{width:100%;height:6px;background:var(--line);border:1px solid var(--rule);border-radius:2px;overflow:hidden;position:relative}html[data-theme=dark] .reducing-bar-track{background:#ffffff0d;border-color:#ffffff1f}.reducing-bar-fill{height:100%;background:var(--ink);border-radius:1px;transition:width .4s ease}.cadence-card:hover .reducing-bar-fill{opacity:.88}.viz-note{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--meta)}.card-footer{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:14px}.card-horizon{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--meta)}.card-edit-btn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--meta);background:transparent;border:none;padding:2px 0;cursor:pointer;transition:color .15s ease}.card-edit-btn:hover{color:var(--ink)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:#221e1b59;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;justify-content:flex-end;opacity:1;transition:opacity .25s ease}html[data-theme=dark] .drawer-overlay{background:#000000a6}.drawer-overlay[hidden]{display:none!important}.drawer-panel{width:min(480px,92vw);height:100vh;background:var(--bg);border-left:1px solid var(--line);box-shadow:-14px 0 42px #0000001f;display:flex;flex-direction:column;animation:slideInRight .3s cubic-bezier(.16,1,.3,1) both;overflow:hidden}@media(max-width:640px){.drawer-overlay{align-items:flex-end}.drawer-panel{width:100%;height:auto;max-height:88vh;border-left:none;border-top:1px solid var(--line);border-radius:16px 16px 0 0;animation:slideInBottom .3s cubic-bezier(.16,1,.3,1) both}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0}.drawer-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta);margin:0;font-weight:400}.drawer-close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:15px;font-weight:300;color:var(--meta);background:transparent;border:none;border-radius:50%;cursor:pointer;transition:color .15s ease,background .15s ease}.drawer-close-btn:hover{color:var(--ink);background:var(--line)}.drawer-body{flex:1;overflow-y:auto;padding:26px 28px 40px;display:flex;flex-direction:column;gap:22px}.archive-list{display:flex;flex-direction:column}.archive-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.archive-row:last-child{border-bottom:none}.archive-phrase{font-family:var(--font-serif);font-size:18px;line-height:1.35;color:var(--ink)}.archive-actions{display:flex;gap:14px;flex-shrink:0}.archive-action-btn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--meta);background:transparent;border:none;cursor:pointer;padding:4px;transition:color .15s ease}.archive-action-btn:hover{color:var(--ink)}.archive-empty{font-family:var(--font-serif);font-style:italic;font-size:20px;color:var(--meta);text-align:center;padding:40px 0}.about-drawer-lead{font-family:var(--font-serif);font-size:24px;line-height:1.35;color:var(--ink)}.about-definition{display:flex;flex-direction:column;gap:4px;padding:16px 18px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.about-def-word{font-family:var(--font-serif);font-size:20px;font-weight:500;color:var(--ink)}.about-def-text{font-family:var(--font-serif);font-size:15.5px;line-height:1.45;color:var(--meta)}.about-def-sub{font-family:var(--font-serif);font-size:14px;line-height:1.45;color:var(--meta);padding-top:8px;border-top:1px solid var(--line);margin-top:4px}.about-section-block{display:flex;flex-direction:column;gap:6px}.about-section-heading{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--meta);margin:0;font-weight:400}.about-section-text{font-family:var(--font-serif);font-size:16px;line-height:1.55;color:var(--ink)}.about-drawer-quote{padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.about-quote-text{font-family:var(--font-serif);font-style:italic;font-size:15px;line-height:1.5;color:var(--ink)}.about-quote-author{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--meta)}.empty-canvas{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;gap:16px;border:1px dashed var(--rule);border-radius:var(--radius);padding:40px 20px}.empty-title{font-size:28px;font-style:italic;color:var(--meta)}.app-footer{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap}.app-footer-notice{font-family:var(--font-mono);font-size:10.5px;line-height:1.7;letter-spacing:.04em;color:var(--meta)}.app-footer-links{display:flex;align-items:baseline;gap:22px;flex-wrap:wrap;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}.app-footer-links a,.footer-link-btn{color:var(--meta);text-decoration:none;background:transparent;border:none;border-bottom:1px solid var(--line);padding:0 0 2px;margin:0;font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;transition:color .15s ease,border-color .15s ease}.app-footer-links a:hover,.footer-link-btn:hover{color:var(--ink);border-color:var(--rule)}.footer-year{color:var(--meta);letter-spacing:.14em}.noscript-notice{padding:28px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);max-width:620px;margin:20px auto;text-align:center}.noscript-notice h2{font-family:var(--font-serif);font-size:24px;font-weight:400;margin:0 0 12px;color:var(--ink)}.noscript-notice p{font-family:var(--font-serif);font-size:16px;line-height:1.6;color:var(--meta);margin:0 0 10px}.composer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:28px;background:var(--scrim);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:fadeIn .25s ease both}.composer-overlay[hidden]{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.composer-modal{position:relative;width:min(780px,100%);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:46px 44px 38px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:32px;animation:riseIn .35s ease both}.composer-close-btn{position:absolute;top:16px;right:16px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:15px;font-weight:300;line-height:1;color:var(--meta);background:transparent;border:none;cursor:pointer;border-radius:50%;transition:color .15s ease,background .15s ease}.composer-close-btn:hover{color:var(--ink);background:var(--line)}.mode-switch-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.mode-pill-toggle{display:flex;padding:3px;border:1px solid var(--line);border-radius:999px;gap:3px;background:var(--bg)}.mode-btn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;padding:8px 18px;border:none;border-radius:999px;cursor:pointer;background:transparent;color:var(--meta);transition:all .15s ease}.mode-btn.active{background:var(--ink);color:var(--bg)}.mode-hint{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--meta)}.sentence-builder{font-family:var(--font-serif);font-size:clamp(24px,3.2vw,38px);line-height:1.95;letter-spacing:-.01em;color:var(--ink)}.sentence-builder select,.sentence-builder input{font-family:inherit;font-size:inherit;color:var(--ink);background:transparent;border:none;border-bottom:1.5px solid var(--rule);padding:0 5px 3px;cursor:pointer;outline:none;transition:border-color .15s ease;vertical-align:baseline}.sentence-builder select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;text-decoration:none}.sentence-builder select:hover,.sentence-builder select:focus,.sentence-builder input:focus{border-bottom-color:var(--ink)}.sentence-builder select option{background:var(--bg);color:var(--ink);font-family:var(--font-serif);font-size:18px}.sentence-builder input{min-width:14ch;max-width:100%}.sentence-builder input::placeholder{color:var(--rule);font-style:italic}.composer-bottom{display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--line);padding-top:20px}.preview-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.preview-tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--meta)}.preview-output{font-family:var(--font-serif);font-size:16px;letter-spacing:.02em;color:var(--ink)}.composer-actions-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.composer-actions-row .commit-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bg);background:var(--ink);border:none;border-radius:999px;padding:13px 26px;cursor:pointer;transition:opacity .15s ease}.composer-actions-row .commit-btn:hover{opacity:.84}.composer-actions-row .alt-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta);background:transparent;border:1px solid var(--line);border-radius:999px;padding:12px 22px;cursor:pointer;transition:color .15s ease,border-color .15s ease}.composer-actions-row .alt-btn:hover{color:var(--ink);border-color:var(--rule)}.composer-actions-row .cancel-text-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta);background:transparent;border:none;padding:12px 6px;cursor:pointer;transition:color .15s ease}.composer-actions-row .cancel-text-btn:hover{color:var(--ink)}.composer-footnote{font-family:var(--font-mono);font-size:10.5px;line-height:1.7;letter-spacing:.04em;color:var(--meta)}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--scrim);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:feedbackFadeIn .2s ease both}.feedback-overlay[hidden]{display:none!important}@keyframes feedbackFadeIn{0%{opacity:0}to{opacity:1}}.feedback-modal{position:relative;width:min(520px,100%);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:36px 34px 30px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:20px;animation:feedbackRiseIn .25s cubic-bezier(.16,1,.3,1) both}@keyframes feedbackRiseIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.feedback-close-btn{position:absolute;top:16px;right:16px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:15px;font-weight:300;line-height:1;color:var(--meta);background:transparent;border:none;cursor:pointer;border-radius:50%;transition:color .15s ease,background .15s ease}.feedback-close-btn:hover{color:var(--ink);background:var(--line)}.feedback-header{display:flex;flex-direction:column;gap:6px}.feedback-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta)}.feedback-lead{font-family:var(--font-serif);font-size:16px;line-height:1.45;color:var(--ink)}.feedback-form{display:flex;flex-direction:column;gap:14px}.feedback-textarea-wrap{display:flex;flex-direction:column;gap:4px}.feedback-textarea{font-family:var(--font-serif);font-size:15.5px;line-height:1.5;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;min-height:120px;resize:vertical;width:100%;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.feedback-textarea:focus{border-color:var(--rule);outline:none;box-shadow:0 0 0 1px var(--rule)}.feedback-textarea::placeholder{color:var(--meta);font-style:italic;opacity:.75}.feedback-counter-row{display:flex;justify-content:flex-end}.feedback-counter{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;color:var(--meta);font-variant-numeric:tabular-nums}.feedback-counter.limit-near{color:#c2410c}.feedback-email-wrap{display:flex;flex-direction:column;gap:4px}.feedback-email-input{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.02em;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;width:100%;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.feedback-email-input:focus{border-color:var(--rule);outline:none;box-shadow:0 0 0 1px var(--rule)}.feedback-email-input::placeholder{color:var(--meta);font-style:italic;opacity:.7}.hp-trap-field{position:absolute!important;left:-9999px!important;top:-9999px!important;opacity:0!important;width:1px!important;height:1px!important;overflow:hidden!important;pointer-events:none!important}.feedback-error{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:#dc2626;padding:8px 12px;background:#dc262614;border:1px solid rgba(220,38,38,.2);border-radius:var(--radius)}.feedback-actions-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:6px}.feedback-cancel-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--meta);background:transparent;border:none;padding:10px 14px;cursor:pointer;transition:color .15s ease}.feedback-cancel-btn:hover{color:var(--ink)}.feedback-submit-btn{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--bg);background:var(--ink);border:1px solid var(--ink);border-radius:999px;padding:10px 22px;cursor:pointer;transition:opacity .15s ease,background .15s ease}.feedback-submit-btn:hover:not(:disabled){opacity:.85}.feedback-submit-btn:disabled{opacity:.45;cursor:not-allowed}.feedback-success-card{padding:32px 0 16px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;animation:feedbackFadeIn .3s ease both}.feedback-success-title{font-family:var(--font-serif);font-size:20px;font-style:italic;color:var(--ink)}.feedback-success-sub{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--meta)}
