.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-shell__nav{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #2d2040}.app-shell__nav-inner{max-width:960px;margin:0 auto;padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.app-shell__brand{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text);font-weight:600;letter-spacing:.01em}.app-shell__brand-mark{color:var(--accent);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.app-shell__links{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;justify-content:flex-end}.app-shell__link{display:inline-block;padding:.5rem .75rem;border-radius:8px;text-decoration:none;color:var(--muted);font-size:.875rem;transition:color .15s ease,background .15s ease}.app-shell__link:hover{color:var(--text);background:color-mix(in srgb,var(--surface) 80%,transparent)}.app-shell__link.is-active{color:var(--text);background:var(--surface);border:1px solid #3d2d58}.app-shell__main{flex:1;width:100%}.app-shell__content{max-width:960px;margin:0 auto;padding:2rem 1.5rem 1rem}.page-header{margin-bottom:2rem}.page-header--centered{text-align:center}.page-header__eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--accent);margin:0 0 .5rem}.page-header__title{font-size:clamp(1.75rem,4vw,2.5rem);margin:0 0 .75rem;font-weight:600;line-height:1.2}.page-header__description{margin:0;color:var(--muted);font-size:1rem;line-height:1.6;max-width:52ch}.page-header--centered .page-header__description{margin-inline:auto}.page-header__actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}.page-header--centered .page-header__actions{justify-content:center}.site-footer{margin-top:auto;border-top:1px solid #2d2040;padding:1.5rem}.site-footer__inner{max-width:960px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.75rem}.site-footer__links{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;justify-content:center}.site-footer__link{color:var(--muted);font-size:.875rem;text-decoration:none}.site-footer__link:hover{color:var(--text)}.site-footer__copy{margin:0;color:var(--muted);font-size:.75rem}@media(max-width:640px){.app-shell__nav-inner{flex-direction:column;align-items:stretch}.app-shell__links{justify-content:flex-start}}.chart-page__nav{display:flex;gap:1.25rem;margin-bottom:1.5rem}.chart-page__nav a{color:var(--muted);text-decoration:none;font-size:.9rem}.chart-page__nav a:hover{color:var(--accent)}.chart-page__header{margin-bottom:2rem}.chart-page__header h1{margin-bottom:.5rem}.chart-page__lead{margin:0;text-align:left}.chart-page__meta{margin:.5rem 0 0;color:var(--muted);font-size:.875rem;font-family:ui-monospace,monospace}.chart-page__transits{margin-bottom:1rem}.chart-page__transits-toggle{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.95rem;cursor:pointer}.chart-page__variables-upsell{margin:1.5rem 0;padding:1rem 1.25rem;border-radius:12px;border:1px solid #3d2d58;background:var(--surface)}.chart-page__variables-upsell h2{margin:0 0 .5rem;font-size:1rem;color:var(--accent)}.chart-page__variables-upsell p{margin:0;color:var(--muted)}.chart-page__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:1.5rem;align-items:start}.chart-page__graph{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1rem;display:flex;justify-content:center}.chart-page__svg{max-width:420px;width:100%;height:auto}.chart-page__note{margin-top:2rem;color:var(--muted);font-size:.85rem;line-height:1.5}.chart-page__note code{color:var(--accent);font-size:.8rem}.chart-summary{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem}.chart-summary__header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #2d2040}.chart-summary__title{margin:0;font-size:1.125rem;color:var(--accent)}.chart-summary__section+.chart-summary__section{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #2d2040}.chart-summary__heading{margin:0 0 .75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.chart-summary__properties{margin:0;display:grid;gap:.625rem}.chart-summary__row{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem;align-items:baseline}.chart-summary__row dt{margin:0;color:var(--muted);font-size:.85rem}.chart-summary__row dd{margin:0;font-size:.95rem;line-height:1.4}.chart-summary__tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.chart-summary__tag{padding:.35rem .65rem;border-radius:999px;font-size:.8rem;background:#241836;border:1px solid #3d2d58;color:var(--text)}.chart-summary__tag--defined{border-color:var(--accent-dim);color:var(--accent)}.birth-form{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.5rem}.birth-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem}.birth-form__field{display:flex;flex-direction:column;gap:.4rem}.birth-form__field--wide{grid-column:1 / -1}.birth-form__field span,.birth-form__checkbox span{font-size:.85rem;color:var(--muted)}.birth-form__field input[type=text],.birth-form__field input[type=date],.birth-form__field input[type=time]{width:100%;padding:.65rem .75rem;border-radius:8px;border:1px solid #3d2d58;background:#120c1c;color:var(--text);font:inherit}.birth-form__field input:disabled{opacity:.55;cursor:not-allowed}.birth-form__field input:focus{outline:2px solid var(--accent-dim);outline-offset:1px}.birth-form__checkbox{display:flex;align-items:center;gap:.5rem;align-self:end;min-height:2.75rem}.birth-form__checkbox input{width:1rem;height:1rem;accent-color:var(--accent)}.birth-form__error{color:#f0a0a8;font-size:.8rem}.birth-form__error--form{margin:1rem 0 0}.chart-page__actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}.chart-page__actions .btn{border:none;cursor:pointer;font:inherit;text-decoration:none}.chart-page__actions .btn:disabled{opacity:.7;cursor:wait}.birth-form__actions{margin-top:1.5rem;display:flex;gap:.75rem}.birth-form__actions .btn{border:none;cursor:pointer;font:inherit}.birth-form__actions .btn:disabled{opacity:.7;cursor:wait}@media(max-width:768px){.chart-page__layout,.birth-form__grid{grid-template-columns:1fr}.birth-form__checkbox{align-self:start;min-height:auto}.chart-summary__row{grid-template-columns:1fr;gap:.15rem}}.export-section{display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;border:1px solid #2d2040;background:var(--surface)}.export-section__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem}.export-section__title{margin:0;font-size:.95rem;font-weight:600}.export-section__hint{margin:0;color:var(--muted);font-size:.8125rem}.export-section__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.export-section__actions .btn{cursor:pointer;font:inherit}.export-section__pro-note{margin:0;font-size:.8125rem;color:var(--muted)}.export-section__pro-note a{color:var(--accent)}.export-section__error{margin:0;font-size:.8125rem;color:#ffb8c8}.export-page__grid{display:grid;gap:1rem}@media(min-width:640px){.export-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.export-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:12px;border:1px solid #2d2040;background:var(--surface)}.export-card h2{margin:0;font-size:1.05rem}.export-card p{margin:0;color:var(--muted);font-size:.875rem;line-height:1.5;flex:1}.export-card .btn{align-self:flex-start;cursor:pointer;font:inherit}.export-badge{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .45rem;border-radius:999px;background:#2a1f3d;color:var(--accent);border:1px solid #3d2d58}.export-card__title-row{display:flex;flex-direction:column;gap:.5rem}.export-section__error button{background:transparent;border:none;color:inherit;cursor:pointer;font:inherit;text-decoration:underline;padding:0}.library-page{display:flex;flex-direction:column;gap:1.5rem}.library-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem}.library-header h1{margin:0 0 .25rem;font-size:clamp(1.75rem,4vw,2.5rem)}.library-subtitle{margin:0;color:var(--muted);font-size:.95rem}.library-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.library-search{flex:1 1 240px;min-width:0}.library-search input{width:100%;padding:.75rem 1rem;border-radius:8px;border:1px solid #3d2d58;background:var(--surface);color:var(--text);font:inherit}.library-search input::placeholder{color:var(--muted)}.library-alert{padding:.875rem 1rem;border-radius:8px;background:#3a1f2a;border:1px solid #6b3048;color:#ffd6e0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.library-alert button{background:transparent;border:none;color:inherit;cursor:pointer;font:inherit;text-decoration:underline}.library-empty{text-align:center;padding:3rem 1.5rem;border:1px dashed #3d2d58;border-radius:12px;color:var(--muted)}.library-empty h2{margin:0 0 .5rem;color:var(--text);font-size:1.125rem}.library-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.library-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-radius:12px;border:1px solid #2d2040;background:var(--surface)}.library-card-main{min-width:0;flex:1 1 220px}.library-card-title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.library-card-meta{margin:0;color:var(--muted);font-size:.875rem;line-height:1.5}.library-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.library-tag{font-size:.75rem;padding:.2rem .5rem;border-radius:999px;background:#2a1f3d;color:var(--accent);border:1px solid #3d2d58}.library-card-actions{display:flex;gap:.5rem;flex-shrink:0}.library-card-actions .btn{cursor:pointer;font:inherit}.library-card-actions .btn.danger{border-color:#6b3048;color:#ffb8c8}.library-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#08040eb8;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100}.library-modal{width:min(100%,520px);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid #3d2d58;border-radius:14px;padding:1.5rem}.library-modal h2{margin:0 0 1.25rem;font-size:1.25rem}.library-form{display:flex;flex-direction:column;gap:1rem}.library-field{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.library-field span{color:var(--muted)}.library-field input{padding:.65rem .85rem;border-radius:8px;border:1px solid #3d2d58;background:var(--bg);color:var(--text);font:inherit}.library-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.library-checkbox{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.875rem}.library-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.library-form-actions .btn{cursor:pointer;font:inherit}.library-loading{color:var(--muted);text-align:center;padding:2rem 0}.library-back{color:var(--muted);font-size:.875rem;text-decoration:none}.library-back:hover{color:var(--text)}.backup-page__nav{display:flex;gap:1.25rem;margin-bottom:1.5rem}.backup-page__nav a{color:var(--muted);text-decoration:none;font-size:.9rem}.backup-page__nav a:hover{color:var(--accent)}.backup-page__header{margin-bottom:2rem}.backup-page__header h1{margin-bottom:.5rem}.backup-page__lead{margin:0 auto 1rem}.backup-page__meta{margin:0;color:var(--muted);font-size:.875rem}.backup-page__actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.backup-page__btn{cursor:pointer;font:inherit}.backup-page__btn:disabled{opacity:.6;cursor:not-allowed}.backup-page__btn--ghost{background:transparent}.backup-page__file-input{display:none}.backup-page__confirm{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.backup-page__confirm h2{margin:0 0 .5rem;font-size:1rem;color:var(--accent)}.backup-page__confirm p{margin:0 0 1rem;color:var(--muted);font-size:.9rem;line-height:1.5}.backup-page__confirm-actions{display:flex;gap:.75rem;flex-wrap:wrap}.backup-page__message{margin:0 0 1.5rem;padding:.875rem 1rem;border-radius:8px;font-size:.9rem;line-height:1.5}.backup-page__message--error{background:#2a1020;border:1px solid #6b2040;color:#ffb8c8}.backup-page__message--success{background:#102818;border:1px solid #2d6040;color:#b8f0c8}.backup-page__info{margin-top:2rem}.backup-page__info article{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem}.backup-page__info h2{margin:0 0 .5rem;font-size:1rem;color:var(--accent)}.backup-page__info p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.backup-page__info code{font-family:ui-monospace,monospace;font-size:.85em;color:var(--text)}.auth-card{max-width:420px;margin:3rem auto 0;padding:2rem;background:var(--surface);border:1px solid #2d2040;border-radius:12px}.auth-card h1{margin:0 0 .5rem;font-size:1.75rem}.auth-lead{margin:0 0 1.5rem;color:var(--muted);line-height:1.5}.auth-form{display:grid;gap:1rem}.auth-label{display:grid;gap:.5rem;font-size:.875rem;color:var(--muted)}.auth-input{width:100%;padding:.75rem 1rem;border-radius:8px;border:1px solid #3d2d58;background:#120b1c;color:var(--text);font:inherit}.auth-input:focus{outline:2px solid var(--accent-dim);outline-offset:1px}.auth-submit{width:100%;cursor:pointer;font:inherit}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-message{margin:0;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;line-height:1.5}.auth-message.success{background:#c9a2271f;border:1px solid var(--accent-dim);color:var(--text)}.auth-message.error{background:#b43c3c26;border:1px solid #8a3030;color:#f5c0c0}.auth-footer{margin-top:1.5rem;text-align:center}.auth-footer a{color:var(--muted);font-size:.875rem}.auth-status{text-align:center;padding:2rem 0}.auth-status p{color:var(--muted);line-height:1.6}.upgrade-page__header{text-align:center;margin-bottom:2rem}.upgrade-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.upgrade-card{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.upgrade-card--featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}.upgrade-card h2{margin:0;font-size:1.125rem}.upgrade-card__price{margin:0;font-size:1.75rem;font-weight:600;color:var(--accent)}.upgrade-card__price span{font-size:.875rem;color:var(--muted);font-weight:400}.upgrade-card ul{margin:0;padding-left:1.1rem;color:var(--muted);font-size:.9rem;flex:1}.upgrade-card .btn{text-align:center;margin-top:auto}.upgrade-card .btn:disabled{opacity:.65;cursor:not-allowed}.upgrade-page__email{max-width:28rem;margin:0 auto 1.5rem;display:grid;gap:.35rem}.upgrade-page__email label{font-size:.9rem;font-weight:600}.upgrade-page__email input{width:100%;padding:.65rem .75rem;border-radius:.5rem;border:1px solid var(--border, #d4d0c8);font:inherit}.upgrade-page__email-hint{margin:0;font-size:.85rem;opacity:.75}.upgrade-page__error{max-width:36rem;margin:0 auto 1rem;padding:.75rem 1rem;border-radius:.5rem;background:#fde8e8;color:#8b1e1e;text-align:center}.upgrade-page__setup{max-width:36rem;margin:0 auto 1.25rem;padding:.75rem 1rem;border-radius:.5rem;background:#f5f0e6;text-align:center}.upgrade-page__success-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}.upgrade-page__note{margin-top:2rem;text-align:center;color:var(--muted);font-size:.875rem}.share-page__picker{display:grid;gap:.75rem;max-width:32rem;margin:0 auto 1.5rem}.share-page__picker select{width:100%;padding:.65rem .75rem;border-radius:.5rem;border:1px solid var(--border, #d4d0c8);font:inherit}.share-card-preview{max-width:42rem;margin:0 auto 1.5rem;padding:1.25rem;border-radius:1rem;background:linear-gradient(135deg,#1a1028,#2d1f47 55%,#0f0a18);color:#f4efe6;box-shadow:0 12px 40px #1a102840}.share-card-preview__brand{margin:0 0 .5rem;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:#d8c8ff}.share-card-preview h2{margin:0 0 .35rem;font-size:1.75rem}.share-card-preview__headline{margin:0 0 1rem;font-size:1.1rem;color:#f4efe6e6}.share-card-preview__meta{margin:0;line-height:1.6;color:#f4efe6c7}.share-page__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:1rem}.share-page__link{max-width:36rem;margin:0 auto;display:grid;gap:.5rem}.share-page__link input{width:100%;padding:.65rem .75rem;border-radius:.5rem;border:1px solid var(--border, #d4d0c8);font:inherit}.share-page__hint{text-align:center;opacity:.75;font-size:.9rem}.share-view__card{max-width:40rem;margin:0 auto}.clients-page{display:flex;flex-direction:column;gap:1.5rem}.clients-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem}.clients-header h1{margin:0 0 .25rem;font-size:clamp(1.75rem,4vw,2.5rem)}.clients-subtitle{margin:0;color:var(--muted);font-size:.95rem}.clients-back{color:var(--muted);font-size:.875rem;text-decoration:none}.clients-back:hover{color:var(--text)}.clients-sync-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border-radius:10px;background:linear-gradient(135deg,#2a1f3d,#1f1630);border:1px solid #5a4520;color:var(--muted);font-size:.9rem}.clients-sync-banner a{color:var(--accent);font-weight:600;text-decoration:none}.clients-sync-banner a:hover{text-decoration:underline}.clients-alert{padding:.875rem 1rem;border-radius:8px;background:#3a1f2a;border:1px solid #6b3048;color:#ffd6e0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.clients-alert button{background:transparent;border:none;color:inherit;cursor:pointer;font:inherit;text-decoration:underline}.clients-loading{color:var(--muted);text-align:center;padding:2rem 0}.clients-empty{text-align:center;padding:3rem 1.5rem;border:1px dashed #3d2d58;border-radius:12px;color:var(--muted)}.clients-empty h2{margin:0 0 .5rem;color:var(--text);font-size:1.125rem}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;list-style:none;margin:0;padding:0}.clients-folder-card{display:flex;flex-direction:column;gap:.75rem;padding:1.1rem 1.2rem;border-radius:12px;border:1px solid #2d2040;background:var(--surface);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}.clients-folder-card:hover{border-color:#3d2d58;transform:translateY(-1px)}.clients-folder-card__accent{width:2.5rem;height:.35rem;border-radius:999px;background:var(--accent)}.clients-folder-card__title{margin:0;font-size:1.05rem;font-weight:600}.clients-folder-card__meta{margin:0;color:var(--muted);font-size:.875rem}.clients-detail-header{display:flex;flex-direction:column;gap:1rem}.clients-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.clients-name-row h1{margin:0;font-size:clamp(1.5rem,3.5vw,2.25rem)}.clients-name-input{flex:1 1 220px;min-width:0;padding:.65rem .85rem;border-radius:8px;border:1px solid #3d2d58;background:var(--bg);color:var(--text);font:inherit;font-size:1.25rem;font-weight:600}.clients-notes-field{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.clients-notes-field span{color:var(--muted)}.clients-notes-field textarea{min-height:5rem;resize:vertical;padding:.75rem .85rem;border-radius:8px;border:1px solid #3d2d58;background:var(--bg);color:var(--text);font:inherit}.clients-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.clients-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.clients-item-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-radius:12px;border:1px solid #2d2040;background:var(--surface)}.clients-item-main{min-width:0;flex:1 1 220px}.clients-item-title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.clients-item-meta{margin:0;color:var(--muted);font-size:.875rem;line-height:1.5}.clients-item-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.clients-tag{font-size:.75rem;padding:.2rem .5rem;border-radius:999px;background:#2a1f3d;color:var(--accent);border:1px solid #3d2d58}.clients-item-actions{display:flex;gap:.5rem;flex-shrink:0}.clients-item-actions .btn{cursor:pointer;font:inherit}.clients-item-actions .btn.danger{border-color:#6b3048;color:#ffb8c8}.clients-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#08040eb8;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100}.clients-modal{width:min(100%,520px);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid #3d2d58;border-radius:14px;padding:1.5rem}.clients-modal--wide{width:min(100%,640px)}.clients-modal h2{margin:0 0 1.25rem;font-size:1.25rem}.clients-form{display:flex;flex-direction:column;gap:1rem}.clients-field{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.clients-field span{color:var(--muted)}.clients-field input{padding:.65rem .85rem;border-radius:8px;border:1px solid #3d2d58;background:var(--bg);color:var(--text);font:inherit}.clients-color-picker{display:flex;flex-wrap:wrap;gap:.5rem}.clients-color-swatch{width:2rem;height:2rem;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0}.clients-color-swatch.is-selected{border-color:var(--text);box-shadow:0 0 0 2px var(--bg)}.clients-color-swatch--none{background:var(--surface);border:1px dashed #3d2d58}.clients-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.clients-form-actions .btn{cursor:pointer;font:inherit}.clients-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;max-height:50vh;overflow:auto}.clients-picker-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-radius:10px;border:1px solid #2d2040;background:var(--bg)}.clients-picker-item__label{margin:0;font-weight:600}.clients-picker-item__meta{margin:.15rem 0 0;color:var(--muted);font-size:.8rem}.clients-picker-empty{margin:0;color:var(--muted);text-align:center;padding:1.5rem 0}.clients-saving-hint{margin:0;color:var(--muted);font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rise-page__hero{position:relative;margin:-.5rem -1.5rem 1.75rem;border-radius:1.25rem;overflow:hidden;min-height:clamp(220px,40vw,360px);box-shadow:0 20px 50px #0006}.rise-page__hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}.rise-page__hero-overlay{position:relative;z-index:1;text-align:center;padding:clamp(2rem,7vw,3.5rem) 1.5rem 2rem;background:linear-gradient(180deg,#0f0a184d,#0f0a18c7 55%,#0f0a18f0)}.rise-page__hero-overlay h1{margin:0 0 .75rem}.rise-page__hero-overlay .lead{margin:0 auto}.rise-page__tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.rise-page__tab{padding:.5rem 1rem;border-radius:999px;border:1px solid #3d2d58;background:transparent;color:var(--text, #f5f0ff);cursor:pointer;font:inherit}.rise-page__tab.is-active{background:var(--accent, #c9a227);color:#1a1028;border-color:var(--accent, #c9a227);font-weight:600}.rise-settings{max-width:28rem;display:grid;gap:1.25rem}.rise-settings__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-radius:.75rem;background:var(--surface, #1a1028);border:1px solid #3d2d58}.rise-settings__row label{font-weight:500}.rise-settings__row input[type=time]{font:inherit;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #3d2d58;background:#0f0a18;color:inherit}.rise-settings__toggle{position:relative;width:3rem;height:1.6rem}.rise-settings__toggle input{opacity:0;width:0;height:0}.rise-settings__slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#3d2d58;border-radius:999px;cursor:pointer;transition:background .2s}.rise-settings__slider:before{content:"";position:absolute;width:1.2rem;height:1.2rem;left:.2rem;top:.2rem;background:#f5f0ff;border-radius:50%;transition:transform .2s}.rise-settings__toggle input:checked+.rise-settings__slider{background:var(--accent, #c9a227)}.rise-settings__toggle input:checked+.rise-settings__slider:before{transform:translate(1.4rem)}.rise-settings__hint{margin:0;font-size:.88rem;color:var(--muted, #b8a8d0);line-height:1.5}.rise-settings__badge{font-size:.75rem;color:var(--accent, #c9a227);margin-left:.35rem}.rise-ritual{max-width:36rem;margin:0 auto;padding:2rem 1rem}.rise-ritual--active{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:linear-gradient(160deg,#1a1028,#0f0a18 60%,#2d1f47);display:flex;flex-direction:column;justify-content:center;padding:2rem 1.5rem;overflow-y:auto}.rise-ritual__progress{height:4px;background:#3d2d58;border-radius:2px;margin-bottom:2rem;overflow:hidden}.rise-ritual__progress-bar{height:100%;background:var(--accent, #c9a227);transition:width .3s ease}.rise-ritual__step{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent, #c9a227);margin-bottom:.75rem}.rise-ritual__question{font-size:clamp(1.25rem,4vw,1.75rem);line-height:1.45;margin:0 0 1.5rem}.rise-ritual__input{width:100%;min-height:6rem;padding:1rem;border-radius:.75rem;border:1px solid #3d2d58;background:#0f0a18cc;color:inherit;font:inherit;resize:vertical}.rise-ritual__actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.rise-journal{display:grid;gap:.75rem}.rise-journal__entry{padding:1rem 1.1rem;border-radius:.75rem;background:var(--surface, #1a1028);border:1px solid #3d2d58}.rise-journal__entry header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.rise-journal__entry h3{margin:0;font-size:1rem}.rise-journal__tag{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent, #c9a227)}.rise-journal__qa{margin:.35rem 0 0;font-size:.92rem;color:var(--muted, #b8a8d0)}.rise-journal__qa strong{color:var(--text, #f5f0ff);display:block;margin-bottom:.15rem}.rise-start-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1.5rem 0}.rise-start-card{padding:1.25rem;border-radius:1rem;background:var(--surface, #1a1028);border:1px solid #3d2d58;display:grid;gap:.75rem}.rise-start-card h3{margin:0}.rise-start-card p{margin:0;color:var(--muted, #b8a8d0);font-size:.95rem}.composite-page__nav{display:flex;gap:1.25rem;margin-bottom:1.5rem}.composite-page__nav a{color:var(--muted);text-decoration:none;font-size:.9rem}.composite-page__nav a:hover{color:var(--accent)}.composite-page__header{margin-bottom:2rem}.composite-page__header h1{margin-bottom:.5rem}.composite-page__lead{margin:0;color:var(--muted);line-height:1.5}.composite-page__pickers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.composite-page__picker label{display:block;margin-bottom:.35rem;font-size:.85rem;color:var(--muted)}.composite-page__picker select{width:100%;padding:.65rem .75rem;border-radius:8px;border:1px solid #2d2040;background:var(--surface);color:inherit}.composite-page__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:1.5rem;align-items:start}.composite-page__graph{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1rem;display:flex;justify-content:center}.composite-page__svg{max-width:420px;width:100%;height:auto}.composite-page__empty{background:var(--surface);border:1px dashed #3a2d50;border-radius:12px;padding:2rem;text-align:center;color:var(--muted)}.composite-page__hint{margin-top:1.5rem;color:var(--muted);font-size:.85rem}.composite-summary{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem}.composite-summary__section+.composite-summary__section{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #2d2040}.composite-summary__heading{margin:0 0 .5rem;font-size:1.1rem}.composite-summary__subheading{margin:0 0 .75rem;font-size:.95rem}.composite-summary__pair{margin:0;line-height:1.5}.composite-summary__properties{margin:0}.composite-summary__row{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0}.composite-summary__row dt{color:var(--muted);font-size:.85rem}.composite-summary__row dd{margin:0;text-align:right}.composite-summary__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.composite-summary__tag{padding:.25rem .6rem;border-radius:999px;font-size:.8rem;background:#241a34;border:1px solid #3a2d50}.composite-summary__tag--defined{border-color:#6b4f9a;color:#e8d9ff}.composite-summary__tag--em{border-color:#c77dff;color:#f6e8ff}.composite-summary__channel-list{margin:0;padding:0;list-style:none;display:grid;gap:.45rem}.composite-summary__channel-item{display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-size:.85rem}.composite-summary__channel-id{font-family:ui-monospace,monospace}.composite-summary__channel-kind{font-size:.75rem;padding:.15rem .45rem;border-radius:999px;background:#1c1428;color:var(--muted)}.composite-summary__channel-kind--electromagnetic{color:#e0b3ff;border:1px solid #8b5fbf}.composite-summary__channel-kind--friendship{color:#b8f0c8}.composite-summary__channel-kind--dominance{color:#ffd9a8}.composite-summary__channel-kind--compromise{color:#a8d4ff}.composite-summary__hint{margin:0 0 .75rem;font-size:.8rem;color:var(--muted);line-height:1.45}@media(max-width:840px){.composite-page__layout{grid-template-columns:1fr}}:root{color-scheme:dark;--bg: #0f0a18;--surface: #1a1028;--text: #f5f0ff;--muted: #b8a8d0;--accent: #c9a227;--accent-dim: #8a7020;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}.page{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}.hero{text-align:center;padding:3rem 0 2rem}.home-page{max-width:1100px}.hero-visual{position:relative;margin:-.5rem -1.5rem 2.5rem;border-radius:1.25rem;overflow:hidden;min-height:clamp(280px,52vw,480px);box-shadow:0 24px 60px #00000073}.hero-visual__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}.hero-visual__overlay{position:relative;z-index:1;text-align:center;padding:clamp(2.5rem,8vw,4.5rem) 1.5rem 2.5rem;background:linear-gradient(180deg,#0f0a1859,#0f0a18b8 55%,#0f0a18eb)}.roles{margin:2.5rem 0 3rem}.roles__header{text-align:center;margin-bottom:1.5rem}.roles__header h2{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2rem)}.roles__header p{margin:0;color:var(--muted)}.roles__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.role-card{border-radius:1rem;overflow:hidden;background:var(--surface);border:1px solid #3d2d58;display:flex;flex-direction:column}.role-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.role-card__body{padding:1rem 1rem 1.25rem;display:grid;gap:.5rem}.role-card__body h3{margin:0;font-size:1.15rem;color:var(--accent)}.role-card__body p{margin:0;color:var(--muted);font-size:.95rem}.role-card__body .btn{margin-top:.35rem;justify-self:start}.role-card--action{border-color:#4a3d68}.rise-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem;align-items:center;margin:3rem 0;padding:1.25rem;border-radius:1.25rem;background:var(--surface);border:1px solid #3d2d58;box-shadow:0 16px 48px #00000059}.rise-hero__visual{border-radius:1rem;overflow:hidden;min-height:280px}.rise-hero__visual img{width:100%;height:100%;min-height:280px;object-fit:cover;object-position:center 40%}.rise-hero__body h2{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2rem)}.rise-hero__body>p{margin:0 0 1rem;color:var(--muted);line-height:1.6}.rise-hero__questions{margin:0 0 1.25rem;padding-left:1.15rem;color:var(--muted);font-size:.92rem;line-height:1.55}.rise-hero__questions li+li{margin-top:.35rem}.rise-hero__actions{display:flex;flex-wrap:wrap;gap:.65rem}.rise-hero__note{margin:1rem 0 0;font-size:.85rem;color:var(--muted)}.rise-subscribe{margin:3rem 0}.rise-subscribe__pro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);max-width:820px;margin:0 auto}.rise-subscribe__pro img{aspect-ratio:auto;min-height:220px}.rise-subscribe__pro .role-card__body{padding:1.5rem;align-content:center}@media(max-width:640px){.rise-subscribe__pro{grid-template-columns:1fr}}.role-card--featured{border-color:var(--accent);box-shadow:0 12px 40px #c9a22738}@media(max-width:768px){.rise-hero{grid-template-columns:1fr}}.roles--upgrade{margin-top:3rem}.roles__grid--upgrade{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:720px;margin:0 auto}.role-card--upgrade{border-color:#5a4520;box-shadow:0 8px 32px #c9a2271f}.role-card__price{font-size:.85rem;font-weight:500;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--accent);margin:0 0 .5rem}h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 1rem;font-weight:600}.lead{color:var(--muted);font-size:1.125rem;max-width:36ch;margin:0 auto 2rem;line-height:1.6}.actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:.75rem 1.25rem;border-radius:8px;text-decoration:none;color:var(--text);border:1px solid #3d2d58;background:var(--surface)}.btn.primary{background:var(--accent);color:#1a1028;border-color:var(--accent);font-weight:600}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:2rem 0}.features article{background:var(--surface);border:1px solid #2d2040;border-radius:12px;padding:1.25rem}.features h2{font-size:1rem;margin:0 0 .5rem;color:var(--accent)}.features p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.footer{display:flex;gap:1.5rem;justify-content:center;margin-top:3rem;padding-top:2rem;border-top:1px solid #2d2040}.footer a{color:var(--muted);font-size:.875rem}
