.lt-tool {
    max-width: 700px;
    padding: 16px;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
}
.lt-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
.lt-row label {
    min-width: 210px;
    font-weight: 600;
    margin: 0;
}
.lt-row input[type="number"], .lt-row select {
    width: 180px;
    max-width: 100%;
    padding: 8px 10px;
    line-height: 1.3;
    box-sizing: border-box;
}
.lt-inline-check {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0 !important;
    font-weight: 400 !important;
    cursor: pointer;
}
.lt-inline-help {
    color: #666;
    font-size: 0.92em;
}
.lt-inline-check input[type="checkbox"] { margin: 0; }
.lt-results {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid #eee;
}
.lt-results p {
    margin: 6px 0;
    font-weight: 700;
}
.lt-note {
    margin-top: 12px;
    color: #555;
    line-height: 1.45;
}
.lt-tool.lt-size-1 { max-width: 500px; padding: 9px; border-radius: 6px; font-size: 12px; }
.lt-tool.lt-size-1 .lt-row { gap: 8px; margin-bottom: 8px; }
.lt-tool.lt-size-1 .lt-row label { min-width: 140px; }
.lt-tool.lt-size-1 .lt-row input[type="number"], .lt-tool.lt-size-1 .lt-row select { width: 115px; padding: 4px 6px; font-size: 12px; }
.lt-tool.lt-size-1 .lt-inline-check, .lt-tool.lt-size-1 .lt-inline-help { gap: 4px; font-size: 11px; }
.lt-tool.lt-size-1 .lt-results { margin-top: 10px; padding-top: 8px; }
.lt-tool.lt-size-1 .lt-results p { margin: 4px 0; }
.lt-tool.lt-size-1 .lt-note { margin-top: 8px; font-size: 11px; }

.lt-tool.lt-size-2 { max-width: 540px; padding: 11px; border-radius: 6px; font-size: 13px; }
.lt-tool.lt-size-2 .lt-row { gap: 9px; margin-bottom: 9px; }
.lt-tool.lt-size-2 .lt-row label { min-width: 150px; }
.lt-tool.lt-size-2 .lt-row input[type="number"], .lt-tool.lt-size-2 .lt-row select { width: 128px; padding: 5px 7px; font-size: 13px; }
.lt-tool.lt-size-2 .lt-inline-check, .lt-tool.lt-size-2 .lt-inline-help { gap: 5px; font-size: 12px; }
.lt-tool.lt-size-2 .lt-results { margin-top: 11px; padding-top: 9px; }
.lt-tool.lt-size-2 .lt-results p { margin: 4px 0; }
.lt-tool.lt-size-2 .lt-note { margin-top: 9px; font-size: 12px; }

.lt-tool.lt-size-3 { max-width: 590px; padding: 13px; border-radius: 7px; font-size: 14px; }
.lt-tool.lt-size-3 .lt-row { gap: 10px; margin-bottom: 10px; }
.lt-tool.lt-size-3 .lt-row label { min-width: 170px; }
.lt-tool.lt-size-3 .lt-row input[type="number"], .lt-tool.lt-size-3 .lt-row select { width: 145px; padding: 6px 8px; font-size: 14px; }
.lt-tool.lt-size-3 .lt-inline-check, .lt-tool.lt-size-3 .lt-inline-help { gap: 5px; font-size: 13px; }
.lt-tool.lt-size-3 .lt-results { margin-top: 13px; padding-top: 10px; }
.lt-tool.lt-size-3 .lt-note { margin-top: 10px; font-size: 13px; }

.lt-tool.lt-size-4 { max-width: 640px; padding: 14px; border-radius: 8px; font-size: 15px; }
.lt-tool.lt-size-4 .lt-row { gap: 11px; margin-bottom: 11px; }
.lt-tool.lt-size-4 .lt-row label { min-width: 190px; }
.lt-tool.lt-size-4 .lt-row input[type="number"], .lt-tool.lt-size-4 .lt-row select { width: 162px; padding: 7px 9px; font-size: 15px; }
.lt-tool.lt-size-4 .lt-inline-check, .lt-tool.lt-size-4 .lt-inline-help { gap: 6px; font-size: 14px; }
.lt-tool.lt-size-4 .lt-results { margin-top: 14px; padding-top: 11px; }
.lt-tool.lt-size-4 .lt-note { margin-top: 11px; font-size: 14px; }

.lt-tool.lt-size-5 { max-width: 700px; padding: 16px; border-radius: 8px; font-size: 16px; }
.lt-tool.lt-size-5 .lt-row { gap: 12px; margin-bottom: 12px; }
.lt-tool.lt-size-5 .lt-row label { min-width: 210px; }
.lt-tool.lt-size-5 .lt-row input[type="number"], .lt-tool.lt-size-5 .lt-row select { width: 180px; padding: 8px 10px; font-size: 16px; }
.lt-tool.lt-size-5 .lt-inline-check, .lt-tool.lt-size-5 .lt-inline-help { gap: 6px; font-size: 15px; }
.lt-tool.lt-size-5 .lt-results { margin-top: 16px; padding-top: 12px; }
.lt-tool.lt-size-5 .lt-note { margin-top: 12px; font-size: 15px; }

