@import url('https://fonts.googleapis.com/css2?family=Newsreader:wght@400;600;700&family=Crimson+Pro:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap');
/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--brass:#b8860b;--burgundy:#6d1f3a;--warm-tan:#d4a574;--sage-green:#8b9d7e;--cream:#faf8f3;--parchment:#f5f1e8;--dark-brown:#2c2416;--copper:#c77d4b;--font-display:'Newsreader',serif;--font-body:'Crimson Pro',serif;--font-ui:'DM Sans',sans-serif;}.music-tutorial-container.symbols-tutorial{max-width:1200px;margin:0 auto;padding:2rem;background:var(--cream);font-family:var(--font-body);color:var(--dark-brown);line-height:1.7;}.tutorial-hero{text-align:center;padding:3rem 0 2rem;position:relative;margin-bottom:3rem;}.staff-decoration{position:absolute;top:0;left:50%;transform:translateX(-50%);width:300px;height:40px;background:repeating-linear-gradient(transparent,transparent 7px,var(--brass) 7px,var(--brass) 9px);opacity:0.3;}.tutorial-title{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--burgundy);margin:0 0 0.5rem 0;letter-spacing:-0.02em;animation:fadeInDown 0.8s ease-out;}.tutorial-subtitle{font-family:var(--font-body);font-size:1.3rem;color:var(--brass);font-weight:400;margin:0;font-style:italic;animation:fadeIn 1s ease-out 0.3s both;}.tutorial-section{margin:4rem 0;animation:fadeInUp 0.6s ease-out;}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:0.75rem;border-bottom:2px solid var(--warm-tan);}.section-number{font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--warm-tan);line-height:1;opacity:0.6;}.section-header h2{font-family:var(--font-display);font-size:2.2rem;font-weight:600;color:var(--burgundy);margin:0;}.section-content{font-size:1.1rem;}.lead-text{font-size:1.25rem;line-height:1.8;color:var(--dark-brown);margin-bottom:2rem;}.info-callout{background:var(--parchment);border-left:4px solid var(--brass);padding:1.5rem;margin:2rem 0;border-radius:0 8px 8px 0;display:flex;gap:1rem;box-shadow:2px 2px 8px rgba(108,31,58,0.08);}.callout-icon{font-size:1.8rem;flex-shrink:0;}.info-callout p{margin:0;line-height:1.6;}.barline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:2rem 0;}.barline-card{background:white;border:2px solid var(--warm-tan);border-radius:12px;padding:1.5rem;text-align:center;transition:all 0.3s ease;}.barline-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(108,31,58,0.15);border-color:var(--brass);}.barline-visual{margin-bottom:1rem;}.barline-card h3{font-family:var(--font-display);font-size:1.3rem;color:var(--burgundy);margin:0.5rem 0;}.barline-card p{color:var(--dark-brown);margin:0;font-size:1rem;}.repeat-examples{margin:2rem 0;}.repeat-card{background:white;border:2px solid var(--warm-tan);border-radius:12px;padding:2rem;margin-bottom:2rem;transition:all 0.3s ease;}.repeat-card.featured{border-color:var(--brass);border-width:3px;}.repeat-card:hover{box-shadow:0 6px 20px rgba(108,31,58,0.12);}.repeat-visual-large{margin-bottom:1.5rem;text-align:center;}.repeat-visual{margin-bottom:1.5rem;text-align:center;}.repeat-card h3{font-family:var(--font-display);font-size:1.5rem;color:var(--burgundy);margin:0 0 0.5rem 0;}.repeat-card p{margin:0;line-height:1.6;}.navigation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin:2rem 0;}.nav-card{background:white;border:2px solid var(--sage-green);border-radius:12px;padding:1.5rem;transition:all 0.3s ease;}.nav-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(139,157,126,0.2);border-color:var(--brass);}.nav-symbol{width:80px;height:80px;background:var(--parchment);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;border:3px solid var(--sage-green);transition:all 0.3s ease;}.nav-card:hover .nav-symbol{background:var(--brass);border-color:var(--brass);}.nav-symbol .symbol-text{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--burgundy);}.nav-symbol.segno,.nav-symbol.coda{font-size:3rem;color:var(--burgundy);font-weight:normal;}.nav-card h3{font-family:var(--font-display);font-size:1.3rem;color:var(--burgundy);margin:0 0 0.5rem 0;text-align:center;}.nav-card p{margin:0.5rem 0;font-size:0.95rem;line-height:1.5;}.nav-card strong{color:var(--brass);font-weight:600;}.usage-example{background:var(--parchment);padding:0.75rem;border-radius:6px;margin-top:1rem;font-size:0.9rem;font-style:italic;}.flow-diagram{background:var(--parchment);border:2px solid var(--brass);border-radius:12px;padding:2rem;margin:3rem 0;}.flow-diagram h3{font-family:var(--font-display);font-size:1.5rem;color:var(--burgundy);text-align:center;margin:0 0 2rem 0;}.flow-visual{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1rem;}.flow-step{background:white;border:2px solid var(--brass);border-radius:8px;padding:1rem;text-align:center;min-width:120px;position:relative;}.step-number{width:30px;height:30px;background:var(--brass);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--font-ui);margin:0 auto 0.5rem;}.flow-step p{margin:0;font-size:0.9rem;font-weight:500;color:var(--dark-brown);}.flow-arrow{font-size:1.5rem;color:var(--brass);font-weight:bold;}.legend-section{background:linear-gradient(135deg,var(--parchment) 0%,var(--cream) 100%);border-radius:16px;padding:3rem;margin:4rem 0;box-shadow:0 8px 24px rgba(108,31,58,0.1);}.legend-category{margin:3rem 0;}.category-title{font-family:var(--font-display);font-size:1.8rem;color:var(--burgundy);margin:0 0 1.5rem 0;padding-bottom:0.5rem;border-bottom:2px solid var(--brass);display:inline-block;}.terms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin:1.5rem 0;}.term-card{background:white;border:2px solid var(--warm-tan);border-radius:8px;padding:1rem;display:flex;align-items:center;gap:1rem;transition:all 0.2s ease;}.term-card:hover{border-color:var(--brass);box-shadow:0 4px 12px rgba(184,134,11,0.15);transform:translateX(4px);}.term-symbol{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--brass);min-width:50px;text-align:center;}.term-symbol.visual{font-size:2.5rem;}.term-info h4{font-family:var(--font-display);font-size:1.1rem;color:var(--burgundy);margin:0 0 0.25rem 0;}.term-info p{margin:0;font-size:0.9rem;color:var(--dark-brown);}.tempo-list{display:grid;gap:0.75rem;margin:1.5rem 0;}.tempo-item{background:white;border-left:4px solid var(--brass);padding:1rem 1.5rem;border-radius:0 8px 8px 0;display:flex;justify-content:space-between;align-items:center;transition:all 0.2s ease;}.tempo-item:hover{box-shadow:0 4px 12px rgba(184,134,11,0.15);transform:translateX(4px);}.tempo-name{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--burgundy);min-width:150px;}.tempo-desc{font-size:1rem;color:var(--dark-brown);font-style:italic;}.summary-section{background:var(--parchment);border-radius:16px;padding:3rem;margin:4rem 0;}.takeaway-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:2rem 0;}.takeaway-card{text-align:center;padding:2rem;background:white;border-radius:12px;border:2px solid var(--brass);transition:all 0.3s ease;}.takeaway-card:hover{transform:translateY(-6px);box-shadow:0 8px 24px rgba(184,134,11,0.2);}.takeaway-icon{font-size:3rem;color:var(--brass);display:block;margin-bottom:1rem;font-weight:bold;}.takeaway-card h3{font-family:var(--font-display);font-size:1.4rem;color:var(--burgundy);margin:0 0 0.5rem 0;}.takeaway-card p{margin:0;color:var(--dark-brown);line-height:1.5;}.final-note{background:white;border:3px solid var(--sage-green);border-radius:12px;padding:2rem;margin-top:2rem;text-align:center;}.final-note p{margin:0;font-size:1.15rem;line-height:1.8;color:var(--dark-brown);}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}@media (max-width:768px){.music-tutorial-container.symbols-tutorial{padding:1rem;}.tutorial-title{font-size:2.5rem;}.tutorial-subtitle{font-size:1.1rem;}.section-header h2{font-size:1.8rem;}.section-number{font-size:2rem;}.barline-grid,.navigation-grid,.terms-grid,.takeaway-grid{grid-template-columns:1fr;}.flow-visual{flex-direction:column;}.flow-arrow{transform:rotate(90deg);}.tempo-item{flex-direction:column;align-items:flex-start;gap:0.5rem;}.tempo-name{min-width:auto;}}@media print{.music-tutorial-container.symbols-tutorial{background:white;}.barline-card,.repeat-card,.nav-card,.term-card,.tempo-item{break-inside:avoid;}}
