:root{--rug-bg: #fbf7f3;--rug-paper: #ffffff;--rug-line: #ece4dc;--rug-text: #1c1917;--rug-muted: #6b625a;--rug-orange: #d93a00;--rug-orange-dark: #a82d00;--rug-orange-soft: #fff1ea;--rug-blue: #2f5bd3;--rug-green: #157f4a;--rug-amber: #a86500;--rug-red: #b42318;--rug-radius: 16px;--primary: #d93a00;--primary-dark: #a82d00;--border: #ece4dc;--surface: #ffffff;--shadow-soft: 0 12px 30px rgba(28, 25, 23, 0.08);--surface-muted: #f7f2ed;--text-main: #1c1917;--text-muted: #6b625a;}
.rug-tool{display: grid;grid-template-columns: minmax(300px, 380px) 1fr;gap: 20px;background: var(--rug-bg);border: 1px solid var(--rug-line);border-radius: 24px;padding: 20px;margin: 8px 0 56px;color: var(--rug-text);}
.rug-tool [hidden]{display: none !important;}
.rug-panel,.rug-board{background: var(--rug-paper);border: 1px solid var(--rug-line);border-radius: var(--rug-radius);padding: 18px;box-shadow: var(--shadow-soft);}
.rug-panel{align-self: start;display: flex;flex-direction: column;gap: 16px;}
.rug-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 4px 12px;font-size: 12.5px;color: var(--rug-muted);padding-bottom: 12px;border-bottom: 1px dashed var(--rug-line);}
.rug-byline .author-link{color: var(--rug-orange-dark);font-weight: 700;text-decoration: none;}
.rug-byline .author-link:hover{text-decoration: underline;}
.rug-field{border: 0;padding: 0;margin: 0;min-width: 0;}
.rug-field label[for],.rug-field legend,.rug-check label{display: block;font-size: 13px;font-weight: 800;letter-spacing: .04em;text-transform: uppercase;color: var(--rug-muted);margin-bottom: 8px;}
.rug-input{width: 100%;border: 2px solid var(--rug-line);border-radius: 10px;padding: 10px 12px;font-size: 15px;color: var(--rug-text);background: #fff;transition: border-color .15s ease;}
.rug-input:focus{outline: none;border-color: var(--rug-orange);box-shadow: 0 0 0 3px var(--rug-orange-soft);}
.rug-hint{font-size: 12.5px;color: var(--rug-muted);margin: 6px 0 0;}
.rug-chips{display: flex;flex-wrap: wrap;gap: 6px;}
.rug-chip input,.rug-seg input{position: absolute;opacity: 0;pointer-events: none;}
.rug-chip span{display: inline-block;padding: 6px 12px;border: 1px solid var(--rug-line);border-radius: 999px;font-size: 14px;font-weight: 600;cursor: pointer;background: #fff;transition: all .15s ease;}
.rug-chip input:checked + span{background: var(--rug-text);border-color: var(--rug-text);color: #fff;}
.rug-chip input:focus-visible + span,.rug-seg input:focus-visible + span{outline: 2px solid var(--rug-orange);outline-offset: 2px;}
.rug-seg{display: grid;grid-template-columns: repeat(auto-fit, minmax(0, 1fr));background: var(--surface-muted);border-radius: 10px;padding: 3px;gap: 3px;}
.rug-seg label{position: relative;margin: 0;}
.rug-seg span{display: block;text-align: center;padding: 7px 4px;border-radius: 8px;font-size: 13px;font-weight: 600;cursor: pointer;color: var(--rug-muted);white-space: nowrap;}
.rug-seg input:checked + span{background: #fff;color: var(--rug-text);box-shadow: 0 1px 3px rgba(28, 25, 23, 0.15);}
.rug-go{border: 0;border-radius: 999px;padding: 13px 18px;background: var(--rug-orange);color: #fff;font-size: 16px;font-weight: 800;cursor: pointer;transition: background .15s ease, transform .15s ease;}
.rug-go:hover{background: var(--rug-orange-dark);transform: translateY(-1px);}
.rug-go:disabled{opacity: .7;cursor: wait;transform: none;}
.rug-status{font-size: 13px;color: var(--rug-muted);margin: -6px 0 0;}
.rug-status.is-error{color: var(--rug-red);font-weight: 600;}
.rug-board{display: flex;flex-direction: column;gap: 16px;min-width: 0;}
.rug-board-head{display: flex;justify-content: space-between;align-items: baseline;flex-wrap: wrap;gap: 4px 12px;}
.rug-meta{margin: 0;font-weight: 800;font-size: 15px;}
.rug-meta-tip{margin: 0;font-size: 13px;color: var(--rug-muted);}
.rug-names{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));gap: 8px;}
.rug-name{width: 100%;display: flex;align-items: center;justify-content: space-between;gap: 8px;text-align: left;border: 1px solid var(--rug-line);border-radius: 10px;padding: 10px 10px 10px 12px;background: #fff;color: var(--rug-text);cursor: pointer;transition: border-color .15s ease, background .15s ease;}
.rug-name:hover{border-color: var(--rug-orange);}
.rug-name.is-active{border-color: var(--rug-orange);background: var(--rug-orange-soft);box-shadow: inset 3px 0 0 var(--rug-orange);}
.rug-name-text{font-weight: 700;font-size: 15px;overflow-wrap: anywhere;}
.rug-name.is-starred .rug-name-text::after{content: ' \2605';color: var(--rug-orange);}
.rug-pill{flex-shrink: 0;font-size: 12px;font-weight: 800;padding: 2px 8px;border-radius: 999px;background: #e7f5ee;color: var(--rug-green);}
.rug-pill[data-grade="Fair"]{background: #fdf2dc;color: var(--rug-amber);}
.rug-pill[data-grade="Weak"],.rug-pill[data-grade="Rejected"]{background: #fde8e6;color: var(--rug-red);}
.rug-preview{border: 1px solid var(--rug-line);border-radius: 14px;padding: 16px;background: linear-gradient(180deg, #fff 0, #fffaf6 100%);}
.rug-preview.is-flash{animation: rugFlash .45s ease;}
@keyframes rugFlash{0%{transform: translateY(4px);opacity: .5;}100%{transform: none;opacity: 1;}}
.rug-thread{display: flex;gap: 12px;padding: 12px;border-radius: 12px;background: #fff;border: 1px solid var(--rug-line);}
.rug-votes{display: flex;flex-direction: column;align-items: center;gap: 2px;font-size: 13px;color: var(--rug-muted);}
.rug-arrow{color: var(--rug-orange);font-size: 12px;}
.rug-arrow.is-down{color: #b9b1a9;}
.rug-comment{min-width: 0;}
.rug-comment-head{display: flex;align-items: center;gap: 8px;margin: 0 0 6px;font-size: 14px;flex-wrap: wrap;}
.rug-comment-head b{overflow-wrap: anywhere;}
.rug-avatar{width: 26px;height: 26px;border-radius: 50%;display: inline-grid;place-items: center;background: var(--rug-blue);color: #fff;font-weight: 800;font-size: 13px;text-transform: uppercase;}
.rug-ago{color: var(--rug-muted);font-size: 13px;}
.rug-comment-body{margin: 0 0 8px;font-size: 15px;line-height: 1.5;}
.rug-comment-foot{margin: 0;font-size: 12.5px;font-weight: 700;color: var(--rug-muted);}
.rug-comment-foot span{margin-left: 14px;}
.rug-score{display: flex;align-items: center;gap: 14px;margin: 16px 0 10px;}
.rug-dial{--rug-pct: 100;--rug-ring: var(--rug-green);flex-shrink: 0;width: 74px;height: 74px;border-radius: 50%;display: grid;place-content: center;text-align: center;background: radial-gradient(closest-side, #fff 78%, transparent 80%), conic-gradient(var(--rug-ring) calc(var(--rug-pct) * 1%), var(--rug-line) 0);}
.rug-dial[data-grade="Fair"]{--rug-ring: var(--rug-amber);}
.rug-dial[data-grade="Weak"],.rug-dial[data-grade="Rejected"]{--rug-ring: var(--rug-red);}
.rug-dial b{font-size: 22px;line-height: 1;}
.rug-dial span{font-size: 11px;color: var(--rug-muted);}
.rug-grade{margin: 0;font-weight: 800;font-size: 18px;}
.rug-how{margin: 2px 0 0;font-size: 14px;color: var(--rug-muted);}
.rug-notes{list-style: none;margin: 0 0 14px;padding: 0;display: grid;gap: 6px;}
.rug-notes li{position: relative;padding-left: 22px;font-size: 14px;line-height: 1.45;}
.rug-notes li::before{position: absolute;left: 0;top: 0;font-weight: 800;}
.rug-notes [data-tone="ok"]::before{content: '\2713';color: var(--rug-green);}
.rug-notes [data-tone="warn"]::before{content: '!';color: var(--rug-amber);left: 4px;}
.rug-notes [data-tone="bad"]::before{content: '\2715';color: var(--rug-red);}
.rug-actions{display: flex;flex-wrap: wrap;gap: 8px;}
.rug-btn{display: inline-flex;align-items: center;justify-content: center;border: 1px solid var(--rug-text);background: var(--rug-text);color: #fff;border-radius: 999px;padding: 8px 14px;font-size: 14px;font-weight: 700;cursor: pointer;text-decoration: none;transition: all .15s ease;}
.rug-btn:hover{background: #000;color: #fff;}
.rug-btn-ghost{background: #fff;color: var(--rug-text);border-color: var(--rug-line);}
.rug-btn-ghost:hover{background: var(--surface-muted);color: var(--rug-text);border-color: var(--rug-muted);}
.rug-btn.is-done,.rug-btn[aria-pressed="true"]{background: var(--rug-orange);border-color: var(--rug-orange);color: #fff;}
.rug-lower{display: grid;grid-template-columns: 1fr 1fr;gap: 12px;}
.rug-check,.rug-short{border: 1px dashed var(--rug-line);border-radius: 14px;padding: 14px;}
.rug-check-row{display: flex;gap: 8px;}
.rug-check-row .rug-input{min-width: 0;}
.rug-short-title{margin: 0 0 8px;font-size: 13px;font-weight: 800;letter-spacing: .04em;text-transform: uppercase;color: var(--rug-muted);}
.rug-short-list{list-style: none;margin: 0 0 10px;padding: 0;display: flex;flex-wrap: wrap;gap: 6px;}
.rug-short-list li{display: inline-flex;align-items: center;gap: 4px;background: var(--rug-orange-soft);border-radius: 999px;padding: 4px 6px 4px 12px;font-size: 14px;font-weight: 700;}
.rug-short-list button{border: 0;background: transparent;color: var(--rug-orange-dark);font-weight: 800;cursor: pointer;padding: 0 6px;line-height: 1;}
.rug-short-empty{margin: 0;font-size: 13px;color: var(--rug-muted);}
.rug-read,.rug-limits{margin: 0 auto 48px;}
.rug-read h2,.rug-limits h2{font-size: clamp(1.4rem, 2.6vw, 1.8rem);font-weight: 800;margin-bottom: 14px;}
.rug-read p,.rug-read li,.rug-limits li{font-size: 16.5px;line-height: 1.7;color: #36302b;}
.rug-read code{background: var(--surface-muted);color: var(--rug-orange-dark);padding: 1px 6px;border-radius: 6px;font-size: .92em;}
.rug-table-wrap{overflow-x: auto;border: 1px solid var(--rug-line);border-radius: 14px;}
.rug-table{width: 100%;border-collapse: collapse;min-width: 560px;}
.rug-table th,.rug-table td{padding: 12px 14px;border-bottom: 1px solid var(--rug-line);text-align: left;vertical-align: top;font-size: 15px;}
.rug-table thead th{background: var(--surface-muted);font-size: 13px;text-transform: uppercase;letter-spacing: .04em;color: var(--rug-muted);}
.rug-table tbody tr:last-child th,.rug-table tbody tr:last-child td{border-bottom: 0;}
.rug-list{padding-left: 20px;}
.rug-vibes{display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 12px;}
.rug-vibe{border: 1px solid var(--rug-line);border-radius: 14px;padding: 16px;background: #fff;border-top: 4px solid var(--rug-orange);}
.rug-vibe[data-vibe="witty"]{border-top-color: #7a4cc9;}
.rug-vibe[data-vibe="lurker"]{border-top-color: #6b625a;}
.rug-vibe[data-vibe="gamer"]{border-top-color: var(--rug-blue);}
.rug-vibe[data-vibe="wholesome"]{border-top-color: var(--rug-green);}
.rug-vibe[data-vibe="pro"]{border-top-color: #1c1917;}
.rug-vibe h3{font-size: 18px;font-weight: 800;margin: 0 0 4px;}
.rug-vibe p{font-size: 15px;margin: 0;}
.rug-vibe .rug-vibe-eg{font-family: ui-monospace, SFMono-Regular, Menlo, monospace;font-size: 13.5px;color: var(--rug-orange-dark);margin-bottom: 8px;}
.rug-steps{counter-reset: rug;list-style: none;padding: 0;display: grid;gap: 12px;}
.rug-steps li{counter-increment: rug;position: relative;padding: 14px 16px 14px 56px;border: 1px solid var(--rug-line);border-radius: 14px;background: #fff;}
.rug-steps li::before{content: counter(rug);position: absolute;left: 14px;top: 14px;width: 28px;height: 28px;border-radius: 50%;background: var(--rug-orange);color: #fff;font-weight: 800;display: grid;place-items: center;font-size: 14px;}
.rug-limits{background: var(--surface-muted);border-radius: 18px;padding: 24px 28px;}
.rug-limits ul{margin: 0;padding-left: 20px;display: grid;gap: 8px;}
@media (max-width: 991px){.rug-tool{grid-template-columns: 1fr;padding: 14px;}.rug-lower{grid-template-columns: 1fr;}}
@media (max-width: 576px){.rug-tool{border-radius: 18px;padding: 10px;}.rug-panel,.rug-board{padding: 14px;}.rug-names{grid-template-columns: 1fr;}.rug-seg{grid-template-columns: 1fr 1fr;}.rug-limits{padding: 18px;}}
@media (prefers-reduced-motion: reduce){.rug-preview.is-flash{animation: none;}.rug-go,.rug-name,.rug-btn{transition: none;}}