* {	outline: none;}

a img { border: 0;}


html, body {  padding: 0; margin: 0;}

body, table, input, textarea, select {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    font-weight: 400;
}
body {
	font-size: 62.5%;
	background: #f5f5f5;
	color: #2d3748;
}



#all {
/*	position: relative;*/
	width: 1000px;
	margin: 0 auto;
	padding: 0 5px;
/*	background: red;*/
}



#side_left {
	/*background: url( '../images/side_left.gif' ) no-repeat left top;*/
}

#side_right {
/*	position: relative;*/
	/*background: url( '../images/side_right.gif' ) no-repeat right top;*/
	_height: 641px;
	min-height: 641px;
	/*padding: 0 151px 0 149px;*/
        width:660px;
        float:left;
        padding: 0px 10px;
}


#head {
	position: relative;
	height: 200px;
}

#logo {
	position: absolute;
	top: 10px;
	left: 0;
}
#boombox {
	position: absolute;
	top: 30px;
	left: 305px;
}

#okno {
	position: absolute;
	top: 20px;
	left: 480px;
}

#okno .inner {
	width: 140px;
	padding: 18px 20px;
	background: #ffffff;
	border: 2px solid #334155;
	border-radius: 12px;
	line-height: 20px;
	font-size: 1.2em;
	min-height: 80px;
	position: relative;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Speech bubble triangle pointing left */
#okno .inner:before {
	content: '';
	position: absolute;
	left: -12px;
	top: 30px;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-right: 12px solid #334155;
}

#okno .inner:after {
	content: '';
	position: absolute;
	left: -9px;
	top: 31px;
	width: 0;
	height: 0;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-right: 11px solid #ffffff;
}


#okno table {
	width: 100%;
}
#okno table td {
	padding-bottom: 5px;
}
#okno table label {
	font-size: 1.1em;
}
#okno table .intext {
	width: 97%;
	_width: 95%;
	font-size: 1.1em;
}
#okno table .inbutton input {
	font-size: 1.1em;
}

#okno ul {
	list-style: none;
	margin: 0;
	padding: 15px 0;
}
#okno ul li {
	font-size: 1.1em;
	padding-bottom: 5px;
}
#okno ul li a {
	color: #000;
}
#okno ul li a:hover {
	text-decoration: none;
}




#main {
	min-height: 450px;
	padding: 0px 20px 59px 20px;
	background: url( '../images/train.gif' ) no-repeat center bottom;
	position: relative;
}
html>body #main {
	overflow: hidden;
}

/* Remove graffiti dots decorative elements */
#main:before {
	display: none;
}


#column_left {
	position: relative;
	z-index: 2;
	float: left;
	width: 215px;
}
#column_right {
	position: relative;
	z-index: 2;
	float: left;
	width: 145px;
}

#column_center {
	float: left;
	width: 100%;
	margin: 0 -145px 0 -215px;
}
#squeeze {
	margin: 0 155px 0 225px;
/*	background: #ccc;*/
}



#bust_form {
	padding-bottom: 10px;
}
#step1 table {
	width: 350px;

}
#step1 table td {
	padding-bottom: 3px;
}
#step1 label {
	font-size: 1.1em;
}
#step1 .insel {
	font-size: 1.1em;
}
#bust_form .inbutton input {
	font-size: 1.1em;
}


#bust_content {
	font-size: 1.2em;
}
#bust_content ul {
	margin: 0;
	padding: 0 0 0 15px;
}
#bust_content ul li {
	padding-bottom: 5px;
}

#bust_content ul li a {
	color: #475569;
	text-decoration: none;
	font-weight: 500;
	border-bottom: 1px solid transparent;
	transition: all 0.2s ease;
}
#bust_content ul li a:hover {
	color: #f97316;
	border-bottom: 1px solid #f97316;
}




#rhyme_form {
/*	font-size: 1.1em;*/
}
#rhyme_form table {
	width: 100%;
}
#rhyme_form table td {
	padding-bottom: 3px;
}
#rhyme_form .intext {
	width: 97%;
	_width: 95%;
	font-size: 1.1em;
}
#rhyme_form .inbutton input {
	font-size: 1.1em;
}



