.css-ruby-position-generator{max-width:var(--tool-container-max-width, 1600px);margin:0 auto;padding:2rem}.css-ruby-position-generator .tool-header{text-align:center;margin-bottom:2rem}.css-ruby-position-generator .tool-header h1{font-size:2rem;color:var(--gray-800);margin-bottom:.5rem}.css-ruby-position-generator .tool-header p{color:var(--gray-500);font-size:1.1rem}.css-ruby-position-generator .tool-content{display:grid;grid-template-columns:350px 1fr;gap:var(--tool-content-gap, 2rem)}.control-panel{background-color:#1f2937f2!important;border:2px solid var(--gray-400)!important;border-radius:6px}[data-theme=dark] .control-section{background-color:#1f2937e6!important;border-color:var(--gray-400)!important;border-width:2px}[data-theme=dark] .control-group input,[data-theme=dark] .control-group select,[data-theme=dark] .control-group textarea{background-color:#0f172acc!important;border:2px solid var(--gray-500)!important;color:var(--text-primary)}[data-theme=dark] .control-group label{display:block;color:var(--gray-900);font-size:1rem;margin-bottom:.5rem;font-weight:600;line-height:1.5;letter-spacing:.3px}@media (max-width: 968px){.css-ruby-position-generator .tool-content{grid-template-columns:1fr}}.css-ruby-position-generator .controls-panel{background:var(--gray-50);border-radius:12px;padding:1.5rem;border:1px solid var(--gray-200)}.css-ruby-position-generator .control-section{margin-bottom:2rem}.css-ruby-position-generator .control-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.css-ruby-position-generator .control-section h3{font-size:1.15rem;font-weight:700;color:var(--gray-900);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--primary);letter-spacing:.03em}.css-ruby-position-generator .control-section select,.css-ruby-position-generator .control-section input[type=text]{width:100%;padding:.625rem .75rem;border:1px solid var(--gray-300);border-radius:8px;font-size:.95rem;color:var(--gray-800);background:var(--white);transition:border-color .2s,box-shadow .2s}.css-ruby-position-generator .control-section select:focus,.css-ruby-position-generator .control-section input[type=text]:focus{outline:none;border-color:#f43f5e;box-shadow:0 0 0 3px #f43f5e1a}.css-ruby-position-generator .preset-description{font-size:.85rem;color:var(--gray-500);margin-top:.5rem;font-style:italic}.css-ruby-position-generator .custom-selector-input{margin-top:.5rem}.css-ruby-position-generator .position-buttons,.css-ruby-position-generator .align-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.css-ruby-position-generator .position-btn,.css-ruby-position-generator .align-btn{padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:6px;background:var(--white);font-size:.8rem;font-family:SF Mono,Monaco,monospace;color:var(--gray-600);cursor:pointer;transition:all .2s}.css-ruby-position-generator .position-btn:hover,.css-ruby-position-generator .align-btn:hover{border-color:#f43f5e;color:#f43f5e}.css-ruby-position-generator .position-btn.active,.css-ruby-position-generator .align-btn.active{background:linear-gradient(135deg,#f43f5e,#ec4899);border-color:transparent;color:var(--white)}.css-ruby-position-generator .preview-controls{display:flex;flex-direction:column;gap:1rem}.css-ruby-position-generator .preview-controls label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:var(--gray-600)}.css-ruby-position-generator .preview-controls input[type=range]{width:100%;accent-color:#f43f5e}.css-ruby-position-generator .checkbox-label{flex-direction:row!important;align-items:center}.css-ruby-position-generator .checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--gray-900)}.css-ruby-position-generator .save-load-buttons{display:flex;gap:.5rem}.css-ruby-position-generator .save-btn,.css-ruby-position-generator .load-btn{flex:1;padding:.625rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.css-ruby-position-generator .save-btn{background:linear-gradient(135deg,#f43f5e,#ec4899);border:none;color:var(--white)}.css-ruby-position-generator .save-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f43f5e4d}.css-ruby-position-generator .load-btn{background:var(--white);border:1px solid var(--gray-300);color:var(--gray-700)}.css-ruby-position-generator .load-btn:hover{border-color:#f43f5e;color:#f43f5e}.css-ruby-position-generator .preview-panel{display:flex;flex-direction:column;gap:1.5rem}.css-ruby-position-generator .preview-section,.css-ruby-position-generator .comparison-section,.css-ruby-position-generator .output-section,.css-ruby-position-generator .html-section{background:var(--white);border-radius:12px;padding:1.5rem;border:1px solid var(--gray-200)}.css-ruby-position-generator .preview-section h3,.css-ruby-position-generator .comparison-section h3,.css-ruby-position-generator .output-section h3,.css-ruby-position-generator .html-section h3{font-size:1rem;font-weight:600;color:var(--gray-800);margin-bottom:1rem}.css-ruby-position-generator .ruby-preview{background:#fafafa;border:2px solid #d1d5db;border-radius:8px;padding:2rem;line-height:2.5;box-shadow:0 1px 3px #0000001a}.css-ruby-position-generator .preview-samples{display:flex;flex-wrap:wrap;gap:2rem 3rem;justify-content:center}.css-ruby-position-generator .sample-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.css-ruby-position-generator .sample-item ruby{display:inline-block}.css-ruby-position-generator .sample-item .meaning{font-size:.75rem;color:var(--gray-400);font-style:italic}.css-ruby-position-generator .position-comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 768px){.css-ruby-position-generator .position-comparison-grid{grid-template-columns:1fr}}.css-ruby-position-generator .comparison-item{background:var(--gray-50);border-radius:8px;padding:1rem;text-align:center}.css-ruby-position-generator .comparison-item h4{font-size:.85rem;font-weight:600;color:var(--gray-700);margin-bottom:.75rem;font-family:SF Mono,Monaco,monospace}.css-ruby-position-generator .comparison-preview{padding:1.5rem 1rem;background:#f9fafb;line-height:2.5;box-shadow:0 1px 3px #0000001a}.css-ruby-position-generator .comparison-desc{font-size:.75rem;color:var(--gray-500);margin-top:.5rem}.css-ruby-position-generator .css-output,.css-ruby-position-generator .html-output{position:relative}.css-ruby-position-generator .css-output pre,.css-ruby-position-generator .html-output pre{background:var(--gray-800);color:var(--gray-200);padding:1.25rem;border-radius:8px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.css-ruby-position-generator .copy-btn{position:absolute;top:.75rem;right:.75rem;padding:.5rem 1rem;background:#ffffff26;border:2px solid rgba(255,255,255,.35);border-radius:6px;color:var(--white);font-size:.8rem;cursor:pointer;transition:all .2s}.css-ruby-position-generator .copy-btn:hover{background:#fff3}.css-ruby-position-generator .examples-section{margin-top:3rem}.css-ruby-position-generator .examples-section h2{font-size:1.5rem;font-weight:700;color:var(--gray-800);margin-bottom:1.5rem}.css-ruby-position-generator .examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}@media (max-width: 500px){.css-ruby-position-generator .examples-grid{grid-template-columns:1fr}}.css-ruby-position-generator .example-card{background:var(--white);border-radius:12px;padding:1.5rem;border:1px solid var(--gray-200)}.css-ruby-position-generator .example-card h4{font-size:1rem;font-weight:600;color:var(--gray-800);margin-bottom:1rem}.css-ruby-position-generator .example-card pre{background:var(--gray-800);color:var(--gray-200);padding:1rem;border-radius:8px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap}.css-ruby-position-generator .reference-section{margin-top:3rem}.css-ruby-position-generator .reference-section h2{font-size:1.5rem;font-weight:700;color:var(--gray-800);margin-bottom:1.5rem}.css-ruby-position-generator .reference-block{background:var(--white);border-radius:12px;padding:1.5rem;border:1px solid var(--gray-200);margin-bottom:1.5rem}.css-ruby-position-generator .reference-block h3{font-size:1.1rem;font-weight:600;color:var(--gray-800);margin-bottom:1rem}.css-ruby-position-generator .reference-table{width:100%;border-collapse:collapse;font-size:.875rem}.css-ruby-position-generator .reference-table th,.css-ruby-position-generator .reference-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--gray-200)}.css-ruby-position-generator .reference-table th{background:var(--gray-50);font-weight:600;color:var(--gray-700)}.css-ruby-position-generator .reference-table td code{background:var(--gray-100);padding:.2rem .5rem;border-radius:4px;font-family:SF Mono,Monaco,monospace;font-size:.85rem;color:#e11d48}.css-ruby-position-generator .browser-support td.supported{color:#059669;font-weight:500}.css-ruby-position-generator .browser-support td.partial{color:#d97706;font-weight:500}.css-ruby-position-generator .browser-support td.not-supported{color:#dc2626;font-weight:500}.css-ruby-position-generator .best-practices-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.css-ruby-position-generator .practice-item{background:var(--gray-50);border-radius:8px;padding:1.25rem}.css-ruby-position-generator .practice-item h4{font-size:.95rem;font-weight:600;color:var(--gray-800);margin-bottom:.5rem}.css-ruby-position-generator .practice-item p{font-size:.875rem;color:var(--gray-600);line-height:1.6}.css-ruby-position-generator .practice-item code{background:var(--gray-200);padding:.15rem .4rem;border-radius:3px;font-family:SF Mono,Monaco,monospace;font-size:.8rem}.css-ruby-position-generator .conventions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.css-ruby-position-generator .convention-item{background:linear-gradient(135deg,#fef2f2,#fce7f3);border-radius:8px;padding:1.25rem;border:1px solid #fecdd3}.css-ruby-position-generator .convention-item h4{font-size:1rem;font-weight:600;color:var(--gray-800);margin-bottom:.75rem}.css-ruby-position-generator .convention-item ul{margin:0;padding-left:1.25rem}.css-ruby-position-generator .convention-item li{font-size:.875rem;color:var(--gray-600);line-height:1.6;margin-bottom:.25rem}.css-ruby-position-generator .convention-item strong{color:#be123c}