@media (max-width: 700px) {
    .lt-row { display: block; }
    .lt-row label { display: block; min-width: 0 !important; margin-bottom: 6px; }
    .lt-row input[type="number"], .lt-row select { width: 100% !important; }
    .lt-inline-check, .lt-inline-help { display: flex; margin-top: 8px; }
}

/* Text Case Converter */
.lt-textcase-group{margin-bottom:12px}.lt-textcase-group label{display:block;font-weight:600;margin-bottom:6px}.lt-textcase-input,.lt-textcase-output{width:100%;max-width:100%;box-sizing:border-box;padding:8px 10px;line-height:1.4;resize:vertical}.lt-textcase-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.lt-textcase-actions button{padding:7px 10px;cursor:pointer}.lt-size-1 .lt-textcase-input,.lt-size-1 .lt-textcase-output{padding:4px 6px;font-size:12px}.lt-size-1 .lt-textcase-actions{gap:5px;margin:7px 0 8px}.lt-size-1 .lt-textcase-actions button{padding:4px 7px;font-size:12px}.lt-size-2 .lt-textcase-input,.lt-size-2 .lt-textcase-output{padding:5px 7px;font-size:13px}.lt-size-2 .lt-textcase-actions{gap:6px;margin:8px 0 9px}.lt-size-2 .lt-textcase-actions button{padding:5px 8px;font-size:13px}.lt-size-3 .lt-textcase-input,.lt-size-3 .lt-textcase-output{padding:6px 8px;font-size:14px}.lt-size-3 .lt-textcase-actions button{padding:6px 9px;font-size:14px}.lt-size-4 .lt-textcase-input,.lt-size-4 .lt-textcase-output{padding:7px 9px;font-size:15px}.lt-size-4 .lt-textcase-actions button{padding:7px 10px;font-size:15px}.lt-size-5 .lt-textcase-input,.lt-size-5 .lt-textcase-output{padding:8px 10px;font-size:16px}.lt-size-5 .lt-textcase-actions button{padding:7px 10px;font-size:16px}


.lt-pomodoro-display {
    text-align: center;
    padding: 14px;
    border: 1px solid #eee;
    border-radius: 8px;
    margin: 14px 0;
    background: #fafafa;
}
.lt-pomodoro-mode {
    font-weight: 700;
    margin-bottom: 6px;
}
.lt-pomodoro-time {
    font-size: 2.4em;
    font-weight: 800;
    line-height: 1.1;
}
.lt-pomodoro-status {
    margin-top: 6px;
    color: #555;
}
.lt-pomodoro-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 12px;
}
.lt-pomodoro-actions button {
    padding: 7px 10px;
    cursor: pointer;
}
.lt-size-1 .lt-pomodoro-display { padding: 8px; margin: 9px 0; border-radius: 6px; }
.lt-size-1 .lt-pomodoro-time { font-size: 1.8em; }
.lt-size-1 .lt-pomodoro-actions { gap: 5px; margin: 7px 0 8px; }
.lt-size-1 .lt-pomodoro-actions button { padding: 4px 7px; font-size: 12px; }

.lt-size-2 .lt-pomodoro-display { padding: 10px; margin: 10px 0; border-radius: 6px; }
.lt-size-2 .lt-pomodoro-time { font-size: 2em; }
.lt-size-2 .lt-pomodoro-actions button { padding: 5px 8px; font-size: 13px; }

.lt-size-3 .lt-pomodoro-display { padding: 12px; margin: 12px 0; border-radius: 7px; }
.lt-size-3 .lt-pomodoro-time { font-size: 2.15em; }
.lt-size-3 .lt-pomodoro-actions button { padding: 6px 9px; font-size: 14px; }

.lt-size-4 .lt-pomodoro-display { padding: 13px; margin: 13px 0; }
.lt-size-4 .lt-pomodoro-time { font-size: 2.25em; }
.lt-size-4 .lt-pomodoro-actions button { padding: 7px 10px; font-size: 15px; }

.lt-size-5 .lt-pomodoro-display { padding: 14px; margin: 14px 0; }
.lt-size-5 .lt-pomodoro-time { font-size: 2.4em; }
.lt-size-5 .lt-pomodoro-actions button { padding: 7px 10px; font-size: 16px; }