#rhyme_content {
	font-size: 1.2em;
}
#rhyme_content ul {
	margin: 0;
	padding: 0 0 0 15px;
}
#rhyme_content ul li {
	padding-bottom: 5px;
}
#rhyme_content ul li a {
	color: #475569;
	text-decoration: none;
	font-weight: 500;
	border-bottom: 1px solid transparent;
	transition: all 0.2s ease;
}
#rhyme_content ul li a:hover {
	color: #f97316;
	border-bottom: 1px solid #f97316;
}



.rte-zone {
	height: 300px;
	margin: 0;
	padding: 0;
	background: #fff;
	border: 1px solid #999;
}

#song {
    font-size: 1.3em;
    overflow: auto;
    height: 400px;
    background: #ffffff;
    padding: 24px;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    line-height: 1.9em;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);
    position: relative;
}

/* Remove spray paint drip effect */
#song:after {
    display: none;
}

#step1 {
padding-left: 20px;
}

#step2 {
    /*width: 500px;
    margin: 0 auto;*/
    padding: 0px 20px;
}

#backBlock {
    padding-left: 20px;    
}

#songHead {
    font-size: 1.9em;
    padding-bottom: 16px;
    font-weight: 700;
    letter-spacing: -0.5px;
    color: #1a202c;
    border-bottom: 2px solid #e2e8f0;
    margin-bottom: 20px;
}

#songCol .empty {
    background-color: #F7DEDC;
}

#getFirstSentence {
    font-size:10px;
}

.what {
    font-size:12px;
}

.banner {
    text-align:center;
}

.text {
    font-size: 16px;
    line-height: 28px;
    font-weight: 400;
    color: #475569;
}

.text h3 {
    margin-top: 28px;
    margin-bottom: 14px;
    border-bottom: 2px solid #e2e8f0;
    padding-bottom: 10px;
    color: #334155;
}

.text p {
    margin-bottom: 16px;
}

.text a {
    color: #f97316;
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: all 0.2s ease;
}

.text a:hover {
    border-bottom: 1px solid #f97316;
    color: #ea580c;
}    

#bustFurther {
    width: 160px;
    height: 52px;
    margin-top: 6px;
    background: linear-gradient(135deg, #f97316 0%, #ea580c 100%);
    border: none;
    border-radius: 12px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.4), 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    letter-spacing: 1px;
    position: relative;
}

#bustFurther:hover {
    background: linear-gradient(135deg, #ea580c 0%, #dc2626 100%);
    box-shadow: 0 6px 16px rgba(249, 115, 22, 0.5), 0 3px 6px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

#bustFurther:active {
    transform: translateY(0px);
    box-shadow: 0 2px 8px rgba(249, 115, 22, 0.4), 0 1px 2px rgba(0, 0, 0, 0.1);
}


.ui-tooltip, .arrow:after {
    background: black;
    border: 2px solid white;
  }
  .ui-tooltip {
    max-width: 500px;
    padding: 10px 20px;
    color: white;
    border-radius: 20px;
    font: bold 14px "Helvetica Neue", Sans-Serif;
    text-transform: uppercase;
    box-shadow: 0 0 7px black;
  }
  .arrow {
    width: 70px;
    height: 16px;
    overflow: hidden;
    position: absolute;
    left: 50%;
    margin-left: -90px;
    bottom: -16px;
  }
  .arrow.top {
    top: -16px;
    bottom: auto;
  }
  .arrow.left {
    left: 20%;
  }
  .arrow:after {
    content: "";
    position: absolute;
    left: 20px;
    top: -20px;
    width: 25px;
    height: 25px;
    box-shadow: 6px 5px 9px -9px black;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    tranform: rotate(45deg);
  }
  .arrow.top:after {
    bottom: -20px;
    top: auto;
  }
  
  #nav {
      font-size: 14px;
      background: #ffffff;
      color: #4a5568;
      padding: 18px 20px;
      margin: 0 -20px 25px -20px;
      letter-spacing: 0.3px;
      border: none;
      border-radius: 12px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.06);
  }

  #nav a {
      color: #4a5568;
      text-decoration: none;
      font-weight: 500;
      transition: all 0.2s ease;
      padding: 8px 12px;
      border-radius: 8px;
      margin: 0 4px;
  }

  #nav a:hover {
      text-decoration: none;
      background: #f97316;
      color: #ffffff;
      transform: translateY(-1px);
  }
  
