.account-page { padding: 28px 25px 32px; }
.account-heading { padding: 5px 0 25px; }
.account-heading h1 { margin: 12px 0; font-size: 26px; line-height: 1.55; letter-spacing: -.8px; overflow-wrap: anywhere; }
.account-heading p { font-size: 12px; line-height: 1.9; color: #8d8198; }
.account-symbol { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 15px; background: #f7f1fb; color: #9d7aad; }
.account-card { padding: 20px; margin-bottom: 17px; background: #faf7fc; border: 1px solid #eee7f3; border-radius: 15px; }
.account-card h2 { margin-bottom: 12px; font-size: 14px; line-height: 1.7; color: #63506f; }
.account-card p { color: #887a94; font-size: 12px; line-height: 1.95; word-break: keep-all; overflow-wrap: anywhere; }
.account-card p + p { margin-top: 12px; }
.account-card small { display: block; margin-top: 7px; font-size: 11px; line-height: 1.8; color: #a08da9; }
.account-card dl { display: grid; gap: 10px; margin: 0; font-size: 12px; color: #8a7d94; }
.account-card dl > div { display: flex; justify-content: space-between; gap: 15px; }
.account-card dd { margin: 0; color: #62516f; }
.account-text-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 16px; color: #956ca9; font-size: 11px; }
.account-text-link .icon { width: 14px; height: 14px; }
.account-form { margin-top: 22px; }
.account-check { display: flex; align-items: flex-start; gap: 10px; padding: 11px 0; font-size: 12px; line-height: 1.8; color: #7b6a88; cursor: pointer; }
.account-check input { margin: 4px 0 0; accent-color: #8c63a2; }
.account-check a { color: #805991; text-decoration: underline; text-underline-offset: 3px; }
.account-check small { margin-left: 5px; font-size: 10px; color: #b2a2bb; }
.account-primary, .account-secondary, .account-danger { display: flex; align-items: center; justify-content: center; gap: 7px; width: 100%; min-height: 48px; padding: 12px 16px; border-radius: 12px; font-size: 13px; font-weight: 600; }
.account-primary { margin-top: 16px; background: #89639f; color: white; }
.account-primary .icon { width: 16px; height: 16px; }
.account-secondary { margin-top: 23px; background: #f6f2f8; color: #8a7495; }
.account-danger { margin-top: 16px; background: #a65a76; color: #fff; }
.account-cancel { display: block; width: 100%; padding: 16px 8px; text-align: center; color: #a496ad; font-size: 11px; }
.account-error { margin-block: 12px; padding: 13px; border-radius: 9px; background: #fff2f5; color: #a45772; font-size: 12px; line-height: 1.8; }
.account-notice { margin:0 0 17px;padding:13px;border:1px solid #d7e6df;border-radius:8px;background:#f2f8f4;color:#39624e;font-size:12px;line-height:1.8;overflow-wrap:anywhere; }
.account-remember { margin-top:16px;padding-top:10px;border-top:1px solid #eee7f3; }
.account-remember .account-check { min-height:44px;align-items:center; }
.account-remember .account-check input { width:17px;height:17px;margin:0;flex:none; }
.account-remember .account-check small { margin:3px 0 0; }
.account-remember .account-secondary { margin-top:6px; }
.account-back { display: inline-block; margin-bottom: 15px; color: #9a88a5; font-size: 11px; }
.account-library { text-align: center; padding-block: 24px; scroll-margin-top: 145px; }
.account-empty-icon { display: inline-flex; margin: 7px auto 12px; color: #b49cc3; }
.account-library .account-empty-icon .icon { width: 32px; height: 32px; }
.login-message { margin-bottom: 15px; padding: 13px 15px; color: #a05879; background: #fcf0f5; border-radius: 10px; font-size: 12px; line-height: 1.8; text-align: left; }
.login-provider-form { margin: 0; }
.social-login[disabled] { opacity: .55; cursor: default; }
body[data-page="auth"] .category-nav { display: none; }

.account-card.account-library{padding:22px 18px;text-align:left;background:#fff;border-color:#e9e1ed;scroll-margin-top:120px}
.library-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.library-eyebrow{display:block;color:#9b7c9f;font-size:10px;letter-spacing:.5px;margin-bottom:5px}
.library-heading h2{display:flex;align-items:center;gap:8px;margin:0;font-size:21px;line-height:1.5;color:#30233f}
.library-heading h2>span{font:600 12px/1.7 sans-serif;background:#f2ebf7;color:#815a98;padding:0 7px;border-radius:20px}
.library-heading-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#f8f3fb;color:#9a77ad}
.library-heading-icon .icon{width:21px;height:21px}
.account-library .library-intro{font-size:11px;margin-top:11px;line-height:1.8;color:#8b7d94}
.library-tabs{display:flex;gap:5px;padding:5px;margin:19px 0 5px;background:#f6f3f8;border-radius:12px}
.library-tabs a{display:flex;flex:1;justify-content:center;align-items:center;gap:5px;min-height:40px;border-radius:9px;font-size:11px;color:#8f829b;white-space:nowrap}
.library-tabs a[aria-current]{background:#fff;color:#58396f;box-shadow:0 2px 8px #30213b0a;font-weight:700}
.library-tabs a>span{font-size:10px;opacity:.7}
.library-list{list-style:none;margin:0;padding:0}
.library-entry{padding:17px 0;border-bottom:1px solid #f0eaf4}
.library-entry:last-child{border-bottom:0}
.library-result{display:grid;grid-template-columns:66px minmax(0,1fr) 14px;gap:12px;align-items:center;min-height:103px}
.library-art{position:relative;display:block;width:66px;height:103px;background:#f8f4fb;border-radius:8px;overflow:hidden}
.library-art img{display:block;width:100%;height:100%;object-fit:cover}
.library-art--tarot{overflow:visible;background:none}
.library-art--tarot img{position:absolute;top:7px;left:8px;width:47px;height:81px;object-fit:cover;border-radius:4px;border:1px solid #ccad72;box-shadow:0 2px 5px #26163926}
.library-art--tarot img:nth-child(1){transform:rotate(-13deg) translateX(-6px)}
.library-art--tarot img:nth-child(2){transform:translateY(-3px)}
.library-art--tarot img:nth-child(3){transform:rotate(13deg) translateX(6px)}
.library-result-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.library-entry-meta{display:flex;align-items:center;gap:8px;width:100%}
.library-badge{font-size:9px;color:#7a5b94;background:#f3edf8;padding:3px 6px;border-radius:5px;line-height:1.5}
.library-badge--free{color:#55796b;background:#edf6f1}
.library-entry-meta time{font:10px/1.5 sans-serif;color:#a595ad;margin-left:auto}
.library-result-copy>strong{font-size:14px;line-height:1.6;font-weight:600;color:#392c47}
.library-summary{font-size:11px;line-height:1.8;color:#81728c;overflow-wrap:anywhere;word-break:keep-all}
.library-expiry{font-size:9px;line-height:1.7;color:#afa1b9}
.library-arrow .icon{width:14px;height:14px;color:#ac97b8}
.library-delete{font-size:10px;color:#b0a0b9;margin:8px 0 0 78px}
.library-delete summary{cursor:pointer;min-height:24px;width:fit-content;padding:4px 0}
.library-delete form{padding:11px;background:#fcf7fa;border-radius:7px}
.account-library .library-delete p{font-size:10px;color:#9a8090}
.library-delete button{color:#9d546d;background:#fff;border:1px solid #ecdce3;border-radius:6px;padding:8px 11px;margin-top:8px;font-size:10px;cursor:pointer;min-height:36px}
.library-retention{display:flex;align-items:flex-start;gap:8px;padding:14px 0 0;margin-top:13px;border-top:1px dashed #e8dfef}
.library-retention .icon{width:15px;height:15px;color:#b69cc4;margin-top:2px;flex:none}
.account-library .library-retention p{font-size:10px;line-height:1.8;color:#a494af;margin:0}
.library-empty{text-align:center;padding:24px 0 15px}
.library-empty h3{font-size:14px;color:#675173;font-weight:600;margin:0 0 7px}
.account-library .library-empty p{font-size:11px;color:#9c8ba7}
.library-empty-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:19px}
.library-empty-actions a{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:11px 13px;border-radius:9px;background:#f4edf8;color:#78538e;font-size:10px;min-height:40px}
.library-empty-actions .icon{width:13px;height:13px}
.library-pagination{display:flex;gap:18px;justify-content:center;align-items:center;margin:15px 0 8px;font-size:11px;color:#a08eab}
.library-pagination a{padding:9px;color:#78538e}
.library-result:focus-visible,.library-tabs a:focus-visible,.library-delete summary:focus-visible{outline:2px solid #9472a8;outline-offset:4px;border-radius:7px}
@media(max-width:359px){.account-page{padding-inline:16px}.account-card.account-library{padding-inline:14px}.library-result{grid-template-columns:55px minmax(0,1fr) 12px;gap:9px}.library-art{width:55px;height:94px}.library-art--tarot img{left:5px;width:41px;height:70px}.library-entry-meta{gap:3px}.library-badge{font-size:8px;padding-inline:4px}}
