*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#1a1a1a;background:#f5f5f5;line-height:1.5}.header{background:#fff;border-bottom:1px solid #e8e8e8;padding:20px 24px}.header-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:32px;flex-wrap:wrap}.logo-area{display:flex;align-items:center;gap:12px;flex-shrink:0}.logo-mark{width:42px;height:42px;background:#ec1e24;color:#fff;font-weight:700;font-size:15px;border-radius:8px;display:flex;align-items:center;justify-content:center;letter-spacing:-.5px}.logo-title{font-size:18px;font-weight:700;color:#1a1a1a}.logo-sub{font-size:12px;color:#888}.header-desc{font-size:14px;color:#555;max-width:520px;line-height:1.5}.input-section{background:#fff;border-bottom:1px solid #e8e8e8;padding:24px}.input-inner{max-width:1280px;margin:0 auto}.url-form{display:flex;gap:10px;margin-bottom:12px}.url-input{flex:1;height:44px;padding:0 16px;font-size:15px;border:1.5px solid #d0d0d0;border-radius:8px;outline:none;transition:border-color .15s;font-family:inherit}.url-input:focus{border-color:#ec1e24}.url-input:disabled{background:#f9f9f9;color:#aaa}.analyze-btn{height:44px;padding:0 24px;background:#ec1e24;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px;transition:background .15s}.analyze-btn:hover:not(:disabled){background:#c5171c}.analyze-btn:disabled{opacity:.6;cursor:not-allowed}.spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.examples{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.examples-label{font-size:12px;color:#888;font-weight:500}.example-chip{padding:4px 12px;border:1px solid #d8d8d8;border-radius:100px;background:#fff;font-size:12px;color:#444;cursor:pointer;transition:all .12s}.example-chip:hover:not(:disabled){border-color:#ec1e24;color:#ec1e24;background:#fff5f5}.example-chip:disabled{opacity:.5;cursor:not-allowed}.error-msg{margin-top:12px;padding:10px 14px;background:#fff5f5;border:1px solid #fcc;border-radius:6px;color:#c00;font-size:13px}.workspace{padding:24px}.workspace-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:400px 1fr;gap:24px;align-items:start}@media(max-width:900px){.workspace-inner{grid-template-columns:1fr}}.panel{background:#fff;border-radius:12px;border:1px solid #e8e8e8;overflow:hidden}.panel-heading{font-size:15px;font-weight:700;color:#1a1a1a;padding:18px 20px 14px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.domain-badge{font-weight:500;font-size:13px;background:#f3f3f3;padding:2px 8px;border-radius:4px;color:#555}.sub-section{padding:16px 20px;border-bottom:1px solid #f5f5f5}.sub-section:last-child{border-bottom:none}.sub-heading{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#999;margin-bottom:12px}.panel-empty{padding:48px 24px;text-align:center;color:#aaa}.panel-empty-icon{font-size:40px;margin-bottom:14px}.panel-empty p{font-size:14px;color:#888}.panel-empty-sub{font-size:12px;color:#bbb;margin-top:6px}.key-colors{display:grid;grid-template-columns:1fr 1fr;gap:10px}.key-color-item{display:flex;align-items:center;gap:10px}.key-swatch{width:32px;height:32px;border-radius:6px;flex-shrink:0}.key-swatch.large{width:40px;height:40px;border-radius:8px}.key-color-label{display:flex;flex-direction:column}.key-color-role{font-size:11px;color:#888}.key-color-hex{font-size:12px;font-weight:600;font-family:SF Mono,Fira Code,monospace;color:#333}.color-palette{display:flex;flex-wrap:wrap;gap:6px}.palette-swatch{width:40px;height:40px;border-radius:6px;position:relative;cursor:default;flex-shrink:0;border:1px solid rgba(0,0,0,.06)}.palette-swatch:hover .palette-hex{opacity:1}.palette-hex{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:8px;font-family:monospace;font-weight:700;opacity:0;transition:opacity .15s;text-align:center;line-height:1.1;padding:2px}.font-list{display:flex;flex-direction:column;gap:8px}.font-item{display:flex;align-items:center;gap:10px}.font-sample{font-size:22px;line-height:1;min-width:32px;color:#333}.font-name{font-size:13px;color:#444;flex:1}.font-badge{font-size:10px;font-weight:600;background:#e8f4ff;color:#1d6fbf;padding:2px 7px;border-radius:100px}.font-item.font-primary .font-name{font-weight:600;color:#1a1a1a}.no-fonts{font-size:12px;color:#999;font-style:italic}.css-heading-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.css-heading-row .sub-heading{margin-bottom:0}.copy-btn{padding:4px 12px;border:1px solid #d0d0d0;border-radius:6px;background:#fff;font-size:12px;font-weight:500;cursor:pointer;color:#444;transition:all .12s}.copy-btn:hover{border-color:#ec1e24;color:#ec1e24}.css-block{background:#1e1e2e;color:#cdd6f4;padding:14px 16px;border-radius:8px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:12px;line-height:1.6;overflow-x:auto;white-space:pre}.mock-article{padding:24px 20px 20px;border-bottom:1px solid #f0f0f0}.mock-article--placeholder{background:#fafafa}.mock-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;color:#bbb}.mock-article--placeholder .mock-kicker{color:#ccc}.mock-headline{font-size:20px;font-weight:700;line-height:1.3;margin-bottom:8px}.mock-article--placeholder .mock-headline{color:#ccc}.mock-byline{font-size:12px;margin-bottom:12px}.mock-article--placeholder .mock-byline{color:#ddd}.mock-body{font-size:14px;line-height:1.65;margin-bottom:0;opacity:.85}.widget-wrapper{padding:20px}.vars-details{border-top:1px solid #f0f0f0}.vars-details summary{padding:12px 20px;font-size:12px;color:#888;cursor:pointer;-webkit-user-select:none;user-select:none}.vars-details summary:hover{color:#444}.vars-list{padding:8px 20px 16px;display:flex;flex-direction:column;gap:6px}.var-row{display:flex;align-items:center;gap:12px;font-size:12px;font-family:SF Mono,Fira Code,monospace}.var-name{color:#9876aa;flex-shrink:0}.var-val{color:#6aaf5a;display:flex;align-items:center;gap:6px}.var-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.1);flex-shrink:0}