.ui-draggable .ui-dialog-titlebar {
  display: none;
}

#shareOptions .arrow {
    left:80px;
    bottom:-26px;
}

.ui-dialog {
    padding: 10px 20px;
    color: white;
    border-radius: 20px;
    font: bold 14px "Helvetica Neue", Sans-Serif;
    text-transform: uppercase;
    box-shadow: 0 0 7px black;
  }
  
.ui-dialog, .arrow:after {
    background: black;
    border: 2px solid white;
  }  
  
  
  #shareOptions {
      display:none;
      overflow: visible;
      color:#fff;
      min-height:60px !important;
  }
  
  #shareOptions a {
       color:#fff;
  }
  
  #shareOptions input {
      width:100%;
  }
    #shareOptions label {
    display:block;
    }
    
    #permalinkField {
        padding-top:20px;
    }   
    
    
    .rhymes div {
        line-height:18px;
        font-size:12px;
    }
    
    .rhymefinderForm, .namesfinderForm, .scrabblefinderForm {
        padding-top:20px;
    }
    
    .rhymefinderForm label {
        display:block;
        font-size:12px;
    }   
    .rhymefinderForm #rhymeWord {
        width:400px;
    }
    
    .rhymefinderForm #rhymes {
        padding-top:20px;
    }
    
.ui-autocomplete-loading {
    background: white url('../images/smallpreloader.gif') right center no-repeat;
}

.ui-autocomplete {
    max-height: 200px;
    overflow-y: auto;
    /* prevent horizontal scrollbar */
    overflow-x: hidden;
  }

ul.rhymes {
    /*-webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4; */
    margin:0px;
    padding: 0px;
}

ul.rhymes li {
    display: block;
    line-height: 28px;
    font-size: 16px;
    padding: 10px 14px;
    border-left: 3px solid #f97316;
    border-radius: 8px;
    margin-bottom: 6px;
    transition: all 0.2s ease;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

ul.rhymes li:hover {
    background: #fff7ed;
    border-left-color: #ea580c;
    box-shadow: 0 2px 6px rgba(249, 115, 22, 0.15);
    transform: translateX(4px);
}

ul.rhymes li:hover a {
    color: #f97316;
}

ul.rhymes li a {
    color: #475569;
    font-weight: 500;
    text-decoration: none;
} 

ul.rhymes li .score {
    font-size:12px;
}
 
ul.rhymes li img{
    cursor:pointer;
}

ul.names {
    margin:0px;
    padding: 0px;
}

ul.names li {
    display: block;
    line-height:22px;
    font-size:16px;
    padding-top:8px;
} 

ul.scrabble-words {
    margin:0px;
    padding: 0px;
}

ul.scrabble-words li {
    display: block;
    line-height:22px;
    font-size:16px;
    padding-top:8px;
} 

#scrabble-words {
    overflow:auto;
    height:300px;
}


#names {
    overflow:auto;
    height:300px;
}

#bustFurther {
    margin-right:20px;
}

#bustFurtherBlock {
    padding-bottom:10px;  
    padding-top:5px; 
    display: table-cell;
}

#bustFurtherBlock a {
    vertical-align:middle;
}

.genres {
    background: #ffffff;
    padding: 18px 24px;
    border-radius: 12px;
    margin-bottom: 20px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    position: relative;
}

/* Remove graffiti dots */
.genres:before {
    display: none;
}

.genres input {
    vertical-align: middle;
    margin-right: 8px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: #f97316;
}

.genres label {
    margin-right: 24px;
    font-weight: 500;
    font-size: 1.05em;
    letter-spacing: 0.2px;
    cursor: pointer;
    color: #475569;
}

