html,body{margin:0;padding:0;min-height:100%;background:#f8fafc}a{color:inherit}:root{color-scheme:light;--color-background: #f8fafc;--color-surface: #ffffff;--color-border: rgba(15, 23, 42, .1);--color-border-strong: rgba(15, 23, 42, .16);--color-text: #0f172a;--color-subtle: #475569;--color-accent: #2563eb;--color-accent-dark: #1d4ed8;--color-error: #dc2626;--color-warning: #d97706;--color-info: #0284c7;--color-critical: #b91c1c;--shadow-soft: 0 16px 40px rgba(15, 23, 42, .08);--radius-large: 18px;--radius-medium: 12px;font-family:Inter,Noto Sans JP,Hiragino Sans,Yu Gothic,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--color-background);color:var(--color-text)}.app{min-height:100vh;display:flex;flex-direction:column}.app__header{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 4px 18px #0f172a0f}.app__main{flex:1;padding:3.5rem 0}.app__footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:2.5rem 0;text-align:center;color:var(--color-subtle);font-size:.95rem}.container{width:min(960px,calc(100% - 2.5rem));margin:0 auto}.header__top{display:flex;justify-content:flex-end;padding-top:1.5rem}.header__content{text-align:center;padding:3rem 0 3.5rem}.header__content h1{margin:0;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;letter-spacing:-.02em}.header__content p{margin:1rem auto 0;max-width:38rem;color:var(--color-subtle);font-size:1.1rem;line-height:1.6}.language-toggle{display:flex;align-items:center;gap:.75rem;background:#2563eb14;padding:.35rem .75rem;border-radius:999px}.language-toggle__label{font-size:.85rem;font-weight:600;color:var(--color-accent-dark)}.language-toggle__options{display:inline-flex;gap:.35rem}.language-toggle__button{border:none;background:transparent;padding:.4rem .95rem;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--color-accent-dark);cursor:pointer;transition:background .2s ease,color .2s ease}.language-toggle__button:hover{background:#2563eb1f}.language-toggle__button--active{background:var(--color-accent);color:#fff}.summary-form{display:flex;flex-direction:column;gap:2.5rem}.summary-form__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-large);padding:2.5rem;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:2rem}.summary-form__fields{display:flex;flex-direction:column;gap:1.75rem}.form-field{display:flex;flex-direction:column;gap:.65rem}.form-field__label{font-weight:600;color:var(--color-text);font-size:1rem}.form-field__required{color:var(--color-error);margin-left:.3rem}.input-wrapper,.select-wrapper{position:relative}.input{width:100%;padding:.9rem 1rem;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius-medium);transition:border-color .2s ease,box-shadow .2s ease}.input:focus{outline:none;border-color:#2563ebb3;box-shadow:0 0 0 3px #2563eb29}.input-wrapper--error .input{border-color:#dc2626cc;box-shadow:0 0 0 3px #dc26261f}.input__clear{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);background:transparent;border:none;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--color-subtle)}.select{width:100%;padding:.9rem 1rem;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);appearance:none;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.select:focus{outline:none;border-color:#2563ebb3;box-shadow:0 0 0 3px #2563eb29}.form-field__helper{font-size:.9rem;color:var(--color-subtle);line-height:1.5}.form-field__error{color:var(--color-error);font-size:.9rem}.format-info{background:#2563eb14;border:1px solid rgba(37,99,235,.2);border-radius:var(--radius-medium);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.45rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:600;font-size:1rem;border-radius:var(--radius-medium);padding:.95rem 1.5rem;border:none;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s ease}.button--primary{background:radial-gradient(circle at top left,#60a5fa,#2563eb);color:#fff;box-shadow:0 12px 25px #2563eb40}.button--primary:hover{transform:translateY(-1px);box-shadow:0 18px 30px #2563eb4d}.button--secondary{background:#2563eb1f;color:var(--color-accent-dark)}.button--secondary:hover{background:#2563eb2e}.button--ghost{background:transparent;color:var(--color-accent-dark)}.button--ghost:hover{background:#2563eb1a}.button--disabled{background:#94a3b859;color:#0f172a73;box-shadow:none;cursor:not-allowed}.button__spinner{width:1.1rem;height:1.1rem;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.button__label{display:inline-flex;align-items:center}.summary-form__loading,.summary-form__error,.summary-form__result{display:flex;flex-direction:column;gap:1.5rem}.loading{display:flex;flex-direction:column;align-items:center;gap:1.2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-large);padding:2rem;box-shadow:var(--shadow-soft)}.loading__spinner{width:3rem;height:3rem;border:4px solid rgba(37,99,235,.25);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.loading__title{margin:0;font-weight:600}.loading__subtitle{margin:0;color:var(--color-subtle);font-size:.95rem}.loading__progress{width:100%;max-width:360px;text-align:left}.loading__progress-header{display:flex;justify-content:space-between;font-size:.85rem;color:var(--color-subtle);margin-bottom:.4rem}.loading__progress-bar{width:100%;height:.4rem;background:#0f172a14;border-radius:999px;overflow:hidden}.loading__progress-bar-fill{height:100%;background:var(--color-accent);transition:width .3s ease}.error-card{border-radius:var(--radius-large);border:1px solid transparent;padding:1.75rem;background:#fff7f7;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1rem}.error-card__header{display:flex;align-items:flex-start;gap:1rem}.error-card__icon{width:1.75rem;height:1.75rem;border-radius:50%;background:#dc26262e;position:relative}.error-card__icon:before,.error-card__icon:after{content:"";position:absolute;top:50%;left:50%;width:55%;height:2px;background:#b91c1c;transform-origin:center}.error-card__icon:before{transform:translate(-50%,-50%) rotate(45deg)}.error-card__icon:after{transform:translate(-50%,-50%) rotate(-45deg)}.error-card__content{flex:1}.error-card__message{margin:0 0 .35rem;font-weight:600}.error-card__countdown{margin:0;color:var(--color-subtle);font-size:.9rem}.error-card__dismiss{margin-left:auto;background:transparent;border:none;font-size:1.1rem;cursor:pointer;color:var(--color-subtle)}.error-card__body{font-size:.95rem;color:var(--color-subtle)}.error-card__suggestions{margin:.45rem 0 0;padding-left:1.2rem;line-height:1.5}.error-card__actions{display:flex;gap:.75rem;flex-wrap:wrap}.error-card__details{background:#0f172a0a;border-radius:var(--radius-medium);padding:1rem;font-size:.85rem}.error-card__details pre{margin:0;white-space:pre-wrap;word-break:break-word}.error-card--info{background:#0284c714;border-color:#0284c740}.error-card--warning{background:#d9770614;border-color:#d9770640}.error-card--error{background:#dc262614;border-color:#dc262640}.error-card--critical{background:#b91c1c1a;border-color:#b91c1c4d}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow-soft);padding:2.5rem;display:flex;flex-direction:column;gap:1.75rem}.summary-card__header{display:flex;align-items:center;justify-content:space-between}.summary-card__title{margin:0;font-size:1.45rem;font-weight:700}.summary-card__badge{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;background:#2563eb1f;color:var(--color-accent-dark);font-weight:600;font-size:.9rem}.summary-card__account{background:#0f172a08;border-radius:var(--radius-medium);padding:1.4rem}.summary-card__account-name{margin:0 0 .2rem;font-weight:600}.summary-card__account-handle{margin:0;color:var(--color-subtle);font-size:.95rem}.summary-card__account-description{margin:.75rem 0 0;color:var(--color-text);line-height:1.5;font-size:.95rem}.summary-card__body{font-size:1rem;line-height:1.7;color:var(--color-text)}.summary-content{display:block}.summary-content p{margin:0 0 .75rem}.summary-content p:last-child{margin-bottom:0}.summary-content--bullet ul{padding-left:1.25rem;margin:0;display:flex;flex-direction:column;gap:.6rem}.summary-content--bullet ul li::marker{color:var(--color-accent)}.summary-card__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.2rem;margin:0}.summary-card__meta div{background:#0f172a08;border-radius:var(--radius-medium);padding:1.1rem}.summary-card__meta dt{margin:0 0 .35rem;font-size:.85rem;color:var(--color-subtle);text-transform:uppercase;letter-spacing:.04em}.summary-card__meta dd{margin:0;font-weight:600}.summary-card__tokens{margin:0;font-size:.95rem;color:var(--color-subtle)}.summary-card__posts{border-radius:var(--radius-medium);border:1px solid var(--color-border);overflow:hidden}.summary-card__posts summary{padding:1.1rem 1.4rem;cursor:pointer;background:#0f172a0a;font-weight:600}.summary-card__posts-list{display:flex;flex-direction:column;gap:1rem;padding:1.4rem}.summary-card__post{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-medium);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem}.summary-card__post header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;font-size:.9rem;color:var(--color-subtle)}.summary-card__post-meta{display:flex;flex-direction:column;gap:.2rem}.summary-card__post-handle{color:var(--color-text);font-weight:600}.summary-card__post-date{font-size:.8rem;color:var(--color-subtle)}.summary-card__post-link{font-size:.85rem;color:var(--color-accent);text-decoration:none;font-weight:600}.summary-card__post-link:hover{text-decoration:underline}.summary-card__post footer{display:flex;gap:1.25rem;font-size:.85rem;color:var(--color-subtle)}.summary-card__post-text{margin:0;line-height:1.6}.summary-form__actions{display:flex;justify-content:center}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 720px){.app__main{padding:2.5rem 0}.summary-form__card,.summary-card{padding:1.75rem}.header__top{justify-content:center}.header__content{padding:2.5rem 0}}
