.header{padding:60px 20px 40px;position:relative;text-align:center}.header:before{background:linear-gradient(to bottom,#0000,var(--accent));content:"";height:40px;left:50%;position:absolute;top:0;transform:translateX(-50%);width:1px}.header-badge{animation:fadeIn .5s ease;background:#ff45001a;border:1px solid #ff45004d;border-radius:2px;color:var(--accent);display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.2em;margin-bottom:20px;padding:4px 12px}.header-title{animation:slideUp .6s ease;font-family:var(--display);font-size:clamp(60px,12vw,130px);letter-spacing:.02em;line-height:.9;margin-bottom:20px}.title-roast{color:var(--accent);display:block;text-shadow:0 0 60px #ff450066}.title-divider{color:var(--text-muted);display:block;font-size:.5em;letter-spacing:.3em}.title-portfolio{color:var(--text);display:block}.header-sub{animation:fadeIn .8s ease;color:var(--text-dim);font-family:var(--mono);font-size:14px;margin-bottom:24px}.header-stats{animation:fadeIn 1s ease;color:var(--text-muted);display:flex;font-family:var(--mono);font-size:12px;gap:24px;justify-content:center}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-container{animation:fadeIn .6s ease;margin:0 auto;max-width:720px;padding:0 20px 60px}.level-selector{margin-bottom:16px}.level-label{color:var(--text-muted);display:block;font-family:var(--mono);font-size:10px;letter-spacing:.2em;margin-bottom:10px}.level-buttons{display:flex;gap:8px}.level-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:var(--sans);gap:4px;padding:12px 8px;transition:all .2s ease}.level-btn:hover{background:var(--surface2)}.level-btn.active,.level-btn:hover{border-color:var(--accent);color:var(--text)}.level-btn.active{background:#ff450014}.level-emoji{font-size:20px}.level-name{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.05em}.level-desc{color:var(--text-muted);font-size:10px}.input-mode-toggle{border:1px solid var(--border);border-radius:4px;display:flex;gap:0;margin-bottom:12px;overflow:hidden}.mode-btn{background:var(--surface);border:none;color:var(--text-muted);cursor:pointer;flex:1 1;font-family:var(--mono);font-size:12px;letter-spacing:.05em;padding:10px;transition:all .2s}.mode-btn:first-child{border-right:1px solid var(--border)}.mode-btn:hover{background:var(--surface2);color:var(--text)}.mode-btn.active{background:#ff450014;color:var(--accent)}.textarea-wrapper{margin-bottom:16px;position:relative}.portfolio-input{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--mono);font-size:13px;line-height:1.7;min-height:200px;outline:none;padding:20px;resize:vertical;transition:border-color .2s;width:100%}.portfolio-input::placeholder{color:var(--text-muted);font-style:italic}.portfolio-input:focus{border-color:var(--accent)}.textarea-footer{align-items:center;display:flex;justify-content:space-between;margin-top:6px;padding:0 4px}.char-count{color:var(--text-muted);font-family:var(--mono);font-size:11px}.char-count.warn{color:var(--accent2)}.char-warn{color:var(--text-muted);font-family:var(--mono);font-size:11px}.pdf-zone{margin-bottom:16px}.pdf-dropzone{align-items:center;background:var(--surface);border:1px dashed var(--border);border-radius:4px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:40px 20px;transition:all .2s}.pdf-dropzone:hover{background:#ff45000a;border-color:var(--accent)}.pdf-icon{font-size:32px}.pdf-drop-text{color:var(--text-dim);font-family:var(--sans);font-size:14px}.pdf-drop-sub{color:var(--text-muted);font-family:var(--mono);font-size:11px}.pdf-parsing{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-family:var(--mono);font-size:13px;gap:12px;padding:20px}.pdf-parsing,.pdf-success{align-items:center;display:flex}.pdf-success{background:#00c8640d;border:1px solid #00c86433;border-radius:4px;justify-content:space-between;padding:16px 20px}.pdf-success-info{align-items:center;display:flex;gap:12px}.pdf-success-icon{font-size:20px}.pdf-filename{color:var(--text);font-family:var(--mono);font-size:13px;margin-bottom:2px}.pdf-chars,.pdf-remove{color:var(--text-muted);font-family:var(--mono);font-size:11px}.pdf-remove{background:#0000;border:1px solid var(--border);border-radius:3px;cursor:pointer;padding:4px 10px;transition:all .2s}.pdf-remove:hover{border-color:var(--accent);color:var(--accent)}.pdf-error{align-items:center;background:#ff450014;border:1px solid #ff45004d;border-radius:4px;color:var(--accent2);display:flex;font-family:var(--mono);font-size:12px;justify-content:space-between;padding:14px 16px}.pdf-error button{background:#0000;border:1px solid #ff45004d;border-radius:3px;color:var(--accent);cursor:pointer;font-family:var(--mono);font-size:11px;padding:4px 10px}.roast-btn{align-items:center;background:var(--accent);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-family:var(--display);font-size:22px;gap:10px;justify-content:center;letter-spacing:.1em;overflow:hidden;padding:18px;position:relative;transition:all .2s ease;width:100%}.roast-btn:before{background:linear-gradient(135deg,#0000 40%,#ffffff1a);content:"";inset:0;position:absolute}.roast-btn:hover:not(.disabled):not(.loading){background:var(--accent2);box-shadow:0 8px 30px #ff450066;transform:translateY(-1px)}.roast-btn.disabled{color:var(--text-muted)}.roast-btn.disabled,.roast-btn.loading{background:var(--surface2);cursor:not-allowed}.btn-spinner{animation:spin .8s linear infinite;border:2px solid #fff3;border-radius:50%;border-top-color:#fff;display:inline-block;height:18px;width:18px}.form-hint{color:var(--text-muted);font-family:var(--mono);font-size:12px;margin-top:10px;text-align:center}@keyframes spin{to{transform:rotate(1turn)}}.share-section{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.share-label{color:var(--text-muted);font-family:var(--mono);font-size:10px;letter-spacing:.2em;margin-bottom:14px}.share-card{background:var(--surface2);border:1px solid var(--border);border-radius:6px;margin-bottom:14px;overflow:hidden;padding:20px;position:relative}.share-card:before{background:linear-gradient(90deg,var(--accent),var(--accent2),#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.share-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.share-card-logo{color:var(--accent);font-family:var(--mono);font-size:12px;font-weight:500}.share-card-badge{background:var(--border);border-radius:2px;color:var(--text-muted);font-family:var(--mono);font-size:9px;letter-spacing:.15em;padding:2px 8px}.share-card-verdict{color:var(--text-dim);font-family:var(--sans);font-size:14px;font-style:italic;line-height:1.6;margin-bottom:12px}.share-card-score{color:var(--accent);font-family:var(--mono);font-size:13px;margin-bottom:12px}.share-card-url{color:var(--text-muted);font-family:var(--mono);font-size:10px}.share-buttons{display:flex;gap:8px}.share-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:4px;color:var(--text-dim);cursor:pointer;display:flex;flex:1 1;font-family:var(--mono);font-size:12px;gap:6px;justify-content:center;padding:10px 16px;text-align:center;text-decoration:none;transition:all .2s}.share-btn:hover{border-color:var(--text-muted);color:var(--text)}.share-btn.twitter{border-color:#1da1f24d;color:#1da1f2cc}.share-btn.twitter:hover{background:#1da1f20d;border-color:#1da1f2;color:#1da1f2}.result-container{animation:slideIn .5s ease;margin:0 auto;max-width:720px;padding:0 20px 80px}.result-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.result-badge{background:#ff45001a;border:1px solid #ff45004d;border-radius:2px;color:var(--accent);font-family:var(--mono);font-size:11px;letter-spacing:.2em;padding:4px 10px}.result-actions{display:flex;gap:8px}.action-btn{background:#0000;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-family:var(--mono);font-size:12px;padding:6px 14px;transition:all .2s}.action-btn:hover{border-color:var(--text-muted);color:var(--text)}.action-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.action-btn.primary:hover{background:var(--accent2)}.score-banner{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;display:flex;flex-direction:column;gap:4px;margin-bottom:20px;padding:16px 20px}.score-label{color:var(--text-muted);font-family:var(--mono);font-size:10px;letter-spacing:.2em}.score-value{color:var(--accent);font-family:var(--mono);font-size:16px;font-weight:500}.sections{display:flex;flex-direction:column;gap:12px}.section{animation:fadeUp .4s ease both;background:var(--surface);border:1px solid var(--border);border-radius:4px;overflow:hidden}.section-header{align-items:center;background:var(--surface2);border-bottom:1px solid var(--border);display:flex;gap:10px;padding:14px 18px}.section-emoji{font-size:18px}.section-title{color:var(--text);font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.1em}.section-content{display:flex;flex-direction:column;gap:8px;padding:16px 18px}.section-content .bullet{border-left:2px solid var(--border);padding-left:8px}.section-content .bullet,.section-content .text{color:var(--text-dim);font-family:var(--sans);font-size:14px;line-height:1.6}.raw-result pre{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-family:var(--mono);font-size:13px;line-height:1.7;padding:20px;white-space:pre-wrap}.result-footer{margin-top:32px;text-align:center}.reset-btn{background:#0000;border:1px solid var(--border);border-radius:4px;color:var(--text-muted);cursor:pointer;font-family:var(--mono);font-size:13px;letter-spacing:.05em;padding:12px 28px;transition:all .2s}.reset-btn:hover{border-color:var(--accent);color:var(--accent)}@keyframes slideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.error-box{align-items:center;animation:shake .4s ease;background:#ff450014;border:1px solid #ff45004d;border-radius:4px;display:flex;gap:12px;margin:0 auto 20px;max-width:720px;padding:14px 16px}.error-icon{font-size:16px}.error-text{color:var(--accent2);flex:1 1;font-family:var(--mono);font-size:13px}.error-dismiss{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:2px 6px;transition:color .2s}.error-dismiss:hover{color:var(--text)}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}60%{transform:translateX(6px)}}.skeleton-container{animation:fadeIn .3s ease;margin:0 auto;max-width:720px;padding:0 20px 60px}.skeleton-status{align-items:center;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;display:flex;gap:10px;margin-bottom:24px;padding:12px 16px}.skeleton-dot{animation:pulse 1s ease infinite;background:var(--accent);border-radius:50%;flex-shrink:0;height:8px;width:8px}.skeleton-line-text{animation:fadeSwap .4s ease;color:var(--text-dim);font-family:var(--mono);font-size:13px}.skeleton-blocks{display:flex;flex-direction:column;gap:12px}.skeleton-block{animation:fadeUp .4s ease both;background:var(--surface);border:1px solid var(--border);border-radius:4px;overflow:hidden}.skeleton-block-header{background:var(--surface2);border-bottom:1px solid var(--border);padding:14px 18px}.skeleton-block-body{display:flex;flex-direction:column;gap:10px;padding:16px 18px}.skeleton-bar{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--surface2) 25%,var(--border) 50%,var(--surface2) 75%);background-size:200% 100%;border-radius:2px;height:12px;width:100%}.skeleton-bar.short{height:10px;width:40%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSwap{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app{min-height:100vh;overflow:hidden;position:relative}.bg-grid{background-image:linear-gradient(#ff450008 1px,#0000 0),linear-gradient(90deg,#ff450008 1px,#0000 0);background-size:40px 40px;inset:0}.bg-glow,.bg-grid{pointer-events:none;position:fixed;z-index:0}.bg-glow{background:radial-gradient(ellipse,#ff450014 0,#0000 70%);height:400px;left:50%;top:-200px;transform:translateX(-50%);width:600px}.main{padding-top:20px}.footer,.main{position:relative;z-index:1}.footer{align-items:center;border-top:1px solid var(--border);color:var(--text-muted);display:flex;font-family:var(--mono);font-size:11px;gap:10px;justify-content:center;padding:20px;text-align:center}.footer-dot{color:var(--accent)}:root{--bg:#0a0a0a;--surface:#111;--surface2:#1a1a1a;--border:#2a2a2a;--accent:#ff4500;--accent2:#ff6a00;--text:#f0f0f0;--text-muted:#666;--text-dim:#999;--mono:"DM Mono",monospace;--display:"Bebas Neue",sans-serif;--sans:"DM Sans",sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#0a0a0a;background:var(--bg);color:#f0f0f0;color:var(--text);font-family:DM Sans,sans-serif;font-family:var(--sans);min-height:100vh;overflow-x:hidden}::selection{background:#ff4500;background:var(--accent);color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0a0a0a;background:var(--bg)}::-webkit-scrollbar-thumb{background:#2a2a2a;background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ff4500;background:var(--accent)}
/*# sourceMappingURL=main.1aea752b.css.map*/