.genres .genre-label {
    font-weight: 600;
    color: #1e293b;
    margin-right: 16px;
    font-size: 1.05em;
}

#banner-left {
    float:left;
    width:160px;
    padding-top:20px;

}

#banner-right {
    float:left;
    width:160px;
    padding-top:20px;
}

.nurseryLine {
    line-height:20px;
    font-size:14px;
}


/* Wordpress styles */
.entry {
    font-size: 14px;
}

.entry-content {
    line-height: 20px;
}

#bustFurtherBlock span {
    vertical-align: middle;
}

#bustFurtherBlock img {
    vertical-align: bottom;
}

.wordsWithList {
    height:300px;
    overflow: auto;
}

.wordsWithList .words li {
    padding:0px;
    display:block;
}

.wordsWithList .words {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
}    
/* Song Line Styling - Clean and Modern */
.songLine {
    padding: 14px 18px;
    margin: 12px 0;
    background: #f8fafc;
    border-left: 4px solid #f97316;
    border-radius: 10px;
    transition: all 0.25s ease;
    position: relative;
    font-weight: 400;
    border: 1px solid #e2e8f0;
}

/* Remove graffiti dots */
.songLine:before {
    display: none;
}

.songLine:hover {
    background: #fff7ed;
    border-left-color: #ea580c;
    box-shadow: 0 2px 8px rgba(249, 115, 22, 0.15);
    transform: translateX(4px);
}

.songLine a {
    color: #64748b;
    text-decoration: none;
    margin: 0 6px;
    font-size: 0.85em;
    font-weight: 500;
    transition: color 0.2s ease;
}

.songLine:hover a {
    color: #f97316;
}

.songLine a:hover {
    text-decoration: underline;
    color: #ea580c;
}

/* Clean, Modern Headers */
h1, h2, h3 {
    color: #1a202c;
    line-height: 1.3em;
    font-weight: 700;
    letter-spacing: -0.5px;
    position: relative;
}

h1 {
    font-size: 2.6em;
    margin-bottom: 16px;
    color: #0f172a;
}

h2 {
    font-size: 2em;
    margin-bottom: 14px;
    color: #1e293b;
}

h3 {
    font-size: 1.4em;
    font-weight: 600;
    color: #334155;
    margin-top: 20px;
    margin-bottom: 10px;
}

/* Breadcrumbs */
.breadcrumbs {
    margin: 8px 0 20px 0;
    font-size: 1.15em;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    padding: 10px 16px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.breadcrumbs ol {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px;
}

.breadcrumbs li {
    display: inline-flex;
    align-items: center;
}

.breadcrumbs li:first-child a:before {
    content: "\2302";
    margin-right: 5px;
    font-size: 1.1em;
}

.breadcrumbs a {
    color: #64748b;
    text-decoration: none;
    transition: all 0.2s ease;
    padding: 2px 6px;
    border-radius: 4px;
}

.breadcrumbs a:hover {
    color: #f97316;
    background: rgba(249, 115, 22, 0.08);
}

.breadcrumbs .separator {
    color: #94a3b8;
    margin: 0 4px;
    font-size: 0.9em;
}

.breadcrumbs li:last-child span:not(.separator) {
    color: #1e293b;
    font-weight: 600;
    padding: 2px 6px;
}

/* Footer - Clean and Modern */
#footer {
    margin-top: 50px;
    padding: 32px 0;
    background: #ffffff;
    color: #64748b;
    border-top: 1px solid #e2e8f0;
    text-align: center;
    margin: 50px -10px 0 -10px;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
}

.footer-links {
    font-size: 1em;
    color: #64748b;
    letter-spacing: 0.2px;
    font-weight: 500;
}