.lt-headline-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 12px;
}
.lt-headline-actions button {
    padding: 7px 10px;
    cursor: pointer;
}
.lt-headline-score-wrap {
    text-align: center;
    padding: 14px;
    border: 1px solid #eee;
    border-radius: 8px;
    background: #fafafa;
    margin: 14px 0;
}
.lt-headline-score {
    font-size: 2.4em;
    font-weight: 800;
    line-height: 1;
}
.lt-headline-score-label {
    font-weight: 700;
    margin-top: 4px;
}
.lt-headline-grade {
    margin-top: 6px;
    color: #555;
}
.lt-headline-suggestions {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #eee;
}
.lt-headline-suggestions ul {
    margin: 8px 0 0 20px;
}
.lt-headline-input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    line-height: 1.4;
    resize: vertical;
}
.lt-size-1 .lt-headline-score { font-size: 1.8em; }
.lt-size-2 .lt-headline-score { font-size: 2em; }
.lt-size-3 .lt-headline-score { font-size: 2.15em; }
.lt-size-4 .lt-headline-score { font-size: 2.25em; }
.lt-size-5 .lt-headline-score { font-size: 2.4em; }
.lt-size-1 .lt-headline-actions button { padding: 4px 7px; font-size: 12px; }
.lt-size-2 .lt-headline-actions button { padding: 5px 8px; font-size: 13px; }
.lt-size-3 .lt-headline-actions button { padding: 6px 9px; font-size: 14px; }
.lt-size-4 .lt-headline-actions button { padding: 7px 10px; font-size: 15px; }
.lt-size-5 .lt-headline-actions button { padding: 7px 10px; font-size: 16px; }


.lt-wordcounter-input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    line-height: 1.4;
    resize: vertical;
}
.lt-wordcounter-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 12px;
}
.lt-wordcounter-actions button {
    padding: 7px 10px;
    cursor: pointer;
}
.lt-wordcounter-density {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #eee;
}
.lt-wordcounter-density ol {
    margin: 8px 0 0 22px;
}
.lt-wordcounter-keyword {
    width: 220px;
    max-width: 100%;
    padding: 8px 10px;
    box-sizing: border-box;
}
.lt-size-1 .lt-wordcounter-input,
.lt-size-1 .lt-wordcounter-keyword { padding: 4px 6px; font-size: 12px; }
.lt-size-1 .lt-wordcounter-actions button { padding: 4px 7px; font-size: 12px; }
.lt-size-2 .lt-wordcounter-input,
.lt-size-2 .lt-wordcounter-keyword { padding: 5px 7px; font-size: 13px; }
.lt-size-2 .lt-wordcounter-actions button { padding: 5px 8px; font-size: 13px; }
.lt-size-3 .lt-wordcounter-input,
.lt-size-3 .lt-wordcounter-keyword { padding: 6px 8px; font-size: 14px; }
.lt-size-3 .lt-wordcounter-actions button { padding: 6px 9px; font-size: 14px; }
.lt-size-4 .lt-wordcounter-input,
.lt-size-4 .lt-wordcounter-keyword { padding: 7px 9px; font-size: 15px; }
.lt-size-4 .lt-wordcounter-actions button { padding: 7px 10px; font-size: 15px; }
.lt-size-5 .lt-wordcounter-input,
.lt-size-5 .lt-wordcounter-keyword { padding: 8px 10px; font-size: 16px; }
.lt-size-5 .lt-wordcounter-actions button { padding: 7px 10px; font-size: 16px; }
@media (max-width: 700px) {
    .lt-wordcounter-keyword { width: 100% !important; }
}



.lt-typing-passage {
    padding: 12px;
    border: 1px solid #eee;
    border-radius: 8px;
    background: #fafafa;
    line-height: 1.6;
    margin-bottom: 12px;
}
.lt-typing-input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    line-height: 1.4;
    resize: vertical;
}
.lt-typing-correct-char {
    background: rgba(0, 128, 0, 0.12);
}
.lt-typing-wrong-char {
    background: rgba(220, 0, 0, 0.18);
    text-decoration: underline;
}
.lt-typing-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 12px;
}
.lt-typing-actions button {
    padding: 7px 10px;
    cursor: pointer;
}
.lt-size-1 .lt-typing-passage { padding: 7px; border-radius: 6px; line-height: 1.45; }
.lt-size-1 .lt-typing-input { padding: 4px 6px; font-size: 12px; }
.lt-size-1 .lt-typing-actions button { padding: 4px 7px; font-size: 12px; }
.lt-size-2 .lt-typing-passage { padding: 8px; line-height: 1.5; }
.lt-size-2 .lt-typing-input { padding: 5px 7px; font-size: 13px; }
.lt-size-2 .lt-typing-actions button { padding: 5px 8px; font-size: 13px; }
.lt-size-3 .lt-typing-passage { padding: 10px; line-height: 1.55; }
.lt-size-3 .lt-typing-input { padding: 6px 8px; font-size: 14px; }
.lt-size-3 .lt-typing-actions button { padding: 6px 9px; font-size: 14px; }
.lt-size-4 .lt-typing-passage { padding: 11px; line-height: 1.58; }
.lt-size-4 .lt-typing-input { padding: 7px 9px; font-size: 15px; }
.lt-size-4 .lt-typing-actions button { padding: 7px 10px; font-size: 15px; }
.lt-size-5 .lt-typing-passage { padding: 12px; line-height: 1.6; }
.lt-size-5 .lt-typing-input { padding: 8px 10px; font-size: 16px; }
.lt-size-5 .lt-typing-actions button { padding: 7px 10px; font-size: 16px; }


.lt-typing-inline-message {
    color: #cc0000;
    font-weight: 700;
    margin-left: 8px;
}
