/* 保守性向上のための案内: このファイルはminify済み。未使用CSSは削除し、最新状態を保ってください。 */
/* Minified CSS: style.css */
*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans JP',Roboto,sans-serif;background:linear-gradient(135deg,#2c1810 0%,#1a1a1a 50%,#0a0a0a 100%);min-height:100vh;padding:8px;margin:0;color:#333}.container{max-width:420px;margin:0 auto;background:#fafafa;border-radius:16px;box-shadow:0 25px 50px rgba(0,0,0,0.15),0 0 0 1px rgba(255,255,255,0.05);overflow:hidden;backdrop-filter:blur(20px)}.header{background:linear-gradient(135deg,#2c2c2c 0%,#1a1a1a 100%);color:#fff;padding:24px 20px;text-align:center;position:sticky;top:0;z-index:100;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,#5B00FF,#7A00FF,#B000FF,#E000FF,#FF003C,#FF4500,#FF6A00,#FF9500) 1}.header h1{font-size:28px;margin-bottom:8px;font-weight:800;letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,0.3)}.header .subtitle{font-size:13px;opacity:.85;font-weight:500;letter-spacing:.3px}.header .tagline{font-size:11px;opacity:.7;margin-top:4px;font-style:italic}.search-box{padding:18px 20px;background:#f8f9fb;border-bottom:1px solid #e5e5e5}.search-input{width:100%;padding:14px 20px;border:2px solid #e0e0e0;border-radius:12px;font-size:16px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:all .3s ease;font-weight:500}.search-input:focus{outline:none;border-color:#e74c3c;box-shadow:0 0 0 3px rgba(231,76,60,0.1),0 4px 12px rgba(0,0,0,0.1)}.search-input::placeholder{color:#888;font-weight:400}.word-list{max-height:calc(100vh - 200px);overflow-y:auto;padding-bottom:20px;margin-top:0}.word-list::-webkit-scrollbar{width:6px}.word-list::-webkit-scrollbar-track{background:#f1f1f1}.word-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.word-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.word-item{padding:18px 22px;border-bottom:1px solid #f0f1f3;background:#fff;transition:all .2s ease;position:relative}.word-item:hover{background:#f9f9fb;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,0.06)}.word-item:last-child{border-bottom:none}.word-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.word-info{display:flex;align-items:center;flex-grow:1}.word-number{background:linear-gradient(135deg,#2c3e50 0%,#34495e 100%);color:#fff;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;min-width:60px;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.word-title{font-size:20px;font-weight:700;color:#2c3e50;flex-grow:1}.word-checkbox{width:20px;height:20px;cursor:pointer;position:relative;background:#fff;border:2px solid #ddd;border-radius:4px;transition:all .3s ease;margin-top:0}.audio-section{margin-bottom:16px}.section-title{font-size:13px;color:#555;margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center}.section-title::before{content:'';width:3px;height:14px;margin-right:8px;border-radius:2px}.section-title.word-section::before{background:linear-gradient(135deg,#3498db,#2980b9)}.section-title.sentence-section::before{background:linear-gradient(135deg,#e74c3c,#c0392b)}.audio-buttons{display:flex;gap:12px;flex-wrap:wrap}.audio-btn{background:linear-gradient(135deg,#fff 0%,#f8f9fa 100%);color:#e74c3c;border:2px solid #e74c3c;border-radius:8px;font-size:14px;font-weight:600;padding:10px 18px;min-width:80px;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px rgba(231,76,60,0.08)}.audio-btn.word-btn{color:#3498db;border-color:#3498db}.audio-btn.sentence-btn{color:#e74c3c;border-color:#e74c3c}.audio-btn:active{transform:scale(.97)}.audio-btn.playing{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border-color:#c0392b}.audio-btn.word-btn.playing{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border-color:#2980b9}.audio-btn.sentence-btn.playing{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border-color:#c0392b}@media (max-width:480px){body{padding:4px}.container{margin:0;border-radius:12px;min-height:calc(100vh - 8px)}.header{padding:20px 18px}.header h1{font-size:24px}.search-box{padding:15px 18px}.word-item{padding:16px 18px}.word-title{font-size:18px;margin-left:15px}.word-number{padding:5px 12px;font-size:11px;min-width:55px}.audio-btn{font-size:13px;padding:9px 15px;min-width:75px}.section-title{font-size:12px}}@media (max-width:360px){.audio-buttons{gap:8px}.audio-btn{font-size:12px;padding:8px 12px;min-width:70px}}