.footer-links a {
    color: #64748b;
    text-decoration: none;
    margin: 0 16px;
    padding: 8px 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.footer-links a:hover {
    background: #f1f5f9;
    color: #f97316;
}

/* Input Fields - Clean and Modern */
input[type="text"],
input[type="email"],
textarea,
select {
    border: 2px solid #cbd5e1;
    border-radius: 10px;
    padding: 12px 16px;
    font-size: 15px;
    font-weight: 400;
    background: #ffffff;
    color: #334155;
    transition: all 0.2s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: #f97316;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.1);
}

/* General buttons */
input[type="button"],
input[type="submit"],
button {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    border: none;
    border-radius: 10px;
    padding: 12px 24px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    letter-spacing: 0.3px;
    box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}

input[type="button"]:hover,
input[type="submit"]:hover,
button:hover {
    background: linear-gradient(135deg, #5568d3 0%, #6b4192 100%);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
    transform: translateY(-1px);
}

/* Rhyme finder form styling */
.rhymefinderForm #rhymeWord {
    width: 400px;
    border: 2px solid #cbd5e1;
    border-radius: 10px;
    padding: 14px 18px;
    font-size: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

#rhymes {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    margin-top: 20px;
}

/* Remove graffiti spray effect decorations */
#step2:before {
    display: none;
}

/* ===================================================================
   RHYME FINDER - Modern Search Interface
   =================================================================== */

.rhyme-finder-container {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    padding: 30px 20px;
}

.rhyme-finder-container h1 {
    font-size: 2.8em;
    color: #1a202c;
    margin-bottom: 8px;
    font-weight: 700;
}

.finder-tagline {
    font-size: 1.4em;
    color: #64748b;
    margin-bottom: 30px;
}

.finder-search-box {
    display: flex;
    gap: 12px;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 20px;
}

.finder-search-box input[type="text"] {
    width: 100%;
    max-width: 400px;
    padding: 16px 20px;
    font-size: 18px;
    border: 2px solid #cbd5e1;
    border-radius: 12px;
    outline: none;
    transition: all 0.2s ease;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.finder-search-box input[type="text"]:focus {
    border-color: #f97316;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.2);
}

.finder-search-box input[type="text"]::placeholder {
    color: #94a3b8;
}

.finder-search-box button {
    padding: 16px 32px;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    background: linear-gradient(135deg, #f97316 0%, #ea580c 100%);
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.3);
    white-space: nowrap;
}

.finder-search-box button:hover {
    background: linear-gradient(135deg, #ea580c 0%, #dc2626 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(249, 115, 22, 0.4);
}

.finder-search-box button:active {
    transform: translateY(0);
}

.finder-examples {
    font-size: 1.2em;
    color: #64748b;
    margin-bottom: 30px;
}

.finder-examples a {
    color: #f97316;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.finder-examples a:hover {
    color: #ea580c;
    text-decoration: underline;
}

.finder-results {
    text-align: left;
    margin-top: 30px;
}

.finder-results:empty {
    display: none;
}

.finder-results ul.rhymes {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.finder-results ul.rhymes li {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 16px;
    transition: all 0.2s ease;
}

.finder-results ul.rhymes li:hover {
    border-color: #f97316;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.15);
    transform: translateY(-2px);
}

.finder-results ul.rhymes li a {
    font-size: 1.3em;
    font-weight: 600;
    color: #1a202c;
    text-decoration: none;
}

.finder-results ul.rhymes li a:hover {
    color: #f97316;
}

.finder-results ul.rhymes li div {
    font-size: 1.1em;
    color: #64748b;
    margin-top: 6px;
    line-height: 1.4;
}

.finder-results ul.rhymes li .rhyme-rating {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
}

/* ===================================================================
   MOBILE RESPONSIVE STYLES - R40 Train Angular Design
   =================================================================== */

/* Tablet and smaller screens */
@media only screen and (max-width: 1024px) {
    #all {
        width: 100%;
        max-width: 100%;
        padding: 0;
    }
    
    #side_right {
        width: 100%;
        padding: 0 15px;
    }
    
    #main {
        padding: 0 15px 59px 15px;
    }
    
    #nav {
        margin: 0 -15px 20px -15px;
        padding: 12px 15px;
        font-size: 11px;
        letter-spacing: 0.5px;
    }
    
    #nav a {
        display: inline-block;
        margin: 5px 8px;
    }
}

/* Mobile devices */
@media only screen and (max-width: 768px) {
    body {
        font-size: 58%;
    }
    
    #all {
        width: 100%;
        padding: 0;
    }
    
    #side_right {
        width: 100%;
        min-height: 0;
        padding: 0 10px;
    }
    
    /* Header adjustments */
    #head {
        height: auto;
        text-align: center;
        padding: 10px 0;
    }
    
    #logo {
        position: static;
        max-width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
    }
    
    #boombox {
        position: static;
        max-width: 50%;
        height: auto;
        display: block;
        margin: 10px auto;
    }
    
    #okno {
        position: static;
        background: none;
        width: 100%;
        margin: 10px 0;
    }

    #okno .inner {
        width: auto;
        padding: 18px 20px;
        background: #ffffff;
        border: 2px solid #cbd5e1;
        border-radius: 12px;
        min-height: 0;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    }

    /* Hide speech bubble triangle on mobile */
    #okno .inner:before,
    #okno .inner:after {
        display: none;
    }
    
    /* Navigation mobile */
    #nav {
        margin: 0 -10px 15px -10px;
        padding: 12px 10px;
        font-size: 10px;
        text-align: center;
        line-height: 2em;
    }
    
    #nav a {
        display: inline-block;
        margin: 5px 5px;
        padding: 5px 8px;
    }
    
    /* Main content */
    #main {
        padding: 0 10px 40px 10px;
        background-position: center bottom;
        background-size: contain;
    }
    
    /* Hide decorative spray effects on mobile */
    #main:before,
    #step2:before {
        display: none;
    }
    
    /* Step sections */
    #step1, #step2 {
        padding: 0 10px;
    }
    
    /* Headers */
    h1 {
        font-size: 2em;
        letter-spacing: 0.5px;
    }
    
    h2 {
        font-size: 1.6em;
        letter-spacing: 0.5px;
    }
    
    h3 {
        font-size: 1.2em;
    }
    
    /* Song display */
    #song {
        height: 300px;
        padding: 15px;
        font-size: 1.2em;
        border-width: 4px;
        box-shadow: inset 2px 2px 0 rgba(0,0,0,0.1),
                    4px 4px 0 #000000;
    }
    
    #song:after {
        display: none; /* Hide drip effect on mobile */
    }
    
    #songHead {
        font-size: 1.5em;
        padding-bottom: 10px;
        border-width: 3px;
        letter-spacing: 0.5px;
    }
    
    /* Song lines */
    .songLine {
        padding: 8px 12px;
        margin: 8px 0;
        border-left-width: 4px;
        font-size: 1em;
    }
    
    .songLine:before {
        width: 6px;
        height: 6px;
        box-shadow: 0 -12px 0 #000000, 0 12px 0 #000000;
    }
    
    .songLine a {
        font-size: 0.8em;
        margin: 0 3px;
    }
    
    /* Genres section */
    .genres {
        padding: 12px 15px;
        margin-bottom: 15px;
        border-width: 3px;
        box-shadow: 3px 3px 0 #000000;
    }
    
    .genres:before {
        width: 8px;
        height: 8px;
        top: -6px;
        left: 15px;
        box-shadow: 15px 0 0 #000000, 30px 2px 0 #000000;
    }
    
    .genres label {
        display: block;
        margin: 8px 0;
        font-size: 1em;
    }
    
    /* Bust button */
    #bustFurther {
        width: 140px;
        height: 48px;
        font-size: 18px;
        border-width: 3px;
        letter-spacing: 1px;
        box-shadow: 3px 3px 0 #000000, 6px 6px 0 rgba(0,0,0,0.3);
    }
    
    #bustFurther:hover {
        box-shadow: 4px 4px 0 #000000, 8px 8px 0 rgba(0,0,0,0.3);
    }
    
    #bustFurtherBlock {
        text-align: center;
        padding: 10px 0;
    }
    
    /* Text content */
    .text {
        font-size: 14px;
        line-height: 24px;
    }
    
    .text h3 {
        margin-top: 20px;
        border-width: 2px;
    }
    
    /* Input fields */
    input[type="text"],
    input[type="email"],
    textarea {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        font-size: 16px; /* Prevent zoom on iOS */
        border-width: 3px;
    }
    
    .rhymefinderForm #rhymeWord {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        font-size: 16px;
        border-width: 3px;
        box-shadow: 3px 3px 0 #000000;
    }
    
    /* Buttons */
    input[type="button"],
    input[type="submit"],
    button {
        padding: 12px 20px;
        font-size: 14px;
        min-width: 120px;
        border-width: 3px;
    }
    
    /* Rhyme lists */
    #rhymes {
        border-width: 3px;
        padding: 12px;
        box-shadow: 3px 3px 0 #000000;
    }
    
    ul.rhymes li {
        padding: 8px 10px;
        line-height: 24px;
        font-size: 14px;
        border-left-width: 3px;
    }

    /* Rhyme Finder mobile */
    .rhyme-finder-container {
        padding: 20px 10px;
    }

    .rhyme-finder-container h1 {
        font-size: 2em;
    }

    .finder-tagline {
        font-size: 1.2em;
    }

    .finder-search-box {
        flex-direction: column;
        gap: 12px;
    }

    .finder-search-box input[type="text"] {
        max-width: 100%;
        font-size: 16px;
    }

    .finder-search-box button {
        width: 100%;
        padding: 14px 20px;
    }

    .finder-results ul.rhymes {
        grid-template-columns: 1fr;
    }

    /* Footer */
    #footer {
        margin: 30px -10px 0 -10px;
        padding: 20px 10px;
        border-width: 4px;
    }
    
    .footer-links {
        font-size: 1em;
    }
    
    .footer-links a {
        display: inline-block;
        margin: 8px 10px;
    }
}

/* Small mobile devices */
@media only screen and (max-width: 480px) {
    body {
        font-size: 55%;
    }
    
    #logo {
        max-width: 90%;
    }
    
    h1 {
        font-size: 1.8em;
    }
    
    h2 {
        font-size: 1.4em;
    }
    
    #song {
        height: 250px;
        padding: 12px;
        font-size: 1.1em;
    }
    
    #songHead {
        font-size: 1.3em;
    }
    
    .songLine {
        padding: 6px 10px;
        margin: 6px 0;
    }
    
    #bustFurther {
        width: 130px;
        height: 44px;
        font-size: 16px;
        box-shadow: 2px 2px 0 #000000, 4px 4px 0 rgba(0,0,0,0.3);
    }
    
    .genres label {
        font-size: 0.95em;
        margin: 6px 0;
    }
    
    #nav {
        font-size: 9px;
        padding: 10px 8px;
    }
    
    #nav a {
        margin: 4px 3px;
        padding: 4px 6px;
    }
    
    .footer-links {
        font-size: 0.9em;
    }
    
    .footer-links a {
        display: block;
        margin: 10px 0;
    }
    
    ul.rhymes li {
        font-size: 13px;
        padding: 6px 8px;
    }
    
    /* Make multi-column lists single column on small screens */
    .wordsWithList .words {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
}

/* Very small screens */
@media only screen and (max-width: 360px) {
    #nav a {
        font-size: 8px;
        margin: 3px 2px;
        padding: 3px 5px;
    }
    
    .wordsWithList .words {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
    }
    
    #bustFurther {
        width: 120px;
        height: 40px;
        font-size: 14px;
    }
}

/* Touch device improvements */
@media (hover: none) and (pointer: coarse) {
    /* Larger touch targets for mobile */
    a, button, input[type="button"], input[type="submit"] {
        min-height: 44px;
        min-width: 44px;
    }
    
    /* Remove hover effects on touch devices */
    .songLine:hover {
        background: #ffffff;
        color: #000000;
        padding-left: 15px;
    }
    
    .songLine:hover a {
        color: #000000;
    }
    
    /* Make touch actions more obvious */
    .songLine:active {
        background: #000000;
        color: #ffffff;
    }
    
    .songLine:active a {
        color: #ffffff;
    }
}
