.tiers-table-wrapper{overflow-x:auto}.tiers-table{width:100%;border-collapse:collapse;font-size:1.6rem;border-radius:12px;overflow:hidden}.tiers-table td,.tiers-table th{padding:1.2rem;border:1px solid var(--color-border);text-align:left}.tiers-table th{background:var(--color-border);color:var(--color-primary-text);font-weight:700}.tiers-table tbody tr:nth-child(2n){background:var(--color-lighter-gray)}.tiers-table td{vertical-align:top}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;margin-top:3rem}.tier-card{border:1px solid var(--color-border);border-radius:12px;padding:3rem;display:flex;flex-direction:column;position:relative;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.tier-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.tier-header{text-align:center;margin-bottom:2rem}.tier-image{width:80px;height:80px;margin:0 auto 1.5rem;display:block;border:none;-o-object-fit:contain;object-fit:contain;background:transparent}.tier-name{font-size:2.4rem;font-weight:800;margin:0 0 1rem;color:var(--color-darker-gray)}.tier-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0}.tier-pricing{text-align:center;padding:2rem 0;border-bottom:1px solid var(--color-border);margin-bottom:2rem}.tier-price{display:flex;align-items:baseline;justify-content:center;gap:.5rem}.tier-amount{font-size:4rem;font-weight:800;color:var(--ghost-accent-color)}.tier-period{font-size:1.8rem;color:var(--color-secondary-text)}.tier-benefits{list-style:none;margin:0 0 3rem;padding:0;flex:1}.tier-benefits li{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.2rem;font-size:1.6rem;line-height:1.5}.tier-benefits svg{flex-shrink:0;margin-top:.2rem;color:var(--ghost-accent-color)}.tier-actions{display:flex;flex-direction:column;gap:1rem;margin-top:auto}.tier-btn{width:100%;text-align:center;padding:1.2rem 2.4rem;font-size:1.6rem;font-weight:600;border-radius:12px;text-decoration:none;cursor:pointer;display:inline-block;border:1px solid}.tier-btn.gh-primary-btn{color:#fff!important;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:opacity .2s,box-shadow .2s}.tier-btn.gh-primary-btn:hover{opacity:.9;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.subscribers-section{padding-top:6rem;padding-bottom:4rem}.subscribers-counter{margin:3rem 0;min-height:60px;position:relative}.carousel-loading,.counter-loading,.table-loading{display:flex;align-items:center;justify-content:center;padding:2rem}.tier-counters{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.tier-counter-item{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.6rem;background:var(--color-lighter-gray,#f8f8f8);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.tier-counter-item:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.tier-icon{font-size:2.4rem;line-height:1}.tier-counter-info{display:flex;align-items:center;gap:1rem}.tier-counter-name{font-weight:600;font-size:1.6rem;color:var(--color-darker-gray)}.tier-counter-number{font-weight:700;font-size:1.8rem;color:var(--ghost-accent-color)}.subscribers-carousel-container{margin:4rem 0}.subscribers-tiers-carousel{display:flex;flex-direction:column;gap:4rem}.tier-carousel-section{position:relative}.tier-carousel-title{font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center;color:var(--color-darker-gray)}.tier-carousel-wrapper{position:relative;height:180px;overflow:hidden;border-radius:12px;padding:0;background:transparent;border:none;transition:height .3s}.tier-carousel-wrapper:has(.single-row){height:90px}.tier-carousel-wrapper:after,.tier-carousel-wrapper:before{content:"";position:absolute;top:0;bottom:0;width:100px;z-index:10;pointer-events:none}.tier-carousel-wrapper:before{left:0;background:linear-gradient(to right,var(--background-color,#fff) 0,var(--background-color,#fff) 10%,transparent 100%)}.tier-carousel-wrapper:after{right:0;background:linear-gradient(to left,var(--background-color,#fff) 0,var(--background-color,#fff) 10%,transparent 100%)}.subscriber-carousel-rows{position:relative;height:100%;display:flex;flex-direction:column;gap:1.2rem;padding:0}.subscriber-carousel-rows.single-row{justify-content:center;gap:0}.subscriber-carousel-rows.no-animation{display:flex;align-items:center;justify-content:center}.subscriber-carousel-rows.no-animation .subscriber-carousel-row{overflow:visible;width:100%;display:flex;justify-content:center}.subscriber-carousel-rows.no-animation .subscriber-carousel-track{position:static;display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;animation:none}.subscriber-carousel-rows.no-animation .subscriber-carousel-item{flex:0 0 auto;max-width:400px}.subscriber-carousel-row{position:relative;height:80px;overflow:hidden;display:flex;align-items:center}.subscriber-carousel-rows:not(.single-row) .subscriber-carousel-row{height:calc(50% - .6rem)}.subscriber-carousel-track{display:flex;gap:2rem;position:absolute;height:100%;align-items:center}.subscriber-carousel-rows:not(.no-animation) .subscriber-carousel-row:first-child .subscriber-carousel-track{animation:interactiveCarouselForward 60s linear infinite}.subscriber-carousel-rows:not(.no-animation) .subscriber-carousel-row:nth-child(2) .subscriber-carousel-track{animation:interactiveCarouselReverse 60s linear infinite}.subscriber-carousel-rows:not(.no-animation) .subscriber-carousel-row:nth-child(3) .subscriber-carousel-track{animation:interactiveCarouselForward 45s linear infinite}.subscriber-carousel-row:hover .subscriber-carousel-track{animation-play-state:paused}.subscriber-carousel-static{display:flex;gap:2rem;justify-content:center;padding:1rem;flex-wrap:wrap}.subscriber-carousel-item{flex:0 0 auto;background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:.8rem 1.5rem;display:flex;align-items:center;justify-content:center;white-space:nowrap;height:76px;position:relative;z-index:1;min-width:280px;max-width:400px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.subscriber-carousel-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.subscriber-avatar{width:48px;height:48px;background:linear-gradient(135deg,var(--ghost-accent-color));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.6rem;flex-shrink:0}.subscriber-info{text-align:center;width:100%;min-width:0}.subscriber-carousel-content{display:flex;flex-direction:column;gap:.4rem;width:100%;min-width:0}.subscriber-carousel-header{display:flex;justify-content:center;align-items:center;gap:1rem;width:100%}.subscriber-name,.subscriber-name-link{font-weight:600;font-size:1.5rem;color:var(--color-darker-gray);text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin:0 auto}.subscriber-carousel-message{font-size:1.3rem;color:var(--color-secondary-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;text-align:center}.subscriber-name-link{transition:opacity .2s;cursor:pointer!important}.subscriber-name-link:hover{opacity:.9}@media(max-width:991px){.tiers-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}}@media(max-width:767px){.tiers-table td,.tiers-table th{font-size:1.4rem;padding:.8rem}.tiers-grid{grid-template-columns:1fr}.tier-card{padding:2rem}.tier-image{width:60px;height:60px;-o-object-fit:contain;object-fit:contain}.tier-amount{font-size:3.2rem}.tier-counter-info{flex-direction:column;gap:.2rem;text-align:center}.subscriber-carousel-item{min-width:240px;max-width:320px;padding:.8rem 1.2rem;height:68px}.subscriber-avatar{width:40px;height:40px;font-size:1.4rem}.subscriber-name,.subscriber-name-link{max-width:180px;font-size:1.3rem}.subscriber-carousel-track{animation-duration:40s!important}.subscriber-carousel-row:nth-child(2) .subscriber-carousel-track{animation-duration:35s!important}.subscriber-carousel-row:nth-child(3) .subscriber-carousel-track{animation-duration:45s!important}.tier-carousel-wrapper{height:160px;margin-top:2rem}.tier-carousel-wrapper:has(.single-row){height:80px}.subscriber-carousel-row{height:68px}.subscriber-carousel-rows{gap:.8rem;padding:0}.subscriber-carousel-rows:not(.single-row) .subscriber-carousel-row{height:calc(50% - .4rem)}.tier-carousel-wrapper:after,.tier-carousel-wrapper:before{width:50px}.subscriber-carousel-rows:not(.no-animation) .subscriber-carousel-row:first-child .subscriber-carousel-track,.subscriber-carousel-rows:not(.no-animation) .subscriber-carousel-row:nth-child(2) .subscriber-carousel-track{animation-duration:45s}}@media(max-width:600px){.tiers-table td,.tiers-table th{font-size:1.3rem}}.chat-widget{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:24px;z-index:999;font-family:var(--font-sans,system-ui,sans-serif)}.chat-toggle{width:60px;height:60px;border-radius:50%;background:var(--color-white);border:1px solid var(--color-border);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;align-items:center;justify-content:center;padding:2px;position:relative;overflow:visible}.chat-toggle.chat-open{opacity:0;visibility:hidden;transform:scale(.8)}.chat-toggle:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-toggle:active{transform:translateY(0)}.chat-toggle.has-conversation{border-color:var(--ghost-accent-color);animation:pulse-border 2s infinite}.chat-avatar{width:57px;height:57px;border-radius:50%;-o-object-fit:cover;object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.chat-avatar:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-badge{display:none}.chat-toggle.has-conversation .chat-badge{display:block;animation:chatBadgePulse 2s infinite}.chat-container{position:fixed;bottom:24px;right:24px;width:400px;height:600px;max-height:calc(100dvh - 48px - env(safe-area-inset-bottom,0px));background:var(--color-white);border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:none;flex-direction:column;overflow:hidden;border:1px solid var(--color-border)}.chat-container:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-container.show{display:flex;animation:interactiveStateEnter .3s var(--interactive-state-enter-easing)}.chat-header{background:var(--color-white);padding:16px 20px;justify-content:space-between;border-bottom:1px solid var(--color-border)}.chat-header,.chat-header-info{display:flex;align-items:center}.chat-header-info{gap:1rem}.chat-header-avatar{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-border)}.chat-header-text h3{margin:0;font-size:16px;font-weight:600;color:var(--color-darker-gray);line-height:1.2}.chat-status{font-size:12px;color:var(--color-secondary-text);display:block;margin-top:2px}.chat-header-actions{display:flex;align-items:center;gap:1rem}.chat-header-actions button{display:flex;width:44px;height:44px;padding:8px;align-items:center;justify-content:center;border:none;border-radius:12px;color:var(--color-secondary-text);background:none;cursor:pointer;transition:background .2s,color .2s}.chat-header-actions button svg{display:block;width:16px;height:16px}.chat-header-actions button svg *{vector-effect:non-scaling-stroke;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.chat-header-actions button:hover{background:var(--color-lighter-gray);color:var(--color-darker-gray)}.chat-messages{flex:1;padding:20px;overflow-y:auto;background:var(--color-bg);scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-text)}.chat-message{margin-bottom:16px;display:flex;align-items:flex-start;gap:1rem;animation:chatMessageEnter .3s ease}.chat-message.user{flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0;border:1px solid var(--color-border)}.message-bubble{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.message-bubble:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-message.user .message-bubble{background:var(--color-lighter-gray);color:var(--color-darker-gray);border-bottom-left-radius:16px;border-bottom-right-radius:4px;border:1px solid var(--color-border)}.chat-message.assistant .message-bubble{background:var(--color-white);color:var(--color-darker-gray);border:1px solid var(--color-border);border-bottom-left-radius:4px}.chat-message.assistant .message-bubble h1,.chat-message.assistant .message-bubble h2,.chat-message.assistant .message-bubble h3,.chat-message.assistant .message-bubble h4{margin:.5rem 0;font-weight:600;color:var(--color-darker-gray)}.chat-message.assistant .message-bubble h1{font-size:16px}.chat-message.assistant .message-bubble h2{font-size:15px}.chat-message.assistant .message-bubble h3{font-size:14px}.chat-message.assistant .message-bubble h4{font-size:14px;color:var(--ghost-accent-color);margin:1rem 0}.chat-message.assistant .message-bubble p{margin:1rem 0;line-height:1.5}.chat-message.assistant .message-bubble p:first-child{margin-top:0}.chat-message.assistant .message-bubble p:last-child{margin-bottom:0}.chat-message.assistant .message-bubble ol,.chat-message.assistant .message-bubble ul{margin:.5rem 0;padding-left:1.5rem}.chat-message.assistant .message-bubble ol{list-style:none;counter-reset:item}.chat-message.assistant .message-bubble ul{list-style:disc}.chat-message.assistant .message-bubble li{margin:.5rem 0;position:relative;line-height:1.5}.chat-message.assistant .message-bubble ol li{padding-left:1.5rem;counter-increment:item}.chat-message.assistant .message-bubble ol li:before{content:counter(item) ".";position:absolute;left:0;font-weight:600;color:var(--ghost-accent-color)}.chat-message.assistant .message-bubble strong{color:var(--ghost-accent-color);font-weight:600}.chat-message.assistant .message-bubble em{font-style:italic}.chat-message.assistant .message-bubble code{color:var(--ghost-accent-color);font-style:italic;font-size:.95em}.chat-message.assistant .message-bubble a{color:var(--ghost-accent-color);word-break:break-word}.chat-message.assistant .message-bubble a:hover{text-decoration:none}.chat-message.assistant .message-bubble .chat-link{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-all}.chat-message.assistant .message-bubble .chat-link:hover{text-decoration:none;opacity:.8}.chat-message.assistant .message-bubble .chat-bullet-list{list-style:disc;margin:.75rem 0;padding-left:1.25rem}.chat-message.assistant .message-bubble .chat-bullet-list li{margin:.4rem 0;line-height:1.5}.chat-message.assistant .message-bubble .chat-bullet-list ol,.chat-message.assistant .message-bubble .chat-nested-list{margin:.5rem 0;padding-left:1.25rem}.chat-message.assistant .message-bubble .chat-nested-list li{margin:.3rem 0;line-height:1.4}.chat-message.assistant .message-bubble ol.chat-bullet-list{list-style:decimal;counter-reset:none}.chat-message.assistant .message-bubble ol.chat-bullet-list li{padding-left:.25rem}.chat-message.assistant .message-bubble ol.chat-bullet-list li:before{display:none}.chat-message.assistant .message-bubble ol.chat-nested-list{list-style:decimal;counter-reset:none}.chat-message.assistant .message-bubble ol.chat-nested-list li{padding-left:.25rem}.chat-message.assistant .message-bubble ol.chat-nested-list li:before{display:none}.chat-message.assistant .message-bubble ul.chat-nested-list{list-style:circle}.chat-message.assistant .message-bubble br{display:block;content:"";margin:.25rem 0}.chat-message.assistant .japanese-word{font-size:1.1em;font-weight:600}.chat-message.assistant .romaji-word{color:var(--ghost-accent-color);font-style:italic;font-size:.95em}.chat-message.assistant .translation-word{color:var(--color-secondary-text);font-size:.95em}.chat-message.assistant .chat-image{max-width:100%;height:auto;border-radius:12px;margin:1rem 0 .5rem;border:1px solid var(--color-border);display:block;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.chat-message.assistant .chat-item-card{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:1.2rem;margin:.8rem 0;transition:box-shadow .2s}.chat-message.assistant .chat-item-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-message.assistant .chat-item-header{display:flex;align-items:center;gap:1rem;margin-bottom:.8rem}.chat-message.assistant .chat-item-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--ghost-accent-color);color:#241b0b;border-radius:50%;font-size:1.6rem;font-weight:600;flex-shrink:0}.chat-message.assistant .chat-item-title{margin:0;font-size:calc(max(14px,1rem));font-weight:600;color:var(--color-darker-gray);line-height:1.3}.chat-message.assistant .chat-item-card.post-card .chat-item-title a{color:var(--color-darker-gray);text-decoration:none;transition:color .2s}.chat-message.assistant .chat-item-card.post-card .chat-item-title a:hover{color:var(--ghost-accent-color);text-decoration:underline}.chat-message.assistant .chat-item-card.chat-story-card{margin:.8rem 0;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:1.2rem}.chat-message.assistant .chat-item-card.chat-story-card .chat-item-header{margin-bottom:.8rem}.chat-message.assistant .chat-item-card.chat-story-card .chat-image{width:100%;margin:.8rem 0;border-radius:12px}.chat-message.assistant .chat-item-description{margin:0 0 .6rem;font-size:calc(max(14px,1rem));color:var(--color-secondary-text);line-height:1.4;font-weight:600}.chat-message.assistant .chat-item-metadata{display:flex;flex-wrap:wrap}.chat-message.assistant .chat-item-metadata.vocabulary-meta{justify-content:space-between}.chat-message.assistant .chat-item-meta{display:flex;align-items:center;gap:1rem;font-size:calc(max(12px,.85rem))}.chat-message.assistant .chat-item-meta.difficulty{padding:.2rem .6rem;border-radius:12px;font-size:calc(max(12px,.75rem));font-weight:700}.chat-message.assistant .chat-item-meta.difficulty.esencial,.chat-message.assistant .chat-item-meta.difficulty.intro{background:rgba(0,123,255,.1)}.chat-message.assistant .chat-item-meta.difficulty.esencial .meta-value,.chat-message.assistant .chat-item-meta.difficulty.intro .meta-value{color:var(--color-level-blue)}.chat-message.assistant .chat-item-meta.difficulty.a1-1,.chat-message.assistant .chat-item-meta.difficulty.a1-2,.chat-message.assistant .chat-item-meta.difficulty.a2-1,.chat-message.assistant .chat-item-meta.difficulty.a2-2{background:rgba(40,167,69,.1)}.chat-message.assistant .chat-item-meta.difficulty.a1-1 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.a1-2 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.a2-1 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.a2-2 .meta-value{color:var(--color-level-green)}.chat-message.assistant .chat-item-meta.difficulty.b1-1,.chat-message.assistant .chat-item-meta.difficulty.b1-2,.chat-message.assistant .chat-item-meta.difficulty.b2-1,.chat-message.assistant .chat-item-meta.difficulty.b2-2{background:rgba(255,193,7,.1)}.chat-message.assistant .chat-item-meta.difficulty.b1-1 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.b1-2 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.b2-1 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.b2-2 .meta-value{color:var(--color-level-amber)}.chat-message.assistant .chat-item-meta.difficulty.c1,.chat-message.assistant .chat-item-meta.difficulty.c2{background:rgba(220,53,69,.1)}.chat-message.assistant .chat-item-meta.difficulty.c1 .meta-value,.chat-message.assistant .chat-item-meta.difficulty.c2 .meta-value{color:var(--color-level-red)}.chat-message.assistant .chat-item-meta:last-child{margin-left:auto}.chat-message.assistant .meta-label{color:var(--color-darker-gray);font-weight:700}.chat-message.assistant .meta-value{color:var(--color-secondary-text);font-weight:600}.chat-message.assistant .standalone-meta{font-size:calc(max(12px,.9rem));margin:.5rem 0}.chat-message.assistant .chat-item-card.post-card .chat-image{margin-top:1rem;margin-bottom:1rem}.chat-message.assistant ol.chat-list{list-style:none;counter-reset:none;padding-left:0}.chat-message.assistant ol.chat-list li{padding-left:0;counter-increment:none}.chat-message.assistant ol.chat-list li:before{content:none}.typing-indicator{padding:8px 16px;background:var(--color-white);border:1px solid var(--color-border);border-radius:16px 16px 16px 4px;display:inline-block;min-height:47px}.typing-dots,.typing-indicator{display:flex;align-items:center}.typing-dots{gap:4px}.typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--color-secondary-text);animation:typing 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.chat-input-container{padding:16px;background:var(--color-white);border-top:1px solid var(--color-border)}.chat-input-wrapper{display:flex;gap:1rem;align-items:flex-end}.chat-input{flex:1;min-width:0;border:1px solid var(--color-border);border-radius:24px;padding:10px 18px;font-size:14px;resize:none;min-height:20px;max-height:120px;font-family:inherit;background:var(--color-bg);color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;line-height:1.4}.chat-input:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-input:focus{outline:none;border-color:var(--ghost-accent-color);background:var(--color-white);box-shadow:0 6px 16px rgba(255,87,0,.1)}.chat-input::-moz-placeholder{color:var(--color-secondary-text)}.chat-input::placeholder{color:var(--color-secondary-text)}.chat-send{width:44px;height:44px;border-radius:50%;background:var(--ghost-accent-color);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;flex-shrink:0}.chat-send:hover:not(:disabled){transform:scale(1.05);opacity:.9;box-shadow:0 6px 16px rgba(255,87,0,.1)}.chat-send:active:not(:disabled){transform:scale(.95)}.chat-send:disabled{opacity:.5;cursor:not-allowed}.chat-message.assistant .chat-item-card .chat-image{width:100%;max-width:100%;height:auto;border-radius:12px;display:block;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.chat-message.assistant .chat-item-card .chat-image:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.chat-message.assistant .chat-item-card+.chat-image,.chat-message.assistant .chat-item-card+p>.chat-image{margin-top:-.5rem;margin-bottom:1rem}.chat-message.assistant .chat-item-card+.chat-image{margin-top:1rem;width:100%;max-width:100%}.chat-message.assistant .chat-table-wrapper{overflow-x:auto;margin:1rem 0;border-radius:12px;border:1px solid var(--color-border)}.chat-message.assistant .chat-table{width:100%;border-collapse:collapse;font-size:calc(max(12px,.9rem));background:var(--color-white)}.chat-message.assistant .chat-table td,.chat-message.assistant .chat-table th{padding:.75rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border)}.chat-message.assistant .chat-table td:last-child,.chat-message.assistant .chat-table th:last-child{border-right:none}.chat-message.assistant .chat-table th{background:var(--color-lighter-gray);font-weight:600;color:var(--color-darker-gray)}.chat-message.assistant .chat-table tr:last-child td{border-bottom:none}.chat-message.assistant .chat-table tr:nth-child(2n){background:rgba(0,0,0,.02)}.chat-message.assistant .vocab-table{font-size:calc(max(12px,.95rem))}.chat-message.assistant .vocab-table td.japanese-cell,.chat-message.assistant .vocab-table th.japanese-col{font-weight:600;color:var(--color-darker-gray);font-size:12px;letter-spacing:.02em}.chat-message.assistant .vocab-table td.romaji-cell,.chat-message.assistant .vocab-table th.romaji-col{color:var(--color-secondary-text);font-style:italic;font-size:12px}.chat-message.assistant .vocab-table td.spanish-cell,.chat-message.assistant .vocab-table th.spanish-col{color:var(--color-secondary-text);font-size:12px}.chat-message.assistant .vocab-table td{padding:.8rem .75rem;vertical-align:middle}.chat-message.assistant .vocab-table tr:hover{background:rgba(255,140,0,.05);transition:background-color .2s}.chat-message.assistant .message-bubble .chat-blockquote,.chat-message.assistant .message-bubble blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid var(--ghost-accent-color);background:var(--color-lighter-gray);border-radius:0 8px 8px 0;font-style:italic;color:var(--color-secondary-text)}.chat-message.assistant .message-bubble .chat-blockquote{display:block}.chat-message.assistant .message-bubble .chat-hr,.chat-message.assistant .message-bubble hr{margin:1.5rem 0;border:none;height:1px;background:var(--color-border)}.chat-message.assistant .message-bubble del{text-decoration:line-through;opacity:.7}.chat-message.assistant .message-bubble .chat-heading{margin:1rem 0 .5rem;font-weight:600;color:var(--color-darker-gray);line-height:1.3}.chat-message.assistant .message-bubble h1.chat-heading{font-size:1.4rem}.chat-message.assistant .message-bubble h2.chat-heading{font-size:calc(max(14px,1.25rem))}.chat-message.assistant .message-bubble h3.chat-heading{font-size:calc(max(14px,1.1rem))}.chat-message.assistant .message-bubble h4.chat-heading,.chat-message.assistant .message-bubble h5.chat-heading,.chat-message.assistant .message-bubble h6.chat-heading{font-size:calc(max(14px,1rem))}.chat-message.assistant .message-bubble .chat-inline-code{background:var(--color-lighter-gray);padding:.15rem .4rem;border-radius:4px;font-family:var(--font-mono);font-size:.85em;color:var(--ghost-accent-color)}.chat-message.assistant .chat-code-block{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:1rem;margin:1rem 0;overflow-x:auto;font-family:var(--font-mono);font-size:calc(max(12px,.85rem));line-height:1.4}.chat-message.assistant .chat-code-block code{background:none;padding:0;border-radius:0;font-family:inherit;font-size:inherit;color:var(--color-darker-gray)}.chat-message.assistant .chat-code-block.japanese-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans CJK JP,Hiragino Sans,sans-serif;line-height:1.8;font-size:calc(max(12px,.9rem))}.chat-message.assistant .chat-code-block.japanese-text code{font-family:inherit;letter-spacing:.02em}.chat-message.assistant .chat-kbd{background:var(--color-white);border:1px solid var(--color-border);border-radius:4px;padding:.2rem .4rem;font-family:var(--font-mono);font-size:calc(max(12px,.8rem));box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);display:inline-block;margin:0 .1rem}.chat-message.assistant .chat-highlight{background:rgba(255,235,59,.3);padding:.1rem .2rem;border-radius:3px;color:var(--color-darker-gray)}.chat-message.assistant .chat-footnote{font-size:calc(max(12px,.75rem));color:var(--ghost-accent-color);text-decoration:none}.chat-message.assistant .chat-footnote a{color:inherit;text-decoration:none}.chat-message.assistant .vocab-entry{display:flex;align-items:center;gap:1rem;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.05);margin:.25rem 0}.chat-message.assistant .vocab-entry:last-child{border-bottom:none}.chat-message.assistant .vocab-kanji{font-size:1.1em;font-weight:600;color:var(--color-darker-gray);min-width:-moz-fit-content;min-width:fit-content}.chat-message.assistant .vocab-reading{color:var(--ghost-accent-color);font-style:italic;font-size:.9em;min-width:-moz-fit-content;min-width:fit-content}.chat-message.assistant .vocab-separator{color:var(--color-secondary-text);margin:0 .25rem}.chat-message.assistant .vocab-translation{color:var(--color-secondary-text);font-size:.95em;flex:1}.chat-message.assistant .content-section-header{margin:1.5rem 0 .75rem;font-size:calc(max(14px,1rem));font-weight:600;color:var(--ghost-accent-color);border-bottom:2px solid var(--ghost-accent-color);padding-bottom:.25rem;display:inline-block}.chat-message.assistant .content-section-header.inline{margin:1rem 0 .5rem;display:block;border-bottom:1px solid var(--ghost-accent-color)}.chat-message.assistant .message-bubble p{line-height:1.6}.chat-message.assistant .japanese-word{font-size:1.05em;font-weight:500;color:var(--color-darker-gray);letter-spacing:.02em}.chat-contact-preview{background:linear-gradient(135deg,rgba(255,140,0,.05),rgba(255,140,0,.02));border:2px solid rgba(255,140,0,.2);border-radius:12px;padding:1.25rem;margin:1rem 0;box-shadow:0 2px 8px rgba(255,140,0,.1)}.contact-preview-category{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,140,0,.15)}.contact-preview-category .category-icon{font-size:calc(max(14px,1.25rem))}.contact-preview-category .category-label{font-weight:600;color:var(--ghost-accent-color);font-size:calc(max(12px,.95rem));text-transform:uppercase;letter-spacing:.5px}.contact-preview-message{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);border:1px solid var(--color-border)}.contact-preview-message p{margin:0;color:var(--color-primary-text);line-height:1.6;font-size:12px}.chat-strikes-container{background:linear-gradient(135deg,rgba(239,68,68,.03),rgba(239,68,68,.08));border:1px solid rgba(239,68,68,.2);border-radius:12px;padding:1.25rem;margin:1rem 0}.strikes-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.strikes-counter{display:flex;gap:1rem;align-items:center}.chat-strikes-container .strike-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s,opacity .2s,background .2s;background:var(--color-bg-secondary);border:1px solid var(--color-border)}.chat-strikes-container .strike-icon.active{opacity:1;transform:scale(1);background:var(--color-lighter-gray);border:1px solid var(--color-border)}.chat-strikes-container .strike-icon.inactive{opacity:.3;transform:scale(.9);background:var(--color-bg-secondary);border:1px solid var(--color-border)}.chat-strikes-container .strike-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.strikes-count-text{font-size:calc(max(12px,.85rem));font-weight:600;color:var(--color-secondary-text)}.strikes-progress-bar{height:6px;background:rgba(0,0,0,.1);border-radius:3px;overflow:hidden;margin-bottom:1rem}.strikes-progress-fill{height:100%;background:#f59e0b;border-radius:3px;transition:width .3s}.strikes-progress-fill.danger{background:#ef4444}.strikes-expiration{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--color-lighter-gray);border-radius:12px;font-size:calc(max(12px,.85rem));color:var(--color-secondary-text);margin-bottom:1rem;border:1px solid var(--color-border);font-weight:600}.strikes-expiration .expiration-icon{font-size:calc(max(14px,1rem))}.strikes-expiration strong{color:var(--color-darker-gray)}.strikes-list{margin-top:1rem}.strikes-list-title{font-size:calc(max(12px,.9rem));font-weight:600;color:var(--color-darker-gray);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.strike-item{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:.875rem;margin-bottom:.75rem}.strike-item.active{border-left:3px solid #ef4444}.strike-item.expired{opacity:.6;border-left:3px solid var(--color-border)}.strike-item-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}.strike-number{background:rgba(239,68,68,.1);color:#ef4444;font-size:calc(max(12px,.75rem));font-weight:700;padding:.2rem .5rem;border-radius:4px}.strike-reason{font-weight:600;color:var(--color-darker-gray);font-size:calc(max(12px,.9rem));flex:1}.strike-status{font-size:calc(max(12px,.7rem));font-weight:600;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.strike-status.active{background:rgba(239,68,68,.1);color:#ef4444}.strike-status.expired{background:rgba(0,0,0,.05);color:var(--color-secondary-text)}.strike-item-dates{display:flex;align-items:center;gap:1rem;font-size:calc(max(12px,.8rem));color:var(--color-secondary-text);margin-bottom:.5rem;justify-content:center;font-weight:600}.strike-appeal-status{font-size:calc(max(12px,.8rem));padding:.5rem .75rem;border-radius:6px;margin-top:.5rem}.strike-appeal-status.rejected{background:rgba(239,68,68,.08);color:#dc2626}.strike-appeal-status.appealable{background:rgba(59,130,246,.08);color:#2563eb}.strikes-appealable{margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(0,0,0,.1)}.appealable-strike-item{background:rgba(59,130,246,.05);border:1px solid rgba(59,130,246,.2);border-radius:12px;padding:1rem;margin-bottom:.75rem}.appealable-strike-reason{font-size:calc(max(12px,.85rem));margin-bottom:.75rem}.appealable-strike-reason .reason-label{font-weight:600;color:var(--color-darker-gray)}.appealable-strike-content{margin-bottom:.75rem}.appealable-strike-content .content-label{display:block;font-size:calc(max(12px,.8rem));font-weight:600;color:var(--color-secondary-text);margin-bottom:.5rem}.blocked-content{background:#fff;border:1px solid var(--color-border);border-radius:6px;padding:.75rem;font-size:calc(max(12px,.85rem));color:var(--color-secondary-text);font-style:italic;max-height:100px;overflow-y:auto}.blocked-content p{margin:0}.appealable-strike-action{font-size:calc(max(12px,.8rem));color:#2563eb;font-weight:500}.strikes-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.1);text-align:center}.normas-link{display:inline-flex;align-items:center;gap:1rem;color:var(--ghost-accent-color);font-size:calc(max(12px,.85rem));font-weight:500;text-decoration:none;padding:.5rem 1rem;border-radius:6px;transition:background .2s}.normas-link:hover{background:rgba(255,140,0,.1);text-decoration:none}.chat-communities-list{display:flex;flex-direction:column;gap:1rem;margin:1rem 0}.chat-community-card{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;position:relative}.chat-community-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-image-wrapper{width:100%;height:120px;overflow:hidden}.community-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.community-info{flex:1;min-width:0;padding:1rem}.community-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.community-name{margin:0!important;font-size:calc(max(12px,.95rem));font-weight:600;color:var(--color-darker-gray);flex:1;min-width:0}.community-description{margin:0 0 .5rem;font-size:calc(max(14px,1rem));color:var(--color-secondary-text);line-height:1.4}.community-members{gap:1rem;font-size:calc(max(12px,.8rem));color:var(--color-darker-gray);line-height:1;flex-shrink:0}.members-count,.members-icon{display:flex;align-items:center}.members-count{font-weight:500;font-size:calc(max(12px,.85rem))}.community-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.community-username{display:flex;align-items:center;gap:1rem;font-size:calc(max(12px,.85rem));color:var(--ghost-accent-color);font-weight:500}.username-icon{font-weight:600}.community-status{display:flex;align-items:center;gap:1rem;font-size:calc(max(12px,.85rem));font-weight:600;padding:.2rem .5rem;border-radius:4px;position:absolute;top:1rem;right:1rem}.community-status.approved{background:rgba(34,197,94,.1);color:#16a34a}.community-status.pending{background:rgba(234,179,8,.1);color:#ca8a04}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.community-joined{display:flex;align-items:center;gap:.35rem;font-size:calc(max(12px,.9rem));font-weight:500}.joined-icon{font-size:calc(max(12px,.85rem))}.my-communities .chat-community-card{border-left:3px solid var(--ghost-accent-color)}.chat-message.assistant .chat-videos-list{display:flex;flex-direction:column;gap:1.5rem;margin:1.2rem 0}.chat-message.assistant .chat-video-card{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.03);padding:1.2rem 1rem 1rem;display:flex;flex-direction:column;align-items:stretch;transition:box-shadow .2s}.chat-message.assistant .chat-video-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.07)}.chat-message.assistant .chat-video-embed{width:100%;aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden;margin-bottom:1rem}.chat-message.assistant .chat-video-embed iframe{width:100%;height:100%;border:none;display:block;border-radius:10px}.chat-message.assistant .chat-video-meta{display:flex;flex-direction:column;gap:.3rem}.chat-message.assistant .chat-video-meta .chat-item-metadata{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:.2rem 0}.chat-message.assistant .chat-video-meta .chat-item-meta{display:flex;align-items:center;gap:.5rem;font-size:calc(max(12px,.85rem));color:var(--color-secondary-text);background:none;border-radius:0;padding:0;font-weight:400}.chat-message.assistant .chat-video-meta .chat-item-meta .meta-label{font-weight:500;color:var(--color-darker-gray);margin-right:.2em}.chat-message.assistant .chat-video-meta .chat-item-meta .meta-value{color:var(--color-secondary-text)}.chat-message.assistant .chat-video-title{font-size:calc(max(14px,1rem));font-weight:600;margin:0 0 .2rem;color:var(--color-darker-gray)}.chat-message.assistant .chat-video-title a{color:var(--color-darker-gray);text-decoration:none;transition:color .2s}.chat-message.assistant .chat-video-title a:hover{color:var(--ghost-accent-color);text-decoration:underline}.chat-message.assistant .chat-video-channel{font-size:.95em;color:var(--ghost-accent-color);font-weight:500}@keyframes pulse-border{0%,to{border-color:var(--ghost-accent-color);box-shadow:0 3px 16px rgba(255,140,0,.2)}50%{border-color:var(--ghost-accent-color);box-shadow:0 6px 16px rgba(255,140,0,.3)}}@keyframes chatBadgePulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}to{transform:scale(1);opacity:1}}@keyframes chatMessageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.chat-container.show,.chat-message,.chat-toggle.has-conversation,.chat-toggle.has-conversation .chat-badge{animation:none}}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-8px);opacity:1}}@keyframes pulse-strike{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media(max-width:767px){.chat-widget{bottom:calc(16px + env(safe-area-inset-bottom,0px));right:16px}.chat-toggle{width:56px;height:56px}.chat-container{width:calc(100vw - 32px);height:calc(100vh - 32px);height:calc(100dvh - 32px - env(safe-area-inset-bottom,0px));max-height:min(600px,100dvh - 32px - env(safe-area-inset-bottom,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));right:16px;left:16px}.chat-header{padding:14px 16px}.chat-messages{padding:16px}.chat-input-container{padding:12px}.chat-input{font-size:16px}.chat-message.assistant .chat-table-wrapper{font-size:calc(max(12px,.8rem))}.chat-message.assistant .chat-table td,.chat-message.assistant .chat-table th{padding:.5rem}.chat-message.assistant .chat-videos-list{gap:1rem}.chat-message.assistant .chat-video-card{padding:.7rem .5rem}.chat-message.assistant .chat-video-embed{margin-bottom:.7rem}.chat-message.assistant .chat-video-title{font-size:calc(max(12px,.98rem))}}.gh-article-footer,.gh-article-header,.gh-article-meta,.gh-content{width:100%;margin-left:auto;margin-right:auto}.gh-article-title{font-size:4.2rem;font-weight:800;line-height:1.2;text-align:left;margin-bottom:1.5rem}.gh-article-excerpt{font-size:2.2rem;font-weight:500;line-height:1.4;color:var(--color-secondary-text)}.gh-article-header img{width:100%;height:auto;display:block;margin-left:auto;margin-right:auto}.gh-content{font-size:2rem;line-height:1.58;color:var(--color-primary-text);margin-left:auto;margin-right:auto}.gh-content table:not(.gist table):not(.ai-features-table) :is(th,td){overflow-wrap:normal;word-break:normal}.gh-content h1+p,.gh-content h2+p,.gh-content h3+p,.gh-content h4+p,.gh-content h5+p{margin-top:1.8rem}.gh-article-meta{display:flex;align-items:center;gap:16px;font-size:1.4rem;color:var(--color-secondary-text)}.gh-article-footer{margin-top:5rem}.gh-content h1,.gh-content h2,.gh-content h3,.gh-content h4,.gh-content h5,.gh-content h6{color:var(--color-primary-text);text-rendering:optimizeLegibility;font-weight:700;margin-top:5.6rem;margin-bottom:1.6rem}.gh-content h1{font-size:48px;margin-bottom:8px}.gh-content h2{font-size:32px;line-height:1.25;letter-spacing:-.03em;margin-bottom:16px}.gh-content h3{font-size:28px;margin-top:3rem;margin-bottom:1.2rem}.gh-content p{line-height:1.58;letter-spacing:-.03px;margin-top:3rem;margin-bottom:0}.gh-content blockquote{font-size:2.8rem;color:rgba(0,0,0,.68);margin-top:3.5rem;padding-left:30px}.gh-content code{padding:3px 8px;font-size:.9em;font-family:var(--font-mono);word-break:break-word;display:inline-block;line-height:1.4}.gh-content code,.gh-content pre{background:rgba(0,0,0,.05);border-radius:12px}.gh-content pre{padding:20px;font-size:16px;overflow-x:auto;line-height:1.5}.gh-content pre code{background:none;padding:0;font-size:inherit;border-radius:0;display:block}.gh-content figure{margin:0;padding:0}figcaption{font-size:1.4rem;color:var(--color-secondary-text);text-align:center;margin-top:10px;padding:0}.gh-content ol,.gh-content ul{margin-top:2rem;margin-bottom:0;margin-left:30px;padding-left:2rem;line-height:1.58}.gh-content hr{border:none;border-top:1px solid var(--color-border);margin:calc(clamp(2.8rem,6vw,4.2rem)) 0}.kg-image-card img{border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.kg-image-card:hover img{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.kg-gallery-image img{border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.kg-gallery-image:hover img{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.gh-content iframe{box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border-radius:12px;border:1px solid var(--color-border)!important}.gh-content iframe:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.gh-content :not(.kg-card):not(table):not([id])+:is(.kg-card,table){margin-bottom:calc(2em * var(--content-spacing-multiplier,1))}.kg-bookmark-container{border-radius:12px!important;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.kg-bookmark-container:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}@media(max-width:767px){.gh-article-title{font-size:calc(clamp(3.2rem,5vw,4.2rem))}.gh-article-excerpt{font-size:calc(clamp(1.8rem,2vw,2.2rem))}.gh-content{font-size:calc(clamp(1.8rem,2vw,2rem))}.gh-content p{margin-top:calc(clamp(2.6rem,6vw,3rem))}.gh-content h1+p,.gh-content h2+p,.gh-content h3+p,.gh-content h4+p,.gh-content h5+p{margin-top:calc(clamp(1.2rem,3vw,1.8rem))}.gh-content blockquote{font-size:calc(clamp(2.5rem,2.5vw,2.8rem));margin-top:calc(clamp(2.8rem,2.5vw,3.5rem))}}@media(max-width:480px){.gh-content h1{font-size:calc(clamp(2.8rem,6vw,3.5rem))}.gh-content h2{font-size:calc(clamp(2.2rem,5vw,3rem))}.gh-content h3{font-size:calc(clamp(2rem,5vw,2.6rem))}.gh-content hr,.gh-content ol,.gh-content p,.gh-content ul{margin-top:calc(clamp(1.8rem,4vw,3rem))}}gh-about-primary+.gh-about-secondary.gh-about-html{max-width:640px;margin-top:20px;font-size:calc(clamp(2rem,.36vw + 1.83rem,2.4rem));font-weight:450}.gh-about-primary+.gh-about-secondary.gh-about-html p{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}.gh-about-html p:empty{display:none}.gh-about-html p+p{margin-top:1em}.section-header{margin-bottom:3rem}.categories-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:3rem}.category-card{border-radius:12px;overflow:hidden;border:1px solid var(--color-border);height:100%;display:flex;flex-direction:column;width:100%;max-width:100%;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.category-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.category-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%;transition:opacity .2s}.category-card-link:hover{opacity:1}.category-card-image{width:100%;height:60%;overflow:hidden;margin:0;background:#f8f9fa;flex-shrink:0;border-bottom:1px solid var(--color-border)}.categories-list .category-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.category-card-text{padding:1.5rem;flex:1;display:flex;flex-direction:column;justify-content:flex-start}.category-card-title{font-size:2.4rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .5rem;line-height:1.25;font-family:var(--font-sans)}.category-card-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;font-family:var(--font-sans);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(min-width:768px){.categories-list{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media(min-width:1200px){.categories-list{grid-template-columns:repeat(3,1fr)}.categories-list:has(.category-card:nth-child(2):last-child),.categories-list:has(.category-card:only-child){grid-template-columns:repeat(3,1fr)}}@media(max-width:767px){.categories-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.category-card{max-width:100%}.category-card-text{padding:1.25rem}.category-card-title{font-size:2.2rem}.category-card-description{font-size:1.6rem}}@media(max-width:480px){.categories-list{grid-template-columns:1fr;gap:2rem;justify-content:stretch;padding:0}.category-card{max-width:none;margin:0}.category-card-text{padding:1.5rem}.category-card-title{font-size:2rem;margin-bottom:.75rem}.category-card-description{font-size:1.6rem;-webkit-line-clamp:3;line-clamp:3}}.tag-template .gh-about-primary{max-width:900px;font-size:calc(clamp(3rem,2.2rem + 2vw,5rem));font-weight:800;line-height:1.2}.tag-template .gh-about-secondary{max-width:640px;margin-top:20px;font-size:calc(clamp(2rem,.36vw + 1.83rem,2.4rem));font-weight:450}.gh-section{padding-top:20px;padding-bottom:20px}.section-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border);margin-bottom:2rem;padding-bottom:.8rem}.section-title{margin:0;font-size:calc(clamp(2.4rem,2vw,3.2rem));font-weight:800;color:var(--color-darker-gray);font-family:var(--font-sans)}.writings-grid{display:flex;padding-top:2rem;flex-direction:column;gap:var(--gap);margin:0 auto}.writing-media-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-border) 0,var(--color-lighter-gray) 100%);position:relative}.gh-pagination,.writing-media-placeholder{display:flex;align-items:center;justify-content:center}.gh-pagination{margin-top:3rem;padding-top:4rem;border-top:1px solid var(--color-border);gap:2rem}.gh-pagination a{color:var(--color-primary-text);font-weight:600;text-decoration:none;transition:opacity .2s}.gh-pagination a:hover{opacity:.7}.gh-pagination .page-number{color:var(--color-secondary-text);font-size:1.4rem}.gh-pagination .pagination-button{pointer-events:all;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:0;padding:0;overflow:hidden;cursor:pointer;transition:opacity .2s}.gh-pagination .pagination-button:hover{opacity:.8}.gh-pagination .pagination-button:disabled,.gh-pagination .pagination-button[disabled]{opacity:.3;cursor:not-allowed;pointer-events:none}.gh-pagination .pagination-button[disabled]:hover{opacity:.3}.gh-pagination .pagination-button .arrow-icon{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;max-width:100%;border:0}.gh-pagination .arrow-left{transform:scaleX(-1)}.gh-search-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);z-index:9999;display:none;opacity:0;transition:opacity .3s}.gh-search-modal.active{display:flex;opacity:1}.gh-search-modal-inner{width:100%;max-width:800px;margin:80px auto 0;padding:0 20px;position:relative}.gh-search-close{position:absolute;top:-50px;right:20px;background:transparent;border:none;color:#fff;cursor:pointer;padding:10px;transition:opacity .2s}.gh-search-close:hover{opacity:.7}.gh-search-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);border:1px solid var(--color-border)}.gh-search-input-wrapper{display:flex;align-items:center;padding:20px 25px;border-bottom:none}.gh-search-input-wrapper svg{width:24px;height:24px;margin-right:15px;color:#666}.gh-search-input{flex:1;min-width:0;border:none;background:none;font-size:18px;outline:none}.gh-search-results{max-height:60vh;overflow-y:auto;display:none;border-top:1px solid #e5e5e5}.gh-search-results.has-results{display:block}.gh-search-loading{padding:20px 25px;text-align:center;color:#666}.gh-search-result{display:flex;align-items:flex-start;padding:15px 25px;border-bottom:1px solid #e5e5e5;text-decoration:none;color:inherit;transition:background-color .2s;gap:15px}.gh-search-result:hover{background-color:#f5f5f5}.gh-search-result:last-child{border-bottom:none}.gh-search-result-image{flex-shrink:0;width:60px;height:60px;border-radius:12px;border:1px solid var(--color-border);overflow:hidden;display:flex;align-items:center;justify-content:center}.gh-search-result-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border:0;border-radius:0;display:block}.gh-search-result-image-placeholder{background:linear-gradient(135deg,#f0f0f0,#e0e0e0);position:relative}.gh-search-result-image-placeholder:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;background:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="%23999" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="8.5" cy="8.5" r="1.5"/><path d="m21 15-5-5L5 21"/></svg>') no-repeat 50%}.gh-search-result-content{flex:1;min-width:0}.gh-search-result-title{font-size:16px;font-weight:600;margin-bottom:5px;line-height:1.3}.gh-search-result-excerpt{font-size:14px;color:#666;line-height:1.4;margin:0}.gh-search-result mark{background-color:#fff3cd;color:inherit;font-weight:500}.gh-search-no-results{padding:40px 25px;text-align:center;color:#666}.gh-search-fallback-link{display:inline-block;margin-top:15px;color:var(--ghost-accent-color);text-decoration:none;font-weight:500}.gh-search-fallback-link:hover{text-decoration:underline}.search-page-input-wrapper{display:flex;align-items:center;max-width:600px;margin-top:2rem;padding:15px 20px;background:#fff;border:1px solid var(--color-border);border-radius:12px;transition:border-color .2s}.search-page-input-wrapper-full{max-width:80%;margin:4rem auto}.search-page-input-wrapper:focus-within{border-color:var(--ghost-accent-color,#000)}.search-page-input-wrapper svg{width:24px;height:24px;margin-right:15px;color:#666}.search-page-input{flex:1;border:none;background:none;font-size:18px;outline:none}.search-page-results{min-height:300px}.search-page-count,.search-page-error,.search-page-initial,.search-page-loading,.search-page-no-results{text-align:center;color:#666;font-size:16px;margin:3rem 0}.search-page-count{text-align:left;margin-bottom:2rem;font-weight:500}.search-page-error{color:#d32f2f}.search-page-results .writing-card{display:flex;align-items:stretch}.search-page-results .writing-link{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%}.search-page-results .writing-link-layout{display:flex;flex-direction:row;gap:1.5rem;width:100%;gap:15px}.search-page-results .writing-cover{width:160px;flex-shrink:0;border-radius:12px;overflow:hidden;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center}.search-page-results .writing-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;border:0;border-radius:0}.search-page-results .writing-meta{display:flex;align-items:center;gap:1rem;margin-top:1rem}.search-page-results .writing-category{font-size:1.4rem;font-weight:500;color:var(--ghost-accent-color,var(--color-secondary-text))}.search-page-results .writing-date{font-size:1.4rem;color:var(--color-secondary-text)}mark{background-color:#fff3cd;color:inherit;font-weight:500;padding:0 2px}@media(max-width:640px){.search-page-results .writing-card{flex-direction:column}.search-page-results .writing-cover{width:100%;height:200px}.search-page-results .writing-link-layout{flex-direction:column}}.featured-section{padding-top:20px;padding-bottom:20px;position:relative}.featured-container{position:relative;padding:0;margin-top:3rem}.gh-inner-wide{max-width:var(--container-width);margin:0 auto}.featured-scroll-wrapper{overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;scroll-padding:0}.featured-scroll-wrapper::-webkit-scrollbar{display:none}.featured-grid{display:flex;gap:2rem;padding-bottom:1rem}.featured-card{flex:0 0 calc(33.333% - 1.333rem);background:#fff;min-width:280px;max-width:360px;scroll-snap-align:start;scroll-snap-stop:always;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,opacity .2s;height:100%;display:flex;flex-direction:column;cursor:pointer}.featured-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);opacity:1}.featured-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.featured-card-link:hover{opacity:1}.featured-card-image{width:100%;aspect-ratio:16/9;overflow:hidden;margin:0;flex-shrink:0;border-bottom:1px solid var(--color-border)}.featured-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.featured-card-text{padding:1.6rem;flex:1;display:flex;flex-direction:column;justify-content:flex-start}.featured-card-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);margin:0 0 .5rem;line-height:1.25}.featured-card-excerpt{font-size:1.8rem;margin:0 0 .8rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.featured-card-excerpt,.featured-card-meta{line-height:1.4;color:var(--color-secondary-text)}.featured-card-meta{display:flex;align-items:center;gap:1rem;font-size:1.4rem;margin-top:auto;flex-wrap:wrap}.featured-card-tag{font-size:1.4rem;font-weight:500;color:var(--ghost-accent-color,var(--color-secondary-text));letter-spacing:-.01em;line-height:1.4}.featured-nav{position:absolute;top:50%;transform:translateY(-50%);width:auto;left:max(-60px,50% - 50vw + 12px);right:max(-60px,50% - 50vw + 12px);pointer-events:none;z-index:10}.featured-nav-inner{justify-content:space-between;position:relative}.featured-nav-button,.featured-nav-inner{display:flex;align-items:center;padding:0}.featured-nav-button{pointer-events:all;background:transparent;border:0;outline:none;border-radius:0;width:48px;height:48px;justify-content:center;cursor:pointer;transition:opacity .2s;overflow:hidden;box-shadow:none;box-sizing:content-box}.featured-nav-button:hover{opacity:.8}.featured-nav-button .arrow-icon,.featured-nav-button:focus{outline:none;border:0;box-shadow:none}.featured-nav-button .arrow-icon{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;max-width:100%}.featured-nav-button .arrow-left{transform:scaleX(-1)}.featured-nav-button:disabled{opacity:.3;cursor:not-allowed}.featured-nav-button:disabled:hover{transform:none;background:transparent}.featured-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-border) 0,var(--color-lighter-gray) 100%);animation:featuredPlaceholderPulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes featuredPlaceholderPulse{0%,to{opacity:1}50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.featured-image-placeholder{animation:none}}.scroll-up-btn{position:fixed;right:2rem;bottom:2rem;z-index:9999;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;padding:0;overflow:hidden;transition:opacity .3s,transform .3s;opacity:0;transform:translateY(20px);cursor:pointer}.scroll-up-btn .arrow-icon{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;border:0}.scroll-up-btn.visible{opacity:1;transform:translateY(0)}.scroll-up-btn:disabled{opacity:.3;cursor:not-allowed}@media(max-width:1200px){.featured-card{flex:0 0 calc(50% - 1rem);max-width:none}.gh-inner-wide{max-width:var(--container-width)}.featured-nav{left:max(-50px,50% - 50vw + 12px);right:max(-50px,50% - 50vw + 12px)}}@media(max-width:991px){.scroll-up-btn{display:none}}@media(max-width:767px){.featured-section{overflow:hidden}.featured-container{padding:0}.gh-inner-wide{max-width:100%}.featured-scroll-wrapper{margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-padding:0}.featured-card{flex:0 0 100%;min-width:unset;max-width:unset;margin:0;scroll-snap-align:center;scroll-snap-stop:always}.featured-card-text{padding:1.2rem}.featured-card-title{font-size:2rem}.featured-grid{gap:1.5rem;padding:0}.featured-nav{display:none}.featured-scroll-wrapper{position:relative}.featured-nav-button .arrow-icon{width:20px;height:20px}.featured-card-meta{gap:.8rem;flex-wrap:nowrap}.featured-card-meta .gh-meta-divider{margin:0 .3rem}}.featured-grid>.featured-card{max-width:none}:root{--color-accent-text:#795619;--color-level-green:#18752d;--color-level-amber:#805600;--color-level-red:#a62d39;--color-level-blue:#1263a5}[data-theme=dark]{--color-accent-text:#efc264;--color-level-green:#70d68d;--color-level-amber:#ffd36a;--color-level-red:#ff8c96;--color-level-blue:#75b7ff}[contenteditable=true],input,textarea{caret-color:auto}.category-card-description,.gh-article-excerpt,.gh-content,.gh-content *,.portfolio-excerpt,.writing-excerpt,article blockquote,article h1,article h2,article h3,article h4,article h5,article h6,article li,article p,input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}.gh-head-menu .nav,.gh-head-menu .nav li,.gh-head-menu .nav li a{display:flex;align-items:center}.gh-head-menu .nav li a{height:48px;line-height:48px}.gh-site-title{font-weight:900}.gh-content>[id]+*{margin-bottom:calc(.8em * var(--content-spacing-multiplier,1))}.gh-article-header-meta{display:flex;align-items:center;gap:1.6rem;font-size:1.4rem;margin-top:1.6rem;color:var(--color-secondary-text);flex-wrap:wrap}.gh-meta-group{display:inline-flex;align-items:center;gap:.6rem;white-space:nowrap}.gh-article-header-meta .gh-author-avatar img,.gh-article-header-meta .gh-author-icon{width:28px;height:28px;border:1px solid var(--color-border);border-radius:50%;-o-object-fit:cover;object-fit:cover}.gh-article-header-meta .gh-comment-count,.gh-article-header-meta .gh-reading-time,.gh-article-header-meta time{font-family:var(--font-sans);font-weight:400;line-height:1}.gh-header-buttons .gh-btn{font-weight:600;border-radius:12px;font-size:1.6rem;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s;display:inline-block;text-align:center}.gh-header-buttons .gh-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.gh-primary-btn{color:var(--ghost-accent-color)}.gh-primary-btn,.gh-primary-btn:is(:link,:visited,:hover,:focus,:focus-visible,:active){color:#fff!important}.gh-primary-btn:not(:disabled):not([aria-disabled=true]):is(:hover,:focus,:focus-visible,:active){opacity:1!important}button.game-story-card,button.game-theme-card,button.homework-exercise-card,button.story-card,button.vocabulary-category-card{width:100%;padding:0;font:inherit;color:inherit;text-align:left}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #97701f;outline-offset:4px}[data-theme=dark] :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:#efc264}.gh-secondary-btn{background-color:transparent;border:1px solid var(--color-border);color:inherit}.gh-secondary-btn:hover{opacity:.9}.gh-foot-inner{flex-direction:row;justify-content:space-between;align-items:center;gap:1.6rem;flex-wrap:wrap;width:100%;max-width:var(--container-width);margin:0 auto}.gh-foot-left{display:flex;flex-direction:column;gap:.8rem}.gh-foot-center-text{width:100%;text-align:center;font-size:1.4rem;margin-top:.8rem;order:3;justify-self:center}@media(max-width:767px){.gh-foot-inner{flex-direction:column}.gh-foot-theme-toggle{margin-top:1rem}.gh-header-buttons{flex-direction:column;align-items:stretch;width:100%;max-width:100%}.gh-header-buttons .gh-btn{width:100%}}.pagination-btn{display:flex;min-height:44px;align-items:center;gap:.8rem;padding:.8rem 1.6rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;font-size:1.4rem;font-weight:500;color:var(--color-darker-gray);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s}.pagination-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.pagination-btn:active:not(:disabled){transform:translateY(0)}.pagination-btn:focus-visible{outline:3px solid #efae3a;outline-offset:3px}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-arrow{width:16px;height:16px;-o-object-fit:contain;object-fit:contain}.pagination-arrow-left{transform:rotate(180deg)}.gh-rss-trigger,.gh-search-trigger,.gh-theme-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-left:10px;background:transparent;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;color:var(--color-primary-text);position:relative}.gh-rss-trigger:hover,.gh-search-trigger:hover,.gh-theme-toggle:hover{color:inherit;border-color:var(--color-border);background-color:transparent;opacity:1;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.gh-rss-trigger svg,.gh-search-trigger svg,.gh-theme-toggle svg{width:20px;height:20px;color:inherit;transition:color .2s}.gh-theme-toggle .icon-moon,.gh-theme-toggle .icon-sun{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.gh-theme-toggle .icon-moon{display:none}.gh-head-utils{display:inline-flex;align-items:center;gap:8px}.gh-head-utils .gh-rss-trigger,.gh-head-utils .gh-search-trigger,.gh-head-utils .gh-theme-toggle{margin-left:0}.gh-head-buttons-group,.gh-portal-buttons-group{display:flex;gap:0;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border:1px solid var(--color-border);background:#fff}.gh-portal-buttons-group:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.gh-head-button{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;color:var(--color-darker-gray);background:transparent;border:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;position:relative;white-space:nowrap}.gh-head-button:hover{opacity:1}.gh-head-button svg{width:16px;height:16px;stroke-width:2;color:currentColor}.avatar-icon{width:20px;height:20px;-o-object-fit:cover;object-fit:cover;border-radius:50%;display:block;border:1px solid var(--color-border)}.gh-head-button-account.has-active-subscription .avatar-icon{border-color:var(--ghost-accent-color);transition:border-color .5s}.nav-more-toggle.has-current,.nav-more-toggle.has-current svg{color:var(--ghost-accent-color)}.gh-dropdown{pointer-events:none}.is-dropdown-open .gh-dropdown,.is-dropdown-open .nav-more-toggle .gh-dropdown,.nav-more-toggle.active .gh-dropdown{pointer-events:auto}.gh-foot-theme-toggle{display:flex;gap:8px;align-items:center}.theme-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:12px;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.theme-btn svg{width:20px;height:20px;color:currentColor}.theme-btn:hover{opacity:.7}.theme-btn.active{color:var(--ghost-accent-color)}@media(min-width:768px) and (max-width:991px){.gh-head-button{font-size:13px;padding:7px 14px}}@media(hover:hover) and (pointer:fine){.nav-more-toggle .gh-dropdown{top:calc(100% + 8px);margin-top:0}.nav-more-toggle .gh-dropdown:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.nav-more-toggle .gh-dropdown:hover,.nav-more-toggle:hover .gh-dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}}@media(max-width:767px){.gh-rss-trigger,.gh-search-trigger,.gh-theme-toggle{width:36px;height:36px}.gh-head-buttons-group,.gh-portal-buttons-group{gap:0;flex-direction:row}.gh-head-button{padding:8px 12px;font-size:13px}.gh-head-button svg{width:14px;height:14px}.gh-portal-buttons-group{width:100%}.gh-head-members{height:40px}.gh-portal-buttons-group .gh-head-button{flex:1 1 0;justify-content:center;text-align:center}.gh-head-utils{width:100%;display:flex;gap:10%;align-items:center;justify-content:center;position:relative;z-index:4}.gh-head-utils .gh-rss-trigger,.gh-head-utils .gh-search-trigger{width:100%;height:40px;padding:8px 0;justify-content:center;text-align:center}body:not(.gh-head-open):not(.is-head-open):not(.menu-open) .gh-head-actions,body:not(.gh-head-open):not(.is-head-open):not(.menu-open) .gh-head-menu{opacity:0;visibility:hidden;pointer-events:none}.gh-head-brand .gh-burger{position:relative;z-index:5}body.gh-head-open,body.is-head-open,body.menu-open{overflow:hidden}body.gh-head-open #gh-head .gh-head-inner,body.is-head-open #gh-head .gh-head-inner,body.menu-open #gh-head .gh-head-inner{grid-template-rows:64px minmax(0,1fr) auto;gap:0;height:100dvh;overflow:hidden}body.gh-head-open #gh-head .gh-head-menu,body.is-head-open #gh-head .gh-head-menu,body.menu-open #gh-head .gh-head-menu{align-self:stretch;align-items:flex-start;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:1rem;scrollbar-width:thin}}:root[data-theme=dark]{--background-color:#121212;--color-darker-gray:hsla(0,0%,100%,.9);--color-primary-text:hsla(0,0%,100%,.9);--color-secondary-text-dark:hsla(0,0%,100%,.64);--color-secondary-text-light:hsla(0,0%,100%,.64);--color-secondary-text:hsla(0,0%,100%,.64);--color-border:hsla(0,0%,100%,.3);--color-lighter-gray:hsla(0,0%,100%,.1);--dark-surface:#1e1e1e;--dark-surface-elevated:#242424}[data-theme=dark] body{background-color:var(--background-color);color:var(--color-primary-text)}[data-theme=dark] .gh-search-modal{background:rgba(0,0,0,.9)}[data-theme=dark] .gh-search-container{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.5);border:1px solid var(--color-border)}[data-theme=dark] .gh-search-input-wrapper{border-bottom:none}[data-theme=dark] .gh-search-input-wrapper svg{color:hsla(0,0%,100%,.5)}[data-theme=dark] .gh-search-input{color:var(--color-primary-text)}[data-theme=dark] .gh-search-results{border-top:1px solid var(--color-border)}[data-theme=dark] .gh-search-loading,[data-theme=dark] .gh-search-no-results{color:var(--color-secondary-text)}[data-theme=dark] .gh-search-result{border-bottom:1px solid var(--color-border)}[data-theme=dark] .gh-search-result:last-child{border-bottom:none}[data-theme=dark] .gh-search-result:hover{background-color:hsla(0,0%,100%,.05)}[data-theme=dark] .gh-search-result-image{background-color:var(--dark-surface)}[data-theme=dark] .gh-search-result-image-placeholder{background:linear-gradient(135deg,var(--dark-surface) 0,var(--dark-surface-elevated) 100%)}[data-theme=dark] .gh-search-result-title{color:var(--color-primary-text)}[data-theme=dark] .gh-search-result-excerpt{color:var(--color-secondary-text)}[data-theme=dark] .gh-search-result mark,[data-theme=dark] mark{background-color:rgba(255,213,79,.3);color:inherit}[data-theme=dark] .gh-search-fallback-link{color:var(--ghost-accent-color)}[data-theme=dark] .search-page-input-wrapper{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .search-page-input-wrapper:focus-within{border-color:var(--ghost-accent-color)}[data-theme=dark] .search-page-input-wrapper svg{color:hsla(0,0%,100%,.5)}[data-theme=dark] .contact-form input,[data-theme=dark] .contact-form select,[data-theme=dark] .contact-form textarea{background:var(--dark-surface)}[data-theme=dark] .contact-form select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E");background-color:var(--dark-surface);background-repeat:no-repeat;background-position:right 1.2rem center;background-size:2rem}[data-theme=dark] .discord-join-instructions{background:linear-gradient(135deg,rgba(114,137,218,.2),rgba(88,101,242,.2));border:1px solid rgba(114,137,218,.4)}[data-theme=dark] .discord-step-title{color:var(--color-primary-text)}[data-theme=dark] .discord-step-description{color:var(--color-secondary-text)}[data-theme=dark] .discord-validation-divider:after,[data-theme=dark] .discord-validation-divider:before{background:var(--color-border)}[data-theme=dark] .discord-divider-text{background:var(--dark-surface-elevated);color:var(--color-secondary-text)}[data-theme=dark] .community-modal-header{border-bottom:1px solid var(--color-border)}[data-theme=dark] .community-modal-close:hover,[data-theme=dark] .community-upload-label{background:var(--color-lighter-gray)}[data-theme=dark] .community-upload-label:hover{background:rgba(255,87,0,.1)}[data-theme=dark] .community-upload-formats,[data-theme=dark] .community-upload-secondary{color:var(--color-secondary-text)}[data-theme=dark] .community-modal-footer{background:var(--color-lighter-gray);border-top:1px solid var(--color-border)}[data-theme=dark] .search-page-input{color:var(--color-primary-text)}[data-theme=dark] .search-page-count,[data-theme=dark] .search-page-initial,[data-theme=dark] .search-page-loading,[data-theme=dark] .search-page-no-results{color:var(--color-secondary-text)}[data-theme=dark] .search-page-error{color:#ff5252}[data-theme=dark] .gh-head{background-color:transparent}[data-theme=dark] .gh-head-link,[data-theme=dark] .gh-head-menu a{color:var(--color-primary-text)}[data-theme=dark] .gh-head-buttons-group{border:1px solid var(--color-border);background:transparent}[data-theme=dark] .gh-head-button{color:var(--color-primary-text)}[data-theme=dark] .portfolio-card,[data-theme=dark] .writing-card{background:transparent;border:none}[data-theme=dark] .category-card{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .category-card-title,[data-theme=dark] .portfolio-title,[data-theme=dark] .writing-title{color:var(--color-primary-text)}[data-theme=dark] .category-card-description,[data-theme=dark] .portfolio-excerpt,[data-theme=dark] .writing-excerpt,[data-theme=dark] .writing-meta{color:var(--color-secondary-text)}[data-theme=dark] .writing-author-icon{background-color:var(--dark-surface-elevated)}[data-theme=dark] .portfolio-image-placeholder,[data-theme=dark] .writing-media-placeholder{background:linear-gradient(135deg,var(--dark-surface) 0,var(--dark-surface-elevated) 100%)}[data-theme=dark] .section-header{border-bottom:1px solid var(--color-border)}[data-theme=dark] .gh-about-primary,[data-theme=dark] .section-title,[data-theme=dark] .see-all-link{color:var(--color-primary-text)}[data-theme=dark] .gh-about-secondary{color:var(--color-secondary-text)}[data-theme=dark] .gh-btn{background-color:var(--ghost-accent-color);color:#000}[data-theme=dark] .gh-btn.gh-primary-btn,[data-theme=dark] .gh-btn.gh-primary-btn:is(:link,:visited,:hover,:focus,:focus-visible,:active){color:#fff!important}[data-theme=dark] .gh-secondary-btn{background-color:transparent;color:var(--color-primary-text)}[data-theme=dark] .gh-foot{background-color:var(--background-color)}[data-theme=dark] .gh-foot-inner{border-top:1px solid var(--color-border)}[data-theme=dark] .gh-foot-menu a{color:var(--color-primary-text)}[data-theme=dark] .gh-article-type,[data-theme=dark] .gh-copyright{color:var(--color-secondary-text)}[data-theme=dark] .gh-article-title{color:var(--color-primary-text)}[data-theme=dark] .gh-article-excerpt{color:var(--color-secondary-text)}[data-theme=dark] .gh-article-tag{color:var(--color-primary-text)!important;border:1px solid var(--color-border)}[data-theme=dark] .gh-article-category{background-color:rgba(217,164,67,.1);color:#d9a443}[data-theme=dark] .gh-article-category:hover{background-color:rgba(217,164,67,.1)}[data-theme=dark] .gh-content,[data-theme=dark] .gh-content h1,[data-theme=dark] .gh-content h2,[data-theme=dark] .gh-content h3,[data-theme=dark] .gh-content h4,[data-theme=dark] .gh-content h5,[data-theme=dark] .gh-content h6{color:var(--color-primary-text)}[data-theme=dark] .gh-content a{color:var(--ghost-accent-color)}[data-theme=dark] .gh-content blockquote{color:var(--color-secondary-text)}[data-theme=dark] .gh-content code{background:var(--dark-surface-elevated);color:var(--ghost-accent-color)}[data-theme=dark] .gh-content pre{background:var(--dark-surface-elevated);color:var(--color-primary-text)}[data-theme=dark] .gh-content ::-moz-selection{background-color:rgba(255,140,0,.3);color:var(--color-primary-text)}[data-theme=dark] .gh-content ::selection{background-color:rgba(255,140,0,.3);color:var(--color-primary-text)}[data-theme=dark] .gh-content hr{border-top:1px solid var(--color-border)}[data-theme=dark] img.loaded{opacity:1}[data-theme=dark] .featured-nav-button .arrow-icon,[data-theme=dark] .gh-pagination .arrow-icon,[data-theme=dark] .gh-rss-trigger svg,[data-theme=dark] .gh-search-trigger svg,[data-theme=dark] .newsletter-image,[data-theme=dark] .reaction-icon,[data-theme=dark] .scroll-up-btn .arrow-icon,[data-theme=dark] .share-icon,[data-theme=dark] .theme-btn svg{opacity:1;border:none}[data-theme=dark] .arrow-icon{opacity:1;filter:invert(1)}[data-theme=dark] .modal-overlay{background-color:rgba(0,0,0,.8)}[data-theme=dark] .modal-content{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .modal-close{color:var(--color-primary-text)}[data-theme=dark] .gh-pagination{border-top:1px solid var(--color-border)}[data-theme=dark] .gh-pagination a{color:var(--color-primary-text)}[data-theme=dark] .gh-pagination .page-number{color:var(--color-secondary-text)}[data-theme=dark] .tag-template .gh-about-primary{color:var(--color-primary-text)}[data-theme=dark] .tag-template .gh-about-secondary{color:var(--color-secondary-text)}[data-theme=dark] .gh-rss-trigger,[data-theme=dark] .gh-search-trigger,[data-theme=dark] .gh-theme-toggle{border:1px solid var(--color-border);color:var(--color-primary-text);background:var(--dark-surface)}[data-theme=dark] .theme-btn.active{color:var(--ghost-accent-color)}[data-theme=dark] .gh-foot-theme-toggle .theme-btn:not(.active){color:#fff}[data-theme=dark] .gh-theme-toggle .icon-sun{display:none}[data-theme=dark] .gh-theme-toggle .icon-moon{display:flex}[data-theme=dark] .category-card-image{background:var(--dark-surface);border-bottom:1px solid var(--color-border)}[data-theme=dark] .portfolio-image-placeholder:after,[data-theme=dark] .writing-media-placeholder:after{color:var(--color-secondary-text)}[data-theme=dark] .gh-subscribe-input{background-color:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .reading-progress::-webkit-progress-bar{background-color:hsla(0,0%,100%,.1)}[data-theme=dark] .reading-progress::-webkit-progress-value{background:var(--ghost-accent-color)}[data-theme=dark] .reading-progress::-moz-progress-bar{background:var(--ghost-accent-color)}[data-theme=dark] .author-location,[data-theme=dark] .author-social-link{color:var(--color-primary-text)}[data-theme=dark] .author-social-link:hover{opacity:.7}[data-theme=dark] table:not(.ai-features-table){width:100%;border-collapse:collapse;background-color:var(--dark-surface)}[data-theme=dark] table:not(.ai-features-table) td,[data-theme=dark] table:not(.ai-features-table) th{border-right:1px solid var(--color-border)}[data-theme=dark] table:not(.ai-features-table) td:last-child,[data-theme=dark] table:not(.ai-features-table) th:last-child{border-right:none}[data-theme=dark] tr:nth-child(2n){background-color:hsla(0,0%,100%,.04)}[data-theme=dark] .ai-features-table{background:transparent}[data-theme=dark] .ai-features-table tbody tr{background:var(--dark-surface)}[data-theme=dark] .ai-features-table thead{background:var(--dark-surface-elevated)}[data-theme=dark] .ai-features-table th{color:var(--color-primary-text);background-color:transparent!important;border-bottom:1px solid var(--color-border)!important}[data-theme=dark] .ai-features-table th:not(:last-child){border-right:1px solid var(--color-border)!important}[data-theme=dark] .ai-features-table td{color:var(--color-secondary-text);background-color:transparent!important}[data-theme=dark] .ai-features-table tbody tr:hover{background:hsla(0,0%,100%,.05)}[data-theme=dark] .status-available{color:#28a745!important}[data-theme=dark] .status-coming{color:#ffc107!important}[data-theme=dark] .feature-name{color:var(--color-primary-text)!important}[data-theme=dark] .cta-content{background:var(--dark-surface)!important;border-color:var(--color-border)}[data-theme=dark] .cta-content h2{color:var(--color-primary-text)}[data-theme=dark] .cta-content p{color:var(--color-secondary-text)}[data-theme=dark] .cta-buttons .gh-primary-btn{color:#fff!important;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color)}[data-theme=dark] .cta-buttons .gh-secondary-btn{background-color:transparent;color:var(--color-primary-text)}[data-theme=dark] .cta-buttons .gh-secondary-btn:hover{border-color:var(--color-primary-text);background-color:hsla(0,0%,100%,.05)}[data-theme=dark] .platform-card{background:var(--dark-surface);border-color:var(--color-border);transition:box-shadow .2s}[data-theme=dark] .platform-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .platform-image{background:var(--dark-surface-elevated)}[data-theme=dark] .platform-title{color:var(--color-primary-text)}[data-theme=dark] .platform-description{color:var(--color-secondary-text)}[data-theme=dark] .gh-content table:not(.gist table):not(.ai-features-table){background:var(--dark-surface)}[data-theme=dark] .gh-content table:not(.gist table):not(.ai-features-table) :is(th,td){color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .gh-content table:not(.gist table):not(.ai-features-table) th{background-color:var(--dark-surface-elevated)}[data-theme=dark] .gh-content table:not(.gist table) :is(td,th):first-child,[data-theme=dark] .gh-content table:not(.gist table) :is(td,th):last-child{background-image:none!important}[data-theme=dark] .table-scroll{background-color:var(--dark-surface)!important}[data-theme=dark] .table-scroll:after,[data-theme=dark] .table-scroll:before{display:none!important;background-image:none!important;-webkit-mask-image:none!important;mask-image:none!important}[data-theme=dark] .gh-dropdown{background-color:var(--dark-surface-elevated)!important;border:1px solid var(--color-border)!important;box-shadow:0 6px 16px rgba(0,0,0,.1)!important}[data-theme=dark] .nav-more-toggle{color:var(--color-primary-text)}[data-theme=dark] .nav-more-toggle.has-current,[data-theme=dark] .nav-more-toggle.has-current svg{color:var(--ghost-accent-color)}[data-theme=dark] .nav-more-toggle .gh-dropdown{background:var(--dark-surface-elevated)!important;border:1px solid var(--color-border)!important;box-shadow:0 6px 16px rgba(0,0,0,.1)!important}[data-theme=dark] .gh-dropdown li a{color:var(--color-primary-text)!important}[data-theme=dark] .gh-dropdown li a:hover{background-color:transparent;color:var(--color-primary-text)!important}[data-theme=dark] .gh-dropdown li.nav-current a{color:var(--ghost-accent-color)!important}[data-theme=dark] .featured-card{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .donations-carousel-wrapper{background:transparent;border:none}[data-theme=dark] .donations-carousel-wrapper:before{background:linear-gradient(to right,var(--background-color,#121212) 0,var(--background-color,#121212) 10%,transparent 100%)}[data-theme=dark] .donations-carousel-wrapper:after{background:linear-gradient(to left,var(--background-color,#121212) 0,var(--background-color,#121212) 10%,transparent 100%)}[data-theme=dark] .donation-carousel-item{background:var(--dark-surface);border:1px solid var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.3)}[data-theme=dark] .donation-carousel-avatar{background:var(--ghost-accent-color)}[data-theme=dark] .donation-carousel-name,[data-theme=dark] .donation-carousel-name-link{color:var(--color-primary-text)}[data-theme=dark] .donation-carousel-name-link:hover{opacity:.7}[data-theme=dark] .gh-portal-buttons-group{border:1px solid var(--color-border);background:transparent}[data-theme=dark] .gh-portal-buttons-group .gh-head-button{color:var(--color-primary-text);background:var(--dark-surface)}[data-theme=dark] .gh-portal-buttons-group .gh-head-button:hover{opacity:.9}[data-theme=dark] .ranking-item{background:var(--dark-surface-elevated);border:1px solid var(--color-border)}[data-theme=dark] .ranking-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .ranking-name{color:var(--color-primary-text)}[data-theme=dark] .tier-card{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .tier-btn.gh-secondary-btn{color:var(--color-primary-text)!important;border-color:var(--color-border)!important}[data-theme=dark] .tier-btn.gh-secondary-btn:hover{opacity:.9}[data-theme=dark] .tier-counter-item{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .tier-counter-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .tier-carousel-title,[data-theme=dark] .tier-counter-name{color:var(--color-primary-text)}[data-theme=dark] .subscriber-carousel-item{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.2)}[data-theme=dark] .tier-image{border:none!important;opacity:.9}[data-theme=dark] .tier-carousel-wrapper:before{background:linear-gradient(to right,var(--background-color) 0,var(--background-color) 10%,transparent 100%)}[data-theme=dark] .tier-carousel-wrapper:after{background:linear-gradient(to left,var(--background-color) 0,var(--background-color) 10%,transparent 100%)}[data-theme=dark] .vocabulary-question-card,[data-theme=dark] .vocabulary-word-card{background:var(--dark-surface)}[data-theme=dark] .vocabulary-word-section{display:none}[data-theme=dark] .vocabulary-word-japanese{color:var(--color-primary-text)}[data-theme=dark] .vocabulary-word-romaji{color:var(--ghost-accent-color);opacity:.9}[data-theme=dark] .vocabulary-word-spanish{color:var(--color-secondary-text)}[data-theme=dark] .vocabulary-word-category{background:var(--dark-surface-elevated);color:var(--color-secondary-text)}[data-theme=dark] .vocabulary-theme-header{background:linear-gradient(135deg,rgba(255,87,0,.08),rgba(255,140,0,.08));border-color:var(--color-border)}[data-theme=dark] .vocabulary-back-btn{background:var(--dark-surface);border:1px solid var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .vocabulary-back-btn:hover{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .vocabulary-theme-title{color:var(--color-primary-text)}[data-theme=dark] .stats-text,[data-theme=dark] .trophy-room,[data-theme=dark] .vocabulary-theme-description{color:var(--color-secondary-text)}[data-theme=dark] .stats-text,[data-theme=dark] .vocabulary-category-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .vocabulary-category-card{transition:box-shadow .2s,transform .2s}[data-theme=dark] .vocabulary-category-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .vocabulary-category-title{color:var(--color-primary-text)}[data-theme=dark] .vocabulary-category-description{color:var(--color-secondary-text)}[data-theme=dark] .vocabulary-word-count{color:var(--ghost-accent-color)}[data-theme=dark] .vocabulary-category-image{background:var(--dark-surface)}[data-theme=dark] .vocabulary-category-image-placeholder{background:var(--dark-surface);border:1px dashed var(--color-border)}[data-theme=dark] .vocabulary-category-image-placeholder:after{opacity:.2}[data-theme=dark] .vocabulary-controls{background:transparent;border:none}[data-theme=dark] .visibility-toggle{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .visibility-toggle:hover{background:var(--dark-surface)}[data-theme=dark] .visibility-toggle.active{background:var(--dark-surface);color:var(--color-primary-text);border-color:var(--color-border)}[data-theme=dark] .visibility-toggle:not(.active){opacity:.5;color:var(--color-secondary-text);background:var(--dark-surface)}[data-theme=dark] .visibility-toggle:not(.active):hover{opacity:.7;background:var(--dark-surface-elevated)}[data-theme=dark] .stories-visibility-toggle,[data-theme=dark] .stories-visibility-toggle.active,[data-theme=dark] .stories-visibility-toggle:hover{color:var(--color-primary-text);background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .stories-visibility-toggle:not(.active){opacity:.5;color:var(--color-secondary-text);background:var(--dark-surface)}[data-theme=dark] .stories-visibility-toggle:not(.active):hover{opacity:.7;background:var(--dark-surface-elevated)}[data-theme=dark] .gh-meta-divider{color:var(--color-border)}[data-theme=dark] .gh-author-name{color:var(--color-secondary-text)}[data-theme=dark] .gh-author-name:hover{color:var(--color-primary-text)}[data-theme=dark] .gh-article-header-centered .gh-author-avatar{border-color:var(--color-border)}[data-theme=dark] .reaction-count{color:var(--color-secondary-text)}[data-theme=dark] .reaction-btn.active .reaction-count{color:var(--ghost-accent-color)}[data-theme=dark] .reactions-login-prompt{background:var(--dark-surface)}[data-theme=dark] .reaction-icon{opacity:.9}[data-theme=dark] .reaction-btn.active .reaction-icon{opacity:1;filter:drop-shadow(0 4px 16px rgba(255,87,0,.4))}.dark-mode .gh-theme-toggle .icon-sun{display:none}.dark-mode .gh-theme-toggle .icon-moon{display:flex}[data-theme=dark] .vocabulary-game-container,[data-theme=dark] .vocabulary-game-container.placeholder-state,[data-theme=dark] .vocabulary-game-container.transitioning,[data-theme=dark] .vocabulary-game-container:not(.has-content):not(.transitioning){background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .vocabulary-game-container.has-content{background:transparent;border:none}[data-theme=dark] .vocabulary-container,[data-theme=dark] .vocabulary-container.placeholder-state,[data-theme=dark] .vocabulary-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] #vocabulary-container.vocabulary-theme-view,[data-theme=dark] .vocabulary-container.vocabulary-theme-view{background:transparent;border:none}[data-theme=dark] .community-placeholder,[data-theme=dark] .vocabulary-game-placeholder,[data-theme=dark] .vocabulary-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .community-placeholder-icon,[data-theme=dark] .vocabulary-game-placeholder-icon,[data-theme=dark] .vocabulary-placeholder-icon{background:var(--dark-surface-elevated);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .community-placeholder-text,[data-theme=dark] .vocabulary-game-placeholder-text,[data-theme=dark] .vocabulary-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .community-placeholder-subtitle,[data-theme=dark] .vocabulary-game-placeholder-subtitle,[data-theme=dark] .vocabulary-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .game-theme-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .game-theme-card:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .theme-card-title{color:var(--color-primary-text)}[data-theme=dark] .theme-card-description{color:var(--color-secondary-text);font-size:1.8rem;line-height:1.4}[data-theme=dark] .theme-card-meta{border-top-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .theme-card-image,[data-theme=dark] .theme-card-image.no-img{background:var(--dark-surface-elevated)}[data-theme=dark] .vocabulary-category-image-placeholder{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .vocabulary-category-image-placeholder:after{color:var(--color-secondary-text)}[data-theme=dark] .vocabulary-game-pagination{background:var(--dark-surface)}[data-theme=dark] .game-header{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:var(--color-border)}[data-theme=dark] .back-to-themes-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .back-to-themes-btn:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .current-theme{color:var(--color-primary-text)}[data-theme=dark] .game-theme-description,[data-theme=dark] .question-counter,[data-theme=dark] .question-type{color:var(--color-secondary-text)}[data-theme=dark] .question-word{color:var(--color-primary-text)}[data-theme=dark] .vocabulary-game-template .option-btn{background:var(--game-option-background);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .vocabulary-game-template .option-btn:hover:not(:disabled){border-color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,var(--game-option-background))}[data-theme=dark] .option-btn.correct{background:rgba(40,167,69,.2);border-color:#28a745;color:#28a745}[data-theme=dark] .option-btn.incorrect{background:rgba(220,53,69,.2);border-color:#dc3545;color:#dc3545}[data-theme=dark] .option-btn.incorrect:after{display:none}[data-theme=dark] .game-footer{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .score-label{color:var(--color-secondary-text)}[data-theme=dark] .score-value{color:var(--color-primary-text)}[data-theme=dark] .results-content{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .results-title{color:var(--color-primary-text)}[data-theme=dark] .results-message{color:var(--color-secondary-text)}[data-theme=dark] .results-stats{background:var(--dark-surface-elevated)}[data-theme=dark] .stat-label{color:var(--color-secondary-text)}[data-theme=dark] .progress-bar{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .game-leaderboard{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .game-leaderboard h3{color:var(--color-primary-text)}[data-theme=dark] .leaderboard-item:hover{background:var(--dark-surface)}[data-theme=dark] .leaderboard-item.current-user:hover{color:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1))}[data-theme=dark] .ranking-date{color:var(--color-secondary-text)}[data-theme=dark] .player-name{color:var(--color-primary-text)}[data-theme=dark] .player-time{color:var(--color-secondary-text)}[data-theme=dark] .results-actions .gh-primary-btn{background-color:var(--ghost-accent-color);color:#fff!important;border:none}[data-theme=dark] .results-actions .gh-primary-btn:hover{background-color:var(--ghost-accent-color);opacity:.9}[data-theme=dark] .results-actions .gh-secondary-btn,[data-theme=dark] .results-actions .gh-secondary-btn:hover{background-color:transparent;color:var(--color-primary-text)}[data-theme=dark] .results-actions .gh-secondary-btn:hover{opacity:.9}[data-theme=dark] .trophy-room-container,[data-theme=dark] .trophy-room-container.placeholder-state,[data-theme=dark] .trophy-room-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .trophy-room-container.has-content:not(.transitioning){background:transparent;border:none}[data-theme=dark] .account-placeholder,[data-theme=dark] .trophy-room-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .account-placeholder-icon,[data-theme=dark] .trophy-room-placeholder-icon{background:var(--dark-surface-elevated);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .account-placeholder-text,[data-theme=dark] .trophy-room-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .account-placeholder-subtitle,[data-theme=dark] .trophy-room-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .account-placeholder-icon.account-placeholder-error,[data-theme=dark] .trophy-room-placeholder-icon.trophy-room-placeholder-error{color:#fff;background:#dc3545}[data-theme=dark] .stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:var(--ghost-accent-color)}[data-theme=dark] .stats-card-value{color:var(--color-primary-text)}[data-theme=dark] .stats-card-label{color:var(--color-secondary-text)}[data-theme=dark] .stats-section-title{color:var(--color-primary-text)}[data-theme=dark] .overall-progress{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .progress-text{color:var(--color-primary-text)}[data-theme=dark] .progress-bar-container{background:var(--dark-surface-elevated)}[data-theme=dark] .theme-progress-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .theme-progress-card.completed{background:linear-gradient(135deg,rgba(40,167,69,.1),rgba(40,167,69,.1))}[data-theme=dark] .achievement-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .achievement-card.unlocked{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,140,0,.15))}[data-theme=dark] .achievement-title{color:var(--color-primary-text)}[data-theme=dark] .achievement-description{color:var(--color-secondary-text)}[data-theme=dark] .global-position-card{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:var(--ghost-accent-color)}[data-theme=dark] .position-label{color:var(--color-secondary-text)}[data-theme=dark] .position-percentile{color:var(--color-primary-text)}[data-theme=dark] .top-players-list{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .top-players-list h3{color:var(--color-primary-text)}[data-theme=dark] .top-player-item:hover{background:var(--dark-surface)}[data-theme=dark] .top-player-item.current-user{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1))}[data-theme=dark] .player-rank,[data-theme=dark] .player-total-score{color:var(--ghost-accent-color)}[data-theme=dark] .stats-error h2,[data-theme=dark] .stats-login-required h2{color:var(--color-primary-text)}[data-theme=dark] .achievement-summary{color:var(--color-secondary-text)}[data-theme=dark] .next-achievement-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .achievement-progress-bar{background:var(--dark-surface-elevated)}[data-theme=dark] .achievement-info h4{color:var(--color-primary-text)}[data-theme=dark] .achievements-tabs{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .tabs-header{border-bottom-color:var(--color-border)}[data-theme=dark] .tab-button{color:var(--color-secondary-text)}[data-theme=dark] .tab-button:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .tab-button.active{background:rgba(255,87,0,.1);color:var(--ghost-accent-color)}[data-theme=dark] .tab-badge{background:var(--dark-surface-elevated)}[data-theme=dark] .tab-button.active .tab-badge{background:var(--ghost-accent-color);color:#fff}[data-theme=dark] .unlocked-achievements{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));border-color:rgba(255,215,0,.3);box-shadow:0 4px 12px rgba(0,0,0,.2),0 1px 3px rgba(0,0,0,.15)}[data-theme=dark] .unlocked-achievements:hover{box-shadow:0 8px 24px rgba(255,215,0,.2),0 4px 8px rgba(255,140,0,.15);background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,140,0,.15));border-color:rgba(255,215,0,.45)}[data-theme=dark] .achievements-title{color:var(--color-primary-text)}[data-theme=dark] .unlocked-achievement-item{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .unlocked-achievement-item:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .unlocked-achievement-item .achievement-details h4{color:var(--color-primary-text)}[data-theme=dark] .unlocked-achievement-item .achievement-details p{color:var(--color-secondary-text)}[data-theme=dark] .unlocked-achievement-item .achievement-points{color:var(--ghost-accent-color)}[data-theme=dark] .no-data{color:var(--color-secondary-text)}[data-theme=dark] .stats-achievements-section .no-data{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .subsection-title{color:var(--color-primary-text)}[data-theme=dark] .achievement-date,[data-theme=dark] .achievement-meta{color:var(--color-secondary-text)}[data-theme=dark] .stories-pagination,[data-theme=dark] .themes-pagination{background:var(--dark-surface)}[data-theme=dark] .pagination-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text);transition:box-shadow .2s,transform .2s,background .2s}[data-theme=dark] .pagination-btn:hover:not(:disabled){background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .pagination-arrow{filter:invert(1);opacity:.9;border:none}[data-theme=dark] .pagination-current{color:var(--color-primary-text)}[data-theme=dark] .pagination-range{color:var(--color-secondary-text)}[data-theme=dark] .level-filters{background:transparent;border:none}[data-theme=dark] .level-filters-label{color:var(--color-primary-text)}[data-theme=dark] .level-filter-btn{border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .level-filter-btn:hover{background:var(--dark-surface)}[data-theme=dark] .level-filter-btn.active{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .level-filter-btn:not(.active){opacity:1;color:var(--color-secondary-text);background:var(--dark-surface)}[data-theme=dark] .level-filter-btn:not(.active):hover{background:var(--dark-surface-elevated)}[data-theme=dark] .exercise-score-badge,[data-theme=dark] .theme-score-badge{background:var(--dark-surface);color:var(--ghost-accent-color);border:1px solid var(--color-border)}[data-theme=dark] .rarity-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .rarity-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .rarity-card.common:before{background:#718096}[data-theme=dark] .rarity-card.uncommon:before{background:#48bb78}[data-theme=dark] .rarity-card.rare:before{background:#4299e1}[data-theme=dark] .rarity-card.epic:before{background:#9f7aea}[data-theme=dark] .rarity-card.legendary:before{background:linear-gradient(135deg,#f6ad55,#ed8936)}[data-theme=dark] .rarity-name{color:var(--color-primary-text)}[data-theme=dark] .circle-bg{stroke:var(--dark-surface-elevated)}[data-theme=dark] .percentage{fill:var(--color-primary-text)}[data-theme=dark] .rarity-section-title{color:var(--color-primary-text)}[data-theme=dark] .voice-button{color:var(--color-secondary-text)}[data-theme=dark] .voice-button.voice-loading,[data-theme=dark] .voice-button.voice-paused,[data-theme=dark] .voice-button.voice-playing,[data-theme=dark] .voice-button:hover:not(:disabled){color:var(--ghost-accent-color)}[data-theme=dark] .voice-duration-tooltip{background:var(--dark-surface-elevated);color:var(--color-primary-text)}[data-theme=dark] .voice-duration-tooltip:after{border-top-color:var(--dark-surface-elevated)}[data-theme=dark] .voice-error-tooltip{background:#dc3545;color:#fff}[data-theme=dark] .voice-error-tooltip:after{border-top-color:#dc3545}[data-theme=dark] .voice-floating-player{background:rgba(30,30,30,.95);border-color:hsla(0,0%,100%,.08);box-shadow:0 3px 16px rgba(0,0,0,.4),0 6px 16px rgba(0,0,0,.3);backdrop-filter:blur(10px)}[data-theme=dark] .voice-player-btn{color:var(--color-primary-text)}[data-theme=dark] .voice-player-btn:hover{background:hsla(0,0%,100%,.08)}[data-theme=dark] .voice-player-btn.play-pause{background:var(--ghost-accent-color);box-shadow:0 3px 16px rgba(255,140,0,.25)}[data-theme=dark] .voice-player-btn.play-pause:hover{box-shadow:0 6px 16px rgba(255,140,0,.35)}[data-theme=dark] .voice-player-btn.close{opacity:.6}[data-theme=dark] .voice-progress-bar{background:hsla(0,0%,100%,.08)}[data-theme=dark] .voice-progress-fill{background:var(--ghost-accent-color)}[data-theme=dark] .voice-progress-fill:after{background:var(--ghost-accent-color);box-shadow:0 6px 16px rgba(255,140,0,.3)}[data-theme=dark] .voice-time{opacity:.6}[data-theme=dark] .newsletter-form-container{background:transparent}[data-theme=dark] .newsletter-email-input{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .newsletter-email-input:focus{border-color:var(--ghost-accent-color)}[data-theme=dark] .newsletter-title{color:var(--color-primary-text)}[data-theme=dark] .community-placeholder,[data-theme=dark] .newsletter-description{color:var(--color-secondary-text)}[data-theme=dark] .community-placeholder-icon{background:var(--dark-surface-elevated);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .community-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .community-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .user-avatar{border-color:var(--ghost-accent-color)}[data-theme=dark] .user-name{color:var(--color-primary-text)}[data-theme=dark] .user-meta{color:var(--color-secondary-text)}[data-theme=dark] .stats-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .stats-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.2)}[data-theme=dark] .stats-card.stats-card-achievement,[data-theme=dark] .stats-card.stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border:1px solid var(--ghost-accent-color)}[data-theme=dark] .stats-card.stats-card-achievement:hover,[data-theme=dark] .stats-card.stats-card-primary:hover{box-shadow:0 6px 16px rgba(255,87,0,.2)}[data-theme=dark] .community-stats-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:var(--ghost-accent-color)}[data-theme=dark] .community-members-loading .community-loading-spinner,[data-theme=dark] .community-modal-loading .community-loading-spinner{border-color:var(--color-border);border-top-color:var(--ghost-accent-color)}[data-theme=dark] .member-badge{background:var(--ghost-accent-color);color:#fff;border:1px solid var(--ghost-accent-color)}[data-theme=dark] .community-loading-spinner{border-color:var(--color-border);border-top-color:var(--ghost-accent-color)}[data-theme=dark] .community-category-card{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.2)}[data-theme=dark] .community-category-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .community-category-title{color:var(--color-primary-text)}[data-theme=dark] .community-category-description{color:var(--color-secondary-text)}[data-theme=dark] .community-category-image{background:var(--dark-surface);border-bottom-color:var(--color-border)}[data-theme=dark] .community-category-image-placeholder{background:var(--dark-surface);border:1px dashed var(--color-border)}[data-theme=dark] .community-category-image-placeholder:after{color:var(--color-secondary-text);opacity:.2}[data-theme=dark] .community-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .community-card.joined{border-color:var(--ghost-accent-color)}[data-theme=dark] .community-action-btn.join{background:var(--ghost-accent-color);color:#fff}[data-theme=dark] .community-action-btn.join:hover{opacity:.9}[data-theme=dark] .community-action-btn.joined{background:transparent;color:var(--ghost-accent-color);border:1px solid var(--ghost-accent-color)}[data-theme=dark] .community-action-btn.joined:hover{background:#dc3545;color:#fff;border-color:#dc3545}[data-theme=dark] .community-members-error .community-placeholder-icon{background:var(--dark-surface-elevated);border-color:rgba(220,53,69,.4);color:#dc3545}[data-theme=dark] .community-container{border-color:var(--color-border)}[data-theme=dark] .community-container.placeholder-state,[data-theme=dark] .community-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-container.has-content:not(.transitioning){background:transparent;border:none}[data-theme=dark] .community-modal-overlay{background:rgba(0,0,0,.9)}[data-theme=dark] .community-modal{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .community-modal-header{border-bottom-color:var(--color-border)}[data-theme=dark] .community-modal-title{color:var(--color-primary-text)}[data-theme=dark] .community-modal-close{color:var(--color-secondary-text)}[data-theme=dark] .community-modal-close:hover{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .community-modal-description{color:var(--color-secondary-text)}[data-theme=dark] .community-upload-title{color:var(--color-primary-text)}[data-theme=dark] .community-upload-label{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-upload-label:hover{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05)}[data-theme=dark] .community-upload-area.drag-over .community-upload-label{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.1)}[data-theme=dark] .community-upload-icon{opacity:.7}[data-theme=dark] .community-upload-primary{color:var(--color-primary-text)}[data-theme=dark] .community-upload-secondary{color:var(--color-secondary-text)}[data-theme=dark] .community-upload-formats{color:var(--color-secondary-text);opacity:.6}[data-theme=dark] .community-upload-preview,[data-theme=dark] .community-upload-preview img{background:var(--dark-surface)}[data-theme=dark] .community-remove-image{background:hsla(0,0%,100%,.1);color:var(--color-primary-text)}[data-theme=dark] .community-remove-image:hover{background:hsla(0,0%,100%,.2)}[data-theme=dark] .community-modal-error{background:rgba(220,53,69,.2);border-color:rgba(220,53,69,.4)}[data-theme=dark] .community-modal-footer{background:var(--dark-surface);border-top-color:var(--color-border)}[data-theme=dark] .community-leave-warning{background:rgba(220,53,69,.2);border-color:rgba(220,53,69,.4)}[data-theme=dark] .community-leave-consequences li{color:var(--color-secondary-text)}[data-theme=dark] .community-modal-leave{background:#dc3545;border-color:#dc3545;color:#fff}[data-theme=dark] .community-modal-leave:hover{background:#c82333;border-color:#bd2130}[data-theme=dark] .community-modal-join{color:#fff;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color)}[data-theme=dark] .community-modal-cancel.gh-secondary-btn{background-color:transparent;color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .community-modal-cancel.gh-secondary-btn:hover{background-color:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-modal-demo.gh-secondary-btn{background-color:transparent;color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .community-modal-demo.gh-secondary-btn:hover{background-color:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-modal-video.gh-secondary-btn{background-color:transparent;color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .community-modal-video.gh-secondary-btn:hover{background-color:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .community-modal-back{color:#fff;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color)}[data-theme=dark] .community-back-btn{background:var(--dark-surface);border:1px solid var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .community-back-btn:hover{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .community-members-header{background:linear-gradient(135deg,rgba(255,87,0,.08),rgba(255,140,0,.08));border-color:var(--color-border)}[data-theme=dark] .community-members-title{color:var(--color-primary-text)}[data-theme=dark] .community-members-description{color:var(--color-secondary-text)}[data-theme=dark] .members-count-badge{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.3)}[data-theme=dark] .count-number{color:var(--ghost-accent-color)}[data-theme=dark] .count-label{color:var(--color-darker-gray)}[data-theme=dark] .community-member-card{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .community-member-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.2)}[data-theme=dark] .community-member-card.current-user{border-color:var(--ghost-accent-color);background:var(--dark-surface)}[data-theme=dark] .member-validation-image{border-bottom-color:var(--color-border)}[data-theme=dark] .member-validation-placeholder{background:var(--dark-surface-elevated);border-bottom-color:var(--color-border)}[data-theme=dark] .placeholder-icon{opacity:.5}[data-theme=dark] .placeholder-text{color:var(--color-secondary-text);opacity:.9}[data-theme=dark] .member-info{background:transparent}[data-theme=dark] .member-name{color:var(--color-primary-text)}[data-theme=dark] .member-username{color:var(--color-secondary-text);opacity:.7}[data-theme=dark] .member-duolingo{color:var(--color-secondary-text)}[data-theme=dark] .duolingo-username{color:#58cc02}[data-theme=dark] .duolingo-copy-btn{color:#58cc02;opacity:.7}[data-theme=dark] .duolingo-copy-btn:hover{opacity:1;background:var(--dark-surface-elevated)}[data-theme=dark] .duolingo-copy-btn.copied{color:#58cc02;opacity:1}[data-theme=dark] .discord-username,[data-theme=dark] .member-discord{color:#5865f2}[data-theme=dark] .discord-copy-btn{color:#5865f2;opacity:.7}[data-theme=dark] .discord-copy-btn:hover{opacity:1;background:var(--dark-surface-elevated)}[data-theme=dark] .discord-copy-btn.copied{color:#5865f2;opacity:1}[data-theme=dark] .community-card.disabled{opacity:.6}[data-theme=dark] .community-card.disabled .community-action-btn{background:#495057;border-color:#495057}[data-theme=dark] .community-category-card.disabled{opacity:.6}[data-theme=dark] .community-category-card.disabled .community-category-image{filter:grayscale(.8) brightness(.8)}[data-theme=dark] .community-category-card.disabled .community-action-btn{background:#495057;border-color:#495057}[data-theme=dark] .social-network-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .social-network-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .social-network-name{color:var(--color-primary-text)}[data-theme=dark] .social-network-handle{background:rgba(255,87,0,.2)}[data-theme=dark] .share-icon{filter:invert(1);opacity:1}[data-theme=dark] .recommendation-card{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .recommendation-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.28)}[data-theme=dark] .recommendation-title,[data-theme=dark] .recommendations-title{color:var(--color-primary-text)}[data-theme=dark] .recommendation-content{background:transparent}[data-theme=dark] .recommendation-image{background:var(--dark-surface);border-right:1px solid var(--color-border)}[data-theme=dark] .recommendation-image img{opacity:.95;border:none}[data-theme=dark] .recommendation-excerpt{color:var(--color-secondary-text)}[data-theme=dark] .account-card{background:var(--dark-surface)}[data-theme=dark] .subscription-box{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .subscription-box.active{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,140,0,.15));border-color:var(--ghost-accent-color)}[data-theme=dark] .tier-logo{border-color:var(--color-border)}[data-theme=dark] .subscription-box.active .tier-logo:hover{border-color:var(--ghost-accent-color)}[data-theme=dark] .benefit-item,[data-theme=dark] .subscription-image:after{border-color:var(--color-border)}[data-theme=dark] .benefit-item{background:var(--dark-surface)}[data-theme=dark] .benefit-item:hover{background:var(--color-bg-secondary)}[data-theme=dark] .benefit-text,[data-theme=dark] .benefit-text strong,[data-theme=dark] .invite-title{color:var(--color-primary-text)}[data-theme=dark] .subscription-thanks{color:var(--color-secondary-text)}[data-theme=dark] .strike-icon img{filter:invert(1)}[data-theme=dark] .info-item span,[data-theme=dark] .info-value{color:var(--color-primary-text);background:var(--color-bg-terciary);border-color:var(--color-border)}[data-theme=dark] .strikes-card{background:var(--dark-surface)}[data-theme=dark] .strikes-card,[data-theme=dark] .strikes-overview{border-color:var(--color-border)}[data-theme=dark] .appealable-comment,[data-theme=dark] .comment-html,[data-theme=dark] .strikes-overview{background:var(--color-bg-secondary)}[data-theme=dark] .appeal-justification,[data-theme=dark] .comment-html{border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .appeal-justification{background:#2a2a2a}[data-theme=dark] .appeal-justification:focus{border-color:#d9a443;box-shadow:0 6px 16px hsla(0,0%,100%,.25)}[data-theme=dark] .donaciones-box{background:#23213a;border-color:#6c4fd3}[data-theme=dark] .char-counter{color:#6c757d}[data-theme=dark] .stories-container,[data-theme=dark] .stories-container.placeholder-state,[data-theme=dark] .stories-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] #stories-container.stories-story-view,[data-theme=dark] .stories-container.stories-story-view{background:transparent;border:none}[data-theme=dark] .stories-game-placeholder,[data-theme=dark] .stories-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .stories-game-placeholder-icon,[data-theme=dark] .stories-placeholder-icon{background:var(--dark-surface-elevated);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .stories-game-placeholder-text,[data-theme=dark] .stories-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .stories-game-placeholder-subtitle,[data-theme=dark] .stories-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .account-container,[data-theme=dark] .account-container.placeholder-state,[data-theme=dark] .account-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .account-container.has-content:not(.transitioning){background:transparent;border:none}[data-theme=dark] .story-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .story-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .story-title{color:var(--color-primary-text)}[data-theme=dark] .story-description,[data-theme=dark] .story-meta{color:var(--color-secondary-text)}[data-theme=dark] .story-meta{border-top-color:var(--color-border)}[data-theme=dark] .story-word-count{color:var(--ghost-accent-color)}[data-theme=dark] .story-image{background:var(--dark-surface);border-bottom-color:var(--color-border)}[data-theme=dark] .story-image-placeholder{background:var(--dark-surface);border:1px dashed var(--color-border)}[data-theme=dark] .story-image-placeholder:after{color:var(--color-secondary-text);opacity:.2}[data-theme=dark] .story-view{background:transparent}[data-theme=dark] .story-header{background:linear-gradient(135deg,rgba(255,87,0,.08),rgba(255,140,0,.08));border-color:var(--color-border)}[data-theme=dark] .story-back-btn{background:var(--dark-surface);border:1px solid var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .story-back-btn:hover{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .story-view-title{color:var(--color-primary-text)}[data-theme=dark] .story-view-description{color:var(--color-secondary-text)}[data-theme=dark] .story-text-content{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .story-vocabulary-title{color:var(--color-primary-text);border-bottom-color:var(--color-border)}[data-theme=dark] .story-vocabulary{background:var(--dark-surface)}[data-theme=dark] .story-vocab-item{border:1px solid var(--color-border)}[data-theme=dark] .story-vocab-item:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .story-vocab-japanese{color:var(--color-primary-text)}[data-theme=dark] .story-vocab-audio-btn{color:var(--ghost-accent-color)}[data-theme=dark] .story-vocab-audio-btn:hover{background:var(--color-lighter-gray)}[data-theme=dark] .story-vocab-romaji{color:var(--ghost-accent-color);opacity:.9}[data-theme=dark] .story-vocab-spanish{color:var(--color-secondary-text)}[data-theme=dark] .stories-error,[data-theme=dark] .stories-error-text{color:#dc3545}[data-theme=dark] .story-difficulty.a1-1,[data-theme=dark] .story-difficulty.a1-2,[data-theme=dark] .story-difficulty.a2-1,[data-theme=dark] .story-difficulty.a2-2{background:rgba(40,167,69,.2);color:var(--color-level-green)}[data-theme=dark] .story-difficulty.b1-1,[data-theme=dark] .story-difficulty.b1-2,[data-theme=dark] .story-difficulty.b2-1,[data-theme=dark] .story-difficulty.b2-2{background:rgba(255,193,7,.2);color:var(--color-level-amber)}[data-theme=dark] .story-difficulty.c1,[data-theme=dark] .story-difficulty.c2{background:rgba(220,53,69,.2);color:var(--color-level-red)}[data-theme=dark] .stats-mobile{display:none}[data-theme=dark] .stats-desktop{display:inline}@media(max-width:767px){[data-theme=dark] .stats-mobile{display:inline}[data-theme=dark] .stats-desktop{display:none}}[data-theme=dark] .story-text-translation{border-top-color:var(--color-border)}[data-theme=dark] .story-text-spanish{color:var(--color-secondary-text)}[data-theme=dark] .story-vocabulary-pagination{border-top-color:var(--color-border)}[data-theme=dark] .vocab-pagination-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text);transition:box-shadow .2s,transform .2s,background .2s}[data-theme=dark] .vocab-pagination-btn:hover:not(:disabled){background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .vocab-pagination-btn:disabled{opacity:.5}[data-theme=dark] .vocab-pagination-arrow{filter:invert(1);opacity:.9;border:none}[data-theme=dark] .story-audio-player{background:rgba(30,30,30,.95);border-color:hsla(0,0%,100%,.08);box-shadow:0 3px 6px rgba(0,0,0,.4),0 6px 16px rgba(0,0,0,.3);backdrop-filter:blur(10px)}[data-theme=dark] .story-progress-bar{background:hsla(0,0%,100%,.08)}[data-theme=dark] .story-results-stats{background:var(--dark-surface-elevated)}[data-theme=dark] .report-section h4{color:var(--color-primary-text)}[data-theme=dark] .report-achievement{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .report-achievement:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .report-achievement .achievement-text strong{color:var(--color-primary-text)}[data-theme=dark] .report-achievement .achievement-text span{color:var(--color-secondary-text)}[data-theme=dark] .recommendations-section{background:transparent}[data-theme=dark] .report-recommendation{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .report-recommendation:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .rec-text{color:var(--color-primary-text)}[data-theme=dark] .rec-action{color:var(--color-secondary-text)}[data-theme=dark] .sentence-analysis-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .sentence-analysis-section h4{color:var(--color-primary-text)}[data-theme=dark] .colored-sentence{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .general-feedback-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .general-feedback-section h4{color:var(--color-primary-text)}[data-theme=dark] .general-feedback-content{color:var(--color-secondary-text)}[data-theme=dark] .toggle-details-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .toggle-details-btn:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .toggle-details-btn.active{background:var(--dark-surface-elevated);border-color:var(--ghost-accent-color)}[data-theme=dark] .problematic-words-content{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .problematic-words-content h4{color:var(--color-primary-text)}[data-theme=dark] .problematic-word-item{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .word-japanese{color:var(--color-primary-text)}[data-theme=dark] .word-accuracy{color:var(--ghost-accent-color)}[data-theme=dark] .word-suggestion{color:var(--color-secondary-text)}[data-theme=dark] .new-record-badge{background:rgba(255,215,0,.2);color:gold}[data-theme=dark] .weekly-ranking{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));border-color:rgba(255,215,0,.3)}[data-theme=dark] .stories-game-container,[data-theme=dark] .stories-game-container.placeholder-state,[data-theme=dark] .stories-game-container.transitioning{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .stories-game-container.has-content:not(.transitioning){background:transparent;border:none}[data-theme=dark] .game-story-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .game-story-card:hover{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .story-card-image{border-bottom-color:var(--color-border)}[data-theme=dark] .story-card-image,[data-theme=dark] .story-card-image.no-img{background:var(--dark-surface-elevated)}[data-theme=dark] .story-card-title{color:var(--color-primary-text)}[data-theme=dark] .story-card-description{color:var(--color-secondary-text)}[data-theme=dark] .story-card-meta{border-top-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .story-score-badge{background:var(--dark-surface);color:var(--ghost-accent-color);border-color:var(--color-border)}[data-theme=dark] .story-score-badge:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .pronunciation-game-header{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:var(--color-border)}[data-theme=dark] .current-story,[data-theme=dark] .pronunciation-game-header-content{color:var(--color-primary-text)}[data-theme=dark] .back-to-stories-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .back-to-stories-btn:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .story-content-container{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .story-text{color:var(--color-primary-text)}[data-theme=dark] .story-translation{color:var(--color-secondary-text);border-top-color:var(--color-border)}[data-theme=dark] .story-romaji{color:var(--ghost-accent-color);background:rgba(255,87,0,.1);border-color:rgba(255,87,0,.2)}[data-theme=dark] .pronunciation-controls{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .recording-instructions h4{color:var(--color-primary-text)}[data-theme=dark] .recording-instructions p{color:var(--color-secondary-text)}[data-theme=dark] .story-progress{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .progress-attempts strong,[data-theme=dark] .progress-score strong{color:var(--ghost-accent-color)}[data-theme=dark] .hint-btn{color:var(--color-primary-text)}[data-theme=dark] .hint-btn,[data-theme=dark] .hint-btn:hover:not(:disabled){background:var(--game-option-background);border-color:var(--color-border)}[data-theme=dark] .hint-btn.active,[data-theme=dark] .hint-btn.used{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));color:var(--color-primary-text)}[data-theme=dark] .hint-btn.used{border-color:var(--ghost-accent-color)}[data-theme=dark] .hint-btn.penalty-applied:after,[data-theme=dark] .hint-btn:not(.penalty-applied):hover:after{background:#c05621;color:#fff}[data-theme=dark] .gh-btn.penalty-applied:after{background:#ed8936;color:#1a1a2e}[data-theme=dark] .recording-status{color:var(--color-secondary-text)}[data-theme=dark] .recording-status.recording{color:#ef4444}[data-theme=dark] .recording-status.processing{color:var(--color-secondary-text)}[data-theme=dark] .recording-timer{color:#ef4444}[data-theme=dark] .recording-timer .timer-dot{background:#ef4444}[data-theme=dark] .audio-visualizer{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .penalty-info{padding:1rem;margin:1rem 0}[data-theme=dark] .penalty-item{color:var(--color-primary-text)}[data-theme=dark] .penalty-icon{opacity:.9}[data-theme=dark] .results-penalties .penalty-item{background:rgba(0,0,0,.2);border-color:rgba(237,137,54,.15)}[data-theme=dark] .results-penalties .penalty-icon{background:rgba(237,137,54,.2);color:#ed8936}[data-theme=dark] .results-penalties .penalty-label{color:var(--color-primary-text)}[data-theme=dark] .results-penalties .penalty-count{color:var(--color-secondary-text)}[data-theme=dark] .results-penalties .penalty-value{color:#ed8936}[data-theme=dark] .results-penalties .penalties-total{border-color:rgba(237,137,54,.25)}[data-theme=dark] .results-penalties .penalties-total-label{color:var(--color-primary-text)}[data-theme=dark] .results-penalties .penalties-total-value{color:#ed8936}[data-theme=dark] .recognized-content{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .game-title{color:var(--color-primary-text)}[data-theme=dark] .game-description{color:var(--color-secondary-text)}[data-theme=dark] .record-btn{background:var(--ghost-accent-color);border-color:var(--ghost-accent-color);color:#fff}[data-theme=dark] .record-btn:hover{opacity:.9}[data-theme=dark] .record-btn.recording{background:#ef4444;border-color:#ef4444}[data-theme=dark] .record-btn.processing{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .recording-buttons{background:transparent}[data-theme=dark] .stories-category-image-placeholder{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .stories-category-image-placeholder:after{color:var(--color-secondary-text);opacity:.2}[data-theme=dark] .word-count-badge{color:var(--ghost-accent-color)}[data-theme=dark] .word-count-icon{opacity:.9}[data-theme=dark] .stories-difficulty.a1-1,[data-theme=dark] .stories-difficulty.a1-2,[data-theme=dark] .stories-difficulty.a2-1,[data-theme=dark] .stories-difficulty.a2-2,[data-theme=dark] .stories-difficulty.beginner{background:rgba(40,167,69,.2);color:var(--color-level-green)}[data-theme=dark] .stories-difficulty.b1-1,[data-theme=dark] .stories-difficulty.b1-2,[data-theme=dark] .stories-difficulty.b2-1,[data-theme=dark] .stories-difficulty.b2-2,[data-theme=dark] .stories-difficulty.intermediate{background:rgba(255,193,7,.2);color:var(--color-level-amber)}[data-theme=dark] .stories-difficulty.advanced,[data-theme=dark] .stories-difficulty.c1,[data-theme=dark] .stories-difficulty.c2{background:rgba(220,53,69,.2);color:var(--color-level-red)}[data-theme=dark] .stories-difficulty.intro{background:rgba(0,123,255,.2);color:var(--color-level-blue)}[data-theme=dark] .stories-game-pagination{background:var(--dark-surface)}[data-theme=dark] .type-filters{background:transparent;border:none}[data-theme=dark] .type-filter-btn{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .type-filter-btn.active{background:var(--dark-surface)}[data-theme=dark] .type-filter-btn:not(.active){opacity:1;color:var(--color-secondary-text);background:var(--dark-surface)}[data-theme=dark] .level-filter-btn:not(.active):hover{opacity:1;background:var(--dark-surface)}[data-theme=dark] .type-filter-btn:not(.active):hover{opacity:1}[data-theme=dark] .score-info-inline .homework-score,[data-theme=dark] .score-info-inline .streak-display{color:var(--color-primary-text)}[data-theme=dark] .vocabulary-game-progress{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .vocabulary-game-question-counter,[data-theme=dark] .vocabulary-game-score{color:var(--color-primary-text)}[data-theme=dark] .vocabulary-game-progress-bar{background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}[data-theme=dark] .vocabulary-game-progress-fill{background:var(--ghost-accent-color)}[data-theme=dark] .homework-question-card{background:var(--dark-surface)}[data-theme=dark] .homework-container,[data-theme=dark] .homework-container.placeholder-state,[data-theme=dark] .homework-container.transitioning,[data-theme=dark] .homework-container:not(.has-content):not(.transitioning){background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .homework-container.has-content:not(.transitioning),[data-theme=dark] .homework-container.homework-exercise-view,[data-theme=dark] .homework-container.homework-results-view{background:transparent;border:none}[data-theme=dark] .homework-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .homework-placeholder-icon{background:var(--dark-surface-elevated);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .homework-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .homework-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .homework-exercise-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .homework-exercise-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .homework-exercise-title{color:var(--color-primary-text)}[data-theme=dark] .homework-exercise-description{color:var(--color-secondary-text)}[data-theme=dark] .homework-exercise-meta{border-top-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .homework-question-count{color:var(--ghost-accent-color)}[data-theme=dark] .homework-exercise-image{background:var(--dark-surface);border-bottom-color:var(--color-border)}[data-theme=dark] .homework-exercise-image-placeholder{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .homework-type-icon{color:var(--color-secondary-text)}[data-theme=dark] .homework-exercise-header{background:linear-gradient(135deg,rgba(255,87,0,.08),rgba(255,140,0,.08));border-color:var(--color-border)}[data-theme=dark] .homework-back-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-back-btn:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .homework-exercise-progress{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .homework-question-counter,[data-theme=dark] .homework-score{color:var(--color-primary-text)}[data-theme=dark] .homework-progress-bar{background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}[data-theme=dark] .homework-progress-fill{background:var(--ghost-accent-color)}[data-theme=dark] .homework-question-text{color:var(--color-primary-text)}[data-theme=dark] .homework-option-btn{background:var(--game-option-background);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-option-btn.selected,[data-theme=dark] .homework-option-btn:hover:not(:disabled){background:color-mix(in srgb,var(--ghost-accent-color) 8%,var(--game-option-background));border-color:var(--ghost-accent-color)}[data-theme=dark] .homework-option-btn.correct{background:rgba(40,167,69,.2);border-color:#28a745;color:#28a745}[data-theme=dark] .homework-option-btn.incorrect{background:rgba(220,53,69,.2);border-color:#dc3545;color:#dc3545}[data-theme=dark] .homework-option-btn.selected:hover:not(:disabled){background:color-mix(in srgb,var(--ghost-accent-color) 12%,var(--game-option-background))}[data-theme=dark] .homework-option-btn .multiselect-check{color:var(--ghost-accent-color)}[data-theme=dark] .homework-option-btn.missed{border:2px dashed #fbbf24;background:rgba(251,191,36,.15);box-shadow:0 4px 12px rgba(251,191,36,.15)}[data-theme=dark] .homework-option-btn.missed:hover{box-shadow:0 6px 16px rgba(251,191,36,.2)}[data-theme=dark] .homework-multiselect-info{background:rgba(255,87,0,.1);border-color:rgba(255,87,0,.2);color:var(--color-primary-text)}[data-theme=dark] .homework-multiselect-info svg{color:var(--ghost-accent-color)}[data-theme=dark] .multiselect-counter{color:var(--color-primary-text)}[data-theme=dark] .multiselect-counter.complete{color:#4ade80}[data-theme=dark] .homework-option-letter{color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 16%,transparent)}[data-theme=dark] .homework-answer-audio-btn{background:transparent;color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .homework-answer-audio-btn:hover{opacity:.9}[data-theme=dark] .homework-answer-audio-btn.loading{background:var(--dark-surface);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .homework-word-bank{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .word-bank-label,[data-theme=dark] .word-token{color:var(--color-primary-text)}[data-theme=dark] .word-token{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .word-token:hover:not(.used){border-color:var(--ghost-accent-color);background:rgba(255,87,0,.1);box-shadow:0 6px 16px rgba(0,0,0,.3)}[data-theme=dark] .word-token.used{background:var(--dark-surface-elevated);border-color:var(--color-border);color:var(--color-secondary-text);opacity:.4}[data-theme=dark] .homework-sentence-builder{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .sentence-builder-label{color:var(--color-primary-text)}[data-theme=dark] .sentence-dropzone{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .sentence-dropzone.drag-over{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.1)}[data-theme=dark] .dropzone-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .sentence-word{background:var(--ghost-accent-color);color:#fff}[data-theme=dark] .remove-word-btn{background:hsla(0,0%,100%,.2);color:#fff}[data-theme=dark] .remove-word-btn:hover{background:hsla(0,0%,100%,.3)}[data-theme=dark] .remove-word-btn:disabled{background:hsla(0,0%,100%,.1)!important}[data-theme=dark] .homework-clear-btn,[data-theme=dark] .homework-submit-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-clear-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);background:var(--dark-surface-elevated)}[data-theme=dark] .homework-submit-btn{background:var(--ghost-accent-color);border-color:var(--ghost-accent-color);color:#fff}[data-theme=dark] .grammar-correct-sequence{background:rgba(40,167,69,.1);border-color:rgba(40,167,69,.3)}[data-theme=dark] .grammar-correct-sequence h4{color:#28a745}[data-theme=dark] .correct-word{background:#28a745;color:#fff}[data-theme=dark] .homework-difficulty.a1-1,[data-theme=dark] .homework-difficulty.a1-2,[data-theme=dark] .homework-difficulty.a2-1,[data-theme=dark] .homework-difficulty.a2-2,[data-theme=dark] .homework-difficulty.beginner{background:rgba(40,167,69,.2);color:var(--color-level-green)}[data-theme=dark] .homework-difficulty.b1-1,[data-theme=dark] .homework-difficulty.b1-2,[data-theme=dark] .homework-difficulty.b2-1,[data-theme=dark] .homework-difficulty.b2-2,[data-theme=dark] .homework-difficulty.intermediate{background:rgba(255,193,7,.2);color:var(--color-level-amber)}[data-theme=dark] .homework-difficulty.advanced,[data-theme=dark] .homework-difficulty.c1,[data-theme=dark] .homework-difficulty.c2{background:rgba(220,53,69,.2);color:var(--color-level-red)}[data-theme=dark] .homework-audio-player{background:rgba(30,30,30,.95);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}[data-theme=dark] .homework-audio-progress-bar{background:hsla(0,0%,100%,.1)}[data-theme=dark] .homework-audio-time{color:hsla(0,0%,100%,.7)}[data-theme=dark] .homework-romaji-text{background:rgba(128,90,213,.15);border-color:rgba(128,90,213,.3);color:#b794f4}[data-theme=dark] .homework-romaji-text:hover{box-shadow:0 6px 16px rgba(128,90,213,.15),0 2px 6px rgba(128,90,213,.2)}[data-theme=dark] .homework-romaji-text.hidden{display:none}[data-theme=dark] .homework-listening-controls{background:transparent}[data-theme=dark] .homework-audio-btn{background:var(--ghost-accent-color);color:#fff;border:none}[data-theme=dark] .homework-audio-btn:hover{opacity:.9}[data-theme=dark] .homework-audio-btn.loading{background:var(--dark-surface);border:1px solid var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .homework-romaji-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-romaji-btn:hover{background:rgba(128,90,213,.1);border-color:#b794f4}[data-theme=dark] .homework-romaji-btn:disabled{background:var(--dark-surface);color:var(--color-secondary-text);border-color:var(--color-border);opacity:.5}[data-theme=dark] .homework-spanish-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-spanish-btn:hover{background:rgba(66,153,225,.1);border-color:#4299e1}[data-theme=dark] .homework-spanish-btn:disabled{background:var(--dark-surface);color:var(--color-secondary-text);border-color:var(--color-border);opacity:.5}[data-theme=dark] .homework-hint-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .homework-hint-btn:hover{background:rgba(255,87,0,.1);border-color:var(--ghost-accent-color)}[data-theme=dark] .homework-hint-btn.used{background:linear-gradient(135deg,rgba(255,87,0,.15),rgba(255,140,0,.15));border-color:var(--ghost-accent-color);color:var(--color-primary-text)}[data-theme=dark] .homework-hint-btn:disabled{background:var(--dark-surface);color:var(--color-secondary-text);border-color:var(--color-border);opacity:.5}[data-theme=dark] .homework-hint-content{background:rgba(255,87,0,.08);border-color:rgba(255,87,0,.2);color:var(--ghost-accent-color)}[data-theme=dark] .homework-hint-content p,[data-theme=dark] .homework-hint-content strong{color:var(--ghost-accent-color)}[data-theme=dark] .homework-pagination{background:var(--dark-surface)}[data-theme=dark] .kana-exercise-progress,[data-theme=dark] .kana-options-body,[data-theme=dark] .kana-options-toggle,[data-theme=dark] .kana-quiz-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .kana-exercise-progress:hover,[data-theme=dark] .kana-options-body,[data-theme=dark] .kana-options-toggle:hover,[data-theme=dark] .kana-quiz-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.35),0 2px 6px rgba(0,0,0,.25)}[data-theme=dark] .kana-quiz-card:before{background:radial-gradient(ellipse at 50% 0,rgba(255,87,0,.08),transparent 55%)}[data-theme=dark] .kana-acc-bar,[data-theme=dark] .kana-enter-hint kbd,[data-theme=dark] .kana-opt-label,[data-theme=dark] .kana-stat-chip,[data-theme=dark] .kana-streak{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .kana-progress-bar{background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}[data-theme=dark] .kana-stats-btn{background:var(--dark-surface-elevated);border-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .kana-action-btn:not(.finish-btn):not(.reveal-btn):not(.skip-btn):hover,[data-theme=dark] .kana-mini-btn:not(.sound-btn):hover,[data-theme=dark] .kana-opt-label:hover,[data-theme=dark] .kana-options-toggle:hover,[data-theme=dark] .kana-stats-btn:hover{background:var(--color-lighter-gray);color:var(--color-primary-text)}[data-theme=dark] .kana-options-toggle.open{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border-color:rgba(255,87,0,.3)}[data-theme=dark] .kana-options-toggle .kana-chev{background:var(--dark-surface-elevated);color:var(--color-secondary-text)}[data-theme=dark] .kana-options-toggle:hover .kana-chev{background:var(--color-lighter-gray);color:var(--color-primary-text)}[data-theme=dark] .kana-options-toggle.open .kana-chev{background:rgba(255,87,0,.2);color:var(--ghost-accent-color)}[data-theme=dark] .kana-stats-btn.active{background:rgba(255,87,0,.15);border-color:var(--ghost-accent-color);color:var(--ghost-accent-color)}[data-theme=dark] .kana-text-input{background:var(--dark-surface-elevated);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .kana-text-input:focus{border-color:rgba(255,87,0,.45);box-shadow:0 0 0 3px rgba(255,87,0,.12)}[data-theme=dark] .kana-opt-wrap input:checked+.kana-opt-label{background:rgba(255,87,0,.15);border-color:var(--ghost-accent-color)}[data-theme=dark] .kana-group-section{border-bottom-color:var(--color-border)}[data-theme=dark] .kana-group-title,[data-theme=dark] .kana-opt-jp{color:var(--color-primary-text)}[data-theme=dark] .kana-opt-rm{color:var(--color-secondary-text)}[data-theme=dark] .strikes-info-text{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .strikes-info-content{border-bottom-color:var(--color-border)}[data-theme=dark] .expiration-description{color:var(--color-secondary-text)}[data-theme=dark] .strikes-image-container{background:transparent}[data-theme=dark] .strikes-explanation p{color:var(--color-secondary-text)}[data-theme=dark] .strikes-explanation strong{color:var(--color-primary-text)}[data-theme=dark] .pending-appeal-text{color:var(--ghost-accent-color)}[data-theme=dark] .strikes-breakdown{color:var(--color-secondary-text)}[data-theme=dark] .warning-text{color:#dc3545}[data-theme=dark] .appealable-help{background:rgba(255,193,7,.15);border-left-color:var(--ghost-accent-color);color:var(--color-secondary-text)}[data-theme=dark] .appealable-help strong{color:var(--color-primary-text)}[data-theme=dark] .expiration-encouragement{background:rgba(255,193,7,.15);border-left-color:var(--ghost-accent-color);color:var(--color-primary-text)}[data-theme=dark] .chat-container{background:var(--dark-surface-elevated);border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .expiration-encouragement a{color:var(--ghost-accent-color)}[data-theme=dark] .expiration-encouragement strong{color:var(--color-primary-text)}[data-theme=dark] .chat-header{background:var(--dark-surface-elevated);border-bottom-color:var(--color-border)}[data-theme=dark] .chat-header-text h3{color:var(--color-primary-text)}[data-theme=dark] .chat-status{color:var(--color-secondary-text)}[data-theme=dark] .chat-toggle{background:var(--dark-surface)}[data-theme=dark] .chat-close,[data-theme=dark] .chat-reset{color:var(--color-secondary-text)}[data-theme=dark] .chat-close:hover,[data-theme=dark] .chat-reset:hover{background:var(--color-lighter-gray);color:var(--color-primary-text)}[data-theme=dark] .chat-messages{background:var(--dark-surface)}[data-theme=dark] .chat-messages::-webkit-scrollbar-thumb{background:var(--color-border)}[data-theme=dark] .chat-messages::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .message-bubble,[data-theme=dark] .chat-message.user .message-bubble{background:var(--dark-surface-elevated);color:var(--color-primary-text);border-color:var(--color-border)}[data-theme=dark] .chat-message.assistant .message-bubble h1,[data-theme=dark] .chat-message.assistant .message-bubble h2,[data-theme=dark] .chat-message.assistant .message-bubble h3{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .message-bubble h4{color:var(--ghost-accent-color)}[data-theme=dark] .chat-input-container{background:var(--dark-surface-elevated);border-top-color:var(--color-border)}[data-theme=dark] .chat-input{background:var(--dark-surface);color:var(--color-primary-text);border-color:var(--color-border)}[data-theme=dark] .chat-input:focus{background:var(--dark-surface-elevated);border-color:var(--ghost-accent-color)}[data-theme=dark] .chat-input::-moz-placeholder{color:var(--color-secondary-text)}[data-theme=dark] .chat-input::placeholder{color:var(--color-secondary-text)}[data-theme=dark] .typing-indicator{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .chat-badge{border-color:var(--dark-surface-elevated)}[data-theme=dark] .chat-message.assistant .chat-item-card.post-card .chat-item-title a{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .message-bubble .chat-link{color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .chat-item-card.chat-story-card{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .chat-message.assistant .romaji-word{color:var(--ghost-accent-color);opacity:.9}[data-theme=dark] .chat-message.assistant .translation-word{color:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .message-bubble ol li{border-bottom-color:var(--color-border)}[data-theme=dark] .chat-message.assistant .chat-image{opacity:.95}[data-theme=dark] .chat-message.assistant .message-bubble .chat-heading{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .message-bubble .chat-inline-code{background:var(--dark-surface);color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .message-bubble .chat-blockquote,[data-theme=dark] .chat-message.assistant .message-bubble blockquote{background:var(--dark-surface);border-left-color:var(--ghost-accent-color);color:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .message-bubble .chat-hr,[data-theme=dark] .chat-message.assistant .message-bubble hr{background:var(--color-border)}[data-theme=dark] .chat-message.assistant .chat-table{background:var(--dark-surface-elevated)}[data-theme=dark] .chat-message.assistant .chat-table th{background:var(--dark-surface)}[data-theme=dark] .youtube-video-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .youtube-video-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .youtube-video-thumbnail{background:var(--dark-surface-elevated)}[data-theme=dark] .youtube-video-title{color:var(--color-primary-text)}[data-theme=dark] .youtube-video-description,[data-theme=dark] .youtube-video-meta{color:var(--color-secondary-text)}[data-theme=dark] .youtube-container{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .youtube-container.has-content{background:transparent;border:none}[data-theme=dark] .youtube-placeholder-text{color:var(--color-primary-text)}[data-theme=dark] .youtube-placeholder-subtitle{color:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .chat-table tr:nth-child(2n){background:hsla(0,0%,100%,.02)}[data-theme=dark] .chat-message.assistant .chat-table-wrapper{border-color:var(--color-border)}[data-theme=dark] .chat-message.assistant .vocab-table td.japanese-cell,[data-theme=dark] .chat-message.assistant .vocab-table th.japanese-col{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .vocab-table td.spanish-cell,[data-theme=dark] .chat-message.assistant .vocab-table th.spanish-col{color:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .vocab-table tr:hover{background:rgba(255,140,0,.08)}[data-theme=dark] .chat-message.assistant .message-bubble blockquote{background:var(--dark-surface);color:var(--color-secondary-text);border-left-color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .message-bubble hr{background:var(--color-border)}[data-theme=dark] .chat-message.assistant .chat-code-block{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .chat-message.assistant .chat-code-block code{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .chat-kbd{background:var(--dark-surface-elevated);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .chat-highlight{background:rgba(255,193,7,.2);color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .vocab-entry{border-bottom-color:hsla(0,0%,100%,.1)}[data-theme=dark] .chat-message.assistant .vocab-kanji{color:var(--color-primary-text)}[data-theme=dark] .chat-message.assistant .vocab-reading{color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .vocab-separator,[data-theme=dark] .chat-message.assistant .vocab-translation{color:var(--color-secondary-text)}[data-theme=dark] .chat-message.assistant .content-section-header{color:var(--ghost-accent-color);border-bottom-color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .content-section-header.inline{border-bottom-color:var(--ghost-accent-color)}[data-theme=dark] .chat-message.assistant .chat-code-block.japanese-text code,[data-theme=dark] .chat-message.assistant .japanese-word{color:var(--color-primary-text)}[data-theme=dark] .strikes-count-text{color:var(--color-secondary-text)}[data-theme=dark] .strikes-progress-bar{background:hsla(0,0%,100%,.1)}[data-theme=dark] .strikes-expiration strong{color:var(--color-primary-text)}[data-theme=dark] .strikes-list-title{color:var(--color-primary-text);border-bottom-color:hsla(0,0%,100%,.1)}[data-theme=dark] .strike-reason{color:var(--color-primary-text)}[data-theme=dark] .strikes-appealable{border-top-color:hsla(0,0%,100%,.1)}[data-theme=dark] .appealable-strike-item{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3)}[data-theme=dark] .appealable-strike-reason .reason-label{color:var(--color-primary-text)}[data-theme=dark] .blocked-content{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .strikes-footer{border-top-color:hsla(0,0%,100%,.1)}[data-theme=dark] .chat-contact-preview{background:linear-gradient(135deg,rgba(255,140,0,.08),rgba(255,140,0,.03));border-color:rgba(255,140,0,.3)}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.esencial,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.intro{background:rgba(0,123,255,.2)}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.esencial .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.intro .meta-value{color:#60a5fa}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a1-1,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a1-2,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a2-1,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a2-2{background:rgba(40,167,69,.2)}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a1-1 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a1-2 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a2-1 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.a2-2 .meta-value{color:#4ade80}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b1-1,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b1-2,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b2-1,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b2-2{background:rgba(255,193,7,.2)}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b1-1 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b1-2 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b2-1 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.b2-2 .meta-value{color:#fbbf24}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.c1,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.c2{background:rgba(220,53,69,.2)}[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.c1 .meta-value,[data-theme=dark] .chat-message.assistant .chat-item-meta.difficulty.c2 .meta-value{color:#f87171}[data-theme=dark] .contact-preview-category{border-bottom-color:rgba(255,140,0,.2)}[data-theme=dark] .contact-preview-message{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.3)}[data-theme=dark] .contact-preview-message p{color:var(--color-primary-text)}[data-theme=dark] .theme-progress-card.completed:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));opacity:0;transition:opacity .3s;z-index:0}[data-theme=dark] .theme-progress-card.completed:after{content:"📥 Descargar certificado";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--ghost-accent-color);color:#fff;padding:1rem 2rem;border-radius:12px;font-size:1.4rem;font-weight:600;opacity:0;transition:opacity .3s;z-index:2;white-space:nowrap}[data-theme=dark] .theme-progress-card.completed:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,87,0,.3);border-color:var(--ghost-accent-color)}[data-theme=dark] .theme-progress-card.completed:hover:after,[data-theme=dark] .theme-progress-card.completed:hover:before{opacity:1}[data-theme=dark] .theme-progress-card.completed:hover .theme-progress-header,[data-theme=dark] .theme-progress-card.completed:hover .theme-progress-stats{opacity:.3;filter:blur(2px)}[data-theme=dark] .theme-progress-card.completed .theme-progress-header,[data-theme=dark] .theme-progress-card.completed .theme-progress-stats{position:relative;z-index:1;transition:opacity .2s,filter .2s}[data-theme=dark] .theme-progress-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.2)}[data-theme=dark] .theme-progress-title{color:var(--color-primary-text)}[data-theme=dark] .theme-stat-label{color:var(--color-secondary-text)}[data-theme=dark] .theme-stat-value{color:var(--color-primary-text)}[data-theme=dark] .thanks-card{background:var(--dark-surface);border:1px solid var(--color-border)}[data-theme=dark] .thanks-card:hover{box-shadow:none}[data-theme=dark] .thanks-card-title{color:var(--color-primary-text)}[data-theme=dark] .thanks-card-description{color:var(--color-secondary-text)}[data-theme=dark] .thanks-card-image{background:var(--dark-surface);border-bottom:1px solid var(--color-border)}[data-theme=dark] .error-content h3,[data-theme=dark] .error-template .gh-article-title{color:var(--color-darker-gray)}[data-theme=dark] .mapbox-map,[data-theme=dark] .maptiler-map{border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.3)}[data-theme=dark] .mapbox-map.loading,[data-theme=dark] .maptiler-map.loading{background-color:var(--dark-surface)}[data-theme=dark] .mapbox-map.loading:after,[data-theme=dark] .maptiler-map.loading:after{color:var(--color-secondary-text)}[data-theme=dark] .mapboxgl-popup-content{background:var(--dark-surface-elevated);color:var(--color-primary-text);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .mapboxgl-popup-close-button{color:var(--color-primary-text)}[data-theme=dark] .mapboxgl-popup-close-button:hover{background:var(--color-lighter-gray)}[data-theme=dark] .mapboxgl-popup-tip{border-top-color:var(--dark-surface-elevated)}[data-theme=dark] .mapboxgl-ctrl-group{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.4)}[data-theme=dark] .mapboxgl-ctrl-group button{background-color:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .mapboxgl-ctrl-group button:hover{background-color:var(--dark-surface)}[data-theme=dark] .mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon,[data-theme=dark] .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon,[data-theme=dark] .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{filter:invert(1)}[data-theme=dark] .mapboxgl-ctrl-attrib{background-color:rgba(30,30,30,.8);color:var(--color-secondary-text)}[data-theme=dark] .mapboxgl-ctrl-attrib a{color:var(--ghost-accent-color)}[data-theme=dark] .streak-container.streak-empty-state{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .streak-empty-text{color:var(--color-secondary-text)}[data-theme=dark] .streak-stats-grid .stats-card{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .streak-stats-grid .stats-card-value{color:var(--color-darker-gray)}[data-theme=dark] .streak-source-summary:after{background:var(--dark-surface);color:var(--color-secondary-text);border-color:var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.3)}[data-theme=dark] .streak-source-summary:before{border-top-color:var(--color-border)}[data-theme=dark] .streak-source-summary.vocab{background:rgba(255,87,0,.15);color:#ff8c00}[data-theme=dark] .streak-source-summary.pron{background:rgba(59,130,246,.15);color:#60a5fa}[data-theme=dark] .streak-source-summary.game{background:color-mix(in srgb,var(--ghost-accent-color) 18%,transparent);color:var(--ghost-accent-color)}[data-theme=dark] .streak-source-summary.both{background:rgba(16,185,129,.15);color:#34d399}[data-theme=dark] .streak-calendar{background:var(--dark-surface)}[data-theme=dark] .streak-calendar-header{color:var(--color-darker-gray)}[data-theme=dark] .calendar-nav-btn{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.15),0 1px 3px rgba(0,0,0,.2);transition:box-shadow .2s,transform .2s,background .2s}[data-theme=dark] .calendar-nav-btn:hover:not(:disabled){background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .calendar-nav-arrow{filter:invert(1)}[data-theme=dark] .streak-calendar-weekdays span{color:var(--color-secondary-text)}[data-theme=dark] .streak-cal-day .cal-day-num{color:var(--color-darker-gray)}[data-theme=dark] .streak-cal-day.future .cal-day-num{color:var(--color-border);opacity:.4}[data-theme=dark] .streak-cal-day.today{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3)}[data-theme=dark] .streak-cal-day.today .cal-day-num{color:#fff}[data-theme=dark] .streak-cal-day.studied{background:rgba(16,185,129,.25)}[data-theme=dark] .streak-cal-day.studied .cal-day-num{color:#34d399}[data-theme=dark] .streak-cal-day.studied.in-streak{background:rgba(217,164,67,.15)}[data-theme=dark] .streak-cal-day.studied.in-streak .cal-day-num{color:var(--ghost-accent-color)}[data-theme=dark] .streak-cal-day.frozen{background:rgba(99,102,241,.25)}[data-theme=dark] .streak-cal-day.frozen.frozen-start{background:linear-gradient(90deg,rgba(16,185,129,.25),rgba(99,102,241,.25) 50%)}[data-theme=dark] .streak-cal-day.frozen.frozen-end{background:linear-gradient(90deg,rgba(99,102,241,.25) 50%,rgba(16,185,129,.25))}[data-theme=dark] .streak-cal-day.frozen.frozen-single{background:linear-gradient(90deg,rgba(16,185,129,.25),rgba(99,102,241,.25) 50%,rgba(16,185,129,.25))}[data-theme=dark] .streak-cal-day.frozen .cal-day-num{color:#818cf8}[data-theme=dark] .streak-cal-day .cal-day-overlay{position:absolute;inset:0;pointer-events:none;border-radius:inherit;z-index:0;opacity:0;transition:opacity .18s,background .18s}@keyframes vsa-overlay-fade-dark{0%{opacity:0}to{opacity:1}}[data-theme=dark] .streak-cal-day.in-streak .cal-day-overlay{animation:vsa-overlay-fade-dark .18s ease both}[data-theme=dark] .streak-cal-day .cal-day-num{position:relative;z-index:2}[data-theme=dark] .streak-cal-day.frozen.in-streak{background:rgba(217,164,67,.12);border-color:rgba(217,164,67,.25) currentcolor;border-style:solid none;border-width:1px medium;position:relative;z-index:0}[data-theme=dark] .streak-cal-day.frozen.in-streak .cal-day-overlay{opacity:1;background:linear-gradient(90deg,rgba(217,164,67,.15),rgba(99,102,241,.25) 50%,rgba(217,164,67,.15));mix-blend-mode:multiply}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-start{border-left:none;margin-left:-1px;border-radius:0}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-start .cal-day-overlay{background:linear-gradient(90deg,rgba(16,185,129,.2),rgba(99,102,241,.25) 40%,rgba(217,164,67,.2));mix-blend-mode:normal}[data-theme=dark] .streak-cal-day.studied.studied-end.connects-frozen-streak{border-radius:20px 0 0 20px;margin-right:-1px;border-right:none}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-end{border-right:1px solid rgba(217,164,67,.25);margin-right:0;border-radius:0 20px 20px 0}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-middle{background:linear-gradient(90deg,rgba(217,164,67,.12),rgba(99,102,241,.35) 35%,rgba(99,102,241,.35) 65%,rgba(217,164,67,.12));border-top:none;border-bottom:none}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-middle:before{content:"";position:absolute;inset:0;border-top:1px solid transparent;border-bottom:1px solid transparent;-o-border-image:linear-gradient(90deg,rgba(217,164,67,.4),rgba(99,102,241,.6) 35%,rgba(99,102,241,.6) 65%,rgba(217,164,67,.4)) 1;border-image:linear-gradient(90deg,rgba(217,164,67,.4),rgba(99,102,241,.6) 35%,rgba(99,102,241,.6) 65%,rgba(217,164,67,.4)) 1;pointer-events:none;z-index:1}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-middle .cal-day-overlay{opacity:0}[data-theme=dark] .streak-cal-day.frozen.in-streak.streak-single{border:1px solid rgba(217,164,67,.25);border-radius:20px;margin-left:0;margin-right:0}[data-theme=dark] .streak-cal-day.frozen.in-streak .cal-day-num{color:var(--ghost-accent-color);font-weight:700}[data-theme=dark] .streak-cal-day[data-tooltip]:not([data-tooltip=""]):hover:after{background:var(--dark-surface);color:var(--color-secondary-text);border-color:var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.3),0 1px 3px rgba(0,0,0,.2)}[data-theme=dark] .legend-dot.studied{background:rgba(16,185,129,.4)}[data-theme=dark] .legend-dot.in-streak{background:rgba(217,164,67,.3)}[data-theme=dark] .legend-dot.frozen{background:rgba(99,102,241,.4)}[data-theme=dark] .results-penalties{background:linear-gradient(135deg,rgba(237,137,54,.12),rgba(221,107,32,.12));border-color:rgba(237,137,54,.25)}[data-theme=dark] .results-penalties:hover{box-shadow:0 6px 16px rgba(237,137,54,.2),0 2px 6px rgba(221,107,32,.15)}[data-theme=dark] .penalties-title{color:#ed8936}[data-theme=dark] .penalty-item{background:rgba(0,0,0,.2);border-color:rgba(237,137,54,.15)}[data-theme=dark] .penalty-icon{background:rgba(237,137,54,.2);color:#ed8936}[data-theme=dark] .penalty-label{color:var(--color-primary-text)}[data-theme=dark] .penalty-count{color:var(--color-secondary-text)}[data-theme=dark] .penalty-value{color:#ed8936}[data-theme=dark] .penalties-total{border-color:rgba(237,137,54,.25)}[data-theme=dark] .penalties-total-label{color:var(--color-primary-text)}[data-theme=dark] .penalties-total-value{color:#ed8936}[data-theme=dark] .homework-hint-btn.penalty-applied:after,[data-theme=dark] .homework-hint-btn:not(.penalty-applied):hover:after,[data-theme=dark] .homework-romaji-btn.penalty-applied:after,[data-theme=dark] .homework-romaji-btn:not(.penalty-applied):hover:after,[data-theme=dark] .homework-spanish-btn.penalty-applied:after,[data-theme=dark] .homework-spanish-btn:not(.penalty-applied):hover:after{background:#ed8936;color:var(--color-darker-gray)}[data-theme=dark] .homework-image-upload-area{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .homework-image-upload-area:hover{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05)}[data-theme=dark] .homework-image-upload-area.drag-over{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.1)}[data-theme=dark] .homework-upload-primary{color:var(--color-primary-text)}[data-theme=dark] .homework-upload-formats,[data-theme=dark] .homework-upload-secondary{color:var(--color-secondary-text)}[data-theme=dark] .homework-upload-preview img{box-shadow:0 4px 12px rgba(0,0,0,.3)}[data-theme=dark] .homework-image-error{background:rgba(220,53,69,.15);border-color:rgba(220,53,69,.4)}[data-theme=dark] .homework-image-loading{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .homework-loading-spinner{border-color:var(--color-border);border-top-color:var(--ghost-accent-color)}[data-theme=dark] .homework-image-loading p{color:var(--color-secondary-text)}[data-theme=dark] .image-analysis-section,[data-theme=dark] .image-correct-answer,[data-theme=dark] .image-errors-section,[data-theme=dark] .image-feedback-section{background:var(--dark-surface);border-color:var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.2)}[data-theme=dark] .image-analysis-section h4,[data-theme=dark] .image-correct-answer h4,[data-theme=dark] .image-errors-section h4,[data-theme=dark] .image-feedback-section h4{color:var(--color-primary-text)}[data-theme=dark] .image-errors-list li,[data-theme=dark] .image-feedback-content p{color:var(--color-secondary-text)}[data-theme=dark] .correct-answer-text{color:var(--color-primary-text)}[data-theme=dark] .correct-answer-image{box-shadow:0 4px 12px rgba(0,0,0,.3)}[data-theme=dark] .colored-sentence{background:var(--dark-surface)}[data-theme=dark] .colored-word.word-excellent{background:rgba(40,167,69,.2);border-color:rgba(40,167,69,.4)}[data-theme=dark] .colored-word.word-good{background:rgba(255,87,0,.2);border-color:rgba(255,87,0,.4)}[data-theme=dark] .colored-word.word-fair{background:rgba(255,193,7,.2);color:#ffc107;border-color:rgba(255,193,7,.4)}[data-theme=dark] .colored-word.word-poor{background:rgba(220,53,69,.2);border-color:rgba(220,53,69,.4)}[data-theme=dark] .colored-word.word-omitted{background:rgba(108,117,125,.2);border-color:rgba(108,117,125,.4)}[data-theme=dark] .analysis-legend{border-color:var(--color-border)}[data-theme=dark] .legend-item{color:var(--color-secondary-text)}[data-theme=dark] .image-score-display{background:rgba(255,87,0,.15)}[data-theme=dark] .homework-notebook-instructions h3{color:var(--color-primary-text)}[data-theme=dark] .homework-notebook-instructions p{color:var(--color-secondary-text)}[data-theme=dark] .notebook-grade-display{background:linear-gradient(135deg,rgba(14,165,233,.15),rgba(14,165,233,.1));border-color:rgba(14,165,233,.5)}[data-theme=dark] .notebook-grade-display.passing{background:linear-gradient(135deg,rgba(34,197,94,.15),rgba(34,197,94,.1));border-color:rgba(34,197,94,.5)}[data-theme=dark] .notebook-grade-display.failing{background:linear-gradient(135deg,rgba(249,115,22,.15),rgba(249,115,22,.1));border-color:rgba(249,115,22,.5)}[data-theme=dark] .notebook-grade-display .grade-value{color:var(--color-primary-text)}[data-theme=dark] .notebook-grade-display .grade-message{color:var(--color-secondary-text)}[data-theme=dark] .notebook-characters-section,[data-theme=dark] .notebook-feedback-section,[data-theme=dark] .notebook-positive-section,[data-theme=dark] .notebook-suggestions-section,[data-theme=dark] .notebook-writing-system-section{background:var(--dark-surface)}[data-theme=dark] .notebook-characters-section h4,[data-theme=dark] .notebook-feedback-section h4,[data-theme=dark] .notebook-format-errors h4,[data-theme=dark] .notebook-positive-section h4,[data-theme=dark] .notebook-suggestions-section h4,[data-theme=dark] .notebook-writing-system-section h4{color:var(--color-primary-text)}[data-theme=dark] .notebook-feedback-section p,[data-theme=dark] .notebook-format-errors li,[data-theme=dark] .notebook-positive-section li,[data-theme=dark] .notebook-suggestions-section li,[data-theme=dark] .notebook-writing-system-section p{color:var(--color-secondary-text)}[data-theme=dark] .notebook-writing-system-section .writing-recommendation{background:rgba(34,197,94,.15);color:#4ade80}[data-theme=dark] .notebook-format-errors{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3)}[data-theme=dark] .notebook-result .homework-back-btn{background:transparent;color:var(--color-secondary-text);border-color:var(--color-border)}[data-theme=dark] .notebook-result .homework-back-btn:hover{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .notebook-exercise-card h4{color:var(--color-primary-text)}[data-theme=dark] .notebook-instructions-section{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,87,0,.05));border-left-color:var(--ghost-accent-color)}[data-theme=dark] .instruction-japanese{color:var(--color-primary-text)}[data-theme=dark] .instruction-romaji,[data-theme=dark] .instruction-spanish{color:var(--color-secondary-text)}[data-theme=dark] .notebook-requirements-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-requirements-list li{background:var(--dark-surface-elevated);color:var(--color-primary-text);border-color:var(--color-border)}[data-theme=dark] .notebook-tasks-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-task-item{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .task-character{color:var(--color-primary-text)}[data-theme=dark] .task-hints,[data-theme=dark] .task-instruction{color:var(--color-secondary-text)}[data-theme=dark] .task-hints{border-top-color:var(--color-border)}[data-theme=dark] .notebook-tabs-section{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-tabs-section .tabs-header{border-bottom-color:var(--color-border)}[data-theme=dark] .notebook-tabs-section .tab-button{color:var(--color-secondary-text)}[data-theme=dark] .notebook-tabs-section .tab-button:hover{background:var(--dark-surface)}[data-theme=dark] .notebook-tabs-section .tab-button.active{color:var(--ghost-accent-color);background:rgba(217,164,67,.1)}[data-theme=dark] .notebook-scoring-section{background:linear-gradient(135deg,rgba(34,197,94,.1),rgba(34,197,94,.05));border-left-color:#22c55e}[data-theme=dark] .scoring-description{color:var(--color-secondary-text)}[data-theme=dark] .scoring-level{background:linear-gradient(135deg,rgba(255,215,0,.05),rgba(255,140,0,.05))}[data-theme=dark] .scoring-level.romaji{border-color:#718096}[data-theme=dark] .scoring-level.hiragana,[data-theme=dark] .scoring-level.katakana{border-color:#48bb78}[data-theme=dark] .scoring-level.kanji{border-color:#4299e1}[data-theme=dark] .level-system{color:var(--color-primary-text)}[data-theme=dark] .level-max-grade{background:rgba(217,164,67,.15);color:var(--ghost-accent-color)}[data-theme=dark] .level-example{color:var(--color-primary-text)}[data-theme=dark] .level-note{color:var(--color-secondary-text)}[data-theme=dark] .scoring-recommendation{background:var(--dark-surface-elevated);color:var(--color-primary-text);border-color:var(--color-border)}[data-theme=dark] .notebook-example-section{background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(59,130,246,.05));border-left-color:#3b82f6}[data-theme=dark] .example-description{color:var(--color-secondary-text)}[data-theme=dark] .example-option{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .example-option:hover{box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .example-option-header{border-bottom-color:var(--color-border)}[data-theme=dark] .option-system{color:var(--color-primary-text)}[data-theme=dark] .example-format,[data-theme=dark] .option-max-grade{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .example-note{background:var(--dark-surface-elevated);color:var(--color-secondary-text);border-color:var(--color-border)}[data-theme=dark] .notebook-criteria-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .criteria-list li{background:var(--dark-surface-elevated);color:var(--color-secondary-text);border-color:var(--color-border)}[data-theme=dark] .notebook-upload-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-upload-section>p{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .results-content{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .results-title{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .results-message{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .story-results-stats{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .stat-label{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .general-feedback-section{background:linear-gradient(135deg,rgba(34,197,94,.1),rgba(16,185,129,.1));border-color:rgba(34,197,94,.3)}[data-theme=dark] .notebook-results-container .general-feedback-section h4{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .general-feedback-content{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .report-section-title{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .report-achievement{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .report-achievement .achievement-icon{background:rgba(34,197,94,.2)}[data-theme=dark] .notebook-results-container .report-achievement .achievement-text span{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .report-recommendation{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .rec-icon{background:rgba(249,115,22,.2)}[data-theme=dark] .notebook-results-container .rec-text{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .sentence-analysis-section{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .sentence-analysis-section h4{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .colored-sentence{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .legend-item{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .toggle-details-btn{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .toggle-details-btn:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .notebook-results-container .toggle-details-btn.active{background:var(--dark-surface-elevated);border-color:var(--ghost-accent-color)}[data-theme=dark] .notebook-results-container .word-details-list{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .word-detail-item{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .word-japanese{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .word-suggestion{color:var(--color-secondary-text);border-top-color:var(--color-border)}[data-theme=dark] .notebook-results-container .recognized-text{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .recognized-text h4{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .recognized-content{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .writing-recommendation-box{background:rgba(34,197,94,.15);color:#4ade80}[data-theme=dark] .notebook-results-container .error-feedback{background:linear-gradient(135deg,rgba(220,53,69,.1),rgba(239,68,68,.1));border-color:rgba(220,53,69,.3)}[data-theme=dark] .notebook-results-container .error-feedback h4{color:#f87171}[data-theme=dark] .notebook-results-container .error-feedback li{color:var(--color-secondary-text);border-bottom-color:rgba(220,53,69,.15)}[data-theme=dark] .notebook-results-container .calligraphy-aspects .calligraphy-aspect{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .aspect-label{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .scoring-recommendation{background:var(--dark-surface);border-color:var(--color-border);color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .streak-item{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .streak-item .achievement-text span{color:var(--color-secondary-text)}[data-theme=dark] .homework-colored-sentence{background:var(--dark-surface)}[data-theme=dark] .notebook-results-container .homework-colored-sentence{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .homework-colored-word{color:var(--color-primary-text)}[data-theme=dark] .homework-colored-word.word-excellent{background:rgba(40,167,69,.2);color:#4ade80;border-color:rgba(40,167,69,.4)}[data-theme=dark] .homework-colored-word.word-good{background:rgba(255,193,7,.2);color:#fcd34d;border-color:rgba(255,193,7,.4)}[data-theme=dark] .homework-colored-word.word-fair{background:rgba(253,126,20,.2);color:#fb923c;border-color:rgba(253,126,20,.4)}[data-theme=dark] .homework-colored-word.word-needs-work,[data-theme=dark] .homework-colored-word.word-poor{background:rgba(239,68,68,.2);color:#f87171;border-color:rgba(239,68,68,.4)}[data-theme=dark] .homework-colored-word.word-blank{background:hsla(220,9%,46%,.2);color:#9ca3af;border-color:hsla(220,9%,46%,.4)}[data-theme=dark] .notebook-question-item{background:var(--dark-surface-elevated);border-color:var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.2),0 1px 3px rgba(0,0,0,.15)}[data-theme=dark] .notebook-question-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.25),0 2px 6px rgba(0,0,0,.2)}[data-theme=dark] .question-content,[data-theme=dark] .question-text{color:var(--color-primary-text)}[data-theme=dark] .question-hint{color:var(--color-secondary-text)}[data-theme=dark] .notebook-results-container .game-leaderboard{background:var(--dark-surface-elevated);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .game-leaderboard h3{color:var(--color-primary-text)}[data-theme=dark] .notebook-results-container .weekly-ranking{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));border-color:rgba(255,215,0,.3)}[data-theme=dark] .notebook-results-container .leaderboard-item{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .notebook-results-container .leaderboard-item:hover{background:var(--dark-surface-elevated)}[data-theme=dark] .notebook-results-container .leaderboard-item.current-user{background:linear-gradient(135deg,rgba(255,87,0,.15),rgba(255,140,0,.15));border-color:var(--ghost-accent-color)}[data-theme=dark] .notebook-results-container .player-name{color:var(--color-primary-text)}[data-theme=dark] .copy-user-id-btn{color:var(--ghost-accent-color)}[data-theme=dark] .copy-user-id-btn:hover{color:var(--ghost-accent-color-hover,#e64a00);background:rgba(255,87,0,.05)}[data-theme=dark] .copy-user-id-btn.copied{color:#28a745}[data-theme=dark] .copy-user-id-btn.copied:hover{color:#28a745;background:rgba(40,167,69,.05)}[data-theme=dark] .account-token-modal-overlay{background:rgba(0,0,0,.9)}[data-theme=dark] .account-token-modal{background:var(--dark-surface-elevated);box-shadow:0 6px 16px rgba(0,0,0,.5)}[data-theme=dark] .account-token-modal-header{border-bottom-color:var(--color-border)}[data-theme=dark] .account-token-modal-title{color:var(--color-primary-text)}[data-theme=dark] .account-token-modal-close{color:var(--color-secondary-text)}[data-theme=dark] .account-token-modal-close:hover{color:var(--color-primary-text);background:var(--dark-surface)}[data-theme=dark] .account-token-modal-error{border-color:rgba(220,53,69,.4);background:rgba(220,53,69,.2)}[data-theme=dark] .account-token-modal-footer{border-top-color:var(--color-border);background:var(--dark-surface)}[data-theme=dark] .token-expires-inline,[data-theme=dark] .token-intro-text,[data-theme=dark] .token-loading p{color:var(--color-secondary-text)}[data-theme=dark] .token-display-box{background:var(--dark-surface);border-color:var(--color-border)}[data-theme=dark] .token-value{background:var(--color-lighter-gray);color:var(--color-primary-text);border:1px solid var(--color-border)}[data-theme=dark] .token-action-btn{background:transparent;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}[data-theme=dark] .token-action-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}[data-theme=dark] .token-action-btn.copied{background:rgba(255,87,0,.15);border-color:var(--ghost-accent-color)}[data-theme=dark] .token-badge.active{background:rgba(40,167,69,.2);color:#28a745;border-color:rgba(40,167,69,.4)}[data-theme=dark] .token-badge.inactive{background:rgba(108,117,125,.2);color:#adb5bd;border-color:rgba(108,117,125,.4)}[data-theme=dark] .token-empty-title{color:var(--color-primary-text)}[data-theme=dark] .token-empty-text{color:var(--color-secondary-text)}[data-theme=dark] .token-revoke-btn{background:#dc3545;border-color:#dc3545;color:#fff}[data-theme=dark] .token-revoke-btn:hover{background:#c82333;border-color:#bd2130}[data-theme=dark] .token-generate-btn{background:var(--ghost-accent-color);color:#fff}.rss-subscribe-section{padding-bottom:6rem}.rss-subscribe-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,0.55fr);gap:calc(clamp(2.4rem,4vw,5.6rem));align-items:stretch;margin-top:3rem}.rss-subscribe-content{min-width:0}.rss-feed-card{padding:calc(clamp(2rem,3vw,3.2rem));background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 12px 32px rgba(24,24,24,.06)}.rss-feed-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.4rem;align-items:center}.rss-feed-icon{display:grid;width:48px;height:48px;place-items:center;color:#fff;background:var(--ghost-accent-color);border-radius:8px}.rss-feed-icon svg{width:24px;height:24px}.rss-feed-kicker{display:block;margin-bottom:.3rem;color:#805800;font-size:1.2rem;font-weight:700;line-height:1.2;text-transform:uppercase;letter-spacing:0}.rss-feed-heading h3{margin:0;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:2.4rem;line-height:1.2}.rss-feed-status{display:inline-flex;align-items:center;gap:.7rem;padding:.7rem 1rem;color:#236b3b;background:#e9f7ee;border-radius:999px;font-size:1.2rem;font-weight:700;white-space:nowrap}.rss-feed-status>span{width:7px;height:7px;background:#2f9e56;border-radius:50%}.rss-feed-description{max-width:62rem;margin:2rem 0 2.4rem;color:var(--color-secondary-text);font-size:1.6rem;line-height:1.6}.rss-feed-field{position:relative;padding:1.4rem;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:8px}.rss-feed-label{display:block;margin-bottom:.8rem;color:var(--color-secondary-text);font-size:1.2rem;font-weight:700}.rss-feed-value-wrapper{display:flex;gap:1rem;align-items:stretch;min-width:0}.rss-feed-value{display:flex;flex:1;min-width:0;align-items:center;padding:1rem 1.2rem;overflow:hidden;color:var(--color-primary-text);background:#fff;border:1px solid var(--color-border);border-radius:6px;font-family:var(--font-mono);font-size:1.3rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.rss-feed-value:hover{color:#805800;border-color:#805800;opacity:1}.rss-copy-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;min-width:11rem;min-height:4.6rem;align-items:center;justify-content:center;gap:.8rem;padding:.9rem 1.4rem;color:#fff;background-color:var(--ghost-accent-color);border:1px solid var(--ghost-accent-color);border-radius:6px;cursor:pointer;font-family:var(--font-sans);font-size:1.6rem;font-weight:600;line-height:1.3;transition:opacity .2s,background-color .2s}.rss-copy-btn:hover{opacity:.86}.rss-copy-btn:focus-visible,.rss-feed-value:focus-visible{outline:2px solid #805800;outline-offset:3px}.rss-copy-btn.is-copied{color:#fff;background:#236b3b;border-color:#236b3b}.rss-copy-btn svg{width:17px;height:17px}.rss-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:4.2rem 0 0;padding:0;list-style:none}.rss-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.2rem;padding:0 2rem;border-left:1px solid var(--color-border)}.rss-step:first-child{padding-left:0;border-left:0}.rss-step:last-child{padding-right:0}.rss-step-number{display:grid;width:30px;height:30px;place-items:center;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:50%;font-size:1.3rem;font-weight:800}.rss-step h3,.rss-step-number{color:var(--color-darker-gray)}.rss-step h3{margin:0 0 .5rem;font-family:var(--font-sans);font-size:1.6rem;line-height:1.35}.rss-step p{margin:0;color:var(--color-secondary-text);font-size:1.35rem;line-height:1.55}.rss-guide-image{position:relative;min-height:42rem;margin:0;overflow:hidden;background:#171717;border-radius:8px}.rss-guide-image:after{position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(12,12,12,.9));content:"";pointer-events:none}.rss-guide-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.rss-guide-image figcaption{position:absolute;z-index:1;right:2rem;bottom:2rem;left:2rem;color:#fff}.rss-guide-image figcaption span{display:block;margin-bottom:.4rem;color:#efbd59;font-size:1.2rem;font-weight:700;text-transform:uppercase;letter-spacing:0}.rss-guide-image figcaption strong{display:block;font-size:2rem;line-height:1.3}[data-theme=dark] .rss-feed-card{background:#202020;box-shadow:none}[data-theme=dark] .rss-feed-field,[data-theme=dark] .rss-step-number{background:#171717}[data-theme=dark] .rss-feed-value{background:#272727}[data-theme=dark] .rss-feed-status{color:#9be8b4;background:#173323}[data-theme=dark] .rss-feed-kicker,[data-theme=dark] .rss-feed-value:hover{color:#efbd59}[data-theme=dark] .rss-feed-value:hover{border-color:#efbd59}[data-theme=dark] .rss-copy-btn:focus-visible,[data-theme=dark] .rss-feed-value:focus-visible{outline-color:#efbd59}@media(max-width:991px){.rss-subscribe-layout{grid-template-columns:1fr}.rss-guide-image{min-height:auto;aspect-ratio:16/8}}@media(max-width:767px){.rss-subscribe-section{padding-bottom:4rem}.rss-subscribe-layout{margin-top:2rem}.rss-feed-heading{grid-template-columns:auto minmax(0,1fr)}.rss-feed-status{grid-column:1/-1;width:-moz-max-content;width:max-content}.rss-feed-heading h3{font-size:2rem}.rss-feed-value-wrapper{flex-direction:column}.rss-feed-value{min-height:4.2rem}.rss-copy-btn{width:100%;min-height:4.6rem}.rss-steps{grid-template-columns:1fr;margin-top:4.4rem}.rss-step,.rss-step:first-child,.rss-step:last-child{padding:1.8rem 0;border-top:1px solid var(--color-border);border-left:0}.rss-step:last-child{border-bottom:1px solid var(--color-border)}.rss-guide-image{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){.rss-copy-btn{transition:none}}.donation-template .mcp-steps{display:flex;flex-direction:column;gap:1.4rem}.donation-template .mcp-step{display:flex;align-items:flex-start;gap:1.2rem}.donation-template .mcp-step-number{width:28px;height:28px;border-radius:50%;background:var(--ghost-accent-color);color:#fff;font-size:1.3rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.donation-template .mcp-step-text{margin:0!important}.donation-step-text,.donation-template .mcp-step-text{font-size:1.5rem;line-height:1.8;color:var(--color-primary-text);padding-top:2px;flex:1;letter-spacing:normal}.donation-step-text{margin:0}.donation-button-wrapper{display:flex;justify-content:center;margin-top:2rem}.donation-button-wrapper a{text-decoration:none}.donations-feed-section{padding-top:4rem;padding-bottom:4rem}.donations-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.loading-spinner{width:32px;height:32px;border:1px solid var(--color-border);border-top-color:var(--ghost-accent-color);border-radius:50%;animation:interactiveSpin 1s linear infinite}.donations-carousel-wrapper{position:relative;height:180px;margin-top:3rem;overflow:hidden;border-radius:12px;background:transparent;border:none}.donations-carousel-wrapper:has(.single-row){height:90px}.donations-carousel-rows{position:relative;height:100%;display:flex;flex-direction:column;gap:1.2rem;padding:0}.donations-carousel-rows.single-row{justify-content:center;gap:0}.donation-carousel-row{position:relative;height:80px;overflow:hidden;display:flex;align-items:center}.donations-carousel-rows:not(.single-row) .donation-carousel-row{height:calc(50% - .6rem)}.donation-carousel-track{display:flex;gap:2rem;position:absolute;height:100%;align-items:center}.donations-carousel-rows:not(.no-animation) .donation-carousel-row:first-child .donation-carousel-track{animation:interactiveCarouselForward 60s linear infinite}.donations-carousel-rows:not(.no-animation) .donation-carousel-row:nth-child(2) .donation-carousel-track{animation:interactiveCarouselReverse 60s linear infinite}.donations-carousel-rows:not(.no-animation) .donation-carousel-row:nth-child(3) .donation-carousel-track{animation:interactiveCarouselForward 45s linear infinite}.donation-carousel-item{flex:0 0 auto;background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1rem 1.5rem;display:flex;align-items:center;white-space:nowrap;height:76px;position:relative;z-index:1;min-width:280px;max-width:400px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.donation-carousel-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.donation-carousel-item[data-position="1"]:hover{box-shadow:0 6px 16px rgba(255,215,0,.4)}.donation-carousel-item[data-position="2"]:hover{box-shadow:0 6px 16px hsla(0,0%,75.3%,.4)}.donation-carousel-item[data-position="3"]:hover{box-shadow:0 6px 16px rgba(205,127,50,.4)}.donations-carousel-wrapper:after,.donations-carousel-wrapper:before{content:"";position:absolute;top:0;bottom:0;width:100px;z-index:10;pointer-events:none}.donations-carousel-wrapper:before{left:0;background:linear-gradient(to right,var(--background-color,#fff) 0,var(--background-color,#fff) 10%,transparent 100%)}.donations-carousel-wrapper:after{right:0;background:linear-gradient(to left,var(--background-color,#fff) 0,var(--background-color,#fff) 10%,transparent 100%)}.donations-carousel-wrapper:has(.donations-empty):after,.donations-carousel-wrapper:has(.donations-empty):before,.donations-carousel-wrapper:has(.donations-error):after,.donations-carousel-wrapper:has(.donations-error):before{display:none}.donation-carousel-row:hover .donation-carousel-track{animation-play-state:paused}.donation-carousel-content{display:flex;flex-direction:column;gap:.4rem;width:100%;min-width:0}.donation-carousel-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%}.donation-carousel-name{font-weight:600;font-size:1.5rem;color:var(--color-darker-gray);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.donation-carousel-amount{font-weight:700;color:var(--ghost-accent-color);font-size:1.5rem;flex-shrink:0;white-space:nowrap}.donation-carousel-message{font-size:1.3rem;color:var(--color-secondary-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.donations-carousel-rows.no-animation{display:flex;align-items:center;justify-content:center}.donations-carousel-rows.no-animation .donation-carousel-row{overflow:visible;width:100%;display:flex;justify-content:center}.donations-carousel-rows.no-animation .donation-carousel-track{position:static;display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;animation:none}.donations-carousel-rows.no-animation .donation-carousel-item{flex:0 0 auto;max-width:400px}.donations-ranking{margin:2rem 0 3rem;min-height:40px;position:relative}.ranking-loading{position:absolute;inset:0}.ranking-loading,.ranking-minimal{display:flex;align-items:center;justify-content:center}.ranking-minimal{gap:2rem;flex-wrap:wrap}.ranking-item{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.6rem;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.ranking-item:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.ranking-position{font-size:1.8rem;line-height:1}.ranking-name{font-weight:600;font-size:1.4rem;color:var(--color-darker-gray)}.ranking-amount{font-weight:700;font-size:1.4rem;color:var(--ghost-accent-color)}.donations-empty,.donations-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--color-secondary-text);font-size:1.8rem}.donations-content{min-height:100px}.donation-thank-you{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:center;padding-top:20px;padding-bottom:20px}.donation-thank-you-text{flex:2 1 300px}.donation-thank-you-text.gh-content,.donation-thank-you-text.gh-content p:first-child{margin-top:10px}.donation-thank-you-image{flex:1 1 260px;max-width:400px}.donation-thank-you-image img{width:100%;height:auto;border-radius:12px;border:1px solid var(--color-border)}.donation-actions{display:flex;gap:1rem;flex-wrap:wrap}.donations-card{display:flex;flex-direction:column}.donations-header-flex{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%}.ranking-date{font-size:1.2rem}@media(max-width:767px){.donation-thank-you{flex-direction:column}.donation-thank-you-image,.donation-thank-you-text{max-width:100%}.donation-template .mcp-steps{gap:1.2rem}.donation-template .mcp-step{gap:.8rem}.donation-template .mcp-step-number{width:24px;height:24px;font-size:1.2rem;flex-shrink:0}.donation-step-text,.donation-template .mcp-step-text{font-size:1.4rem}.donations-carousel-wrapper{height:160px;margin-top:2rem;overflow:hidden}.donations-carousel-wrapper:has(.single-row){height:80px}.donations-carousel-wrapper:has(.no-animation){height:auto;min-height:160px;max-height:none;overflow:visible}.donation-carousel-row{height:68px;overflow:hidden}.donations-carousel-rows{gap:.8rem;padding:0;height:100%}.donations-carousel-rows.single-row{height:100%;justify-content:center}.donations-carousel-rows.no-animation{height:auto;min-height:160px;overflow:visible}.donations-carousel-rows.no-animation .donation-carousel-row{height:auto;overflow:visible}.donations-carousel-rows.no-animation .donation-carousel-track{justify-content:center;max-width:100%;overflow:visible;height:auto}.donation-carousel-item{padding:.8rem 1.2rem;height:68px;min-width:240px;max-width:320px}.donation-carousel-name{max-width:150px}.donations-carousel-wrapper:after,.donations-carousel-wrapper:before{width:50px}.donations-carousel-wrapper:has(.no-animation):after,.donations-carousel-wrapper:has(.no-animation):before{display:none}.donations-carousel-rows:not(.no-animation) .donation-carousel-row:first-child .donation-carousel-track,.donations-carousel-rows:not(.no-animation) .donation-carousel-row:nth-child(2) .donation-carousel-track{animation-duration:45s}.donations-ranking{margin:1.5rem 0 2rem}.ranking-minimal{flex-direction:column;gap:1rem}.ranking-item{width:100%;max-width:280px;justify-content:center}.ranking-position{font-size:1.6rem}.ranking-amount,.ranking-name{font-size:1.3rem}}.contact-form-wrapper{max-width:600px;margin:0 auto}.contact-form label{display:flex;flex-direction:column;font-size:1.6rem;margin-bottom:2rem}.contact-form input,.contact-form select,.contact-form textarea{margin-top:.8rem;padding:1.2rem 1.6rem;font-size:1.6rem;border:1px solid var(--color-border);border-radius:12px;background:var(--background-color);color:var(--color-primary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,border-color .2s}.contact-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 1.2rem center;background-size:2rem;padding-right:4rem;cursor:pointer}.contact-form input:hover,.contact-form select:hover,.contact-form textarea:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--ghost-accent-color);outline:none;box-shadow:0 6px 16px rgba(255,87,0,.1)}.contact-form textarea{resize:vertical;min-height:150px;max-height:300px}.h-captcha{display:flex;justify-content:center;margin:2rem auto}.contact-form-actions{display:flex;flex-direction:column;align-items:center;margin-top:2rem}.contact-form .gh-btn{padding:8px 16px;width:auto;transition:background-color .2s,opacity .2s}.contact-form .gh-btn:hover{opacity:.9}.contact-form .gh-primary-btn{color:#fff;background-color:var(--ghost-accent-color,#000);border:1px solid var(--ghost-accent-color,#000)}.contact-form .gh-primary-btn:hover{opacity:.9}.gh-section-contact{padding:0}.contact-form.was-validated :invalid{border-color:#dc3545}.contact-result{margin-top:1.2rem;font-size:1.6rem;text-align:center;transition:opacity .2s}.contact-result.loading{color:var(--color-secondary-text)}@media(max-width:767px){.contact-form-wrapper{margin-left:0}}.error-template{text-align:center;min-height:50vh;display:flex;flex-direction:column;justify-content:center}.error-template .gh-article-title{font-size:calc(clamp(3rem,2.2rem + 2vw,5rem));color:var(--color-darker-gray);text-align:center;margin:0 auto 1rem}.error-template .gh-article-excerpt{font-size:calc(clamp(1.8rem,.36vw + 1.67rem,2.1rem));color:var(--color-secondary-text);max-width:600px;margin:2rem auto 0;text-align:center}.error-content{max-width:600px;margin:0 auto}.error-content p{font-size:1.8rem;line-height:1.6;color:var(--color-secondary-text);margin-bottom:2rem}.error-content h3{margin-top:3rem;margin-bottom:1.5rem;font-size:2.4rem;font-weight:700;color:var(--color-darker-gray)}.error-content ul{text-align:left;margin-bottom:3rem;font-size:1.7rem;line-height:1.8;color:var(--color-secondary-text)}.error-content ul li{margin-bottom:.8rem}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin:4rem 0 2rem}.error-actions .gh-btn{min-width:150px;font-weight:600;border-radius:12px;font-size:1.6rem;text-decoration:none;transition:opacity .2s,background .2s;padding:8px 16px}.error-actions .gh-primary-btn{color:#fff;background-color:var(--ghost-accent-color);border:1px solid var(--ghost-accent-color)}.error-actions .gh-primary-btn:hover{opacity:.9}.search-trigger-error{cursor:pointer}.error-image{width:120px;height:120px;margin:0 auto 2rem;display:block}@media(max-width:767px){.error-template{min-height:40vh}.error-actions{flex-direction:column;align-items:center}.error-actions .gh-btn{width:100%;max-width:300px}.error-content ul{padding-left:20px}.error-image{width:80px;height:80px;margin-bottom:1.5rem}}.study-template{--study-content-width:100%;--study-soft-accent:color-mix(in srgb, var(--ghost-accent-color) 7%, transparent);--study-resource-surface:color-mix(in srgb, #fff 97%, var(--color-primary-text) 3%)}[data-theme=dark] .study-template{--study-resource-surface:var(--dark-surface)}.study-template .gh-about-primary{text-wrap:balance}.study-template .gh-about-secondary{max-width:62ch}.study-template .gh-about-image{border:1px solid var(--color-border);border-radius:8px;box-shadow:0 16px 40px rgba(0,0,0,.08)}.study-template .gh-main{padding-top:4.8rem}.study-template .featured-section{padding:0}.study-template .featured-section .section-header{max-width:var(--study-content-width);margin:0 auto 3.2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.study-template .featured-section .section-title{margin:0;font-size:3.6rem;line-height:1.2;letter-spacing:0}.study-template .study-filters{display:flex;flex-wrap:wrap;justify-content:center;min-height:4rem;max-width:var(--study-content-width);margin:2rem auto 3.2rem;padding:0;gap:1rem}.study-template .study-filters:empty{visibility:hidden}.study-template .study-filter{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;position:relative;align-items:center;padding:8px 16px;gap:.5rem;border:1px solid var(--color-border);border-radius:12px;background:transparent;color:var(--color-primary-text);font-family:inherit;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s}.study-template .study-filter:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.study-template .study-filter:active{transform:translateY(0)}.study-template .study-filter[aria-pressed=true]{border-color:var(--color-border);background:#fff;color:var(--color-primary-text)}.study-template .study-filter[aria-pressed=false]{opacity:.5;color:var(--color-secondary-text)}.study-template .study-filter[aria-pressed=false]:hover{opacity:.7}.study-template .study-filter-icon{display:inline-flex;align-items:center;justify-content:center;width:1.8rem;font-size:1.6rem;line-height:1}.study-template .study-filter-label{font-size:1.4rem;font-weight:500}[data-theme=dark] .study-template .study-filter{border-color:var(--color-border);color:var(--color-primary-text)}[data-theme=dark] .study-template .study-filter:hover,[data-theme=dark] .study-template .study-filter[aria-pressed=true]{background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] .study-template .study-filter[aria-pressed=false]{background:var(--dark-surface);color:var(--color-secondary-text)}[data-theme=dark] .study-template .study-filter[aria-pressed=false]:hover{background:var(--dark-surface-elevated)}.study-template .gh-content-study{width:100%;max-width:var(--study-content-width)!important;margin:0 auto;font-size:1.9rem}html.is-study-loading .study-template .featured-section>.gh-inner{visibility:hidden}.study-template .gh-content-study[data-enhanced=true]{max-width:var(--study-content-width)!important}.study-template .study-resource{position:relative;margin:0 0 2.4rem;padding:3.2rem;border:1px solid var(--color-border);border-radius:8px;background:var(--study-resource-surface);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.study-template .study-resource[hidden]{display:none}.study-template .study-resource:first-child{padding-top:3.2rem}.study-template .study-resource:last-child{margin-bottom:0;padding-bottom:3.2rem}.study-template .gh-content.gh-content-study>h2{position:relative;margin:0 0 1.6rem;font-size:3.2rem;line-height:1.25;letter-spacing:0}.study-template .study-resource>h2{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;margin:0;padding:0;gap:.8rem 2rem;font-size:3.4rem;line-height:1.2;letter-spacing:0;scroll-margin-top:10rem}.study-template .study-resource-kicker{grid-column:1/-1;color:var(--ghost-accent-color);font-size:1.3rem;font-weight:800;line-height:1.3;text-transform:uppercase}.study-template .study-resource-name{min-width:0;text-wrap:balance}.study-template .study-resource-badges{display:flex;align-self:center;justify-content:flex-end;flex-wrap:wrap;gap:.8rem}.study-template .study-resource-platform{padding:.7rem 1rem;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-secondary-text);font-size:1.3rem;font-weight:700;line-height:1;white-space:nowrap}[data-theme=dark] .study-template .study-resource-platform{background:var(--background-color,#121212)}.study-template .study-resource-details{max-width:72ch;margin:1.2rem 0 0!important}.study-template .study-resource-detail{display:flex;align-items:baseline;max-width:none!important;margin:0!important;gap:.8rem;line-height:1.5!important}.study-template .study-resource-detail+.study-resource-detail{margin-top:.3rem!important}.study-template .study-resource-detail-label{flex:0 0 7.2rem;color:var(--color-primary-text);font-size:1.2rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.study-template .study-resource-detail-value{color:var(--color-secondary-text);font-size:1.5rem;font-weight:600}.study-template .gh-content-study>p,.study-template .study-resource>p{max-width:72ch;margin-top:2.4rem;line-height:1.7;letter-spacing:0}.study-template .gh-content-study>h2+p,.study-template .study-resource>h2+p{margin-top:1.4rem;color:var(--color-secondary-text);font-size:2.1rem;font-style:italic}.study-template .gh-content-study a{color:var(--ghost-accent-color);text-decoration-thickness:1px;text-underline-offset:.16em;transition:opacity .2s}.study-template .gh-content-study a:hover{opacity:.8}.study-template .gh-content-study>ol,.study-template .gh-content-study>ul,.study-template .study-resource>ol,.study-template .study-resource>ul{margin:2.4rem 0 0;padding:2rem 2.4rem 2rem 4.8rem;border-left:3px solid var(--ghost-accent-color);border-radius:0 8px 8px 0;background:var(--study-soft-accent);line-height:1.65}.study-template .gh-content-study>ul,.study-template .study-resource>ul{list-style:disc}.study-template .gh-content-study>:is(ul,ol) li+li,.study-template .study-resource>:is(ul,ol) li+li{margin-top:.8rem}.study-template .gh-content-study>:is(ul,ol) li::marker,.study-template .study-resource>:is(ul,ol) li::marker{color:var(--ghost-accent-color)}.study-template .study-resource-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,36rem),1fr));margin-top:2.8rem;gap:1.2rem}.study-template .study-resource-links>.kg-bookmark-card{min-width:0;margin:0}.study-template .study-resource-links .kg-bookmark-container{height:100%}.study-template .gh-content-study>.kg-bookmark-card{margin:2.4rem 0 0}.study-template .gh-content-study>.kg-bookmark-card+.kg-bookmark-card{margin-top:1.2rem}.study-template .gh-content-study .kg-bookmark-container{overflow:hidden;border-radius:8px!important}.study-template .gh-content-study>.kg-bookmark-card+p,.study-template .study-resource-links+p{margin-top:3.2rem}.study-template .gh-content-study>hr{width:100%;height:9px;margin:6.4rem auto;border:0;background:radial-gradient(circle,var(--ghost-accent-color) 0 4px,transparent 4.5px),linear-gradient(to right,transparent,var(--color-border) 16%,var(--color-border) 84%,transparent) 50%/100% 1px no-repeat}@media(max-width:767px){.study-template .gh-about-content,.study-template .gh-about-content-inner,.study-template .gh-about-secondary{text-align:left}.study-template .gh-about-secondary{font-size:1.8rem;line-height:1.6}.study-template .gh-about-image{box-shadow:0 10px 24px rgba(0,0,0,.08)}.study-template .gh-main{padding-top:3.6rem}.study-template .featured-section .section-header{margin-bottom:2.8rem}.study-template .featured-section .section-title{font-size:3rem}.study-template .study-filters{min-height:3.5rem;margin:1.5rem auto 2.8rem;gap:.8rem}.study-template .study-filter{padding:.6rem 1.2rem;font-size:1.3rem}.study-template .study-filter-icon{width:1.6rem;font-size:1.4rem}.study-template .study-filter-label{font-size:1.3rem}.study-template .gh-content-study{font-size:1.8rem}.study-template .study-resource{margin-bottom:1.6rem;padding:2rem}.study-template .study-resource:first-child{padding-top:2rem}.study-template .study-resource:last-child{padding-bottom:2rem}.study-template .study-resource>h2{grid-template-columns:1fr;font-size:2.8rem;gap:.8rem}.study-template .study-resource-badges{justify-content:flex-start}.study-template .gh-content.gh-content-study>h2{font-size:2.6rem}.study-template .gh-content-study>h2+p,.study-template .study-resource>h2+p{font-size:1.9rem}.study-template .study-resource-detail{flex-direction:column;align-items:flex-start;gap:.3rem}.study-template .study-resource-detail-label{flex-basis:auto}.study-template .study-resource-links .kg-bookmark-container{flex-direction:column-reverse}.study-template .study-resource-links .kg-bookmark-content{width:100%;min-width:0;flex:none}.study-template .study-resource-links .kg-bookmark-thumbnail{width:100%;min-width:0;height:auto;aspect-ratio:16/9;flex:none}.study-template .study-resource-links .kg-bookmark-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.study-template .gh-content-study>ol,.study-template .gh-content-study>ul,.study-template .study-resource>ol,.study-template .study-resource>ul{padding:1.8rem 1.8rem 1.8rem 4rem}.study-template .gh-content-study>hr{margin:4.8rem auto}}@media(prefers-reduced-motion:reduce){.study-template .study-filter{transition:none}}.newsletter-signup{text-align:center;position:relative}.newsletter-image{width:100px;height:auto;margin:3rem auto -.5rem;display:block;position:relative;z-index:10}.newsletter-form-container{position:relative;z-index:1;background:transparent;max-width:600px;margin:0 auto}.newsletter-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 .8rem}.newsletter-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0}.custom-newsletter-form{width:100%}.newsletter-input-group{display:flex;gap:1rem;max-width:450px;height:44px;margin:0 auto}.newsletter-email-input{flex:1;min-width:0;min-height:44px;padding:8px 16px;font-size:1.6rem;border:1px solid var(--color-border);border-radius:12px;background:var(--background-color);color:var(--color-primary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,border-color .2s;cursor:pointer}.newsletter-email-input:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.newsletter-email-input::-moz-placeholder{color:var(--color-secondary-text);opacity:1}.newsletter-email-input::placeholder{color:var(--color-secondary-text);opacity:1}.newsletter-email-input:focus{outline:none;border-color:var(--ghost-accent-color);box-shadow:0 6px 16px rgba(255,87,0,.1)}.newsletter-submit-btn{min-height:44px;padding:8px 16px;font-size:1.6rem;font-weight:600;background:var(--ghost-accent-color);color:#241b0b;border:none;border-radius:12px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,opacity .2s;white-space:nowrap}.newsletter-submit-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.newsletter-submit-btn:hover:not(:disabled){opacity:.9}.newsletter-submit-btn:disabled{opacity:.6;cursor:not-allowed}.newsletter-submit-btn.loading{position:relative;color:transparent}.newsletter-submit-btn.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid #fff;border-radius:50%;border-top-color:transparent;animation:newsletter-spin 1s linear infinite}@keyframes newsletter-spin{to{transform:rotate(1turn)}}.newsletter-message{margin-top:1.5rem;font-size:1.4rem;text-align:center;min-height:20px}.newsletter-message.success{color:var(--color-level-green,#18752d)}.newsletter-message.error{color:var(--color-level-red,#a62d39)}@media(max-width:767px){.newsletter-input-group{flex-direction:column;gap:1.2rem;height:auto}.newsletter-email-input,.newsletter-submit-btn{width:100%}.newsletter-title{font-size:2rem}.newsletter-description{font-size:1.4rem}}.author-avatar{width:260px;height:260px;-o-object-fit:cover;object-fit:cover;border-radius:12px;border:1px solid var(--color-border);flex-shrink:0}.author-side-layout .gh-about{margin-top:48px}.author-side-layout .gh-about-inner{display:flex;flex-direction:column;align-items:center;gap:2rem;text-align:center}.author-side-layout .gh-about-content{width:100%;max-width:720px}.author-side-layout .gh-about-content-inner{display:flex;flex-direction:column;align-items:center}.author-side-layout .author-meta-row{justify-content:center}.author-meta-row{display:flex;align-items:center;gap:1.2rem;margin-top:1rem;flex-wrap:wrap}.author-location{display:inline-flex;align-items:center;gap:.4rem}.author-location svg{width:16px;height:16px;flex-shrink:0;fill:currentColor;color:currentColor}.author-social{margin-left:.8rem;display:flex;gap:.8rem}.author-social-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:12px;transition:opacity .2s}.author-social-link:hover{opacity:.75}.author-social-link svg{width:20px;height:20px;color:currentColor;fill:currentColor}@media(max-width:767px){.author-avatar{width:100%;max-width:200px;height:auto;aspect-ratio:1}.writing-meta{display:flex;flex-wrap:wrap;gap:.8rem;font-size:1.4rem;color:var(--color-secondary-text);align-items:center}}.ai-agent-template .gh-section{padding:5rem 0}.ai-agent-template .ai-platforms{padding-top:0}.ai-section-intro{max-width:72rem;margin:2.4rem 0 3.2rem;color:var(--color-secondary-text);font-size:1.8rem;line-height:1.6}.ai-platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.ai-platform-card{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 10px 28px rgba(24,24,24,.05);transition:border-color .25s,box-shadow .25s}.ai-platform-card:hover{border-color:rgba(214,159,54,.55);box-shadow:0 16px 36px rgba(24,24,24,.1)}.ai-platform-link{display:flex;height:100%;flex-direction:column;color:inherit;text-decoration:none}.ai-platform-link:hover{opacity:1}.ai-platform-link:focus-visible{outline:2px solid var(--ghost-accent-color);outline-offset:-4px}.ai-platform-image{aspect-ratio:16/10;margin:0;overflow:hidden;background:var(--color-lighter-gray);border-bottom:1px solid var(--color-border)}.ai-platform-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ai-platform-content{display:flex;flex:1;flex-direction:column;padding:2rem}.ai-platform-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.ai-platform-meta>span:first-child{color:#805800;font-size:1.15rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.ai-status-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.5rem .8rem;color:#236b3b;background:#e9f7ee;border-radius:999px;font-size:1.1rem;font-weight:700;white-space:nowrap}.ai-status-badge>span{width:6px;height:6px;background:#2f9e56;border-radius:50%}.ai-platform-content h3{margin:0 0 .8rem;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:2.3rem;line-height:1.25}.ai-platform-content p{margin:0;color:var(--color-secondary-text);font-size:1.55rem;line-height:1.55}.ai-platform-action{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:auto;padding-top:2rem;color:var(--color-primary-text);font-size:1.4rem;font-weight:750}.ai-platform-action svg{width:16px;height:16px}.ai-capabilities{padding-top:6rem!important}.ai-capability-overview{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin:2.4rem 0 1rem}.ai-capability-overview>p{max-width:64rem;margin:0;color:var(--color-secondary-text);font-size:1.6rem;line-height:1.6}.ai-availability{display:flex;flex-shrink:0;gap:.8rem}.ai-availability>span{display:inline-flex;align-items:center;gap:.7rem;padding:.7rem 1rem;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:999px;color:var(--color-secondary-text);font-size:1.2rem;font-weight:700;white-space:nowrap}.ai-availability>span>span{width:7px;height:7px;border-radius:50%}.ai-availability .is-available>span{background:#2f9e56}.ai-capability-group{display:grid;grid-template-columns:minmax(210px,0.32fr) minmax(0,0.68fr);gap:calc(clamp(3rem,6vw,8rem));padding:3.6rem 0}.ai-capability-group+.ai-capability-group{border-top:1px solid var(--color-border)}.ai-capability-index{display:block;margin-bottom:1.2rem;color:#805800;font-size:1.2rem;font-weight:800}.ai-capability-heading h3{margin:0 0 .8rem;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:2.2rem;line-height:1.25}.ai-capability-heading p{max-width:32rem;margin:0;color:var(--color-secondary-text);font-size:1.4rem;line-height:1.55}.ai-capability-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem 3.2rem;margin:0;padding:0;list-style:none}.ai-capability-list li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:1.1rem;align-items:start}.ai-capability-icon{display:grid;width:26px;height:26px;place-items:center;color:#287c45;background:#e9f7ee;border-radius:50%}.ai-capability-icon svg{width:14px;height:14px}.ai-capability-list li div>span,.ai-capability-list strong{display:block}.ai-capability-list strong{margin-bottom:.4rem;color:var(--color-darker-gray);font-size:1.55rem;line-height:1.35}.ai-capability-list li div>span{color:var(--color-secondary-text);font-size:1.35rem;line-height:1.5}.ai-agent-cta{width:calc(100% + var(--gap) + var(--gap));margin-top:4rem;margin-left:calc(0px - var(--gap));padding:5rem var(--gap)!important;color:var(--color-primary-text);background:linear-gradient(90deg,#f7f3eb,#f7f3eb 66%,#ead9b8);border-top:1px solid #dfcfaf;border-bottom:1px solid #dfcfaf}.ai-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto 17rem;align-items:center;gap:3rem}.ai-cta-copy{max-width:70rem}.ai-cta-kicker{display:block;margin-bottom:1rem;color:#805800;font-size:1.2rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.ai-cta-copy h2{margin:0 0 1.2rem;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:3.6rem;line-height:1.15}.ai-cta-copy p{max-width:62rem;margin:0;color:var(--color-secondary-text);font-size:1.7rem;line-height:1.6}.ai-cta-actions{display:flex;flex-shrink:0;gap:1rem}.ai-cta-actions .gh-btn{display:inline-flex;min-height:4.6rem;align-items:center;justify-content:center;gap:.8rem;padding:1rem 1.6rem;border:1px solid transparent;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);font-family:var(--font-sans);font-size:1.6rem;font-weight:600;line-height:1.3;text-decoration:none;transition:none}.ai-cta-actions .gh-btn:active,.ai-cta-actions .gh-btn:hover{opacity:1;transform:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.ai-cta-primary,.ai-cta-primary:active,.ai-cta-primary:hover{color:#fff;background:var(--ghost-accent-color)}.ai-cta-secondary,.ai-cta-secondary:active,.ai-cta-secondary:hover{color:var(--color-primary-text);background:transparent;border-color:var(--color-border)!important}.ai-cta-secondary svg{width:16px;height:16px}.ai-cta-mascot{align-self:end;width:17rem;margin:-2rem 0 -5rem}.ai-cta-mascot img{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 16px rgba(74,50,16,.18))}[data-theme=dark] .ai-platform-card{background:var(--dark-surface);box-shadow:none}[data-theme=dark] .ai-platform-image{background:var(--dark-surface-elevated)}[data-theme=dark] .ai-status-badge{color:#9be8b4;background:#173323}[data-theme=dark] .ai-capability-index,[data-theme=dark] .ai-platform-meta>span:first-child{color:#efbd59}[data-theme=dark] .ai-capability-icon{color:#9be8b4;background:#173323}[data-theme=dark] .ai-agent-cta{background:linear-gradient(90deg,#24211c,#24211c 66%,#382c1c);border-color:#554727}[data-theme=dark] .ai-cta-kicker{color:#efbd59}[data-theme=dark] .ai-cta-copy h2{color:#fff}[data-theme=dark] .ai-cta-copy p{color:hsla(0,0%,100%,.72)}[data-theme=dark] .ai-cta-primary,[data-theme=dark] .ai-cta-primary:active,[data-theme=dark] .ai-cta-primary:hover{color:#fff!important;background:var(--ghost-accent-color)}[data-theme=dark] .ai-cta-secondary,[data-theme=dark] .ai-cta-secondary:active,[data-theme=dark] .ai-cta-secondary:hover{color:var(--color-primary-text);background:transparent;border-color:var(--color-border)!important}@media(max-width:1100px){.ai-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-platform-card:last-child{grid-column:1/-1}.ai-platform-card:last-child .ai-platform-link{display:grid;grid-template-columns:minmax(260px,0.8fr) minmax(0,1.2fr)}.ai-platform-card:last-child .ai-platform-image{height:100%;aspect-ratio:auto;border-right:1px solid var(--color-border);border-bottom:0}.ai-cta-inner{grid-template-columns:minmax(0,1fr) 15rem;align-items:start}.ai-cta-actions{grid-column:1;flex-wrap:wrap}.ai-cta-mascot{grid-row:1/span 2;grid-column:2;width:15rem}}@media(max-width:900px){.ai-capability-overview{align-items:flex-start;flex-direction:column}.ai-capability-group{grid-template-columns:1fr;gap:2.6rem}.ai-capability-heading p{max-width:58rem}}@media(max-width:767px){.ai-agent-template .gh-section{padding:3.5rem 0}.ai-section-intro{margin:2rem 0 2.4rem;font-size:1.6rem}.ai-platform-grid{grid-template-columns:1fr}.ai-platform-card:last-child{grid-column:auto}.ai-platform-card:last-child .ai-platform-link{display:flex}.ai-platform-card:last-child .ai-platform-image{height:auto;aspect-ratio:16/10;border-right:0;border-bottom:1px solid var(--color-border)}.ai-capabilities{padding-top:4.5rem!important}.ai-availability{flex-wrap:wrap}.ai-capability-group{padding:3rem 0}.ai-capability-list{grid-template-columns:1fr;gap:2.2rem}.ai-agent-cta{margin-top:2rem;padding:4.5rem var(--gap)!important}.ai-cta-copy h2{font-size:2.8rem}.ai-cta-actions{grid-column:auto;width:100%;flex-direction:column}.ai-cta-actions .gh-btn{width:100%}.ai-cta-inner{grid-template-columns:1fr}.ai-cta-mascot{grid-row:auto;grid-column:auto;width:12rem;margin:0 auto -4.5rem}}@media(prefers-reduced-motion:reduce){.ai-platform-card{transition:none}}.community-container{min-height:400px;margin-top:3rem;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;scroll-margin-top:2rem}.community-container.placeholder-state,.community-container.transitioning{background:var(--color-lighter-gray,#f8f8f8);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-container.placeholder-state:hover,.community-container.transitioning:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-container.has-content:not(.transitioning){display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.community-placeholder{display:flex;flex-direction:column;align-items:center;gap:1.5rem;color:var(--color-secondary-text)}.community-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:700}.community-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.community-placeholder-icon.community-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.community-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.community-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.community-placeholder-buttons{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.community-user-section{margin-bottom:4rem}.user-avatar-wrapper{display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.user-avatar{width:100px;height:100px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-border)}.user-info{text-align:center}.user-name{font-size:2.4rem;font-weight:700;margin-bottom:.5rem;color:var(--color-darker-gray)}.user-meta{font-size:1.4rem;color:var(--color-secondary-text)}.user-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.stats-card{text-align:center}.stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-color:var(--ghost-accent-color)}.community-stats-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2.5rem;display:flex;align-items:center;gap:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-stats-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-color:var(--ghost-accent-color)}.community-sections{margin-top:3rem;width:100%}.community-section{margin-bottom:5rem;width:100%}.communities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;width:100%;max-width:1200px;margin:3rem auto 0}.community-card{background:#fff;border-radius:12px;overflow:hidden;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column;cursor:pointer;transform-origin:center center;width:100%}.community-card.joined{border-color:var(--ghost-accent-color)}.community-card.joined:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.community-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-members{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-secondary-text);font-size:1.4rem}.community-members-icon{font-size:1.8rem;justify-content:center}.community-members-icon,.community-members-text{display:inline-flex;align-items:center}.community-action-btn{padding:.4rem 2rem;border-radius:12px;font-size:1.4rem;font-weight:600;border:none;cursor:pointer;transition:opacity .2s,background .2s,color .2s,border-color .2s;flex-shrink:0;min-width:100px;text-align:center}.community-action-btn.join{background:var(--ghost-accent-color);color:#fff}.community-action-btn.join:hover{opacity:.9}.community-action-btn.joined{background:transparent;color:var(--ghost-accent-color);border:1px solid var(--ghost-accent-color);transition:background .2s,color .2s,border-color .2s}.community-action-btn.leave-hover{background:#dc3545;color:#fff;border-color:#dc3545}.community-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem;backdrop-filter:blur(4px)}.community-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);border:1px solid var(--color-border)}.community-modal-header{display:flex;align-items:center;justify-content:space-between;padding:2rem;border-bottom:1px solid var(--color-border)}.community-modal-title{font-size:2rem;font-weight:700;color:var(--color-darker-gray);margin:0}.community-modal-close{background:none;border:none;cursor:pointer;padding:.8rem;color:var(--color-secondary-text);transition:background .2s,color .2s;border-radius:12px;display:flex;align-items:center;justify-content:center}.community-modal-close:hover{background:var(--color-lighter-gray);color:var(--color-darker-gray)}.community-modal-body{padding:2rem;overflow-y:auto;flex:1}.community-modal-description{font-size:1.6rem;color:var(--color-secondary-text);line-height:1.5;margin:0 0 2rem}.community-upload-area{position:relative;margin-bottom:2rem}.community-file-input{position:absolute;opacity:0;width:0;height:0}.community-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;border:2px dashed var(--color-border);border-radius:12px;background:var(--color-lighter-gray);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-upload-label:hover{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05);box-shadow:0 6px 16px rgba(255,87,0,.1)}.community-upload-area.drag-over .community-upload-label{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.1)}.community-upload-icon{font-size:4rem;opacity:.5}.community-upload-text{display:flex;flex-direction:column;align-items:center;gap:.5rem}.community-upload-primary{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.community-upload-secondary{font-size:1.4rem;color:var(--color-secondary-text)}.community-upload-formats{font-size:1.2rem;color:var(--color-secondary-text);opacity:.7}.community-upload-preview{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-upload-preview:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-upload-preview img{width:100%;height:auto;max-height:300px;-o-object-fit:fill;object-fit:fill;display:block;background:var(--color-lighter-gray)}.community-upload-preview .preview-video-demo{max-height:300px;width:100%;border-radius:12px;display:block;-o-object-fit:contain;object-fit:contain}.community-remove-image{position:absolute;top:1rem;right:1rem;background:rgba(0,0,0,.7);color:#fff;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.6rem;transition:background .2s,transform .2s}.community-remove-image:hover{background:rgba(0,0,0,.9);transform:scale(1.1)}.community-modal-error{padding:1rem 1.5rem;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:12px;color:#dc3545;font-size:1.4rem;margin-bottom:1.5rem}.community-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:2rem;border-top:1px solid var(--color-border);background:var(--color-lighter-gray)}.community-modal-join:disabled{opacity:.5;cursor:not-allowed}.community-modal-join{color:#fff;background-color:var(--ghost-accent-color)}.community-modal-cancel.gh-secondary-btn{background-color:transparent;border:1px solid var(--color-border);color:inherit}.community-modal-cancel.gh-secondary-btn:hover{background-color:var(--color-lighter-gray) !;opacity:1}.community-modal-demo.gh-secondary-btn{background-color:transparent;border:1px solid var(--color-border);color:inherit}.community-modal-demo.gh-secondary-btn:hover{background-color:var(--color-lighter-gray);opacity:1}.community-modal-video.gh-secondary-btn{background-color:transparent;border:1px solid var(--color-border);color:inherit}.community-modal-video.gh-secondary-btn:hover{background-color:var(--color-lighter-gray);opacity:1}.discord-join-instructions{background:linear-gradient(135deg,rgba(114,137,218,.1),rgba(88,101,242,.1));border:1px solid rgba(114,137,218,.3);border-radius:12px;padding:2rem;margin-bottom:2rem;text-align:center}.discord-step-title{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:1rem}.discord-step-description{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.5;margin-bottom:1.5rem}.discord-join-btn{display:inline-flex;align-items:center;gap:.8rem;background:#5865f2;color:#fff;padding:1rem 2rem;border-radius:12px;text-decoration:none;font-size:1.4rem;font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:background .2s,box-shadow .2s;border:none;cursor:pointer}.discord-join-btn:hover{background:#4752c4;box-shadow:0 6px 16px rgba(88,101,242,.3)}.discord-join-icon{font-size:1.6rem}.discord-validation-divider{display:flex;align-items:center;margin:2rem 0;position:relative}.discord-validation-divider:after,.discord-validation-divider:before{content:"";flex:1;height:1px;background:var(--color-border)}.discord-divider-text{padding:0 1.5rem;background:#fff;color:var(--color-secondary-text);font-size:1.4rem;font-weight:500;white-space:nowrap}.community-modal-back{color:#fff;background-color:var(--ghost-accent-color)}.community-modal-loading{padding:3rem;text-align:center}.community-modal-loading p{margin-top:1.5rem;font-size:1.6rem;color:var(--color-secondary-text)}.community-upload-section{margin-bottom:1rem}.community-upload-title{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:2.5rem;text-align:center}.community-modal-confirm{max-width:450px}.community-leave-warning{padding:1.5rem;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:12px;margin-bottom:1.5rem}.warning-icon{font-size:3.6rem;text-align:center;margin-bottom:1rem}.community-leave-consequences{margin:1rem 0 0;padding-left:2rem;list-style:disc}.community-leave-consequences li{margin-bottom:.8rem;font-size:1.4rem;color:var(--color-secondary-text);line-height:1.5}.community-modal-leave{background:#dc3545;border-color:#dc3545;color:#fff}.community-modal-leave:hover{background:#c82333;border-color:#bd2130}.community-modal-leave:disabled{opacity:.5;cursor:not-allowed}.community-members-loading{padding:6rem 2rem;text-align:center}.community-members-loading p{font-size:1.8rem;color:var(--color-secondary-text)}.community-members-empty{padding:6rem 2rem;text-align:center;background:var(--color-lighter-gray,#f8f8f8);border:1px solid var(--color-border);border-radius:12px;margin:2rem 0}.community-members-empty .community-placeholder-icon{width:100px;height:100px;font-size:3.6rem;margin:0 auto 2rem}.community-members-empty p{font-size:1.8rem;color:var(--color-secondary-text);margin:0 0 1rem;text-align:center}.community-members-empty .community-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5;text-align:center;margin:0 auto}.community-members-error{padding:6rem 2rem;text-align:center}.community-members-error .community-placeholder-icon{width:100px;height:100px;font-size:3.6rem;margin:0 auto 2rem;color:#dc3545}.community-members-error p{margin:.5rem 0;font-size:1.8rem;color:#dc3545}.community-members-error .error-details{font-size:1.6rem;opacity:.9;color:var(--color-secondary-text);margin-bottom:2rem}.community-members-view{background:transparent;border:none;padding:0;min-height:unset}.community-members-page{width:100%}.community-members-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding:2.5rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid var(--color-border);flex-wrap:nowrap}.community-members-header-content{flex:1;display:flex;flex-direction:column;gap:.5rem;text-align:left}.community-members-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2}.community-members-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0;line-height:1.5;max-width:600px}.community-back-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-back-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-members-stats{text-align:center;margin-bottom:3rem}.members-count-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:.8rem 1.6rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.members-count-badge:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);transform:translateY(-2px)}.count-number{font-size:1.8rem;font-weight:700;color:var(--ghost-accent-color)}.count-label{font-size:1.6rem;color:var(--color-secondary-text)}.community-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2rem;width:100%}.community-members-grid::-webkit-scrollbar{width:8px}.community-members-grid::-webkit-scrollbar-track{background:var(--color-lighter-gray);border-radius:12px}.community-members-grid::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:12px}.community-members-grid::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-text)}.community-members-pagination{justify-content:space-between;margin-top:3rem;padding:2rem}.community-members-pagination,.community-pagination-btn{display:flex;align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:12px}.community-pagination-btn{gap:.8rem;padding:.8rem 1.6rem;font-size:1.4rem;font-weight:500;color:var(--color-darker-gray);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-pagination-btn:hover:not(:disabled){background:var(--color-lighter-gray);border-color:var(--ghost-accent-color)}.community-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.community-pagination-arrow{width:16px;height:16px;-o-object-fit:contain;object-fit:contain}.community-pagination-arrow-left{transform:rotate(180deg)}.community-pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.community-pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.community-pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}.community-members-grid-wrapper{min-height:400px;position:relative}.community-members-grid.transitioning{opacity:.3;pointer-events:none}.community-loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--ghost-accent-color);border-radius:50%;animation:interactiveSpin 1s linear infinite;margin:0 auto}.community-category-card{background:#fff;border-radius:12px;overflow:hidden;transition:box-shadow .2s,transform .2s;border:1px solid var(--color-border);height:100%;display:flex;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center}.community-category-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.community-category-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.community-category-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.community-category-image-placeholder{width:100%;height:100%;background:var(--color-lighter-gray);display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-border)}.community-category-image-placeholder:after{content:"👥";font-size:3rem;opacity:.2;color:var(--color-secondary-text)}.community-category-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem}.community-category-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25;text-align:left}.community-category-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-align:left}.community-category-meta{justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);color:var(--color-secondary-text)}.community-category-meta,.member-discord{display:flex;align-items:center;font-size:1.4rem}.member-discord{gap:.8rem;margin:.5rem 0;color:#5865f2;text-align:left}.discord-username{font-weight:800;color:#5865f2;-webkit-user-select:text;-moz-user-select:text;user-select:text;cursor:text}.discord-copy-btn{background:transparent;border:none;padding:.4rem;color:#5865f2;opacity:.6;transition:opacity .2s,background .2s;border-radius:6px;display:flex;align-items:center;justify-content:center}.discord-copy-btn:hover{opacity:1;background:var(--color-lighter-gray)}.discord-copy-btn.copied{color:#5865f2;opacity:1}.discord-copy-btn svg{width:14px;height:14px}.member-busuu{display:flex;align-items:center;gap:.8rem;margin:.5rem 0;font-size:1.4rem;color:#116eee;text-align:left}.busuu-username{font-weight:800;color:#116eee;-webkit-user-select:text;-moz-user-select:text;user-select:text;cursor:text}.busuu-copy-btn{background:transparent;border:none;padding:.4rem;color:#116eee;opacity:.6;transition:opacity .2s,background .2s;border-radius:6px;display:flex;align-items:center;justify-content:center}.busuu-copy-btn:hover{opacity:1;background:var(--color-lighter-gray)}.busuu-copy-btn.copied{color:#116eee;opacity:1}.busuu-copy-btn svg{width:14px;height:14px}.community-member-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.community-member-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.community-member-card.current-user{border-color:var(--ghost-accent-color);background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05))}.community-member-card.current-user:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.member-validation-image{width:100%;height:350px;overflow:hidden;background:var(--dark-surface-elevated);border-bottom:1px solid var(--color-border)}.member-validation-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.member-validation-placeholder{width:100%;height:280px;background:var(--color-lighter-gray);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border-bottom:1px solid var(--color-border)}.placeholder-icon{font-size:3rem;opacity:.3}.placeholder-text{font-size:1.4rem;color:var(--color-secondary-text);opacity:.7}.member-info{padding:1.5rem;position:relative;text-align:left}.member-name{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .3rem;text-align:left}.member-username{margin:0 0 .5rem;opacity:.9}.member-duolingo,.member-username{font-size:1.4rem;color:var(--color-secondary-text);text-align:left}.member-duolingo{display:flex;align-items:center;gap:.8rem;margin:.5rem 0}.duolingo-username{font-weight:800;color:#58cc02;-webkit-user-select:text;-moz-user-select:text;user-select:text;cursor:text}.duolingo-copy-btn{background:transparent;border:none;padding:.4rem;color:#58cc02;opacity:.6;transition:opacity .2s,background .2s;border-radius:6px;display:flex;align-items:center;justify-content:center}.duolingo-copy-btn:hover{opacity:1;background:var(--color-lighter-gray)}.duolingo-copy-btn.copied{color:#58cc02;opacity:1}.duolingo-copy-btn svg{width:14px;height:14px}.member-joined-date{font-size:1.3rem;color:var(--color-secondary-text);margin:.5rem 0 0;text-align:left}.member-badge{position:absolute;top:1rem;right:1rem;background:var(--ghost-accent-color);color:#fff;padding:.3rem .8rem;border-radius:12px;font-size:1.2rem;font-weight:600;text-transform:capitalize}.community-card.disabled{opacity:.6;cursor:not-allowed}.community-card.disabled .community-action-btn{cursor:not-allowed}.community-card.disabled .community-action-btn,.community-card.disabled .community-action-btn:hover{background:#6c757d;border-color:#6c757d;opacity:.7}.community-category-card.disabled{opacity:.6;cursor:not-allowed}.community-category-card.disabled .community-category-link{pointer-events:none}.community-category-card.disabled .community-category-image{filter:grayscale(.8)}.community-category-card.disabled .community-category-title{opacity:.7}.community-category-card.disabled .community-category-description{opacity:.6}.community-category-card.disabled .community-action-btn{background:#6c757d;border-color:#6c757d;cursor:not-allowed;opacity:.7}.community-category-card.disabled .community-action-btn:hover{background:#6c757d;border-color:#6c757d;opacity:.7}@media(max-width:767px){.community-modal-overlay{padding:0}.community-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.community-modal-header{padding:1.5rem}.community-modal-title{font-size:1.8rem}.community-modal-body{padding:1.5rem}.community-upload-label{padding:3rem 1.5rem}.community-upload-icon{font-size:3rem}.community-upload-primary{font-size:1.4rem}.community-upload-secondary{font-size:1.2rem}.community-modal-footer{padding:1.5rem}.community-members-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.community-pagination-btn{width:100%;justify-content:center}.community-pagination-info{order:-1}.user-stats-grid{grid-template-columns:1fr;gap:1.5rem}.community-stats-card{padding:2rem}.stats-card-icon{font-size:3rem}.community-modal-confirm{max-width:100%}.community-leave-warning{padding:1rem}.warning-icon{font-size:3rem}.community-leave-consequences{padding-left:1.5rem}.community-leave-consequences li{font-size:1.3rem;margin-bottom:.6rem}.community-members-header{padding:2rem;flex-direction:column;text-align:center}.community-members-header-content{text-align:center;align-items:center}.community-members-title{font-size:2.4rem}.community-members-description{font-size:1.5rem}.community-back-btn{align-self:center}.community-members-grid{grid-template-columns:1fr;gap:2rem}.user-avatar{width:60px;height:60px}.member-info{padding:1.2rem;text-align:left}.member-name{font-size:1.6rem;text-align:left}.member-username{font-size:1.3rem}.member-duolingo{font-size:1.3rem;gap:.6rem}.duolingo-copy-btn{padding:.3rem}.member-joined-date{text-align:left}}@media(max-width:480px){.community-modal-overlay{padding:0}.community-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.community-modal-header{padding:1rem}.community-modal-title{font-size:1.6rem}.community-modal-body{padding:1rem}.community-upload-label{padding:2rem 1rem}.community-upload-icon{font-size:2.5rem}.community-upload-primary{font-size:1.2rem}.community-upload-secondary{font-size:1rem}.community-modal-footer{padding:1rem}.community-members-pagination{flex-direction:column;gap:1rem;padding:1rem}.community-pagination-btn{width:100%;justify-content:center}.community-pagination-info{order:-1}.community-stats-card{padding:1.5rem;gap:1.5rem}.stats-card-icon{font-size:2.5rem}.stats-card-value{font-size:2.4rem}.stats-card-label{font-size:1.3rem}}.vocabulary-template .gh-section{padding:2rem 0}.vocabulary-template .gh-section:first-child{padding-top:0}.vocabulary-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;scroll-margin-top:2rem}.vocabulary-container.placeholder-state{background:var(--color-lighter-gray);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-container.placeholder-state:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-container.vocabulary-empty-state{background:transparent;border:none;padding:2rem 0}#vocabulary-container.vocabulary-theme-view,.vocabulary-container.vocabulary-theme-view{margin-top:3rem;background:transparent;border:none;padding:0;display:block;min-height:auto;text-align:left}.vocabulary-placeholder{flex-direction:column;gap:1.5rem}.vocabulary-placeholder,.vocabulary-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.vocabulary-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.vocabulary-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.vocabulary-placeholder-icon.vocabulary-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.vocabulary-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.vocabulary-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.vocabulary-error{display:flex;flex-direction:column;align-items:center;gap:1.5rem;color:var(--color-secondary-text)}.vocabulary-error-text{font-size:1.6rem;font-weight:500;text-align:center;max-width:400px;line-height:1.5}.level-filter-btn{transition:transform .2s,box-shadow .2s,background .2s,opacity .2s}.vocabulary-categories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2rem;padding:0;transition:opacity .15s}.vocabulary-category-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border:1px solid var(--color-border);height:100%;display:flex;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center}.vocabulary-category-card:hover{transform:translateY(-8px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-category-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.vocabulary-category-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.vocabulary-category-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.vocabulary-category-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem}.vocabulary-category-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25}.vocabulary-category-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.vocabulary-category-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:1.4rem;color:var(--color-secondary-text)}.vocabulary-word-count{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--ghost-accent-color)}.vocabulary-difficulty{border-radius:20px}.vocabulary-difficulty.a1-1,.vocabulary-difficulty.a1-2,.vocabulary-difficulty.a2-1,.vocabulary-difficulty.a2-2{color:var(--color-level-green)}.vocabulary-difficulty.b1-1,.vocabulary-difficulty.b1-2,.vocabulary-difficulty.b2-1,.vocabulary-difficulty.b2-2{color:var(--color-level-amber)}.vocabulary-difficulty.c1,.vocabulary-difficulty.c2{color:var(--color-level-red)}.vocabulary-difficulty.esencial,.vocabulary-difficulty.intro{color:var(--color-level-blue)}.vocabulary-theme-view{max-width:100%;opacity:1;transition:opacity .3s}.vocabulary-theme-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding:2.5rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid var(--color-border);position:relative;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-theme-header:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-theme-header-content{flex:1}.vocabulary-back-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0;position:static;backdrop-filter:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-back-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-theme-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2;background:none;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset;text-shadow:none}.vocabulary-theme-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0;line-height:1.5;font-weight:400;max-width:none}.vocabulary-controls{margin:2rem 0;padding:0;background:transparent;border-radius:0;border:none;display:flex;justify-content:center}.vocabulary-visibility-controls{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.visibility-toggle{display:flex;align-items:center;gap:.5rem;padding:8px 16px;background:#fff;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s,opacity .2s;color:var(--color-darker-gray);position:relative}.visibility-toggle:hover{transform:translateY(-1px)}.visibility-toggle:active,.visibility-toggle:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.visibility-toggle:not(.active){opacity:.5;color:var(--color-secondary-text)}.visibility-toggle:not(.active):hover{opacity:.7}.toggle-icon{font-size:1.6rem;line-height:1}.toggle-label{font-size:1.4rem;font-weight:500}.vocabulary-words-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:3rem}.vocabulary-word-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem;min-height:180px;transform-origin:center center;overflow:hidden}.vocabulary-word-card:not(.fade-in){opacity:1;animation:none}.vocabulary-word-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-word-card:active{transform:translateY(-2px) scale(.98)}.vocabulary-word-japanese{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin:0;line-height:1.2;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.vocabulary-word-romaji{font-size:1.4rem;color:var(--ghost-accent-color);font-style:italic;margin:0;opacity:.9}.vocabulary-word-spanish{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.4;margin:.5rem 0 1rem;flex:1}.vocabulary-word-category{display:inline-block;padding:.4rem 1rem;background:var(--color-lighter-gray);color:var(--color-secondary-text);border-radius:12px;font-size:1.2rem;font-weight:500;text-transform:capitalize;margin-top:auto;border:none}.vocabulary-audio-btn{background:transparent;border:none;color:var(--ghost-accent-color);font-size:2rem;cursor:pointer;margin:.2rem 0;padding:.2rem .6rem;border-radius:6px;transition:background .2s,color .2s;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.vocabulary-audio-btn:focus,.vocabulary-audio-btn:hover{background:var(--color-lighter-gray);color:var(--ghost-accent-color);outline:none}.vocabulary-audio-btn.loading{opacity:.5;pointer-events:none}.vocabulary-word-category,.vocabulary-word-japanese,.vocabulary-word-romaji,.vocabulary-word-spanish{transition:opacity .3s,visibility .3s;opacity:1;visibility:visible;transform:none;max-height:none;overflow:visible}.vocabulary-word-category.hidden,.vocabulary-word-japanese.hidden,.vocabulary-word-romaji.hidden,.vocabulary-word-spanish.hidden{opacity:0;visibility:hidden;transform:none;max-height:none;margin:initial;padding:initial}.stats-text{padding:.6rem 1.2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);display:inline-block;font-size:1.3rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.stats-text:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.themes-pagination{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-top:2rem;padding:2rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.themes-pagination:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}@media(max-width:1200px){.vocabulary-categories-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.vocabulary-theme-header{flex-direction:column;padding:2rem;gap:1.5rem}.vocabulary-theme-title{font-size:2.2rem}.vocabulary-back-btn{align-self:center}.vocabulary-words-grid{grid-template-columns:1fr;gap:1.5rem}.vocabulary-word-card{padding:1.5rem;min-height:150px}.vocabulary-word-japanese{font-size:2rem}.vocabulary-word-romaji{font-size:1.2rem}.vocabulary-word-spanish{font-size:1.3rem}.vocabulary-controls{margin:1.5rem 0;padding:0}.vocabulary-visibility-controls{gap:.8rem}.visibility-toggle{padding:.6rem 1.2rem;font-size:1.3rem}.toggle-icon{font-size:1.4rem}.stats-text,.toggle-label{font-size:1.3rem}.stats-text{padding:.4rem .8rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border)}.vocabulary-categories-grid{grid-template-columns:1fr;margin-top:1.5rem}.vocabulary-category-content{padding:1.5rem}.vocabulary-category-title{font-size:2rem}.themes-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}}@media(max-width:480px){.vocabulary-words-grid{grid-template-columns:1fr;gap:2rem}.vocabulary-word-card{padding:1.8rem 1.5rem;gap:1rem}.vocabulary-word-japanese{font-size:2.4rem}.vocabulary-word-romaji,.vocabulary-word-spanish{font-size:1.5rem}.vocabulary-visibility-controls{gap:.6rem}.visibility-toggle{padding:.5rem 1rem;font-size:1.2rem}.toggle-icon{font-size:1.6rem}.stats-text{font-size:1.2rem;padding:.3rem .6rem}.vocabulary-categories-grid{margin-top:1.5rem}.themes-pagination{padding:1.2rem;gap:1.2rem}.pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.pagination-arrow{width:14px;height:14px}.pagination-current{font-size:1.4rem}.pagination-range{font-size:1.2rem}}.post-reactions{margin-top:5rem}.reactions-container{max-width:600px;margin:0 auto;text-align:center}.reactions-header{margin-bottom:3rem}.reactions-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin-bottom:.5rem}.reactions-list{display:flex;gap:5rem;justify-content:center;align-items:flex-start;flex-wrap:wrap}.reaction-item{display:flex;flex-direction:column;align-items:center;gap:.8rem}.reaction-img-btn{background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.reactions-wrapper.not-logged-in .reaction-img-btn:hover .reaction-icon{transform:none}.reaction-img-btn:hover .reaction-icon{transform:scale(1.15)}.reaction-img-btn.active .reaction-icon{transform:scale(1.2);filter:drop-shadow(0 6px 16px rgba(255,87,0,.3))}.reaction-icon{width:56px;height:56px;-o-object-fit:contain;object-fit:contain;transition:transform .2s,filter .2s;display:block}.reaction-count{font-size:1.6rem;font-weight:600;color:var(--color-secondary-text);min-width:30px;transition:transform .2s,color .2s}.reaction-img-btn.active+.reaction-count{color:var(--ghost-accent-color);font-weight:700}.reaction-img-btn:disabled{cursor:not-allowed!important;opacity:.7}.reactions-wrapper.loading .reaction-count{visibility:hidden}@media(max-width:767px){.reactions-title{font-size:2rem}.reactions-list{gap:3.5rem}.reaction-icon{width:48px;height:48px}.reaction-count{font-size:1.4rem}}@media(max-width:480px){.reactions-list{gap:2.5rem}.reaction-icon{width:42px;height:42px}.reaction-count{font-size:1.3rem}}.vocabulary-game-template .gh-section{padding:2rem 0}.vocabulary-game-template{--game-option-background:color-mix(in srgb, var(--background-color, #fff) 97%, var(--color-primary-text, rgba(0,0,0,.9)) 3%)}.vocabulary-game-template .gh-section:first-child{padding-top:0}.vocabulary-game-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;scroll-margin-top:2rem}.vocabulary-game-container.placeholder-state{background:var(--color-lighter-gray);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-game-container.placeholder-state:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-game-container.has-content{display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.vocabulary-game-placeholder{flex-direction:column;gap:1.5rem}.vocabulary-game-placeholder,.vocabulary-game-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.vocabulary-game-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.vocabulary-game-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.vocabulary-game-placeholder-icon.vocabulary-game-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.vocabulary-game-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.vocabulary-game-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.vocabulary-game-placeholder-buttons{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.themes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding:0;transition:opacity .15s}.game-theme-card{overflow:hidden;transition:box-shadow .2s,transform .2s,background .2s;height:100%;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center;padding:0}.game-theme-card,.theme-score-badge{background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);display:flex}.theme-score-badge{position:absolute;top:1rem;right:1rem;color:var(--ghost-accent-color);padding:.4rem .8rem;font-size:1.2rem;font-weight:600;z-index:10;align-items:center;gap:.4rem;transition:box-shadow .2s,transform .2s}.theme-score-badge:hover{transform:scale(1.05)}.game-theme-card:hover,.theme-score-badge:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.theme-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.theme-card-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.theme-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.theme-card-image.no-img{background:var(--color-lighter-gray)}.vocabulary-category-image-placeholder{width:100%;height:100%;background:var(--color-lighter-gray);display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-border)}.vocabulary-category-image-placeholder:after{content:"📚";font-size:3rem;opacity:.2;color:var(--color-secondary-text)}.theme-card-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem;text-align:left}.theme-card-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25;margin:0 0 .4rem}.theme-card-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.theme-card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:1.4rem;color:var(--color-secondary-text)}.vocabulary-difficulty{padding:.4rem .8rem;border-radius:12px;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.vocabulary-difficulty.a1-1,.vocabulary-difficulty.a1-2,.vocabulary-difficulty.a2-1,.vocabulary-difficulty.a2-2{background:rgba(40,167,69,.1);color:#28a745}.vocabulary-difficulty.b1-1,.vocabulary-difficulty.b1-2,.vocabulary-difficulty.b2-1,.vocabulary-difficulty.b2-2{background:rgba(255,193,7,.1);color:#ffc107}.vocabulary-difficulty.c1,.vocabulary-difficulty.c2{background:rgba(220,53,69,.1);color:#dc3545}.vocabulary-difficulty.esencial,.vocabulary-difficulty.intro{background:rgba(0,123,255,.1);color:#007bff}.game-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding:2.5rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid var(--color-border);flex-wrap:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.game-header:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.game-header-content{flex:1;display:flex;flex-direction:column;gap:.5rem;text-align:left}.current-theme{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2}.game-theme-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0;line-height:1.5;max-width:600px}.back-to-themes-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.back-to-themes-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.back-to-themes-btn:active{transform:scale(.98)}.vocabulary-question-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:3rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-question-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-question-content{display:flex;flex-direction:column;gap:2rem}.vocabulary-game-progress{margin-bottom:1.5rem;padding:1.6rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-game-progress:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-game-progress-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.vocabulary-game-score-info{display:flex;gap:2rem;align-items:center}.vocabulary-game-question-counter,.vocabulary-game-score{color:var(--color-secondary-text);font-size:1.4rem;font-weight:500}.vocabulary-game-streak.hot-streak{color:var(--ghost-accent-color);font-weight:700}.vocabulary-game-progress-bar{height:6px;overflow:hidden;border:none;border-radius:99px;background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}.vocabulary-game-progress-fill{height:100%;border-radius:inherit;background:var(--ghost-accent-color);transition:width .26s}.vocabulary-game-feedback-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.6rem;margin-top:1rem}.vocabulary-game-continue-btn{min-width:190px;height:42px;border:none;border-radius:12px;color:#fff;background:var(--ghost-accent-color);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);font-size:1.6rem;font-weight:500;cursor:pointer;transition:opacity .2s,box-shadow .2s,transform .2s}.vocabulary-game-continue-btn:hover{opacity:.9;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-game-continue-btn:disabled{opacity:.5;cursor:not-allowed}.game-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem}.question-container{text-align:center;width:100%}.question-type{font-size:1.8rem;color:var(--color-secondary-text);margin-bottom:2rem;font-weight:500}.question-word{font-size:3.6rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.vocabulary-feedback-result{display:none;width:100%;max-width:none;margin:2rem 0;padding:2rem;align-items:flex-start;gap:2rem;border-radius:12px;text-align:left}.vocabulary-feedback-result.correct{display:flex;border:2px solid rgba(40,167,69,.2);background:rgba(40,167,69,.05);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-feedback-result.correct:hover{box-shadow:0 6px 16px rgba(40,167,69,.1)}.vocabulary-feedback-result.incorrect{display:flex;border:2px solid rgba(220,53,69,.2);background:rgba(220,53,69,.05);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-feedback-result.incorrect:hover{box-shadow:0 6px 16px rgba(220,53,69,.1)}.vocabulary-feedback-result.correct,.vocabulary-feedback-result.incorrect{flex-direction:row;align-items:flex-start;justify-content:flex-start;text-align:left}.vocabulary-feedback-result.correct{align-items:center}.vocabulary-feedback-result.correct .vocabulary-feedback-text,.vocabulary-feedback-result.correct .vocabulary-feedback-text h4,.vocabulary-feedback-result.incorrect .vocabulary-feedback-text,.vocabulary-feedback-result.incorrect .vocabulary-feedback-text h4{width:auto;text-align:left}.vocabulary-feedback-icon{flex-shrink:0;font-size:3rem}.vocabulary-feedback-text h4{margin:0 0 1rem;color:var(--color-darker-gray);font-size:2rem;font-weight:700}.vocabulary-feedback-text h4:only-child{margin-bottom:0}.vocabulary-feedback-text p{margin:0;color:var(--color-secondary-text);font-size:1.6rem;line-height:1.6}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;width:100%;max-width:800px;margin-bottom:2rem}.option-btn{background:var(--game-option-background);border:1px solid var(--color-border);border-radius:12px;min-height:60px;padding:12px 14px;text-align:left;box-shadow:none;transition:border-color .2s,background .2s;cursor:pointer;font-size:1.8rem;font-weight:630;line-height:1.35;color:var(--color-darker-gray);position:relative;overflow:hidden;display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:center}.option-btn:hover:not(:disabled){border-color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,var(--game-option-background));box-shadow:none;transform:none}.option-btn:active:not(:disabled){background:color-mix(in srgb,var(--ghost-accent-color) 12%,var(--game-option-background));transform:none}.option-btn:disabled{cursor:not-allowed}.option-btn.correct{background:rgba(40,167,69,.1);border-color:#28a745;color:#28a745;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.option-btn.correct:hover{box-shadow:0 6px 16px rgba(40,167,69,.1)}.option-btn.incorrect{background:rgba(220,53,69,.1);border-color:#dc3545;color:#dc3545;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.option-btn.incorrect:hover{box-shadow:0 6px 16px rgba(220,53,69,.1)}.option-btn.incorrect:after{display:none}.vocabulary-option-letter{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,transparent);font-size:1.4rem;font-weight:850}.option-text{min-width:0;line-height:1.4;overflow-wrap:anywhere}.points-animation{position:fixed;display:grid;min-width:34px;height:24px;padding:0 .5rem;place-items:center;border:1px solid color-mix(in srgb,var(--ghost-accent-color) 42%,transparent);border-radius:99px;background:color-mix(in srgb,var(--ghost-accent-color) 12%,#fff);box-shadow:0 4px 12px color-mix(in srgb,var(--ghost-accent-color) 16%,transparent);font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ghost-accent-color);pointer-events:none;z-index:1000;animation:pointsFloat 1s cubic-bezier(.2,.75,.25,1) forwards}.points-animation:after{position:absolute;inset:-3px;border:1px solid color-mix(in srgb,var(--ghost-accent-color) 50%,transparent);border-radius:inherit;content:"";animation:pointsRipple .7s ease-out forwards}.points-animation.bonus{min-width:38px;background:color-mix(in srgb,var(--ghost-accent-color) 18%,#fff);font-size:1.3rem}.results-emoji{font-size:6rem;margin-bottom:2rem}.results-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2}.results-message{font-size:1.6rem;color:var(--color-secondary-text);margin:0 0 3rem;line-height:1.5;font-weight:400}.results-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.results-stats:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.result-stat{text-align:center}.stat-value{display:block;font-size:3.2rem;margin-bottom:.5rem}.stat-label{display:block;font-size:1.4rem;color:var(--color-secondary-text);font-weight:500}.results-actions{display:flex;gap:1.5rem;justify-content:center}.new-record-badge{text-align:center;font-size:2rem;font-weight:700;color:#d9a443;margin:2rem 0;padding:1rem;background:rgba(255,215,0,.1);border-radius:12px;animation:vocabularyGameEmphasisPulse 1s ease-in-out infinite}.unlocked-achievements{margin:3rem 0;padding:2rem;background:linear-gradient(135deg,rgba(255,215,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid rgba(255,215,0,.2);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s}.unlocked-achievements:hover{box-shadow:0 8px 24px rgba(255,215,0,.15),0 4px 8px rgba(255,140,0,.1);background:linear-gradient(135deg,rgba(255,215,0,.08),rgba(255,140,0,.08));border-color:rgba(255,215,0,.35)}.achievements-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 2rem;line-height:1.2}.achievements-list{display:flex;flex-direction:column;gap:1.5rem}.unlocked-achievement-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s}.unlocked-achievement-item:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.unlocked-achievement-item .achievement-icon{font-size:3.2rem;flex-shrink:0}.unlocked-achievement-item .achievement-details{flex:1;text-align:left;display:flex;flex-direction:column;gap:.5rem}.unlocked-achievement-item .achievement-details h4{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0}.unlocked-achievement-item .achievement-details p{font-size:1.4rem;color:var(--color-secondary-text);margin:0;line-height:1.4;flex:1}.unlocked-achievement-item .achievement-details>div{display:flex;align-items:center;justify-content:space-between;gap:1rem}.unlocked-achievement-item .achievement-points{font-size:1.4rem;font-weight:700;color:var(--ghost-accent-color);white-space:nowrap}@keyframes vocabularyGameEmphasisPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}}@keyframes pointsFloat{0%{transform:translate(-50%,8px) scale(.72);opacity:0}18%{transform:translate(-50%) scale(1.08);opacity:1}58%{transform:translate(-50%,-24px) scale(1);opacity:1}to{transform:translate(-50%,-68px) scale(.94);opacity:0}}@keyframes pointsRipple{0%{opacity:.65;transform:scale(.72)}to{opacity:0;transform:scale(1.3)}}[data-theme=dark] .points-animation{background:color-mix(in srgb,var(--ghost-accent-color) 18%,var(--dark-surface-elevated))}[data-theme=dark] .answer-feedback.is-correct{color:#74cf9b}[data-theme=dark] .answer-feedback.is-incorrect{color:#f08a95}@media(prefers-reduced-motion:reduce){.points-animation,.points-animation:after{animation:none}}@keyframes correctPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.vocabulary-game-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:2rem;padding:2rem;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.vocabulary-game-pagination:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocabulary-game-pagination .pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.vocabulary-game-pagination .pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.vocabulary-game-pagination .pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}.game-leaderboard{margin:2rem 0;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border:1px solid var(--color-border)}.game-leaderboard:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.game-leaderboard h3{font-size:2rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.ranking-date{font-size:1.4rem;font-weight:400;color:var(--color-secondary-text);margin-left:.5rem}.weekly-ranking{background:linear-gradient(135deg,rgba(255,215,0,.05),rgba(255,140,0,.05));border-color:rgba(255,215,0,.2);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;margin-bottom:3rem}.weekly-ranking:hover{box-shadow:0 6px 16px rgba(255,215,0,.1)}.leaderboard-list{display:flex;flex-direction:column;gap:.8rem}.leaderboard-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--color-lighter-gray);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,background-color .2s,transform .2s;border:1px solid var(--color-border)}.leaderboard-item:hover{background-color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.leaderboard-item.current-user{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border:1px solid var(--ghost-accent-color);font-weight:700}.leaderboard-item.current-user:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.rank{font-size:1.6rem;font-weight:700;color:var(--ghost-accent-color);min-width:3rem}.player-score-info{display:flex;align-items:center;gap:1.5rem}.player-score{font-size:1.4rem;font-weight:600;color:var(--ghost-accent-color)}.player-time{font-size:1.3rem;color:var(--color-secondary-text)}@media(max-width:1200px){.themes-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.themes-grid{grid-template-columns:1fr;margin-top:1.5rem}.vocabulary-game-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.vocabulary-game-pagination .pagination-btn{width:100%;justify-content:center}.vocabulary-game-pagination .pagination-info{order:-1}.theme-card-content{padding:1.5rem}.theme-card-title{font-size:2rem}.game-header{flex-direction:column;padding:2rem;gap:1.5rem}.back-to-themes-btn{align-self:center}.vocabulary-question-card{padding:2rem}.vocabulary-game-score-info{gap:1rem;flex-wrap:wrap}.vocabulary-game-question-counter{font-size:1.4rem;padding-bottom:1.5rem}.game-content{gap:2rem}.options-grid{grid-template-columns:1fr;gap:1.5rem}.vocabulary-feedback-result{flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.vocabulary-feedback-result.correct,.vocabulary-feedback-result.incorrect{flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}.vocabulary-feedback-result.correct .vocabulary-feedback-text,.vocabulary-feedback-result.correct .vocabulary-feedback-text h4,.vocabulary-feedback-result.incorrect .vocabulary-feedback-text,.vocabulary-feedback-result.incorrect .vocabulary-feedback-text h4{width:100%;text-align:center}.vocabulary-feedback-icon{display:flex;align-self:center;align-items:center;justify-content:center}.results-stats{grid-template-columns:1fr}.unlocked-achievements{padding:1.5rem}.achievements-title{font-size:2rem}.unlocked-achievement-item{padding:1rem;gap:1rem}.unlocked-achievement-item .achievement-icon{font-size:2.4rem}.unlocked-achievement-item .achievement-details h4{font-size:1.6rem}.unlocked-achievement-item .achievement-details p{font-size:1.3rem}.game-leaderboard{padding:1.5rem}.game-leaderboard h3{font-size:1.8rem}.ranking-date{display:block;margin-left:0;margin-top:.5rem;font-size:1.2rem}.leaderboard-item{padding:.8rem 1rem}.player-score-info{gap:1rem}}@media(max-width:480px){.game-leaderboard h3{font-size:1.6rem}.leaderboard-item{flex-wrap:wrap;gap:.5rem}.rank{order:1}.player-score-info{order:1;margin-left:auto}.themes-grid{margin-top:1.5rem}.vocabulary-game-pagination{padding:1.2rem;gap:1.2rem}.vocabulary-game-pagination .pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.vocabulary-game-pagination .pagination-arrow{width:14px;height:14px}.vocabulary-game-pagination .pagination-current{font-size:1.4rem}.vocabulary-game-pagination .pagination-range{font-size:1.2rem}.vocabulary-game-container{padding:2rem}.vocabulary-question-card{padding:1.5rem}.vocabulary-game-score-info{flex-direction:column;gap:.5rem;align-items:flex-end}.vocabulary-game-question-counter{font-size:1.3rem;padding-bottom:1rem}.vocabulary-game-score{font-size:1.2rem}.vocabulary-game-feedback-actions{flex-direction:column;gap:1rem}.question-word{font-size:2.8rem}.option-btn{padding:1.5rem;font-size:1.6rem}.results-emoji{font-size:4rem}.results-title{font-size:2.4rem}}.stories-game-template .gh-section{padding:2rem 0}.stories-game-template{--game-option-background:color-mix(in srgb, var(--background-color, #fff) 97%, var(--color-primary-text, rgba(0,0,0,.9)) 3%)}.stories-game-template .gh-section:first-child{padding-top:0}.stories-game-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;scroll-margin-top:2rem}.stories-game-container.placeholder-state{background:var(--color-lighter-gray);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.stories-game-container.placeholder-state:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.stories-game-container.has-content{display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.stories-game-placeholder{flex-direction:column;gap:1.5rem}.stories-game-placeholder,.stories-game-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.stories-game-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.stories-game-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.stories-game-placeholder-icon.stories-game-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.stories-game-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.stories-game-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.stories-game-placeholder-buttons{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.game-screen{display:none;width:100%}.game-screen.active{display:block}.game-story-card{overflow:hidden;transition:box-shadow .2s,transform .2s;height:100%;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center;padding:0}.game-story-card,.story-score-badge{background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);display:flex}.story-score-badge{position:absolute;top:1rem;right:1rem;color:var(--ghost-accent-color);padding:.4rem .8rem;font-size:1.2rem;font-weight:600;z-index:10;align-items:center;gap:.4rem;transition:transform .2s,box-shadow .2s}.story-score-badge:hover{transform:scale(1.05)}.game-story-card:hover,.story-score-badge:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.story-card-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.story-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.stories-category-image-placeholder,.story-card-image.no-img{background:var(--color-lighter-gray)}.stories-category-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-border)}.stories-category-image-placeholder:after{content:"📖";font-size:3rem;opacity:.2;color:var(--color-secondary-text)}.story-card-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem;text-align:left}.story-card-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25;margin:0 0 .4rem}.story-card-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-card-meta{justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);color:var(--color-secondary-text)}.story-card-meta,.word-count-badge{display:flex;align-items:center;font-size:1.4rem}.word-count-badge{gap:.5rem;font-weight:600;color:var(--ghost-accent-color)}.word-count-icon{font-size:1.6rem}.stories-difficulty{padding:.4rem .8rem;border-radius:12px;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stories-difficulty.a1-1,.stories-difficulty.a1-2,.stories-difficulty.a2-1,.stories-difficulty.a2-2,.stories-difficulty.beginner{background:rgba(40,167,69,.1);color:#28a745}.stories-difficulty.b1-1,.stories-difficulty.b1-2,.stories-difficulty.b2-1,.stories-difficulty.b2-2,.stories-difficulty.intermediate{background:rgba(255,193,7,.1);color:#ffc107}.stories-difficulty.advanced,.stories-difficulty.c1,.stories-difficulty.c2{background:rgba(220,53,69,.1);color:#dc3545}.stories-difficulty.esencial,.stories-difficulty.intro{background:rgba(0,123,255,.1);color:#007bff}.stories-empty-state{grid-column:1/-1;display:flex;align-items:center;justify-content:center;padding:2rem 0;background:transparent;border:none}.level-filters-buttons{width:100%}.level-filter-btn{transition:box-shadow .2s,transform .2s,opacity .2s,background .2s}.level-filter-btn:not(.active){opacity:.5}.level-filter-btn:not(.active):hover{opacity:.7}.filter-checkbox{font-size:1.6rem;line-height:1}.filter-label{font-size:1.4rem;font-weight:500}.pronunciation-game-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding:2.5rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid var(--color-border);flex-wrap:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.pronunciation-game-header:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.pronunciation-game-header-content{flex:1;display:flex;flex-direction:column;gap:.5rem;text-align:left}.current-story{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2}.story-description{font-size:1.6rem;line-height:1.5;max-width:600px}.back-to-stories-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.back-to-stories-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-content-container{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:3rem;margin-bottom:3rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;min-height:200px}.story-content-container:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-text{font-size:2.4rem;margin-bottom:2rem;padding:1rem;min-height:80px}.story-text,.story-translation{text-align:center;display:flex;align-items:center;justify-content:center}.story-translation{font-size:1.6rem;line-height:1.6;color:var(--color-secondary-text);font-style:italic;border-top:1px solid var(--color-border);padding-top:2rem;min-height:60px}.pronunciation-controls{display:flex;flex-direction:column;align-items:center;gap:2rem;margin:2rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.pronunciation-controls:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.recording-section{display:flex;flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:500px}.recording-instructions{text-align:center;padding:1rem;background:transparent;border-radius:0;margin-bottom:0;border:none}.recording-instructions h4{font-size:1.5rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .3rem;font-family:var(--font-sans)}.recording-instructions p{font-size:1.3rem;color:var(--color-secondary-text);margin:0;line-height:1.4;opacity:.9}.story-progress{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid rgba(255,87,0,.2)}.progress-info{gap:1rem;font-size:1.2rem;color:var(--color-secondary-text)}.progress-attempts strong,.progress-score strong{color:var(--ghost-accent-color);font-weight:700}.record-btn{position:relative;padding:8px 16px;border-radius:12px;border:var(--ghost-accent-color);background:var(--ghost-accent-color);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);overflow:visible;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;font-size:1.6rem;font-weight:600}.record-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.record-btn:active{transform:translateY(0)}.record-btn-inner{display:inline-flex;align-items:center;gap:.6rem}.record-btn-icon{line-height:1;display:inline-flex}.record-btn.recording{opacity:.9}.record-btn.processing{background:var(--color-lighter-gray);border:1px solid var(--color-border);cursor:not-allowed;pointer-events:none}.record-btn.processing,.recording-status{color:var(--color-secondary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.recording-status{font-size:1.3rem;font-weight:400;text-align:center;min-height:1.8rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);opacity:.9;border:1px solid #ef4444;border-radius:12px;padding:.6rem 1.2rem;background:rgba(239,68,68,.1);transition:box-shadow .2s,transform .2s}.recording-status.recording,.recording-status:hover{box-shadow:0 6px 16px rgba(239,68,68,.1)}.recording-status.recording{color:#ef4444;font-weight:500;opacity:1}.recording-status.processing{color:var(--color-secondary-text);opacity:1}.recording-timer{display:inline-flex;align-items:center;gap:.4rem;font-weight:500;color:#ef4444;font-size:1.3rem}.recording-timer .timer-dot{width:6px;height:6px;background:#ef4444;border-radius:50%;animation:blink 1s ease-in-out infinite}.audio-visualizer{width:100%;max-width:390px;height:80px;background:#fff;border-radius:12px;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;padding:0 15px;position:relative;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.audio-visualizer:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.visualizer-bars{display:flex;align-items:center;gap:1px;height:60px;width:100%;justify-content:space-evenly}.visualizer-bar{flex:1;max-width:6px;background:linear-gradient(to top,var(--ghost-accent-color));border-radius:12px;transition:height .05s ease-out;min-height:3px;opacity:.9}.visualizer-bar.active{background:linear-gradient(0deg,#ef4444,rgba(239,68,68,.9));opacity:1;box-shadow:0 6px 16px rgba(239,68,68,.4)}.error-feedback.simple{margin-top:2rem;padding:1.2rem;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.3);border-radius:12px;text-align:center}.error-feedback.simple p{font-size:1.5rem;color:var(--color-darker-gray);margin:0;line-height:1.5;font-weight:500}.correct-answer-section{margin-top:2rem;padding:2rem;background:rgba(40,167,69,.05);border-radius:12px;border:1px solid rgba(40,167,69,.2);text-align:left}.correct-answer-section h4{font-size:1.5rem;font-weight:600;color:#28a745;margin:0 0 1rem}.correct-answer-text{font-size:2rem;line-height:1.8;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;padding:1rem;background:#fff;border-radius:12px;border:1px solid rgba(40,167,69,.2);font-weight:500}.recognized-text{margin-top:3rem;margin-bottom:3rem;padding:1.5rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.recognized-text:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.recognized-text h4{font-size:1.5rem;font-weight:600;color:var(--color-secondary-text);margin:0 0 .8rem}.completion-message{margin:2rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);text-align:center}.completion-message p{font-size:1.5rem;color:var(--color-secondary-text);margin:.5rem 0;line-height:1.5}.completion-message p:first-child{font-weight:600;color:var(--color-darker-gray)}.story-completed-screen .results-content{max-width:600px}.story-completed-screen .story-results-stats{grid-template-columns:repeat(2,1fr)}.slide-down{animation:slideDown .3s ease-out forwards}.slide-up-hide{animation:slideUp2 .3s ease-out forwards}.pronunciation-results{background:transparent;border:none;padding:0;margin-top:3rem;box-shadow:none}.results-content{max-width:800px;margin:0 auto;text-align:center;padding:4rem 3rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.results-content:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-results-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:3rem;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.story-results-stats:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.results-content.excellent .stat-value{color:#28a745}.results-content.good .stat-value{color:var(--ghost-accent-color)}.results-content.fair .stat-value{color:#ffc107}.results-content.needs-work .stat-value{color:#dc3545}.results-content.excellent .progress-fill{background:#28a745}.results-content.good .progress-fill{background:var(--ghost-accent-color)}.results-content.fair .progress-fill{background:#ffc107}.results-content.needs-work .progress-fill{background:#dc3545}.recognized-content{line-height:1.8;color:var(--color-darker-gray);font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;background:#fff;border:1px solid var(--color-border)}.recognized-content,.story-romaji{font-size:1.8rem;padding:1rem;border-radius:12px}.story-romaji{line-height:1.6;color:var(--ghost-accent-color);text-align:center;font-style:italic;margin-top:1rem;margin-bottom:2rem;background:rgba(255,87,0,.05);border:1px solid rgba(255,87,0,.1);font-family:var(--font-sans);transition:box-shadow .2s;box-shadow:0 4px 12px rgba(255,87,0,.03),0 1px 3px rgba(255,87,0,.05)}.story-romaji:hover{box-shadow:0 6px 16px rgba(255,87,0,.08),0 2px 6px rgba(255,87,0,.1)}.hint-btn{min-width:190px;height:42px;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:var(--game-option-background);color:var(--color-darker-gray);display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-family:var(--font-sans);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,opacity .2s;font-size:1.6rem;font-weight:500;cursor:pointer}.hint-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.hint-btn.active{color:var(--color-darker-gray)}.hint-btn.active,.hint-btn.used{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1))}.hint-btn{position:relative}.hint-btn.penalty-applied:after,.hint-btn:not(.penalty-applied):hover:after{content:attr(data-hover-penalty);position:absolute;top:-8px;right:-8px;background:#c05621;color:#fff;font-size:1rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;pointer-events:none;animation:interactivePenaltyPop .2s ease-out}.hint-btn.penalty-applied:after{content:attr(data-penalty);animation:interactivePenaltyPop .3s ease-out}.gh-btn.penalty-applied{position:relative}.gh-btn.penalty-applied:after{content:attr(data-penalty);position:absolute;top:-8px;right:-8px;background:#c05621;color:#fff;font-size:1rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;animation:interactivePenaltyPop .3s ease-out}.recording-buttons{display:flex;gap:1rem;align-items:stretch}.recording-buttons .hint-btn,.recording-buttons .record-btn{flex:1;min-width:190px;min-height:42px}.recording-buttons .record-btn{height:auto}.recording-buttons .hint-btn{height:42px;align-self:center}.story-report-screen{display:none;width:100%}.story-report-screen.active{display:block}.report-header{margin-bottom:3rem}.report-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2}.story-title{font-size:2rem;margin:0 0 1rem}.report-section{margin:3rem 0;text-align:left}.report-section h4{font-size:2rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.achievements-section{margin:3rem 0}.achievements-container{display:flex;flex-direction:column;gap:1.5rem}.report-achievement{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);transition:transform .2s,box-shadow .2s}.report-achievement:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.report-achievement .achievement-icon{font-size:3.2rem;flex-shrink:0}.report-achievement .achievement-text{flex:1;text-align:left;display:flex;flex-direction:column;gap:.5rem}.report-achievement .achievement-text strong{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0}.report-achievement .achievement-text span{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.4;flex:1}.report-achievement .achievement-text>div{display:flex;align-items:center;justify-content:space-between;gap:1rem}.report-achievement .achievement-text .achievement-points{font-weight:700;color:var(--ghost-accent-color);white-space:nowrap}.recommendations-container{display:flex;flex-direction:column;gap:1.5rem}.report-recommendation{display:flex;align-items:flex-start;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);transition:transform .2s,box-shadow .2s}.report-recommendation:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.report-recommendation.high{border-left:4px solid #dc3545}.report-recommendation.medium{border-left:4px solid #ffc107}.report-recommendation.low{border-left:4px solid #28a745}.rec-icon{font-size:2.4rem;flex-shrink:0;margin-top:.2rem}.rec-content{flex:1}.rec-text{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:.5rem;line-height:1.4}.rec-action{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.4}.colored-sentence{font-size:2.4rem;line-height:1.8;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;text-align:center;margin-bottom:2rem;padding:2rem;background:#fff;border-radius:12px;border:1px solid var(--color-border)}.colored-word{padding:.2rem .4rem;border-radius:6px;margin:0 .1rem;transition:background .2s;cursor:help}.word-excellent{background:rgba(40,167,69,.2);color:#28a745}.word-good{background:rgba(255,193,7,.2);color:#ffc107}.word-fair{background:rgba(255,87,0,.2);color:#fd7e14}.word-needs-work,.word-poor{background:rgba(220,53,69,.2);color:#dc3545}.word-omitted{background:rgba(108,117,125,.2);color:#495057;text-decoration:line-through}.general-feedback-section{margin:3rem 0;background:#fff;border:1px solid var(--color-border)}.general-feedback-section h4{font-weight:600}.general-feedback-content{font-size:1.6rem;color:var(--color-secondary-text)}.toggle-details-btn{width:100%;padding:1rem 1.5rem;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:box-shadow .2s,border-color .2s;display:flex;align-items:center;justify-content:space-between;font-size:1.4rem;color:var(--color-darker-gray);font-weight:500}.toggle-details-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.toggle-details-btn.active{border-color:var(--ghost-accent-color)}.toggle-details-btn.active:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.toggle-icon{font-size:1.2rem;transition:transform .2s;color:var(--ghost-accent-color)}.toggle-details-btn.active .toggle-icon{transform:rotate(180deg)}.problematic-words-content{margin-top:1rem;padding:2rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.problematic-words-content h4{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem}.problematic-words-list{gap:1rem}.problematic-word-item{padding:1rem;background:var(--color-lighter-gray);border:1px solid var(--color-border)}.word-japanese{font-size:1.8rem;color:var(--color-darker-gray);font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.word-accuracy,.word-japanese{font-weight:600;margin-bottom:.5rem}.word-accuracy{font-size:1.4rem;color:var(--ghost-accent-color)}.word-suggestion{font-size:1.3rem;line-height:1.4}.performance-badge{display:inline-block;padding:.6rem 1.2rem;border-radius:12px;color:#fff;font-size:1.4rem;font-weight:600;margin-bottom:2rem}.report-summary{margin-bottom:3rem}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border)}.summary-item{text-align:center}.summary-value{display:block;font-size:3.2rem;font-weight:700;color:var(--ghost-accent-color);margin-bottom:.5rem}.summary-label{display:block;font-size:1.4rem;color:var(--color-secondary-text);font-weight:500}.report-actions{display:flex;gap:1.5rem;justify-content:center;margin-top:3rem}.btn-primary,.btn-secondary{padding:1rem 2rem;border-radius:12px;font-size:1.4rem;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;border:none;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:var(--ghost-accent-color);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--color-darker-gray);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-lighter-gray);transform:translateY(-1px)}.problematic-words-section{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,rgba(239,68,68,.05),rgba(220,38,127,.05));border-radius:12px;border:1px solid rgba(239,68,68,.2);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.problematic-words-section:hover{box-shadow:0 6px 16px rgba(239,68,68,.2)}.problematic-words-section h4{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;display:flex;align-items:center;gap:.8rem}.problematic-words-list{display:flex;flex-direction:column;gap:1.5rem}.problematic-word-item{padding:1.5rem;background:#fff;border-radius:12px;border:1px solid rgba(239,68,68,.1);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.problematic-word-item:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.word-suggestion{font-size:1.5rem;line-height:1.5;color:var(--color-secondary-text);font-style:italic}.error-feedback{margin-top:3rem;margin-bottom:3rem;padding:1.5rem;background:linear-gradient(135deg,rgba(255,193,7,.05),rgba(255,87,34,.05));border-radius:12px;border:1px solid rgba(255,193,7,.3);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.error-feedback:hover{box-shadow:0 6px 16px rgba(255,193,7,.1)}.error-feedback h4{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;display:flex;align-items:center;gap:.8rem}.error-feedback ul{list-style:none;padding:0;margin:0}.error-feedback li{font-size:1.5rem;line-height:1.5;color:var(--color-darker-gray);margin-bottom:.8rem;padding-left:2rem;position:relative}.error-feedback li:before{content:"•";color:#ffc107;font-weight:700;position:absolute;left:0;font-size:1.8rem}.error-feedback li:last-child{margin-bottom:0}.general-feedback-section{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,rgba(34,197,94,.05),rgba(16,185,129,.05));border-radius:12px;border:1px solid rgba(34,197,94,.2);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.general-feedback-section:hover{box-shadow:0 6px 16px rgba(34,197,94,.1)}.general-feedback-section h4{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;display:flex;align-items:center;gap:.8rem}.general-feedback-content{font-size:1.5rem;line-height:1.6;color:var(--color-darker-gray)}.general-feedback-content p{margin:0 0 1rem}.general-feedback-content p:last-child{margin-bottom:0}.word-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.word-error{font-size:1.3rem;color:#dc3545;font-style:italic;margin-top:.5rem}.word-details-list{margin-top:1rem;padding:1.5rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);animation:slideDown .3s ease-out;display:flex;flex-direction:column;gap:1rem}.word-status{font-size:1.3rem;font-weight:500;display:flex;align-items:center;gap:.3rem}.word-detail-item{padding:1rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.word-detail-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.word-detail-item.word-excellent .word-status{color:#28a745}.word-detail-item.word-good .word-status{color:var(--ghost-accent-color)}.word-detail-item.word-fair .word-status{color:#ffc107}.word-detail-item.word-needs-work .word-status{color:#dc3545}.word-detail-item.word-omitted .word-status{color:#6c757d}.sentence-analysis-section{margin:3rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.sentence-analysis-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.sentence-analysis-section h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.analysis-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1rem;font-size:1.2rem}.legend-item{gap:.5rem}.legend-color{width:16px;height:16px;border-radius:12px;border:1px solid var(--color-border)}.legend-color.word-excellent{background:rgba(40,167,69,.4)}.legend-color.word-good{background:rgba(255,193,7,.4)}.legend-color.word-fair{background:rgba(255,87,0,.4)}.legend-color.word-needs-work{background:rgba(220,53,69,.4)}.legend-color.word-omitted{background:rgba(108,117,125,.4)}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.3}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0)}}@keyframes slideUp2{0%{opacity:1;transform:translateY(0);max-height:1e3px}to{opacity:0;transform:translateY(-10px);max-height:0}}.stories-game-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:2rem;padding:2rem;background:#fff;border:1px solid var(--color-border);border-radius:12px}.stories-game-pagination .pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stories-game-pagination .pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.stories-game-pagination .pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}@media(max-width:767px){.section-header{flex-wrap:nowrap;align-items:center}.trophy-room{margin-left:auto;margin-top:0;width:auto;text-align:right}.filter-checkbox{font-size:1.4rem}.filter-label{font-size:1.3rem}.stories-game-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.stories-game-pagination .pagination-btn{width:100%;justify-content:center}.stories-game-pagination .pagination-info{order:-1}.story-card-content{padding:1.5rem}.story-card-title{font-size:2rem}.pronunciation-game-header{flex-direction:column;padding:2rem;gap:1.5rem}.back-to-stories-btn{align-self:center}.results-details{grid-template-columns:1fr}.recording-section{padding:2rem}.story-results-stats{grid-template-columns:repeat(2,1fr)}.results-content{padding:2rem}.audio-visualizer{max-width:100%;padding:0 10px}.correct-answer-text{font-size:1.8rem}.recording-buttons{flex-direction:column;gap:1rem;width:100%}.hint-btn,.recording-buttons .record-btn{width:100%;max-width:280px}.hint-btn{height:42px}.recording-buttons .record-btn{height:auto}.story-romaji{font-size:1.6rem;padding:.8rem}.analysis-legend{flex-direction:column;align-items:flex-start}.colored-sentence{font-size:2rem;padding:1.5rem}.report-recommendation{padding:1rem;gap:1rem}.rec-icon{font-size:2rem}.rec-text{font-size:1.4rem}.rec-action{font-size:1.3rem}.report-title{font-size:2.4rem}.story-title{font-size:1.8rem}.summary-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:1.5rem}.summary-value{font-size:2.4rem}.report-actions{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:280px;justify-content:center}.error-feedback,.problematic-words-section,.word-feedback-section{padding:1.5rem;margin-top:1.5rem}.error-feedback h4,.problematic-words-section h4,.word-feedback-section h4{font-size:1.6rem}.word-feedback-content{font-size:1.4rem}.problematic-word-item{padding:1rem}.word-japanese{font-size:2rem}.word-accuracy{font-size:1.3rem}.error-feedback li,.word-suggestion{font-size:1.4rem}.general-feedback-section{padding:1.5rem;margin-top:1.5rem}.general-feedback-section h4{font-size:1.6rem}.general-feedback-content{font-size:1.4rem}.word-detail-item{padding:1rem}.word-header{flex-direction:column;align-items:flex-start;gap:.5rem}.word-status{align-self:flex-end}.word-error{font-size:1.2rem}.toggle-details-btn{padding:.8rem 1.2rem;font-size:1.3rem}.legend-item{font-size:1.1rem}.problematic-words-content,.word-details-list{padding:1rem}.word-details-list{gap:.8rem}.toggle-details-btn{min-width:180px;font-size:1.2rem}}@media(max-width:480px){.error-feedback,.problematic-words-section,.word-feedback-section{padding:1rem}.word-japanese{font-size:1.8rem}.error-feedback li,.word-feedback-content,.word-suggestion{font-size:1.3rem}.summary-grid{grid-template-columns:1fr}.report-achievement,.report-recommendation{padding:1rem;gap:1rem}.achievement-icon,.rec-icon{font-size:2.4rem}.colored-sentence{font-size:1.8rem;padding:1rem}.legend-item{font-size:1.1rem}.section-title{font-size:2.4rem}.stories-grid{margin-top:1.5rem}.stories-game-pagination{padding:1.2rem;gap:1.2rem}.stories-game-pagination .pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.stories-game-pagination .pagination-arrow{width:14px;height:14px}.stories-game-pagination .pagination-current{font-size:1.4rem}.stories-game-pagination .pagination-range{font-size:1.2rem}.stories-game-container{padding:2rem}.game-title{font-size:2.4rem}.story-content-container{padding:2rem}.story-text{font-size:1.8rem}.story-translation{font-size:1.4rem}.pronunciation-results{padding:2rem}.general-feedback-section{padding:1rem}.general-feedback-content{font-size:1.3rem}.word-status{font-size:1.2rem}.toggle-details-btn{padding:.7rem 1rem;font-size:1.2rem}.analysis-legend{gap:.8rem}.analysis-legend,.word-header{flex-direction:column;align-items:flex-start}.word-header{gap:.3rem}.progress-info{flex-direction:column;gap:.5rem;text-align:center}.story-romaji{font-size:1.4rem}}.homework-exercise-progress{margin-bottom:2rem}.homework-question-counter{font-size:1.4rem;font-weight:600;color:#4a5568}.stories-game-template .options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;width:100%;max-width:800px;margin-bottom:2rem}.stories-game-template .option-btn{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.6rem 2rem;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s,border-color .2s,color .2s;cursor:pointer;font-size:1.8rem;font-weight:500;color:var(--color-darker-gray);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:66px}.stories-game-template .option-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,87,0,.1);border-color:var(--ghost-accent-color)}.next-question-btn{background:var(--ghost-accent-color);color:#fff;border:none;padding:1.2rem 2rem;border-radius:12px;font-size:1.6rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;min-width:190px;height:42px;margin-top:2rem}.next-question-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);opacity:.9}.next-question-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;background:var(--color-lighter-gray);color:var(--color-secondary-text);border:1px solid var(--color-border)}@media(max-width:767px){.stories-game-template .options-grid{grid-template-columns:1fr;gap:1.5rem}.stories-game-template .option-btn{min-height:66px}.next-question-btn{width:100%;min-width:100%}}@media(max-width:480px){.stories-game-template .option-btn{min-height:66px;font-size:1.6rem}.next-question-btn{padding:.8rem 1.5rem;font-size:1.4rem;min-width:100%;width:100%;height:40px}}.trophy-room-template .gh-section{padding:2rem 0}.trophy-room-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center}.trophy-room-container.placeholder-state,.trophy-room-container.transitioning{background:var(--color-lighter-gray);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.trophy-room-container.placeholder-state:hover,.trophy-room-container.transitioning:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.trophy-room-container.has-content:not(.transitioning){display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.trophy-room-template .next-achievement-reserved-slot{min-height:10rem;visibility:visible;box-shadow:none;cursor:default}.trophy-room-template .next-achievement-reserved-slot:hover{box-shadow:none;transform:none}.trophy-room-template .next-achievement-reserved-slot .achievement-progress-bar{background:var(--color-lighter-gray)}.trophy-room-template .next-achievement-reserved-slot .next-achievement-content{opacity:.52}.trophy-room-placeholder,.trophy-room-template .next-achievement-reserved-slot .achievement-icon{color:var(--color-secondary-text)}.trophy-room-placeholder{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.trophy-room-placeholder-buttons{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:center}.trophy-room-placeholder-icon{display:flex;width:80px;height:80px;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:50%;opacity:.3;color:var(--color-secondary-text);background:var(--color-lighter-gray);font-size:2.4rem;font-weight:700}.trophy-room-placeholder-kanji{border:3px double hsla(0,0%,100%,.75);opacity:1;color:#fff;background:var(--ghost-accent-color,#a7312a);box-shadow:0 9px 24px rgba(167,49,42,.22);font-family:var(--font-serif,Georgia,"Times New Roman",serif)}.trophy-room-placeholder-text{margin-bottom:.5rem;font-size:1.8rem;font-weight:500}.trophy-room-placeholder-subtitle{max-width:400px;opacity:.7;font-size:1.4rem;line-height:1.5}.trophy-room-placeholder-icon.trophy-room-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.stats-overview-game{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.stats-card.stats-card-achievement,.stats-card.stats-card-primary{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border:1px solid var(--ghost-accent-color)}.stats-progress-section{margin-bottom:4rem}.overall-progress{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;margin-bottom:3rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.overall-progress:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.progress-text{font-size:1.6rem;color:var(--color-darker-gray);font-weight:500}.progress-percentage{font-size:2.4rem;font-weight:700;color:var(--ghost-accent-color)}.progress-bar-container{width:100%;height:12px;background:var(--color-lighter-gray);border-radius:12px;overflow:hidden;border:1px solid var(--color-border)}.progress-bar-fill{height:100%;background:var(--ghost-accent-color);transition:width 1s ease-out;border-radius:12px}.themes-progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.theme-progress-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s}.theme-progress-card.completed{background:linear-gradient(135deg,rgba(40,167,69,.05),rgba(40,167,69,.05));border-color:#28a745;cursor:pointer;position:relative;overflow:hidden}.theme-progress-card.completed:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,87,0,.08),rgba(255,140,0,.08));opacity:0;transition:opacity .3s;z-index:0}.theme-progress-card.completed:after{content:"📥 Descargar certificado";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--ghost-accent-color);color:#fff;padding:1rem 2rem;border-radius:12px;font-size:1.4rem;font-weight:600;opacity:0;transition:opacity .3s;z-index:2;white-space:nowrap;box-shadow:0 6px 16px rgba(255,87,0,.3)}.game-progress-card.completed:after{content:"📥 Descargar diploma"}.theme-progress-card.completed:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,87,0,.25);border-color:var(--ghost-accent-color)}.theme-progress-card.completed:hover:after,.theme-progress-card.completed:hover:before{opacity:1}.theme-progress-card.completed:hover .theme-progress-header,.theme-progress-card.completed:hover .theme-progress-stats{opacity:.3;filter:blur(2px)}.theme-progress-card.completed .theme-progress-header,.theme-progress-card.completed .theme-progress-stats{position:relative;z-index:1;transition:opacity .2s,filter .2s}.theme-progress-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.theme-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.theme-progress-title{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0}.theme-completed-badge{width:32px;height:32px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700}.theme-progress-stats{display:flex;gap:2rem}.theme-stat{flex:1;text-align:center}.theme-stat-label{display:block;font-size:1.2rem;color:var(--color-secondary-text);margin-bottom:.5rem}.theme-stat-value{display:block;font-size:2rem;font-weight:700;color:var(--color-darker-gray)}.theme-not-played{width:100%;text-align:center;color:var(--color-secondary-text);font-size:1.4rem;padding:1rem 0}.stats-leaderboard-section{margin-bottom:4rem}.global-position-card{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border:1px solid var(--ghost-accent-color);border-radius:12px;padding:3rem;display:flex;align-items:center;justify-content:center;gap:3rem;margin-bottom:3rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.global-position-card:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.position-rank{font-size:5rem;font-weight:700;color:var(--ghost-accent-color);line-height:1}.position-info{text-align:left}.position-label{font-size:1.6rem;color:var(--color-secondary-text);margin-bottom:.5rem}.position-percentile{font-size:2rem;font-weight:600;color:var(--color-darker-gray)}.top-players-list{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.top-players-list:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.top-players-list h3{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.top-players-grid{display:flex;flex-direction:column;gap:.8rem}.top-player-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background-color:var(--color-lighter-gray);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,background-color .2s,transform .2s;border:1px solid var(--color-border)}.top-player-item:hover{background-color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.top-player-item.current-user{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border:1px solid var(--ghost-accent-color)}.top-player-item.current-user:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.player-rank{font-size:1.6rem;font-weight:700;color:var(--ghost-accent-color);min-width:3rem}.player-name{flex:1;font-size:1.4rem;color:var(--color-darker-gray);padding:0 1rem;font-weight:600}.player-total-score{font-size:1.4rem;font-weight:600;color:var(--ghost-accent-color)}.no-data{padding:2rem;font-size:1.4rem}.no-data,.stats-achievements-section .no-data{text-align:center;color:var(--color-secondary-text)}.stats-achievements-section .no-data{font-size:1.6rem;padding:3rem 2rem;background:var(--color-lighter-gray);border-radius:12px;margin-top:2rem}.achievement-date{color:var(--color-secondary-text)}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}#themes-progress-grid{transition:opacity .15s}@media(max-width:767px){.stats-overview-game{gap:1.5rem}.stats-overview-game,.themes-progress-grid{grid-template-columns:1fr}.theme-progress-stats{gap:1rem}.global-position-card{flex-direction:column;text-align:center;gap:1.5rem;padding:2rem}.position-info{text-align:center}.pagination-btn{width:100%;justify-content:center}.pagination-info{order:-1}.rarity-scroll-hint{display:none}}@media(max-width:480px){.position-rank{font-size:4rem}}.streak-progress-section{margin-bottom:4rem}.streak-container{display:flex;gap:2rem;align-items:stretch}.streak-container.streak-empty-state{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);justify-content:center;align-items:center;min-height:150px}.streak-empty-content{text-align:center}.streak-empty-icon{font-size:3rem;display:block;margin-bottom:1rem;opacity:.5}.streak-empty-text{color:var(--color-secondary-text);font-size:1.5rem;margin:0}.streak-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;flex:1}.streak-stats-grid .stats-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;margin:0;min-width:0}.streak-stats-grid .stats-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.streak-stats-grid .stats-card-icon{font-size:2.8rem;flex-shrink:0}.streak-stats-grid .stats-card-content{flex:1}.streak-stats-grid .stats-card-value{font-size:3.2rem;font-weight:700;color:var(--color-darker-gray);line-height:1;margin-bottom:.5rem}.streak-stats-grid .stats-card-label{font-size:1.4rem;color:var(--color-secondary-text);font-weight:500}.streak-stats-grid .streak-card-best,.streak-stats-grid .streak-card-current,.streak-stats-grid .streak-card-current.frozen,.streak-stats-grid .streak-card-current.lost,.streak-stats-grid .streak-card-days,.streak-stats-grid .streak-card-time{border-color:var(--color-border)}.streak-source-summary{font-size:1.6rem;line-height:1;padding:.5rem 1rem;border-radius:12px;display:inline-flex;align-items:center;gap:.3rem;font-weight:500;cursor:help;transition:transform .2s,box-shadow .2s;position:relative}.streak-source-summary:hover{transform:scale(1.05)}.streak-source-summary:after{content:attr(data-tooltip);transform:translateX(-50%) translateY(-4px);background:#fff;color:var(--color-secondary-text);padding:.35rem .7rem;border-radius:8px;font-size:1.05rem;font-weight:500;white-space:nowrap;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);border:1px solid var(--color-border)}.streak-source-summary:after,.streak-source-summary:before{position:absolute;bottom:100%;left:50%;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100}.streak-source-summary:before{content:"";transform:translateX(-50%) translateY(4px);border:6px solid transparent;border-top-color:var(--color-border)}.streak-source-summary:hover:after,.streak-source-summary:hover:before{opacity:1;visibility:visible}.streak-source-summary.vocab{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));color:var(--ghost-accent-color);border:1px solid rgba(255,87,0,.4)}.streak-source-summary.vocab:hover{box-shadow:0 2px 8px rgba(255,87,0,.2)}.streak-source-summary.pron{background:rgba(59,130,246,.1);color:#3b82f6;border:1px solid rgba(59,130,246,.4)}.streak-source-summary.pron:hover{box-shadow:0 2px 8px rgba(59,130,246,.2)}.streak-source-summary.homework{background:rgba(168,85,247,.1);color:#a855f7;border:1px solid rgba(168,85,247,.4)}.streak-source-summary.homework:hover{box-shadow:0 2px 8px rgba(168,85,247,.2)}.streak-source-summary.game{background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent);color:var(--ghost-accent-color);border:1px solid color-mix(in srgb,var(--ghost-accent-color) 42%,transparent)}.streak-source-summary.game:hover{box-shadow:0 2px 8px color-mix(in srgb,var(--ghost-accent-color) 24%,transparent)}.streak-source-summary.both{background:rgba(16,185,129,.1);color:#10b981;border:1px solid rgba(16,185,129,.4)}.streak-source-summary.both:hover{box-shadow:0 2px 8px rgba(16,185,129,.2)}.streak-source-summary.all{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,165,0,.15));color:#f59e0b;border:1px solid rgba(245,158,11,.5)}.streak-source-summary.all:hover{box-shadow:0 2px 8px rgba(245,158,11,.3)}.streak-calendar-side{flex:1;min-width:0;display:flex;align-items:stretch}.streak-calendar{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.2rem;display:flex;flex-direction:column;flex:1;min-height:245px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.streak-calendar:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.streak-calendar-header{font-size:1.4rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:.5rem;text-align:center;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.streak-calendar-month-text{flex:1;text-align:center}.calendar-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#fff;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.calendar-nav-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.calendar-nav-btn:disabled{opacity:.3;cursor:not-allowed}.calendar-nav-arrow{width:12px;height:12px;-o-object-fit:contain;object-fit:contain}.calendar-nav-arrow-left{transform:rotate(180deg)}.streak-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.streak-calendar-weekdays span{text-align:center;font-size:1rem;font-weight:700;color:var(--color-darker-gray);padding:.3rem 0}.streak-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;flex:1;align-content:start}.streak-cal-day{padding:.4rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .15s;cursor:default;position:relative}.streak-cal-day[data-tooltip]:not([data-tooltip=""]):hover:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:#fff;color:var(--color-secondary-text);padding:.5rem 1rem;border-radius:12px;font-size:1.2rem;font-weight:500;white-space:nowrap;z-index:100;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.08);border:1px solid var(--color-border)}.streak-cal-day[data-tooltip]:not([data-tooltip=""]):hover{z-index:10}.streak-cal-day.empty{background:transparent}.streak-cal-day .cal-day-num{font-size:1rem;font-weight:500;color:var(--color-secondary-text)}.streak-cal-day.future .cal-day-num{color:var(--color-border);opacity:.5}.streak-cal-day.today{background:rgba(0,0,0,.08);border-radius:20px;border:1px solid rgba(0,0,0,.15);position:relative}.streak-cal-day.today .cal-day-num{color:var(--color-darker-gray);font-weight:700}.streak-cal-day.today.in-streak{background:rgba(255,87,0,.2);border-radius:0}.streak-cal-day.today.in-streak.streak-end{border-radius:0 20px 20px 0}.streak-cal-day.today.in-streak.streak-start{border-radius:20px 0 0 20px}.streak-cal-day.today.in-streak.streak-single{border-radius:20px}.streak-cal-day.studied{background:rgba(16,185,129,.2);border-radius:0;margin-left:-1px;margin-right:-1px;border-top:1px solid rgba(16,185,129,.4);border-bottom:1px solid rgba(16,185,129,.4)}.streak-cal-day.studied.studied-start{border-radius:20px 0 0 20px;margin-left:0;border-left:1px solid rgba(16,185,129,.4)}.streak-cal-day.studied.studied-end{border-radius:0 20px 20px 0;margin-right:0;border-right:1px solid rgba(16,185,129,.4)}.streak-cal-day.studied.studied-middle{border-radius:0}.streak-cal-day.studied.studied-single{border-radius:20px;margin-left:0;margin-right:0;border:1px solid rgba(16,185,129,.4)}.streak-cal-day.studied .cal-day-num{color:#059669;font-weight:600}.streak-cal-day.studied.in-streak{background:rgba(217,164,67,.1);border-radius:0;position:relative;z-index:1;margin-left:-1px;margin-right:-1px;border-color:rgba(217,164,67,.5) currentcolor;border-style:solid none;border-width:1px medium}.streak-cal-day.studied.in-streak.streak-start{border-radius:20px 0 0 20px;margin-left:0;border-left:1px solid rgba(217,164,67,.5)}.streak-cal-day.studied.in-streak.streak-end{border-radius:0 20px 20px 0;margin-right:0;border-right:1px solid rgba(217,164,67,.5)}.streak-cal-day.studied.in-streak.streak-middle{border-radius:0}.streak-cal-day.studied.in-streak.streak-single{border-radius:20px;margin-left:0;margin-right:0;border:1px solid rgba(217,164,67,.5)}.streak-cal-day.studied.in-streak .cal-day-num{color:var(--ghost-accent-color);font-weight:700}.streak-cal-day.frozen{background:rgba(99,102,241,.15);border-radius:0;margin-left:-1px;margin-right:-1px;border-top:1px solid rgba(99,102,241,.4);border-bottom:1px solid rgba(99,102,241,.4);position:relative}.streak-cal-day.frozen.frozen-start{background:linear-gradient(90deg,rgba(16,185,129,.2),rgba(99,102,241,.15) 60%);border-radius:0;margin-left:-1px;border-top:none;border-bottom:none}.streak-cal-day.frozen.frozen-start:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-top:1px solid transparent;border-bottom:1px solid transparent;-o-border-image:linear-gradient(90deg,rgba(16,185,129,.4),rgba(99,102,241,.4) 60%) 1;border-image:linear-gradient(90deg,rgba(16,185,129,.4),rgba(99,102,241,.4) 60%) 1;pointer-events:none;z-index:1}.streak-cal-day.frozen.frozen-end{background:linear-gradient(90deg,rgba(99,102,241,.15) 40%,rgba(16,185,129,.2));border-radius:0;margin-right:-1px;border-top:none;border-bottom:none}.streak-cal-day.frozen.frozen-end:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-top:1px solid transparent;border-bottom:1px solid transparent;-o-border-image:linear-gradient(90deg,rgba(99,102,241,.4) 40%,rgba(16,185,129,.4)) 1;border-image:linear-gradient(90deg,rgba(99,102,241,.4) 40%,rgba(16,185,129,.4)) 1;pointer-events:none;z-index:1}.streak-cal-day.frozen.frozen-single{background:linear-gradient(90deg,rgba(16,185,129,.2),rgba(99,102,241,.15) 50%,rgba(16,185,129,.2));border-radius:0 20px 20px 0;margin-left:-1px;margin-right:0;border-top:none;border-bottom:none;position:relative}.streak-cal-day.frozen.frozen-single:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-top:1px solid rgba(99,102,241,.4);border-bottom:1px solid rgba(99,102,241,.4);border-right:1px solid rgba(99,102,241,.4);pointer-events:none;border-radius:0 20px 20px 0;z-index:1}.streak-cal-day.frozen.frozen-middle{border-radius:0}.streak-cal-day.frozen .cal-day-num{color:#6366f1;font-weight:600}.streak-cal-day .cal-day-overlay{position:absolute;inset:0;pointer-events:none;border-radius:inherit;z-index:0;opacity:0;transition:opacity .18s,background .18s}@keyframes vsa-overlay-fade{0%{opacity:0}to{opacity:1}}.streak-cal-day.in-streak .cal-day-overlay{animation:vsa-overlay-fade .18s ease both}.streak-cal-day .cal-day-num{position:relative;z-index:2}.streak-cal-day.frozen.in-streak{background:rgba(217,164,67,.1);border-color:rgba(217,164,67,.5) currentcolor;border-style:solid none;border-width:1px medium;position:relative;z-index:1}.streak-cal-day.frozen.in-streak .cal-day-overlay{opacity:1;background:linear-gradient(90deg,rgba(217,164,67,.12),rgba(99,102,241,.12) 50%,rgba(217,164,67,.12));mix-blend-mode:multiply}.streak-cal-day.frozen.in-streak.streak-start{border-left:none;margin-left:-1px;border-radius:0}.streak-cal-day.frozen.in-streak.streak-start .cal-day-overlay{background:linear-gradient(90deg,rgba(16,185,129,.2),rgba(99,102,241,.15) 40%,rgba(217,164,67,.15));mix-blend-mode:normal}.streak-cal-day.studied.studied-end.connects-frozen-streak{border-radius:20px 0 0 20px;margin-right:-1px;border-right:none}.streak-cal-day.frozen.in-streak.streak-end{border-right:1px solid rgba(217,164,67,.5);margin-right:0;border-radius:0 20px 20px 0}.streak-cal-day.frozen.in-streak.streak-middle{border-radius:0;background:linear-gradient(90deg,rgba(217,164,67,.1),rgba(99,102,241,.22) 35%,rgba(99,102,241,.22) 65%,rgba(217,164,67,.1));border-top:none;border-bottom:none}.streak-cal-day.frozen.in-streak.streak-middle:before{content:"";position:absolute;inset:0;border-top:1px solid transparent;border-bottom:1px solid transparent;-o-border-image:linear-gradient(90deg,rgba(217,164,67,.5),rgba(99,102,241,.5) 35%,rgba(99,102,241,.5) 65%,rgba(217,164,67,.5)) 1;border-image:linear-gradient(90deg,rgba(217,164,67,.5),rgba(99,102,241,.5) 35%,rgba(99,102,241,.5) 65%,rgba(217,164,67,.5)) 1;pointer-events:none;z-index:1}.streak-cal-day.frozen.in-streak.streak-middle .cal-day-overlay{opacity:0}.streak-cal-day.frozen.in-streak.streak-single{border:1px solid rgba(217,164,67,.5);border-radius:20px;margin-left:0;margin-right:0}.streak-cal-day.frozen.in-streak .cal-day-num{color:var(--ghost-accent-color);font-weight:700}.streak-calendar-legend{display:flex;justify-content:center;gap:1rem;margin-top:.8rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.3rem;font-size:1.1rem;color:var(--color-secondary-text)}.legend-dot{width:12px;height:12px;border-radius:4px}.legend-dot.studied{background:rgba(16,185,129,.3)}.legend-dot.in-streak{background:rgba(217,164,67,.3)}.legend-dot.frozen{background:rgba(99,102,241,.3)}@media(max-width:900px){.streak-container{flex-direction:column}.streak-calendar-side,.streak-stats-grid{width:100%}.streak-source-summary:after,.streak-source-summary:before{display:none}.streak-source-summary:hover{transform:none}}@media(max-width:600px){.streak-stats-grid{grid-template-columns:1fr;gap:1.5rem}.streak-container{gap:1.5rem}.streak-calendar{padding:1rem}.streak-calendar-legend{gap:1rem}.legend-item{font-size:1.1rem}.streak-source-summary:after,.streak-source-summary:before{display:none}.streak-source-summary:hover{transform:none}}.games-hub-shell{--games-accent:var(--ghost-accent-color);--games-surface:color-mix(in srgb, var(--background-color, #fff) 96%, var(--color-primary-text) 4%);--games-surface-strong:color-mix(in srgb, var(--background-color, #fff) 92%, var(--color-primary-text) 8%);color:var(--color-primary-text)}.games-hub-template .gh-section:first-child{padding-top:0}.games-card-index{display:block;color:var(--games-accent);font-size:1.25rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.games-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2rem;margin-top:3rem}.games-card{overflow:hidden;border:1px solid var(--color-border);border-radius:2rem;color:inherit;background:var(--games-surface);box-shadow:0 1.2rem 3.6rem rgba(0,0,0,.07);transition:border-color .18s,box-shadow .18s}.games-card:hover{border-color:var(--color-border);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);opacity:1}[data-theme=dark] .games-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)}.games-card-featured{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1.45fr) minmax(30rem,0.72fr)}.games-card-standard{display:grid;grid-column:span 4;grid-template-rows:auto 1fr;min-width:0}.games-card-media{position:relative;min-width:0;margin:0;overflow:hidden;background:var(--games-surface-strong)}.games-card-featured .games-card-media{height:auto;min-height:42rem;border-right:1px solid var(--color-border)}.games-card-featured .games-card-media img{position:absolute;inset:0}.games-card-standard .games-card-media{aspect-ratio:16/10;border-bottom:1px solid var(--color-border)}.games-card-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.games-card-badge{position:absolute;display:grid;place-items:center;color:#fff;background:var(--games-accent);box-shadow:0 .7rem 2rem rgba(0,0,0,.18);top:1.6rem;left:1.6rem;min-height:3.2rem;padding:0 1.2rem;border-radius:99rem;font-size:1.2rem;font-weight:750}.games-card-content{display:flex;flex-direction:column;padding:calc(clamp(2.2rem,3vw,3.6rem))}.games-card-content h2{margin:.7rem 0 1.1rem;font-family:var(--font-sans);font-weight:800;letter-spacing:0}.games-card-featured h2{font-size:calc(clamp(3rem,4vw,4.6rem))}.games-card-standard h2{font-size:2.6rem}.games-card-content p{margin:0;color:var(--color-secondary-text);line-height:1.6}.games-card-tags{display:flex;flex-wrap:wrap;gap:.8rem;padding:0;margin:2rem 0;list-style:none}.games-card-tags li{padding:.45rem .9rem;border:1px solid var(--color-border);border-radius:99rem;color:var(--color-secondary-text);font-size:1.25rem;font-weight:650}.games-card-action{display:flex;justify-content:space-between;gap:2rem;align-items:center;margin-top:auto;padding-top:1.4rem;border-top:1px solid var(--color-border);color:var(--games-accent);font-weight:800}.games-card-action>span{font-size:2.2rem;line-height:1}@media(max-width:900px){.games-card-featured{grid-template-columns:1fr}.games-card-standard{grid-column:1/-1}.games-card-featured .games-card-media{min-height:0;border-right:0;border-bottom:1px solid var(--color-border);aspect-ratio:16/9}}@media(prefers-reduced-motion:reduce){.games-card{transition:none}}.voice-button{display:inline-flex;align-items:center;gap:.6rem;padding:0;margin-left:1.6rem;background:transparent;border:none;cursor:pointer;color:var(--color-secondary-text);font-size:1.4rem;font-family:inherit;transition:color .2s,opacity .2s;position:relative}.voice-button:hover:not(:disabled){color:var(--ghost-accent-color)}.voice-button:disabled{cursor:not-allowed;opacity:.7}.voice-button svg{width:16px;height:16px;flex-shrink:0;transition:transform .2s}.voice-button:hover:not(:disabled) svg{transform:scale(1.1)}.voice-spinner{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.voice-spinner svg{animation:interactiveSpin 2s linear infinite}.voice-button.voice-loading,.voice-button.voice-playing{color:var(--ghost-accent-color)}.voice-button.voice-playing svg{animation:voicePlaybackPulse 1.5s ease-in-out infinite}@keyframes voicePlaybackPulse{0%,to{opacity:1}50%{opacity:.6}}.voice-button.voice-paused{color:var(--ghost-accent-color)}.voice-button.voice-error{color:#dc3545}.voice-button.voice-processing{color:var(--ghost-accent-color);opacity:.9}.voice-button.voice-processing .voice-button-text{animation:voiceProcessingPulse 1.5s ease-in-out infinite}@keyframes voiceProcessingPulse{0%,to{opacity:1}50%{opacity:.5}}.voice-duration-tooltip{position:absolute;top:-30px;left:50%;transform:translateX(-50%);background:var(--color-darker-gray);color:#fff;padding:.4rem .8rem;border-radius:12px;font-size:1.2rem;white-space:nowrap;pointer-events:none;animation:voiceTooltipEnter .3s ease}@keyframes voiceTooltipEnter{0%{opacity:0;transform:translateX(-50%) translateY(5px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.voice-duration-tooltip:after{content:"";top:100%;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--color-darker-gray)}.voice-duration-tooltip:after,.voice-error-tooltip{position:absolute;left:50%;transform:translateX(-50%)}.voice-error-tooltip{bottom:calc(100% + 10px);background:#dc3545;color:#fff;padding:8px 16px;border-radius:12px;font-size:1.3rem;white-space:nowrap;pointer-events:none;animation:voiceTooltipEnter .3s ease;z-index:1000;max-width:250px;text-align:center;box-shadow:0 6px 16px rgba(220,53,69,.3)}.voice-error-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #dc3545}.voice-floating-player{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(100px);background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:4px 8px;display:flex;align-items:center;gap:10px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;z-index:9999;min-width:320px;max-width:380px;height:44px;opacity:0;pointer-events:none;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95)}.voice-floating-player.visible{transform:translateX(-50%) translateY(0);opacity:1;pointer-events:auto}.voice-player-controls{display:flex;align-items:center;gap:6px}.voice-player-btn{background:transparent;border:none;cursor:pointer;padding:0;border-radius:50%;color:var(--color-primary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s;display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0}.voice-player-btn:hover{background:rgba(0,0,0,.04)}.voice-player-btn.play-pause{background:var(--ghost-accent-color);color:#fff;width:32px;height:32px;box-shadow:0 6px 16px rgba(255,87,0,.25)}.voice-player-btn.play-pause:hover{transform:scale(1.05);box-shadow:0 6px 16px rgba(255,87,0,.35);background:var(--ghost-accent-color)}.voice-player-btn svg{width:16px;height:16px}.voice-player-btn.close{width:26px;height:26px;opacity:.5;transition:opacity .2s}.voice-player-btn.close:hover{opacity:.9;background:rgba(0,0,0,.04)}.voice-player-btn.close svg{width:12px;height:12px}.voice-progress-container{flex:1;display:flex;align-items:center;gap:10px}.voice-progress-bar{flex:1;height:2px;background:rgba(0,0,0,.08);border-radius:12px;position:relative;cursor:pointer;overflow:hidden;transition:height .2s}.voice-progress-bar:hover{height:4px}.voice-progress-fill{position:absolute;left:0;top:0;height:100%;background:var(--ghost-accent-color);border-radius:12px;transition:width .1s linear;position:relative;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.voice-progress-fill:after{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:10px;height:10px;background:var(--ghost-accent-color);border-radius:50%;opacity:0;transition:opacity .2s;box-shadow:0 6px 16px rgba(255,87,0,.3)}.voice-progress-bar:hover .voice-progress-fill:after{opacity:1}.voice-time{font-size:10px;color:var(--color-secondary-text);white-space:nowrap;min-width:60px;text-align:right;font-weight:500;opacity:.7;letter-spacing:-.02em}.voice-progress-bar.seeking .voice-progress-fill{transition:none}@keyframes slideUpFade{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes slideUpFadeMobile{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media(max-width:767px){.voice-button{margin-left:1.2rem}.voice-button-text{display:none}.voice-button svg{width:18px;height:18px}.voice-error-tooltip{font-size:1.2rem;padding:.5rem 1rem;max-width:200px;bottom:calc(100% + 8px)}.voice-floating-player{bottom:12px;min-width:calc(100% - 24px);max-width:calc(100% - 24px);padding:3px 6px;left:50%;transform:translateX(-50%) translateY(100px);border-radius:12px;height:40px}.voice-floating-player.visible{transform:translateX(-50%) translateY(0);animation:slideUpFadeMobile .3s cubic-bezier(.34,1.56,.64,1) forwards}.voice-player-controls{gap:4px}.voice-player-btn{width:26px;height:26px}.voice-player-btn.play-pause{width:30px;height:30px}.voice-player-btn svg{width:14px;height:14px}.voice-player-btn.close{width:24px;height:24px}.voice-player-btn.close svg{width:10px;height:10px}.voice-time{font-size:9px;min-width:55px}.voice-progress-container{gap:8px}}.social-networks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;margin-top:3rem}.social-network-card{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:3rem;text-decoration:none;color:inherit;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.social-network-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ghost-accent-color);transform:translateX(-100%);transition:transform .3s}.social-network-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);opacity:1}.social-network-card:hover:before{transform:translateX(0)}.social-network-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:2rem;color:#fff;transition:transform .3s,box-shadow .3s}.social-network-icon.instagram{background:radial-gradient(circle at 30% 107%,#fdf497,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.social-network-icon.threads{background:#000}.social-network-icon.x{background:#1da1f2}.social-network-icon.youtube{background:red}.social-network-card:hover .social-network-icon{transform:scale(1.1)}.social-network-card:hover .social-network-icon.instagram{box-shadow:0 6px 16px rgba(253,89,73,.4)}.social-network-card:hover .social-network-icon.threads{box-shadow:0 6px 16px rgba(0,0,0,.4)}.social-network-card:hover .social-network-icon.x{box-shadow:0 6px 16px rgba(29,161,242,.4)}.social-network-card:hover .social-network-icon.youtube{box-shadow:0 6px 16px rgba(255,0,0,.4)}.social-network-icon svg{width:40px;height:40px}.social-network-info{width:100%}.social-network-name{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem}.social-network-description{font-size:1.6rem;line-height:1.5;color:var(--color-secondary-text);margin-bottom:1.5rem}.social-network-handle{display:inline-block;font-size:1.4rem;font-weight:600;color:var(--ghost-accent-color);padding:.5rem 1.5rem;background:rgba(255,87,0,.1);border-radius:12px}@media(max-width:767px){.social-networks-grid{grid-template-columns:1fr;gap:2rem}.social-network-card{padding:2rem}.social-network-icon{width:60px;height:60px}.social-network-icon svg{width:30px;height:30px}.social-network-name{font-size:2rem}}.share-buttons{justify-content:space-between;margin-top:24px;border-top:1px solid var(--color-border);padding-top:20px}.share-btn,.share-buttons{display:flex;align-items:center}.share-btn{background:none;border:none;padding:0;cursor:pointer}.share-socials{display:flex;gap:10px}.share-icon{width:30px;height:30px;-o-object-fit:contain;object-fit:contain}.share-title{font-size:16px;font-weight:700}.recommendations-section{margin:3rem 0;padding:0;text-align:center}.recommendations-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin-bottom:3rem;letter-spacing:-.01em}.recommendations-list{display:flex;gap:1.2rem;justify-content:center;flex-wrap:nowrap;width:100%;padding-bottom:48px}.recommendation-card{display:flex;flex-direction:row;background:#fff;border-radius:12px;overflow:hidden;border:1px solid var(--color-border);width:100%;transition:transform .2s,box-shadow .2s;align-items:flex-start}.recommendation-card:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 6px 16px rgba(0,0,0,.13);opacity:1}.recommendation-image{width:100px;height:100%;overflow:hidden;background:var(--color-lighter-gray);border-right:1px solid var(--color-border);display:flex;align-items:center;justify-content:center}.recommendation-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;border-radius:0}.recommendation-content{flex:1;padding:1rem 1.2rem;text-align:left;display:flex;flex-direction:column;justify-content:center;min-width:0}.recommendation-title{font-size:1.4rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 .3rem;line-height:1.25;letter-spacing:-.01em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.recommendation-excerpt{font-size:1.1rem;color:var(--color-secondary-text);margin-top:.2rem;line-height:1.5;min-height:1.8em;max-height:2.8em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}@media(max-width:767px){.recommendations-list{flex-direction:column;gap:1rem;align-items:center;flex-wrap:nowrap}.recommendation-card{max-width:100%;min-width:0;width:100%}.recommendation-image{width:100px;height:100%}.recommendation-content{padding:.8rem 1rem}.recommendation-title{font-size:1.1rem}.recommendation-excerpt{font-size:.98rem}}.account-template .gh-section{padding:2rem 0}.account-template .section-header{margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.account-template .section-title{font-size:3.2rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2;margin:0 0 .5rem}.account-section{margin-bottom:4rem}.card-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin-bottom:3rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);text-align:left;width:100%}.card-header{display:none}.account-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;transition:background .3s,border .3s,padding .3s;max-width:1200px;margin-left:auto;margin-right:auto;width:100%}.account-container.placeholder-state,.account-container.transitioning{background:var(--color-lighter-gray,#f8f8f8);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.account-container.placeholder-state:hover,.account-container.transitioning:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.account-container.has-content:not(.transitioning){display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.account-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.account-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.profile-info{display:flex;gap:3rem;align-items:flex-start}.profile-avatar{flex-shrink:0}.avatar-container{position:relative;width:100px;height:100px}.avatar-container img{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-border);transition:border-color .2s}.avatar-container.has-subscription img{border:1px solid var(--ghost-accent-color)}.avatar-edit-btn{position:absolute;width:25px;height:25px;bottom:6px;right:2px;background:var(--ghost-accent-color);border:1px solid var(--color-border);border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.avatar-edit-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);opacity:1}.profile-details{flex:1}.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.info-item{display:flex;flex-direction:column;gap:.4rem}.info-label{font-size:1.2rem;font-weight:600;color:var(--color-secondary-text);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1.5rem;color:var(--color-primary-text);font-weight:500;padding:.8rem 1.2rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px}.profile-actions{margin-top:1rem}.edit-link{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:1.3rem;font-weight:500;color:var(--ghost-accent-color);text-decoration:none;transition:color .2s,background .2s;border-radius:12px;border:none;background:none;cursor:pointer}.edit-link:hover{color:var(--ghost-accent-color-hover,#e64a00);text-decoration:none;background:rgba(255,87,0,.05)}.copy-user-id-btn{color:var(--ghost-accent-color)}.copy-user-id-btn:hover{color:var(--ghost-accent-color-hover,#e64a00);background:rgba(255,87,0,.05)}.copy-user-id-btn.copied{color:#28a745}.copy-user-id-btn.copied:hover{color:#28a745;background:rgba(40,167,69,.05)}.edit-link.delete-account-link{color:#dc3545}.edit-link.delete-account-link:hover{color:#c82333;background:rgba(220,53,69,.05)}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:4rem}.stats-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2.5rem;display:flex;align-items:center;gap:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.stats-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.stats-card-icon{font-size:3.6rem;flex-shrink:0}.stats-card-content{flex:1}.stats-card-value{font-size:3.2rem;font-weight:700;color:var(--color-darker-gray);line-height:1;margin-bottom:.5rem}.stats-card-label{font-size:1.4rem;color:var(--color-secondary-text);font-weight:500}.subscription-box{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.subscription-box:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.subscription-box.active{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));border-color:var(--ghost-accent-color);border-left:4px solid var(--ghost-accent-color);transition:box-shadow .2s}.subscription-box.active:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.subscription-inner{display:flex;align-items:center;gap:2rem;width:100%}.subscription-image{flex-shrink:0;position:relative;width:100px;height:100px}.tier-logo{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid var(--color-border);transition:border-color .2s}.subscription-box.active .tier-logo:hover{border-color:var(--ghost-accent-color)}.subscription-box:not(.active) .tier-logo{transition:none}.subscription-box:not(.active) .tier-logo:hover{border-color:var(--color-border)}.subscription-image:after{position:absolute;width:25px;height:25px;bottom:6px;right:2px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:1px solid var(--color-border)}.subscription-image:not(.inactive):after{content:"✓";background:#28a745;color:#fff}.subscription-image.inactive:after{content:"✕";background:#6c757d;color:#fff}.subscription-invite{text-align:center;margin-bottom:2rem}.invite-title{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);line-height:1.2}.subscription-benefits{display:flex;gap:1rem;margin:0 auto 2.5rem;max-width:560px;justify-content:center}.benefit-item{display:flex;align-items:center;gap:2rem;padding:1rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;flex:1;min-width:0}.benefit-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);transform:translateY(-1px)}.benefit-icon{font-size:1.6rem;flex-shrink:0}.benefit-text{font-size:1.2rem;color:var(--color-darker-gray);line-height:1.4;word-wrap:break-word}.benefit-text strong{font-weight:600;color:var(--color-primary-text)}.subscription-text{flex:1}.subscription-thanks{font-size:1.3rem;color:var(--color-secondary-text);margin:1.5rem 0 0;font-style:italic;opacity:.9;line-height:1.4;text-align:center}.subscription-actions{display:flex;justify-content:center;margin-top:1.5rem}.strikes-section .account-card{border:1px solid var(--color-border);border-radius:12px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.strikes-section .account-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.strikes-overview{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.strikes-info h4{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 .5rem}.strikes-info p{font-size:1.4rem;color:var(--color-secondary-text);margin:.3rem 0;line-height:1.5}.warning-text{color:#dc3545;font-weight:600;font-style:italic}.strikes-visual{gap:.5rem}.strike-icon,.strikes-visual{display:flex;align-items:center}.strike-icon{width:40px;height:40px;border-radius:50%;justify-content:center;transition:opacity .2s,transform .2s;background:var(--color-bg-secondary);border:1px solid var(--color-border)}.strike-icon.active,.strike-icon.frozen{opacity:1;transform:scale(1);background:var(--color-lighter-gray);border:1px solid var(--color-border)}.strike-icon.inactive{opacity:.3;transform:scale(.9);background:var(--color-bg-secondary);border:1px solid var(--color-border)}.strike-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.appealable-section{margin-top:2rem;padding-top:2rem}.appealable-section h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem}.appealable-comments{display:flex;flex-direction:column;gap:1.5rem}.appealable-comment{padding:2rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;border-left:4px solid var(--ghost-accent-color);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.appealable-comment:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.comment-content{margin-bottom:2rem}.comment-content h5{margin:2rem;color:var(--color-primary-text);font-weight:600;letter-spacing:-.01em}.comment-html{padding:2rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border:1px solid var(--ghost-accent-color);border-radius:12px;margin-bottom:2rem;color:var(--color-primary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;max-width:100%;overflow:hidden}.comment-html:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.comment-html p{margin:.75rem 0}.comment-html p:first-child{margin-top:0}.comment-html p:last-child{margin-bottom:0}.comment-html a{color:#d9a443;text-decoration:none;font-weight:500;word-break:break-all;overflow-wrap:break-word;hyphens:auto}.comment-html a:hover{text-decoration:underline}.moderation-reason{color:var(--color-secondary-text);padding:1rem;background:rgba(255,193,7,.1);border-radius:12px;border-left:3px solid var(--ghost-accent-color);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.strikes-info-text:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.moderation-reason strong{color:var(--color-primary-text);font-weight:600}.appeal-form{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.appeal-form h5{margin:2rem;color:var(--color-primary-text);font-weight:600;letter-spacing:-.01em}.appeal-help{margin:.5rem 0;color:var(--color-secondary-text);font-size:1.6rem;line-height:1.6}.appeal-justification{width:100%;padding:1rem;border:1px solid var(--color-border);border-radius:12px;font-family:inherit;line-height:1.5;resize:vertical;min-height:100px;background:#fff;color:var(--color-primary-text);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;margin-top:2rem}.appeal-justification:focus{outline:none;border-color:#d9a443;box-shadow:0 6px 16px rgba(217,164,67,.25)}.appeal-justification::-moz-placeholder{color:var(--color-secondary-text);font-style:italic}.appeal-justification::placeholder{color:var(--color-secondary-text);font-style:italic}.appeal-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.appeal-btn{background:var(--ghost-accent-color);color:#fff;font-size:1.6rem;font-weight:600;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .3s;min-width:190px;height:42px;padding:8px 16px;border:none}.appeal-btn:hover{opacity:.9;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.appeal-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.char-counter{font-size:1.4rem;font-weight:500;transition:color .3s;color:#6c757d}.char-counter.warning{color:#d9a443}.char-counter.danger{color:#dc3545}.char-counter.normal{color:#28a745}.strikes-info-text{margin-top:2.5rem;padding:2rem;background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border)}.strikes-info-content{display:flex;gap:3rem;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.strikes-expiration-info{flex:1;min-width:0}.expiration-text{color:var(--color-primary-text);font-weight:600;margin:1rem 0;line-height:1.6}.expiration-description,.strikes-explanation p{margin:1rem 0;color:var(--color-secondary-text);line-height:1.6}.expiration-encouragement{margin:1.5rem 0 0;padding:1rem 1.5rem;background:rgba(255,193,7,.1);border-left:3px solid var(--ghost-accent-color);border-bottom:1px solid var(--ghost-accent-color);border-top:1px solid var(--ghost-accent-color);border-right:1px solid var(--ghost-accent-color);border-radius:12px;color:var(--color-primary-text);line-height:1.6;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.expiration-encouragement:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.expiration-encouragement a{color:var(--ghost-accent-color);text-decoration:underline;font-weight:500}.expiration-encouragement strong{color:var(--color-primary-text);font-weight:600}.strikes-image-container{flex:1;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:12px;padding:2rem;min-width:0}.strikes-info-image{width:100%;max-width:180px;height:auto;-o-object-fit:contain;object-fit:contain}.strikes-explanation p:first-child{margin-top:0}.strikes-explanation p:last-child{margin-bottom:0}.strikes-explanation strong{color:var(--color-primary-text);font-weight:600}.stats-achievements-section{margin-bottom:4rem}.stats-section-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin-bottom:3rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);text-align:left}.stats-section-title-flex{display:flex;justify-content:space-between;align-items:center}.achievement-summary{font-size:1.6rem;font-weight:400;color:var(--color-secondary-text);margin-left:auto}.achievement-stats-overview{display:grid;grid-template-columns:280px 1fr;gap:2rem;margin-bottom:3rem}.stats-card-achievement{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border:1px solid var(--ghost-accent-color);border-radius:12px;padding:3rem;display:flex;align-items:center;gap:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.stats-card-achievement:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,87,0,.1)}.achievement-rarity-section{position:relative}.rarity-section-title{font-size:1.4rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:1.5rem;display:none}.achievement-rarity-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1.5rem}.rarity-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;text-align:center;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.rarity-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;transition:height .3s;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.rarity-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.rarity-card:hover:before{height:8px}.rarity-card.common:before{background:#718096}.rarity-card.uncommon:before{background:#48bb78}.rarity-card.rare:before{background:#4299e1}.rarity-card.epic:before{background:#9f7aea}.rarity-card.legendary:before{background:linear-gradient(135deg,#f6ad55,#ed8936)}.rarity-header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.rarity-name{font-size:1.1rem;font-weight:600;color:var(--color-darker-gray)}.rarity-progress-circle{position:relative;width:80px;height:80px;margin:0 auto}.circular-chart{display:block;margin:0 auto;max-width:100%;max-height:100%}.circle-bg{stroke:var(--color-lighter-gray)}.circle,.circle-bg{fill:none;stroke-width:2.8}.circle{stroke-linecap:round;animation:progress 1s ease-out forwards;transform:rotate(-90deg);transform-origin:center}.rarity-card.common .circle{stroke:#718096}.rarity-card.uncommon .circle{stroke:#48bb78}.rarity-card.rare .circle{stroke:#4299e1}.rarity-card.epic .circle{stroke:#9f7aea}.rarity-card.legendary .circle{stroke:#f6ad55}.percentage{fill:var(--color-darker-gray);font-size:.5em;text-anchor:middle;font-weight:700}.next-achievements-section{margin-bottom:3rem}.subsection-title{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:1.5rem}.next-achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.next-achievement-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.next-achievement-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.achievement-progress-bar{height:4px;background:var(--color-lighter-gray);position:relative}.achievement-progress-fill{height:100%;background:var(--ghost-accent-color);transition:width .3s}.next-achievement-content{padding:1.5rem;display:flex;align-items:center;gap:1.5rem}.achievement-info{flex:1}.achievement-progress-text{font-size:1.2rem;color:var(--color-secondary-text);margin-top:.5rem}.achievement-points{font-size:1.2rem;font-weight:600;color:var(--ghost-accent-color);background:rgba(217,164,67,.1);padding:.5rem 1rem;border-radius:6px;white-space:nowrap}.achievements-tabs{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.achievements-tabs:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.tabs-header{display:flex;border-bottom:1px solid var(--color-border);overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{flex:1;padding:1.5rem 2rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1.4rem;font-weight:500;color:var(--color-secondary-text);transition:background .2s,color .2s,border-color .2s;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:.8rem}.tab-button:hover{background:var(--color-lighter-gray)}.tab-button.active{color:var(--ghost-accent-color);border-bottom-color:var(--ghost-accent-color);background:rgba(255,87,0,.05)}.tab-badge{font-size:1.2rem;padding:.2rem .6rem;background:var(--color-lighter-gray);border-radius:12px}.tab-button.active .tab-badge{background:var(--ghost-accent-color);color:#fff}.tabs-content{padding:2rem}.tab-content{display:none}.tab-content.active{display:block}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.achievement-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;display:flex;gap:1.5rem;align-items:center;position:relative;transition:box-shadow .2s,transform .2s}.achievement-card.unlocked{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1))}.achievement-card.locked{opacity:.5}.account-template .achievement-date{color:var(--color-secondary-text)}.achievement-card.recent{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));box-shadow:0 0 0 2px var(--achievement-rarity,var(--ghost-accent-color,#ff5700)),0 8px 24px var(--achievement-rarity-soft,rgba(255,87,0,.35));animation:account-card-pulse 2s ease-in-out .5s 1}@keyframes account-card-pulse{0%,to{box-shadow:0 0 0 2px var(--achievement-rarity,var(--ghost-accent-color,#ff5700)),0 8px 24px var(--achievement-rarity-soft,rgba(255,87,0,.35))}50%{box-shadow:0 0 0 6px var(--achievement-rarity,var(--ghost-accent-color,#ff5700)),0 12px 36px var(--achievement-rarity-soft,rgba(255,87,0,.55))}}.achievement-card.unlocked.rarity-common:hover{box-shadow:0 6px 16px rgba(113,128,150,.3)}.achievement-card.unlocked.rarity-uncommon:hover{box-shadow:0 6px 16px rgba(72,187,120,.3)}.achievement-card.unlocked.rarity-rare:hover{box-shadow:0 6px 16px rgba(66,153,225,.3)}.achievement-card.unlocked.rarity-epic:hover{box-shadow:0 6px 16px rgba(159,122,234,.3)}.achievement-card.unlocked.rarity-legendary:hover{box-shadow:0 6px 16px rgba(246,173,85,.4)}.achievement-card.rarity-common{border-color:#718096;border-left:4px solid #718096}.achievement-card.rarity-uncommon{border-color:#48bb78;border-left:4px solid #48bb78}.achievement-card.rarity-rare{border-color:#4299e1;border-left:4px solid #4299e1}.achievement-card.rarity-epic{border-color:#9f7aea;border-left:4px solid #9f7aea}.achievement-card.rarity-legendary{border-color:#f6ad55;border-left:4px solid #f6ad55;background:linear-gradient(135deg,rgba(246,173,85,.05),rgba(237,137,54,.05))}.achievement-icon{font-size:3.2rem;flex-shrink:0}.achievement-content{flex:1}.achievement-title{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .5rem}.achievement-description{font-size:1.3rem;color:var(--color-secondary-text);margin:0}.achievement-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.8rem;font-size:1.2rem}.donations-content{display:flex;flex-direction:column;gap:1.5rem}.donaciones-box{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:2rem 1.5rem;margin-bottom:1.2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;flex-direction:column;gap:1.2rem}.donaciones-box:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.donaciones-info{font-size:1.2rem;color:var(--color-primary-text,#222);display:flex;align-items:center;gap:.3em}.stat-value{font-size:1.7rem;font-weight:700;color:var(--ghost-accent-color)}.donation-actions{margin-top:1.2rem}.action-btn{display:flex;gap:.8rem;padding:1.2rem 2.4rem;font-size:1.6rem;cursor:pointer}.action-btn,.donate-btn{align-items:center;font-weight:600;border:none;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;text-decoration:none}.donate-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.8rem 2rem;font-size:1.2rem;display:inline-flex;gap:.7rem}.donate-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 6px 16px rgba(102,126,234,.15);color:#fff}.account-placeholder{display:flex;flex-direction:column;align-items:center;gap:1.5rem;color:var(--color-secondary-text)}.account-placeholder-buttons{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.account-retry-image{display:block;width:220px;max-width:100%;height:auto;-o-object-fit:contain;object-fit:contain}.account-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-secondary-text);font-size:2.4rem;font-weight:700}.account-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.account-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.account-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.account-placeholder-icon.account-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.account-token-modal-overlay{position:fixed;z-index:9999;inset:0;display:flex;align-items:center;justify-content:center;padding:2rem;background:rgba(0,0,0,.8);backdrop-filter:blur(4px);animation:account-token-modal-in .3s ease-out both}.account-token-modal-overlay.is-closing{animation:account-token-modal-out .3s ease-in both}.account-token-modal{display:flex;width:100%;max-width:520px;max-height:90vh;overflow:hidden;flex-direction:column;border:1px solid var(--color-border);border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.account-token-modal-header{display:flex;align-items:center;justify-content:space-between;padding:2rem;border-bottom:1px solid var(--color-border)}.account-token-modal-title{margin:0;color:var(--color-darker-gray);font-size:2rem;font-weight:700}.account-token-modal-close{display:flex;padding:.8rem;align-items:center;justify-content:center;border:none;border-radius:12px;color:var(--color-secondary-text);background:none;cursor:pointer;transition:background .2s,color .2s}.account-token-modal-close:hover{color:var(--color-darker-gray);background:var(--color-lighter-gray)}.account-token-modal-body{flex:1;overflow-y:auto;padding:2rem}.account-token-spinner{width:40px;height:40px;margin:0 auto;border:3px solid var(--color-border);border-top-color:var(--ghost-accent-color);border-radius:50%;animation:account-token-spin 1s linear infinite}.account-token-modal-error{margin-bottom:1.5rem;padding:1rem 1.5rem;border:1px solid rgba(220,53,69,.3);border-radius:12px;color:#dc3545;background:rgba(220,53,69,.1);font-size:1.4rem}.account-token-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:2rem;border-top:1px solid var(--color-border);background:var(--color-lighter-gray)}.account-token-modal-footer .gh-btn{flex:1 1 0;justify-content:center}@keyframes account-token-spin{to{transform:rotate(1turn)}}@keyframes account-token-modal-in{0%{opacity:0}to{opacity:1}}@keyframes account-token-modal-out{0%{opacity:1}to{opacity:0}}.token-intro{margin-bottom:1.5rem}.token-intro-text{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.5;margin:0}.token-status-container{min-height:120px}.token-loading{text-align:center;padding:2rem}.token-loading p{margin-top:1rem;font-size:1.4rem;color:var(--color-secondary-text)}.token-status-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.token-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:1.3rem;font-weight:600}.token-badge.active{background:rgba(40,167,69,.1);color:#28a745;border:1px solid rgba(40,167,69,.3)}.token-badge.inactive{background:rgba(108,117,125,.1);color:#6c757d;border:1px solid rgba(108,117,125,.3)}.token-expires-inline{font-size:1.3rem;color:var(--color-secondary-text)}.token-display-box{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:1.2rem}.token-value-row{margin-bottom:1rem}.token-value{display:block;font-size:1.4rem;color:var(--color-primary-text);font-family:monospace;word-break:break-all;padding:.8rem;border-radius:8px;text-align:center;letter-spacing:1px;border:1px solid rgba(108,117,125,.3)}.token-actions-row{display:flex;gap:.8rem;justify-content:center}.token-action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#fff;border:1px solid var(--color-border);border-radius:8px;color:var(--color-darker-gray);cursor:pointer;font-size:1.3rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.token-action-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.token-action-btn.copied{background:rgba(255,87,0,.1);border-color:var(--ghost-accent-color)}.token-action-btn .btn-text{font-size:1.3rem}.token-empty-state{text-align:center;padding:2rem 1rem}.token-empty-icon{font-size:3rem;margin-bottom:1rem}.token-empty-title{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .5rem}.token-empty-text{font-size:1.4rem;color:var(--color-secondary-text);margin:0}.token-revoke-btn{background:#dc3545;border-color:#dc3545;color:#fff}.token-revoke-btn:hover{background:#c82333;border-color:#bd2130}.token-revoke-btn:disabled{opacity:.5;cursor:not-allowed}.token-generate-btn{background:var(--ghost-accent-color);color:#fff}.token-generate-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes progress{0%{stroke-dasharray:0 100}}@media(max-width:767px){.account-template .section-title{font-size:2.4rem}.account-card{padding:2rem;margin-bottom:2rem}.card-title{font-size:2rem;padding-bottom:.8rem}.profile-info{flex-direction:column;align-items:center;text-align:center;gap:1.6rem}.profile-info-grid{grid-template-columns:1fr;gap:1rem}.stats-overview{grid-template-columns:1fr;gap:1.5rem}.stats-card{padding:2rem}.stats-card-value{font-size:2.8rem}.subscription-inner{flex-direction:column;text-align:center;gap:1.5rem}.subscription-thanks{font-size:1.2rem;margin-top:1rem}.subscription-benefits{flex-direction:column;gap:.8rem;max-width:none}.benefit-item{padding:.8rem}.benefit-text{font-size:1.1rem}.benefit-icon{font-size:1.4rem}.subscription-actions{width:100%;max-width:300px;font-size:1.3rem;padding:.9rem 1.8rem}.strikes-overview{flex-direction:column;gap:1rem;text-align:center}.strikes-visual{justify-content:center}.strike-icon{width:28px;height:28px}.achievements-grid{grid-template-columns:1fr}.tabs-header{flex-wrap:nowrap;overflow-x:scroll;scrollbar-width:none;-ms-overflow-style:none}.tabs-header::-webkit-scrollbar{display:none}.tab-button{flex:0 0 auto;min-width:120px;font-size:1.3rem;padding:1.2rem 1rem}.achievement-stats-overview{grid-template-columns:1fr;gap:1.5rem}.stats-card-achievement{width:100%;padding:1.5rem;flex-direction:row;gap:1.5rem}.stats-card-achievement .stats-card-icon{font-size:2.5rem}.stats-card-achievement .stats-card-value{font-size:2.4rem}.stats-card-achievement .stats-card-label{font-size:1.3rem}.achievement-rarity-section{width:100%}.achievement-rarity-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.rarity-card{padding:1.2rem}.rarity-card.legendary{grid-column:1/-1}.rarity-header{gap:.4rem;margin-bottom:.8rem}.rarity-name{font-size:1rem}.rarity-progress-circle{width:60px;height:60px}.percentage{font-size:.4em}.rarity-section-title{display:block}.achievement-rarity-section{margin-top:1.5rem}.appeal-actions{flex-direction:column;gap:.5rem;align-items:stretch}.char-counter{text-align:center}.appeal-btn{width:100%}.comment-html{padding:1.5rem;font-size:1.4rem}.comment-html a{font-size:1.3rem;line-height:1.4}.donaciones-box{padding:1.2rem .7rem}.strikes-info-content{flex-direction:column;gap:1.5rem;text-align:center}.strikes-image-container{width:120px;height:120px}.account-token-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.account-token-modal-footer{flex-direction:column;gap:.8rem}.account-token-modal-footer .gh-btn{width:100%;justify-content:center}.token-status-header{flex-direction:column;align-items:flex-start;gap:.8rem}.token-actions-row{flex-wrap:wrap}.token-action-btn{flex:1;justify-content:center;min-width:100px}}@media(max-width:480px){.stats-card-icon{font-size:3rem}.subscription-thanks{font-size:1.1rem}.invite-title{font-size:1.4rem}.benefit-item{padding:.7rem}.benefit-text{font-size:1rem}.subscription-actions{font-size:1.2rem;padding:.8rem 1.6rem}.stats-card-achievement{padding:1.2rem;gap:1rem}.stats-card-achievement .stats-card-icon,.stats-card-achievement .stats-card-value{font-size:2rem}.stats-card-achievement .stats-card-label{font-size:1.2rem}.achievement-rarity-cards{gap:.8rem}.rarity-card{padding:1rem}.rarity-card:before{height:3px}.rarity-header{gap:.3rem;margin-bottom:.6rem}.rarity-name{font-size:.9rem}.rarity-progress-circle{width:50px;height:50px}.circle,.circle-bg{stroke-width:3}.percentage{font-size:.35em}}.account-toast{display:flex;width:100%;min-width:0;gap:13px;align-items:flex-start;padding:14px 16px;border:1px solid var(--toast-rarity,#718096);border-left:4px solid var(--toast-rarity,#718096);border-radius:12px;color:var(--color-primary-text,#1a202c);background:color-mix(in srgb,var(--toast-rarity,#718096) 8%,#fff);box-shadow:0 8px 22px var(--toast-rarity-shadow,rgba(20,32,44,.1));animation:account-toast-in .24s ease both,account-toast-pulse 2s ease-in-out .5s 1;transition:opacity .28s,transform .28s,box-shadow .28s}.account-toast.rarity-common{--toast-rarity:#718096;--toast-rarity-soft:rgba(113,128,150,.08);--toast-rarity-shadow:rgba(113,128,150,.18)}.account-toast.rarity-uncommon{--toast-rarity:#48bb78;--toast-rarity-soft:rgba(72,187,120,.1);--toast-rarity-shadow:rgba(72,187,120,.22)}.account-toast.rarity-rare{--toast-rarity:#4299e1;--toast-rarity-soft:rgba(66,153,225,.1);--toast-rarity-shadow:rgba(66,153,225,.22)}.account-toast.rarity-epic{--toast-rarity:#9f7aea;--toast-rarity-soft:rgba(159,122,234,.12);--toast-rarity-shadow:rgba(159,122,234,.25)}.account-toast.rarity-legendary{--toast-rarity:#f6ad55;--toast-rarity-soft:rgba(246,173,85,.14);--toast-rarity-shadow:rgba(246,173,85,.3)}.account-toast-icon{font-size:2.2rem;line-height:1;flex-shrink:0}.account-toast-body{flex:1;min-width:0;display:flex;flex-direction:row;align-items:flex-start;gap:12px}.account-toast-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.account-toast-label{font-size:1.1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--toast-rarity);font-weight:700;margin:0}.account-toast-title{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0;line-height:1.3}.account-toast-description{font-size:1.3rem;color:var(--color-secondary-text);line-height:1.4;margin:0}.account-toast-points{align-self:center;flex-shrink:0;display:inline-block;font-size:1.2rem;font-weight:600;color:var(--ghost-accent-color);background:rgba(217,164,67,.1);padding:.5rem 1rem;border-radius:6px;white-space:nowrap}@keyframes account-toast-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes account-toast-pulse{0%,to{box-shadow:0 8px 22px var(--toast-rarity-shadow,rgba(20,32,44,.1))}50%{box-shadow:0 8px 22px var(--toast-rarity-shadow,rgba(20,32,44,.1)),0 0 0 6px var(--toast-rarity-soft,rgba(255,87,0,.18))}}.account-toast.account-toast-leaving{opacity:0;transform:translateX(20px);box-shadow:0 8px 22px rgba(20,32,44,.06)}.account-toast.recent{animation:account-toast-in .24s ease both,account-toast-pulse 2s ease-in-out .5s 1}.achievement-card.recent:after{content:"¡Nuevo!";position:absolute;top:8px;right:8px;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--achievement-rarity,var(--ghost-accent-color,#ff5700));background:var(--achievement-rarity-soft,rgba(255,87,0,.1));padding:4px 8px;border-radius:12px;border:1px solid var(--achievement-rarity,var(--ghost-accent-color,#ff5700));animation:account-toast-pulse 2s ease-in-out .5s 1}[data-theme=dark] .account-toast{color:var(--color-primary-text,#fff);background:color-mix(in srgb,var(--toast-rarity,#718096) 10%,var(--dark-surface-elevated))}@media(prefers-reduced-motion:reduce){.account-toast,.account-toast.recent,.achievement-card.recent:after{animation:none}.account-toast{transition:none}}@media(max-width:600px){.account-toast{min-width:0;width:100%}}.stories-template{--game-option-background:color-mix(in srgb, var(--background-color, #fff) 97%, var(--color-primary-text, rgba(0,0,0,.9)) 3%)}.stories-template .gh-section{padding:2rem 0}.stories-template .gh-section:first-child{padding-top:0}.stories-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;background:var(--color-lighter-gray,#f8f8f8);border:1px solid var(--color-border);border-radius:12px;padding:4rem;text-align:center;scroll-margin-top:2rem}#stories-container.stories-story-view,.stories-container.stories-story-view{margin-top:3rem;background:transparent;border:none;padding:0;display:block;min-height:auto;text-align:left}.stories-placeholder{flex-direction:column;gap:1.5rem}.stories-placeholder,.stories-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.stories-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.stories-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.stories-placeholder-icon.stories-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.stories-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.stories-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.stories-container.stories-empty-state{background:transparent;border:none;padding:2rem 0}.story-difficulty.intro{background:rgba(0,123,255,.1);color:var(--color-level-blue)}.level-filters{margin:2rem 0;padding:0;background:transparent;border-radius:0;border:none;display:flex;justify-content:center}.level-filters-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.level-filter-btn{min-height:44px;display:flex;align-items:center;gap:.5rem;padding:8px 16px;background:transparent;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s,opacity .2s;color:var(--color-darker-gray);position:relative}.level-filter-btn:hover{background:var(--color-lighter-gray);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.level-filter-btn:active{transform:translateY(0)}.level-filter-btn.active{background:#fff;color:var(--color-darker-gray);border-color:var(--color-border)}.level-filter-btn:not(.active){opacity:1;color:var(--color-secondary-text);border-style:dashed}.level-filter-btn:not(.active):hover{opacity:1;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.level-filter-btn .filter-checkbox{font-size:1.6rem;line-height:1}.level-filter-btn.active .filter-checkbox:before{content:"✓"}.level-filter-btn:not(.active) .filter-checkbox:before{content:"✗"}.level-filter-btn .filter-label{font-size:1.4rem;font-weight:500}.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding:0;transition:opacity .15s}.story-card{background:#fff;border-radius:12px;overflow:hidden;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;cursor:pointer;position:relative;transform-origin:center center}.story-card,.story-link{height:100%;display:flex;flex-direction:column}.story-link{text-decoration:none;color:inherit}.story-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.story-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.story-image-placeholder{width:100%;height:100%;background:var(--color-lighter-gray);display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-border)}.story-image-placeholder:after{content:"📖";font-size:3rem;opacity:.2;color:var(--color-secondary-text)}.story-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem}.story-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25}.story-description{font-size:1.8rem;line-height:1.4;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-description,.story-meta{color:var(--color-secondary-text)}.story-meta{justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:1.4rem}.story-meta,.story-word-count{display:flex;align-items:center}.story-word-count{gap:.5rem;font-weight:600;color:var(--ghost-accent-color)}.story-difficulty{padding:.4rem .8rem;border-radius:12px;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.story-difficulty.a1-1,.story-difficulty.a1-2,.story-difficulty.a2-1,.story-difficulty.a2-2{background:rgba(40,167,69,.1);color:var(--color-level-green)}.story-difficulty.b1-1,.story-difficulty.b1-2,.story-difficulty.b2-1,.story-difficulty.b2-2{background:rgba(255,193,7,.1);color:var(--color-level-amber)}.story-difficulty.c1,.story-difficulty.c2{background:rgba(220,53,69,.1);color:var(--color-level-red)}.story-difficulty.esencial,.story-difficulty.intro{background:rgba(0,123,255,.1);color:var(--color-level-blue)}.story-view{max-width:100%;opacity:1}.story-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding:2.5rem;background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid var(--color-border);position:relative;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.story-header:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-header-content{flex:1}.story-back-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.story-back-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-view-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2}.story-view-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0;line-height:1.5;font-weight:400}.story-content-wrapper{display:grid;grid-template-columns:1fr 400px;gap:3rem;align-items:start}.story-text-content{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:3rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.story-text-content:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-text{font-size:1.8rem;line-height:1.8;color:var(--color-darker-gray);white-space:pre-wrap;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;text-align:left}.story-audio-controls{display:flex;justify-content:center}.story-audio-player{border:1px solid rgba(0,0,0,.06);border-radius:20px;padding:4px 8px;display:flex;align-items:center;gap:10px;transition:box-shadow .2s,transform .2s;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);width:100%;height:44px;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95)}.story-audio-player:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.has-dark-mode .story-audio-player{background:rgba(30,30,30,.95);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.story-audio-btn{background:var(--ghost-accent-color);border:none;cursor:pointer;padding:0;border-radius:50%;color:#fff;transition:box-shadow .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0}.story-audio-btn.playing:not(:disabled),.story-audio-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(255,87,0,.35)}.story-audio-btn:disabled{cursor:not-allowed;opacity:.7}.story-audio-btn svg{width:16px;height:16px;flex-shrink:0}.story-audio-btn.loading{opacity:1}.story-audio-btn.paused svg,.story-audio-btn.playing svg{animation:none}.story-progress-container{flex:1;display:flex;align-items:center;gap:10px}.story-progress-bar{flex:1;height:2px;background:rgba(0,0,0,.08);border-radius:12px;position:relative;cursor:pointer;overflow:hidden;transition:height .2s}.has-dark-mode .story-progress-bar{background:hsla(0,0%,100%,.1)}.story-progress-fill{left:0;top:0;height:100%;border-radius:12px;transition:width .1s linear;width:0}.story-progress-fill,.story-progress-fill:after{position:absolute;background:var(--ghost-accent-color)}.story-progress-fill:after{content:"";right:-5px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;opacity:0;transition:opacity .2s;box-shadow:0 6px 16px rgba(255,87,0,.3)}.story-progress-bar:hover .story-progress-fill:after{opacity:1}.story-time{font-size:10px;color:var(--color-secondary-text);white-space:nowrap;min-width:60px;text-align:center;font-weight:500;opacity:.7;letter-spacing:-.02em}.has-dark-mode .story-time{color:hsla(0,0%,100%,.7)}.story-audio-spinner{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.story-audio-spinner svg{animation:interactiveSpin 2s linear infinite}.story-vocabulary{border:1px solid var(--color-border);border-radius:12px;padding:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s;position:sticky;top:2rem;max-height:calc(100vh - 4rem);display:flex;flex-direction:column;overflow:hidden}.story-vocabulary:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-vocabulary-title{font-size:2rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.story-vocabulary-list{display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0}.story-vocab-item{padding:1rem;background-color:var(--color-lighter-gray);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:background .2s,transform .2s,box-shadow .2s;border:1px solid var(--color-border)}.story-vocab-item:hover{background-color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.story-vocab-japanese{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:.5rem;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;display:flex;align-items:center;justify-content:space-between}.story-vocab-audio-btn{background:transparent;border:none;font-size:1.6rem;cursor:pointer;padding:.2rem .6rem;border-radius:4px;transition:background .2s}.story-vocab-audio-btn:hover{background:var(--color-lighter-gray)}.story-vocab-romaji{font-size:1.3rem;color:var(--ghost-accent-color);font-style:italic;margin-bottom:.3rem}.story-vocab-spanish{font-size:1.3rem;color:var(--color-secondary-text)}.story-text-translation{margin-top:2rem}.story-text-spanish{font-style:italic}.story-text-romaji,.story-text-spanish{font-size:1.6rem;line-height:1.8;color:var(--color-secondary-text);border-top:1px solid var(--color-border);padding-top:1.5rem;margin-top:1.5rem}.story-text-controls{margin-bottom:2rem;padding:1.5rem 0;border-bottom:1px solid var(--color-border)}.stories-visibility-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.stories-visibility-toggle{position:relative;display:flex;align-items:center;gap:.5rem;padding:8px 16px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-darker-gray);background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);cursor:pointer;transition:box-shadow .2s,transform .2s,background .2s,opacity .2s}.stories-visibility-toggle:active,.stories-visibility-toggle:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.stories-visibility-toggle:hover{transform:translateY(-1px)}.stories-visibility-toggle:not(.active){opacity:.5;color:var(--color-secondary-text)}.stories-visibility-toggle:not(.active):hover{opacity:.7}.stories-toggle-icon{font-size:1.6rem;line-height:1}.stories-toggle-label{font-size:1.4rem;font-weight:500}.story-vocabulary-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);gap:1rem}.vocab-pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;font-size:1.4rem;font-weight:500;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;flex:1;justify-content:center;cursor:pointer}.vocab-pagination-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.vocab-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.vocab-pagination-arrow{width:14px;height:14px;-o-object-fit:contain;object-fit:contain}.vocab-pagination-arrow-left{transform:rotate(180deg)}.stories-pagination{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding:2rem;background:#fff;border:1px solid var(--color-border);border-radius:12px}.stories-pagination .pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stories-pagination .pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.stories-pagination .pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}@media(max-width:1200px){.stories-grid{grid-template-columns:repeat(2,1fr)}.story-content-wrapper{grid-template-columns:1fr}.story-vocabulary{position:static;margin-top:2rem;max-height:none}}@media(max-width:767px){.level-filters{padding:0;margin:1.5rem 0}.level-filters-buttons{gap:.8rem}.level-filter-btn{padding:.6rem 1.2rem;font-size:1.3rem}.level-filter-btn .filter-checkbox{font-size:1.4rem}.level-filter-btn .filter-label{font-size:1.3rem}.stories-grid{grid-template-columns:1fr;margin-top:2rem}.story-header{flex-direction:column;padding:2rem;gap:1.5rem}.story-view-title{font-size:2.2rem}.story-back-btn{align-self:center}.story-text-content,.story-vocabulary{padding:1.5rem}.story-text{font-size:1.6rem}.stories-visibility-controls{gap:.8rem}.stories-visibility-toggle{padding:.6rem 1.2rem;font-size:1.3rem}.stories-toggle-icon{font-size:1.4rem}.stories-toggle-label{font-size:1.3rem}.story-vocabulary-title{font-size:1.8rem}.story-text-translation{margin-top:2rem;padding-top:1.5rem}.story-text-spanish{font-size:1.4rem}.story-audio-player{width:100%;padding:3px 6px;height:40px}.story-audio-btn{width:30px;height:30px}.story-audio-btn svg{width:14px;height:14px}.story-time{font-size:9px;min-width:55px}.story-progress-container{gap:8px}.stories-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.stories-pagination .pagination-btn{width:100%;justify-content:center}.stories-pagination .pagination-info{order:-1}}@media(max-width:480px){.stories-container{padding:2rem 1rem}.story-card{border-radius:12px}.story-content{padding:1.2rem}.story-title{font-size:2rem}.story-description{font-size:1.6rem}.stories-visibility-controls{gap:.6rem}.stories-visibility-toggle{padding:.5rem 1rem;font-size:1.2rem}.stories-toggle-icon{font-size:1.6rem}.stories-pagination{padding:1.2rem;gap:1.2rem}.stories-pagination .pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.stories-pagination .pagination-arrow{width:14px;height:14px}.stories-pagination .pagination-current{font-size:1.4rem}.stories-pagination .pagination-range{font-size:1.2rem}}.story-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.stories-error{text-align:center;padding:3rem}.stories-error-text{font-size:1.6rem;color:var(--color-secondary-text)}.hidden{display:none}.homework-template{--game-option-background:color-mix(in srgb, var(--background-color, #fff) 97%, var(--color-primary-text, rgba(0,0,0,.9)) 3%)}.homework-template .gh-section{padding:2rem 0}.homework-template .gh-section:first-child{padding-top:0}.homework-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-align:center;scroll-margin-top:2rem}.homework-container.placeholder-state{background:var(--color-lighter-gray);border:1px solid var(--color-border);padding:4rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-container.placeholder-state:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-container.has-content{display:block;align-items:stretch;justify-content:flex-start;background:transparent;border:none;padding:0;min-height:unset}.homework-container.homework-exercise-view,.homework-container.homework-results-view{margin-top:3rem;background:transparent;border:none;padding:0;display:block;min-height:auto;text-align:left}.homework-placeholder{flex-direction:column;gap:1.5rem}.homework-placeholder,.homework-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.homework-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.homework-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.homework-placeholder-icon.homework-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.homework-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem}.homework-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.homework-placeholder-buttons{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.homework-container.homework-empty-state{background:transparent;border:none;padding:2rem 0}.type-filters{margin:2rem 0;padding:0;background:transparent;border-radius:0;border:none;display:flex;justify-content:center}.type-filters-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.type-filter-btn{min-height:44px;display:flex;align-items:center;gap:.5rem;padding:8px 16px;background:transparent;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s,background .2s,opacity .2s;color:var(--color-darker-gray);position:relative}.type-filter-btn:hover{background:var(--color-lighter-gray);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.type-filter-btn:active{transform:translateY(0)}.type-filter-btn.active{background:#fff;color:var(--color-darker-gray);border-color:var(--color-border)}.type-filter-btn:not(.active){opacity:1;color:var(--color-secondary-text);border-style:dashed}.type-filter-btn:not(.active):hover{opacity:1;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.type-filter-btn .filter-checkbox{font-size:1.6rem;line-height:1}.type-filter-btn.active .filter-checkbox:before{content:"✓"}.type-filter-btn:not(.active) .filter-checkbox:before{content:"✗"}.type-filter-btn .filter-icon{font-size:1.4rem;line-height:1}.type-filter-btn .filter-label{font-size:1.4rem;font-weight:500}.homework-exercises-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding:0;transition:opacity .15s}.homework-exercise-card{overflow:hidden;height:100%;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center}.exercise-score-badge,.homework-exercise-card{background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex}.exercise-score-badge{position:absolute;top:1rem;right:1rem;color:var(--ghost-accent-color);padding:.4rem .8rem;font-size:1.2rem;font-weight:600;z-index:10;align-items:center;gap:.4rem}.exercise-score-badge:hover{transform:scale(1.05)}.exercise-score-badge:hover,.homework-exercise-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-exercise-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.homework-exercise-image{width:100%;height:200px;overflow:hidden;background:var(--color-lighter-gray);flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.homework-exercise-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.homework-exercise-image.no-img{background:var(--color-lighter-gray)}.homework-exercise-image-placeholder{width:100%;height:100%;background:var(--color-lighter-gray);display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-border)}.homework-type-icon{font-size:4rem;color:var(--color-secondary-text);opacity:.4}.homework-exercise-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem;text-align:left}.homework-exercise-title{font-size:2.4rem;font-weight:600;line-height:1.25}.homework-exercise-description{font-size:1.8rem;line-height:1.4;flex:1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.homework-exercise-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:1.4rem;color:var(--color-secondary-text)}.homework-question-count{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--ghost-accent-color);font-size:1.4rem}.question-count-icon{font-size:1.6rem}.homework-difficulty{padding:.4rem .8rem;border-radius:12px;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.homework-difficulty.beginner{background:rgba(40,167,69,.1);color:var(--color-level-green)}.homework-difficulty.intermediate{background:rgba(255,193,7,.1);color:var(--color-level-amber)}.homework-difficulty.advanced{background:rgba(220,53,69,.1);color:var(--color-level-red)}.homework-difficulty.a1-1,.homework-difficulty.a1-2,.homework-difficulty.a2-1,.homework-difficulty.a2-2{background:rgba(40,167,69,.1);color:var(--color-level-green)}.homework-difficulty.b1-1,.homework-difficulty.b1-2,.homework-difficulty.b2-1,.homework-difficulty.b2-2{background:rgba(255,193,7,.1);color:var(--color-level-amber)}.homework-difficulty.c1,.homework-difficulty.c2{background:rgba(220,53,69,.1);color:var(--color-level-red)}.homework-exercise-view{max-width:100%;opacity:1;transition:opacity .3s}.homework-exercise-header{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border:1px solid var(--color-border);border-radius:12px;padding:3rem;margin-bottom:3rem;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-exercise-header:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-exercise-header-content{flex:1;min-width:0}.homework-exercise-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2}.homework-exercise-description{font-size:1.6rem;color:var(--color-secondary-text);margin:0;line-height:1.5;font-weight:400}.homework-back-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-darker-gray);padding:.8rem 1.6rem;border-radius:12px;cursor:pointer;font-size:1.4rem;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.homework-back-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-exercise-progress{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.6rem;margin-bottom:1.5rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-exercise-progress:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.score-info-inline{display:flex;gap:2rem;align-items:center}.score-info-inline .homework-score,.score-info-inline .streak-display{font-size:1.4rem;font-weight:500;color:var(--color-secondary-text)}.score-info-inline .streak-display.hot-streak{color:var(--ghost-accent-color);font-weight:700}.homework-question-counter,.homework-score{font-size:1.4rem;font-weight:500;color:var(--color-secondary-text)}.homework-progress-bar{height:6px;overflow:hidden;border:none;border-radius:99px;background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}.homework-progress-fill{height:100%;border-radius:inherit;background:var(--ghost-accent-color);transition:width .26s}.homework-question-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:3rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}.homework-question-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-question-header{padding-top:1.5rem}.homework-question-text{font-size:2.4rem;margin-bottom:1.5rem}.homework-question-spanish,.homework-question-text{font-weight:600;color:var(--color-darker-gray);line-height:1.4}.homework-question-spanish{font-size:2.2rem;margin-bottom:.5rem}.homework-question-japanese{font-size:1.6rem;font-weight:500;color:var(--color-secondary-text,#6b7280);font-style:italic;line-height:1.4;padding-top:.4rem;border-top:1px solid var(--color-border,rgba(0,0,0,.1));margin-top:.4rem}.homework-question-target{font-size:3.6rem;font-weight:700;color:var(--color-darker-gray);font-style:normal;padding:.8rem 1.2rem;border-top:none;border-radius:12px;background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));text-align:center;margin:0 auto;display:block;max-width:-moz-fit-content;max-width:fit-content}.homework-question-options{display:grid;gap:12px;margin-bottom:2rem}.homework-option-btn{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:center;min-height:60px;padding:12px 14px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-primary-text,rgba(0,0,0,.9));background:var(--game-option-background);cursor:pointer;font:inherit;font-size:1.8rem;font-weight:630;line-height:1.35;text-align:left;transition:border-color .2s,background .2s}.homework-option-btn.selected,.homework-option-btn:hover:not(:disabled){border-color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,var(--game-option-background))}.homework-option-btn:disabled{cursor:not-allowed}.homework-option-btn.correct{background:rgba(40,167,69,.1);border-color:#28a745;color:#28a745;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.homework-option-btn.correct:hover{box-shadow:0 6px 16px rgba(40,167,69,.1)}.homework-option-btn.incorrect{background:rgba(220,53,69,.1);border-color:#dc3545;color:#dc3545;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-option-btn.incorrect:hover{box-shadow:0 6px 16px rgba(220,53,69,.1)}.homework-option-btn.selected{border:1px solid var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,var(--game-option-background))}.homework-option-btn.selected:hover:not(:disabled){background:color-mix(in srgb,var(--ghost-accent-color) 12%,var(--game-option-background))}.homework-option-btn .multiselect-check{display:none;color:var(--ghost-accent-color);font-size:1.4rem;margin-left:auto}.homework-option-btn.selected .multiselect-check{display:flex;align-items:center}.homework-option-btn.missed{border:2px dashed #f59e0b;background:rgba(245,158,11,.08);box-shadow:0 4px 12px rgba(245,158,11,.08)}.homework-option-btn.missed:hover{box-shadow:0 6px 16px rgba(245,158,11,.12)}.homework-multiselect-info{display:flex;align-items:center;gap:8px;padding:1.2rem 1.6rem;background:rgba(255,87,0,.05);border:1px solid rgba(255,87,0,.1);border-radius:12px;margin-bottom:1.6rem;font-size:1.5rem;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.homework-multiselect-info svg{color:var(--ghost-accent-color);flex-shrink:0}.multiselect-counter{font-weight:500;color:var(--color-darker-gray);transition:color .2s}.multiselect-counter.complete{color:#22c55e;font-weight:700}.homework-option-letter{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;color:var(--ghost-accent-color);background:color-mix(in srgb,var(--ghost-accent-color) 8%,transparent);font-weight:850;font-size:1.4rem;flex-shrink:0}.homework-option-text{flex:1;line-height:1.4}.homework-question-controls{display:flex;gap:1.6rem;align-items:flex-start;justify-content:center;margin-top:2rem;flex-wrap:wrap}.homework-audio-controls{margin:0}.homework-audio-btn{background:var(--ghost-accent-color);color:#fff;border:none;padding:1.2rem 2rem;border-radius:12px;font-size:1.6rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;min-width:190px;height:42px;flex:0 0 auto}.homework-audio-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.audio-btn-icon,.audio-btn-text{display:inline-flex;align-items:center;justify-content:center;line-height:1}.audio-btn-icon svg{width:16px;height:16px}.homework-audio-btn:hover{opacity:.9}.homework-audio-btn.loading{background:#fff}.homework-audio-btn.loading,.homework-audio-btn:disabled{cursor:not-allowed;border:1px solid var(--color-border);color:var(--color-secondary-text)}.homework-audio-btn:disabled{opacity:.5;pointer-events:none;background:var(--color-lighter-gray)}.homework-audio-btn:disabled:hover{background:var(--color-lighter-gray);border-color:var(--color-border);transform:none}.homework-answer-audio-btn{position:relative;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:transparent;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:600;font-size:1.6rem;min-width:190px;height:42px;cursor:pointer}.homework-answer-audio-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-answer-audio-btn.loading{background:#fff}.homework-answer-audio-btn.loading,.homework-answer-audio-btn:disabled{cursor:not-allowed;border:1px solid var(--color-border);color:var(--color-secondary-text)}.homework-answer-audio-btn:disabled{opacity:.5;pointer-events:none;background:var(--color-lighter-gray)}.homework-answer-audio-btn:disabled:hover{background:var(--color-lighter-gray);border-color:var(--color-border);transform:none}.homework-hints{margin-top:0;text-align:center}.homework-hint-btn{position:relative;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:500;font-size:1.6rem;min-width:190px;height:42px;flex:0 0 auto;cursor:pointer}.homework-hint-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-hint-btn.used{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));color:var(--color-darker-gray)}.homework-hint-content{font-size:1.6rem;line-height:1.6;color:var(--ghost-accent-color);text-align:center;font-style:italic;margin-top:0;margin-bottom:2rem;padding:1rem;background:rgba(255,87,0,.05);border-radius:12px;border:1px solid rgba(255,87,0,.1);box-shadow:0 4px 12px rgba(255,87,0,.03),0 1px 3px rgba(255,87,0,.05);transition:box-shadow .2s,transform .2s,opacity .25s,max-height .3s,padding .3s,margin .3s;overflow:hidden;max-height:200px;opacity:1}.homework-hint-content:hover{box-shadow:0 6px 16px rgba(255,87,0,.08),0 2px 6px rgba(255,87,0,.1)}.homework-hint-content.is-hiding{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0;pointer-events:none}@keyframes homework-hint-in{0%{opacity:0;transform:translateY(-8px);max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0}to{opacity:1;transform:translateY(0);max-height:200px;padding:1rem;margin-bottom:2rem}}.homework-answer-feedback{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:3rem;margin-top:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.homework-feedback-result{border-radius:12px;padding:2rem;margin:2rem 0;display:flex;align-items:flex-start;gap:2rem;width:100%}.homework-feedback-result.correct{background:rgba(40,167,69,.05);border:2px solid rgba(40,167,69,.2);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-feedback-result.correct:hover{box-shadow:0 6px 16px rgba(40,167,69,.1)}.homework-feedback-result.incorrect{background:rgba(220,53,69,.05);border:2px solid rgba(220,53,69,.2);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-feedback-result.incorrect:hover{box-shadow:0 6px 16px rgba(220,53,69,.1)}.homework-feedback-icon{font-size:3rem;flex-shrink:0}.homework-feedback-text h4{font-size:2rem;font-weight:700;color:var(--color-darker-gray);margin-bottom:1rem}.homework-feedback-text p{font-size:1.6rem;color:var(--color-secondary-text);line-height:1.6;margin-bottom:.8rem}.homework-feedback-actions{display:flex;gap:1.6rem;justify-content:center;align-items:center;margin-top:1rem;flex-wrap:wrap}.homework-answer-audio-btn,.homework-continue-btn{border-radius:12px;font-size:1.6rem;align-items:center;justify-self:center;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:opacity .2s,box-shadow .2s,transform .2s;min-width:190px;height:42px}.homework-continue-btn{background:var(--ghost-accent-color);color:#fff;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border:none}.homework-continue-btn:hover{opacity:.9;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-continue-btn:disabled{opacity:.5;cursor:not-allowed}.results-screen{max-width:800px;margin:0 auto}.homework-results{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:4rem 3rem;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-results:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-results .results-emoji{font-size:6rem;margin-bottom:2rem}.homework-results .results-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1rem;line-height:1.2}.homework-results .results-message{font-size:1.6rem;color:var(--color-secondary-text);margin:0 0 3rem;line-height:1.5;font-weight:400}.homework-results .results-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-results .results-stats:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-results .result-stat{text-align:center}.homework-results .stat-value{display:block;font-size:2.8rem;font-weight:700;color:var(--ghost-accent-color);margin-bottom:.5rem}.homework-results .stat-label{display:block;font-size:1.3rem;color:var(--color-secondary-text);font-weight:500}.homework-results .results-actions{display:flex;gap:1.5rem;justify-content:center;margin-top:2rem}.homework-results .new-record-badge{text-align:center;font-size:2rem;font-weight:700;color:#d9a443;margin:2rem 0;padding:1rem;background:rgba(255,215,0,.1);border-radius:12px;animation:homeworkEmphasisPulse 1s ease-in-out infinite}.homework-results .unlocked-achievements{margin:3rem 0;padding:2rem;background:linear-gradient(135deg,rgba(255,215,0,.05),rgba(255,140,0,.05));border-radius:12px;border:1px solid rgba(255,215,0,.2)}.homework-results .achievements-title{font-size:2.4rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 2rem;line-height:1.2}.homework-results .achievements-list{display:flex;flex-direction:column;gap:1.5rem}.homework-results .unlocked-achievement-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-results .unlocked-achievement-item:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-results .unlocked-achievement-item .achievement-icon{font-size:3.2rem;flex-shrink:0}.homework-results .unlocked-achievement-item .achievement-details{flex:1;text-align:left;display:flex;flex-direction:column;gap:.5rem}.homework-results .unlocked-achievement-item .achievement-details h4{font-size:1.8rem;font-weight:600;color:var(--color-darker-gray);margin:0}.homework-results .unlocked-achievement-item .achievement-details p{font-size:1.4rem;color:var(--color-secondary-text);margin:0;line-height:1.4;flex:1}.homework-results .unlocked-achievement-item .achievement-details>div{display:flex;align-items:center;justify-content:space-between;gap:1rem}.homework-results .unlocked-achievement-item .achievement-points{font-size:1.4rem;font-weight:700;color:var(--ghost-accent-color);white-space:nowrap}.leaderboard-section,.weekly-ranking-section{margin:2rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border)}.leaderboard-title,.weekly-ranking-title{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:left}.leaderboard-list,.weekly-ranking-list{display:flex;flex-direction:column;gap:.8rem}.leaderboard-item,.weekly-ranking-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-radius:8px;border:1px solid var(--color-border);transition:box-shadow .2s}.leaderboard-item:hover,.weekly-ranking-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.05)}.leaderboard-item.current-user,.weekly-ranking-item.current-user{background:rgba(var(--ghost-accent-color-rgb,255,0,85),.05);border-color:var(--ghost-accent-color)}.leaderboard-rank,.weekly-ranking-rank{font-size:1.6rem;font-weight:700;min-width:3rem;text-align:center}.leaderboard-name,.weekly-ranking-name{flex:1;font-size:1.5rem;font-weight:500;color:var(--color-darker-gray);text-align:left}.leaderboard-score,.weekly-ranking-score{font-size:1.5rem;font-weight:700;color:var(--ghost-accent-color)}@keyframes homeworkEmphasisPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.homework-error{text-align:center;padding:3rem}.homework-error-icon{font-size:3rem;margin-bottom:1rem}.homework-error-text{font-size:1.6rem;color:var(--color-secondary-text)}.trophy-room{font-size:1.4rem;color:var(--color-secondary-text);font-weight:500;margin-left:auto}.stats-mobile{display:none}.stats-desktop{display:inline}.homework-loading{display:flex;flex-direction:column;align-items:center;gap:1rem}.homework-loading-text{font-size:1.4rem;color:var(--color-secondary-text)}.homework-pagination{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-top:2rem;padding:2rem;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-pagination:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-pagination .pagination-btn{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.6rem;border:1px solid var(--color-border);border-radius:12px;font-size:1.4rem;font-weight:500;color:var(--color-darker-gray);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.homework-pagination .pagination-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-pagination .pagination-btn:disabled{opacity:.5;cursor:not-allowed}.homework-pagination .pagination-arrow{width:16px;height:16px;-o-object-fit:contain;object-fit:contain}.homework-pagination .pagination-arrow-left{transform:rotate(180deg)}.homework-pagination .pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.homework-pagination .pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.homework-pagination .pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}.homework-grammar-container{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.homework-word-bank{background:#f7fafc;border:1px solid var(--color-border);border-radius:12px;padding:2rem}.word-bank-label{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:1.5rem}.word-bank-items{display:flex;flex-wrap:wrap;gap:1rem}.word-token{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:.8rem 1.2rem;font-size:1.8rem;font-weight:500;color:var(--color-darker-gray);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;position:relative}.word-token:hover:not(.used){border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05);transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,87,0,.1)}.word-token.dragging{opacity:.6;transform:rotate(5deg)}.word-token.used{opacity:.4;cursor:not-allowed;background:#e2e8f0;border-color:#cbd5e0;color:#a0aec0}.homework-sentence-builder{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2rem;min-height:120px}.sentence-builder-label{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin-bottom:1.5rem}.sentence-dropzone{min-height:80px;background:#f7fafc;border:2px dashed var(--color-border);border-radius:12px;padding:1.5rem;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;position:relative}.sentence-dropzone.drag-over{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05)}.dropzone-placeholder{color:var(--color-secondary-text);font-style:italic;font-size:1.4rem;text-align:center;width:100%;padding:1rem;transition:opacity .3s}.dropzone-placeholder.hidden{display:none}.sentence-word{background:var(--ghost-accent-color);color:#fff;border-radius:12px;padding:.6rem 1rem;font-size:1.4rem;font-weight:500;display:flex;align-items:center;gap:.6rem;animation:slideIn .3s ease-out}.sentence-word-text{flex:1}.remove-word-btn{background:hsla(0,0%,100%,.2);border:none;border-radius:50%;width:20px;height:20px;color:#fff;font-size:1.4rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.remove-word-btn:hover{background:hsla(0,0%,100%,.3)}.remove-word-btn:disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important;background:hsla(0,0%,100%,.1)!important}.homework-hints.grammar-hints{text-align:center;margin:0 0 1rem}.homework-grammar-actions,.homework-multiselect-actions{display:flex;justify-content:center;gap:1.6rem;margin-top:0}.homework-multiselect-actions{margin-top:2rem}.homework-clear-btn,.homework-submit-btn{position:relative;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:500;font-size:1.6rem;min-width:190px;height:42px;cursor:pointer}.homework-hint-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;color:var(--color-secondary-text)}.homework-hint-btn:disabled,.homework-hint-btn:disabled:hover{background:var(--color-lighter-gray);border-color:var(--color-border)}.homework-hint-btn:disabled:hover{transform:none;box-shadow:none}.homework-clear-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-clear-btn:disabled{opacity:.5;cursor:not-allowed}.homework-submit-btn:hover:not(:disabled){opacity:.9}.homework-submit-btn:disabled{opacity:.5;cursor:not-allowed}.grammar-correct-sequence{background:rgba(40,167,69,.05);border:2px solid rgba(40,167,69,.2);border-radius:12px;padding:2rem;margin-top:2rem}.grammar-correct-sequence h4{color:#28a745;font-size:1.6rem;font-weight:600;margin-bottom:1rem}.correct-sequence-display{display:flex;flex-wrap:wrap;gap:.8rem}.correct-word{background:#28a745;color:#fff;padding:.6rem 1rem;border-radius:12px;font-size:1.6rem;font-weight:500}.homework-audio-player{border:1px solid rgba(0,0,0,.06);border-radius:20px;padding:4px 8px;display:flex;align-items:center;gap:10px;transition:box-shadow .2s,transform .2s;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);width:100%;height:56px;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);margin-bottom:2rem}.homework-audio-player:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.homework-audio-play-btn{background:var(--ghost-accent-color);border:none;cursor:pointer;padding:0;border-radius:50%;color:#fff;transition:box-shadow .2s;display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0}.homework-audio-play-btn.playing:not(:disabled),.homework-audio-play-btn:hover:not(:disabled){box-shadow:0 6px 16px rgba(255,87,0,.35)}.homework-audio-play-btn:disabled{cursor:not-allowed;opacity:.7}.homework-audio-play-btn svg{width:16px;height:16px;flex-shrink:0}.homework-audio-play-btn.loading{opacity:1}.homework-audio-play-btn.loading svg{animation:interactiveSpin 2s linear infinite}.homework-audio-play-btn.paused svg,.homework-audio-play-btn.playing svg{animation:none}.homework-progress-container{flex:1;display:flex;align-items:center;gap:10px}.homework-audio-progress-bar{flex:1;height:2px;background:rgba(0,0,0,.08);border-radius:12px;position:relative;cursor:pointer;overflow:hidden;transition:height .2s}.homework-audio-progress-fill{position:absolute;left:0;top:0;height:100%;background:var(--ghost-accent-color);border-radius:12px;transition:width .1s linear;width:0}.homework-audio-progress-fill:after{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:10px;height:10px;background:var(--ghost-accent-color);border-radius:50%;opacity:0;transition:opacity .2s;box-shadow:0 6px 16px rgba(255,87,0,.3)}.homework-audio-progress-bar:hover .homework-audio-progress-fill:after{opacity:1}.homework-audio-time{font-size:10px;color:var(--color-secondary-text);white-space:nowrap;min-width:60px;text-align:center;font-weight:500;opacity:.7;letter-spacing:-.02em}.homework-listening-controls{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:2rem}.homework-japanese-text{font-weight:600;color:var(--color-darker-gray);margin-bottom:1.5rem;letter-spacing:.5px;text-align:left;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.homework-japanese-text,.homework-romaji-text{font-size:1.8rem;line-height:1.6;padding:1.5rem}.homework-romaji-text{color:#805ad5;margin-bottom:2rem;font-style:italic;transition:box-shadow .2s,transform .2s;text-align:center;background:rgba(128,90,213,.05);border:1px solid rgba(128,90,213,.15);border-radius:12px;box-shadow:0 4px 12px rgba(128,90,213,.03),0 1px 3px rgba(128,90,213,.05)}.homework-romaji-text:hover{box-shadow:0 6px 16px rgba(128,90,213,.08),0 2px 6px rgba(128,90,213,.1)}.homework-romaji-text.hidden{display:none}.homework-spanish-text{font-size:1.8rem;color:var(--color-secondary-text);line-height:1.5;margin-bottom:2rem;box-shadow:0 4px 12px rgba(66,153,225,.03),0 1px 3px rgba(66,153,225,.05);transition:box-shadow .2s,transform .2s;text-align:left;padding:1.5rem;background:rgba(66,153,225,.05);border:1px solid rgba(66,153,225,.2);border-radius:12px}.homework-spanish-text:hover{box-shadow:0 6px 16px rgba(66,153,225,.08),0 2px 6px rgba(66,153,225,.1)}.homework-spanish-text.hidden{display:none}.homework-romaji-btn{position:relative;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-darker-gray);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:500;font-size:1.6rem;min-width:190px;height:42px;cursor:pointer;flex:0 0 auto}.homework-romaji-btn:hover{box-shadow:0 6px 16px rgba(128,90,213,.1),0 2px 6px rgba(128,90,213,.15)}.spanish-btn-icon,.spanish-btn-text{display:inline-flex;align-items:center;justify-content:center;line-height:1}.spanish-btn-icon{font-size:1.4rem;font-weight:700}.homework-spanish-btn{position:relative;padding:1rem 2rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-darker-gray);transition:box-shadow .2s;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:500;font-size:1.6rem;min-width:190px;height:42px;cursor:pointer;flex:0 0 auto}.homework-spanish-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.results-penalties{margin:2rem 0 0;padding:1.5rem;background:linear-gradient(135deg,rgba(237,137,54,.08),rgba(221,107,32,.08));border-radius:12px;border:1px solid rgba(237,137,54,.3);transition:box-shadow .2s,transform .2s}.results-penalties:hover{box-shadow:0 6px 16px rgba(237,137,54,.15),0 2px 6px rgba(221,107,32,.1)}.penalties-title{font-size:1.6rem;font-weight:600;color:#c05621;margin:0 0 1.2rem;text-align:center}.penalties-list{display:flex;flex-direction:column;gap:.8rem}.penalty-item{gap:1rem;padding:.8rem 1rem;background:hsla(0,0%,100%,.6);border:1px solid rgba(237,137,54,.2)}.penalty-icon,.penalty-item{display:flex;align-items:center;border-radius:8px}.penalty-icon{width:32px;height:32px;justify-content:center;background:rgba(237,137,54,.15);font-size:1.4rem;font-weight:600;color:#c05621;flex-shrink:0}.penalty-detail{flex:1;display:flex;flex-direction:column;gap:.2rem}.penalty-label{font-size:1.4rem;font-weight:500;color:var(--color-darker-gray)}.penalty-count{font-size:1.2rem;color:var(--color-secondary-text)}.penalty-value{font-size:1.6rem;font-weight:700;color:#c05621;white-space:nowrap}.penalties-total{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(237,137,54,.3)}.penalties-total-label{font-size:1.4rem;font-weight:600;color:var(--color-darker-gray)}.penalties-total-value{font-size:1.8rem;font-weight:700;color:#c05621}.homework-hint-btn,.homework-romaji-btn,.homework-spanish-btn{position:relative}.homework-hint-btn.penalty-applied:after,.homework-hint-btn:not(.penalty-applied):hover:after{content:attr(data-hover-penalty);position:absolute;top:-8px;right:-8px;background:#c05621;color:#fff;font-size:1rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;pointer-events:none;animation:interactivePenaltyPop .2s ease-out}.homework-hint-btn.penalty-applied:after{content:attr(data-penalty);animation:interactivePenaltyPop .3s ease-out}.homework-romaji-btn.penalty-applied:after,.homework-romaji-btn:not(.penalty-applied):hover:after{content:attr(data-hover-penalty);position:absolute;top:-8px;right:-8px;background:#c05621;color:#fff;font-size:1rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;pointer-events:none;animation:interactivePenaltyPop .2s ease-out}.homework-romaji-btn.penalty-applied:after{content:attr(data-penalty);animation:interactivePenaltyPop .3s ease-out}.homework-spanish-btn.penalty-applied:after,.homework-spanish-btn:not(.penalty-applied):hover:after{content:attr(data-hover-penalty);position:absolute;top:-8px;right:-8px;background:#c05621;color:#fff;font-size:1rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;pointer-events:none;animation:interactivePenaltyPop .2s ease-out}.homework-spanish-btn.penalty-applied:after{content:attr(data-penalty);animation:interactivePenaltyPop .3s ease-out}.homework-image-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.homework-image-upload-area{position:relative;border:2px dashed var(--color-border);border-radius:12px;transition:border-color .2s,background .2s,transform .2s;background:var(--color-lighter-gray)}.homework-image-upload-area:hover{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.02)}.homework-image-upload-area.drag-over{border-color:var(--ghost-accent-color);background:rgba(255,87,0,.05);transform:scale(1.01)}.homework-file-input{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer;z-index:2}.homework-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;cursor:pointer;text-align:center}.homework-upload-icon{font-size:4rem;line-height:1;opacity:.8}.homework-upload-text{display:flex;flex-direction:column;gap:.5rem}.homework-upload-primary{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.homework-upload-secondary{font-size:1.4rem;color:var(--color-secondary-text)}.homework-upload-formats{font-size:1.2rem;color:var(--color-secondary-text);margin-top:.5rem}.homework-upload-preview{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:200px;max-height:400px;overflow:hidden}.homework-upload-preview img{width:100%;height:auto;max-height:400px;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.1);-o-object-fit:fill;object-fit:fill}.homework-remove-image{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.7);color:#fff;border:none;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s;z-index:3}.homework-remove-image:hover{transform:scale(1.1)}.homework-image-error{padding:1rem 1.5rem;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:8px;color:#dc3545;font-size:1.4rem;text-align:center}.homework-image-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border)}.homework-loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--ghost-accent-color);border-radius:50%;animation:interactiveSpin 1s linear infinite}.homework-image-loading p{font-size:1.4rem;color:var(--color-secondary-text);margin:0}.homework-image-actions{gap:1rem}.homework-hints.image-hints,.homework-image-actions{display:flex;justify-content:center;margin-top:1rem}.homework-feedback-result.image-feedback{position:relative}.image-score-display{display:flex;flex-direction:column;align-items:center;margin-left:auto;padding:.5rem 1.5rem;background:rgba(255,87,0,.1);border-radius:12px}.image-score-value{font-size:2.4rem;font-weight:700;color:var(--ghost-accent-color);line-height:1}.image-score-label{font-size:1.2rem;color:var(--color-secondary-text)}.image-analysis-section,.image-correct-answer,.image-errors-section,.image-feedback-section{margin-top:1.5rem;padding:1.5rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);text-align:left}.image-analysis-section h4,.image-correct-answer h4,.image-errors-section h4,.image-feedback-section h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1rem}.image-feedback-content p{font-size:1.5rem;color:var(--color-secondary-text);line-height:1.6;margin:0}.image-errors-list{margin:0;padding-left:1.5rem;list-style:disc}.image-errors-list li{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.8}.correct-answer-content{display:flex;flex-direction:column;gap:1rem;align-items:center}.correct-answer-image{max-width:100%;max-height:300px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);-o-object-fit:contain;object-fit:contain}.correct-answer-text{font-size:1.5rem;color:var(--color-darker-gray);text-align:center;margin:0}.homework-colored-sentence{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem;background:var(--color-lighter-gray);border-radius:8px;margin-bottom:1rem}.homework-colored-word{padding:.4rem .8rem;border-radius:6px;font-size:1.5rem;font-weight:500;transition:transform .2s}.homework-colored-word:hover{transform:scale(1.05)}.homework-colored-word.word-excellent{background:rgba(40,167,69,.15);color:#28a745;border:1px solid rgba(40,167,69,.3)}.homework-colored-word.word-good{background:rgba(255,87,0,.15);color:var(--ghost-accent-color);border:1px solid rgba(255,87,0,.3)}.homework-colored-word.word-fair{background:rgba(255,193,7,.15);color:#d4a106;border:1px solid rgba(255,193,7,.3)}.homework-colored-word.word-poor{background:rgba(220,53,69,.15);color:#dc3545;border:1px solid rgba(220,53,69,.3)}.homework-colored-word.word-omitted{background:rgba(108,117,125,.15);color:#6c757d;border:1px solid rgba(108,117,125,.3);text-decoration:line-through}.homework-analysis-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding-top:1rem}.homework-legend-item{display:flex;align-items:center;gap:.4rem;font-size:1.2rem;color:var(--color-secondary-text)}.homework-legend-color{width:12px;height:12px;border-radius:3px}.homework-legend-color.word-excellent{background:rgba(40,167,69,.5);border:1px solid #28a745}.homework-legend-color.word-good{background:rgba(255,87,0,.5);border:1px solid var(--ghost-accent-color)}.homework-legend-color.word-fair{background:rgba(255,193,7,.5);border:1px solid #ffc107}.homework-legend-color.word-poor{background:rgba(220,53,69,.5);border:1px solid #dc3545}.homework-legend-color.word-omitted{background:rgba(108,117,125,.5);border:1px solid #6c757d}.homework-notebook-instructions{text-align:center;margin-bottom:2rem}.homework-notebook-instructions h3{font-size:2rem;margin-bottom:.5rem;color:var(--color-darker-gray)}.homework-notebook-instructions p{font-size:1.5rem;color:var(--color-secondary-text)}.notebook-results-container .new-record-badge{text-align:center;font-size:1.8rem;font-weight:700;color:#d9a443;margin-bottom:2rem;padding:1rem 2rem;background:rgba(255,215,0,.1);border-radius:12px;animation:homeworkEmphasisPulse 1s ease-in-out infinite}.notebook-results-container .results-content{text-align:center;padding:4rem 3rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .results-content:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .results-emoji{font-size:6rem;margin-bottom:2rem}.notebook-results-container .results-title{font-size:2.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;line-height:1.2}.notebook-results-container .results-message{font-size:1.6rem;color:var(--color-secondary-text);margin:0 0 3rem;line-height:1.5;font-weight:400}.notebook-results-container .results-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:3rem;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .results-stats:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .result-stat{text-align:center}.notebook-results-container .stat-value{display:block;font-size:3.2rem;font-weight:700;color:var(--ghost-accent-color);margin-bottom:.5rem}.notebook-results-container .results-content.excellent .stat-value,.notebook-results-container .results-content.fair .stat-value,.notebook-results-container .results-content.good .stat-value,.notebook-results-container .results-content.needs-work .stat-value{color:var(--ghost-accent-color)}.notebook-results-container .stat-label{display:block;font-size:1.4rem;color:var(--color-secondary-text);font-weight:500}.notebook-results-container .game-leaderboard{margin:2rem 0;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s;border:1px solid var(--color-border)}.notebook-results-container .game-leaderboard:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .game-leaderboard h3{font-size:2rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.notebook-results-container .ranking-date{font-size:1.4rem;font-weight:400;color:var(--color-secondary-text);margin-left:.5rem}.notebook-results-container .weekly-ranking{background:linear-gradient(135deg,rgba(255,215,0,.05),rgba(255,140,0,.05));border-color:rgba(255,215,0,.2)}.notebook-results-container .weekly-ranking:hover{box-shadow:0 6px 16px rgba(255,215,0,.1)}.notebook-results-container .leaderboard-list{display:flex;flex-direction:column;gap:.8rem}.notebook-results-container .leaderboard-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--color-lighter-gray);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,background-color .2s;border:1px solid var(--color-border)}.notebook-results-container .leaderboard-item:hover{background-color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .leaderboard-item.current-user{background:linear-gradient(135deg,rgba(255,87,0,.1),rgba(255,140,0,.1));border:1px solid var(--ghost-accent-color);font-weight:700}.notebook-results-container .leaderboard-item.current-user:hover{box-shadow:0 6px 16px rgba(255,87,0,.1)}.notebook-results-container .rank{font-size:1.6rem;font-weight:700;color:var(--ghost-accent-color);min-width:3rem}.notebook-results-container .player-name{flex:1;font-size:1.5rem;color:var(--color-darker-gray)}.notebook-results-container .player-score-info{display:flex;align-items:center;gap:1.5rem}.notebook-results-container .player-score{font-size:1.4rem;font-weight:600;color:var(--ghost-accent-color)}.notebook-results-container .general-feedback-section{margin:2rem 0;padding:2rem;background:linear-gradient(135deg,rgba(34,197,94,.05),rgba(16,185,129,.05));border-radius:12px;border:1px solid rgba(34,197,94,.2);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .general-feedback-section:hover{box-shadow:0 6px 16px rgba(34,197,94,.1)}.notebook-results-container .general-feedback-section h4{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;display:flex;align-items:center;gap:.8rem}.notebook-results-container .general-feedback-content{font-size:1.5rem;line-height:1.6;color:var(--color-darker-gray)}.notebook-results-container .general-feedback-content p{margin:0}.notebook-results-container .general-feedback-content .feedback-details{margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(34,197,94,.3);font-size:1.4rem;color:var(--color-secondary-text);font-style:italic}.grade-reasons{margin-top:1.5rem;padding-top:1.5rem;border-top:1px dashed rgba(237,137,54,.3)}.reasons-title{font-size:1.5rem;font-weight:600;color:#c05621;margin:0 0 1rem;text-align:center}.notebook-results-container .achievements-section{margin:2rem 0}.notebook-results-container .report-section-title{font-size:1.8rem;font-weight:700;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.notebook-results-container .achievements-container{display:flex;flex-direction:column;gap:1rem}.notebook-results-container .report-achievement{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s}.notebook-results-container .report-achievement:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .report-achievement .achievement-icon{width:48px;height:48px;background:rgba(34,197,94,.15);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#22c55e;flex-shrink:0}.notebook-results-container .report-achievement .achievement-text{flex:1;text-align:left}.notebook-results-container .report-achievement .achievement-text span{font-size:1.5rem;color:var(--color-darker-gray);line-height:1.5}.notebook-results-container .streak-section{margin:2rem 0}.notebook-results-container .streak-stats{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.notebook-results-container .streak-item{flex:1;min-width:100px;max-width:150px;flex-direction:column;text-align:center;padding:1.2rem 1rem;gap:.5rem;display:flex;align-items:center;background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.notebook-results-container .streak-icon{width:56px;height:56px;font-size:1.6rem;font-weight:700;background:rgba(249,115,22,.15);color:var(--ghost-accent-color)}.notebook-results-container .streak-icon.best{background:rgba(251,191,36,.15);color:#f59e0b}.notebook-results-container .streak-icon.freeze{background:rgba(59,130,246,.15);color:#3b82f6;font-size:1.3rem}.notebook-results-container .streak-item .achievement-text{text-align:center}.notebook-results-container .streak-item .achievement-text span{font-size:1.3rem;color:var(--color-secondary-text)}.notebook-results-container .recommendations-section{margin:2rem 0}.notebook-results-container .recommendations-container{display:flex;flex-direction:column;gap:1rem}.notebook-results-container .report-recommendation{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s}.notebook-results-container .report-recommendation:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .report-recommendation.high{border-left:4px solid #dc3545}.notebook-results-container .report-recommendation.medium{border-left:4px solid #ffc107}.notebook-results-container .report-recommendation.low{border-left:4px solid #28a745}.notebook-results-container .rec-icon{width:36px;height:36px;min-width:36px;background:rgba(249,115,22,.15);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#f97316;flex-shrink:0}.notebook-results-container .rec-content{flex:1;display:flex;align-items:center;min-height:36px}.notebook-results-container .notebook-rec-text{font-size:1.5rem;font-weight:500;color:var(--color-darker-gray);line-height:1.5}.notebook-results-container .sentence-analysis-section{margin:2rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .sentence-analysis-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .sentence-analysis-section h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem;text-align:center}.notebook-results-container .homework-colored-sentence{font-size:2.4rem;line-height:1.8;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;text-align:center;margin-bottom:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.notebook-results-container .homework-colored-word{padding:.4rem .6rem;border-radius:6px;margin:0 .1rem;transition:background .2s;cursor:help;font-size:2rem}.notebook-results-container .homework-colored-word.word-excellent{background:rgba(40,167,69,.2);color:#28a745}.notebook-results-container .homework-colored-word.word-good{background:rgba(255,193,7,.2);color:#d4a106}.notebook-results-container .homework-colored-word.word-fair{background:rgba(255,87,0,.2);color:#fd7e14}.notebook-results-container .homework-colored-word.word-needs-work{background:rgba(220,53,69,.2);color:#dc3545}.notebook-results-container .homework-colored-word.word-blank{background:rgba(108,117,125,.2);color:#495057;border:2px dashed rgba(108,117,125,.5)}.notebook-results-container .homework-analysis-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;font-size:1.2rem}.notebook-results-container .homework-legend-item{display:flex;align-items:center;gap:.5rem;color:var(--color-secondary-text)}.notebook-results-container .homework-legend-color{width:16px;height:16px;border-radius:4px}.notebook-results-container .homework-legend-color.word-excellent{background:rgba(40,167,69,.4)}.notebook-results-container .homework-legend-color.word-good{background:rgba(255,193,7,.4)}.notebook-results-container .homework-legend-color.word-fair{background:rgba(255,87,0,.4)}.notebook-results-container .homework-legend-color.word-needs-work{background:rgba(220,53,69,.4)}.notebook-results-container .homework-legend-color.word-blank{background:rgba(108,117,125,.4);border:1px dashed rgba(108,117,125,.8)}.notebook-results-container .problematic-words-section{margin:1.5rem 0 2rem}.notebook-results-container .toggle-details-btn{width:100%;padding:1rem 1.5rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:box-shadow .2s,border-color .2s,background .2s;display:flex;align-items:center;justify-content:space-between;font-size:1.4rem;color:var(--color-darker-gray);font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.notebook-results-container .toggle-details-btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .toggle-details-btn.active{border-color:var(--ghost-accent-color);background:var(--color-lighter-gray)}.notebook-results-container .toggle-icon{font-size:1.2rem;transition:transform .2s;color:var(--ghost-accent-color)}.notebook-results-container .toggle-details-btn.active .toggle-icon{transform:rotate(180deg)}.notebook-results-container .word-details-list{margin-top:1rem;padding:1.5rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);display:flex;flex-direction:column;gap:1rem;animation:slideDown .3s ease-out}.notebook-results-container .word-detail-item{padding:1rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.02);transition:box-shadow .2s}.notebook-results-container .word-detail-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.05)}.notebook-results-container .word-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.notebook-results-container .word-japanese{font-size:2rem;font-weight:600;color:var(--color-darker-gray);font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.notebook-results-container .word-status{font-size:1.3rem;font-weight:500;padding:.3rem .8rem;border-radius:6px;text-transform:capitalize}.notebook-results-container .word-detail-item.word-excellent .word-status{background:rgba(40,167,69,.15);color:#28a745}.notebook-results-container .word-detail-item.word-good .word-status{background:rgba(255,193,7,.15);color:#d4a106}.notebook-results-container .word-detail-item.word-fair .word-status{background:rgba(255,87,0,.15);color:#fd7e14}.notebook-results-container .word-detail-item.word-needs-work .word-status{background:rgba(220,53,69,.15);color:#dc3545}.notebook-results-container .word-detail-item.word-blank .word-status{background:rgba(108,117,125,.15);color:#495057}.notebook-results-container .word-detail-item.word-blank{border:1px dashed rgba(108,117,125,.5);background:rgba(108,117,125,.05)}.notebook-results-container .word-suggestion{font-size:1.3rem;color:var(--color-secondary-text);line-height:1.4;margin-top:.5rem;padding:.6rem .8rem;background:rgba(34,197,94,.08);border-radius:6px;display:flex;align-items:flex-start;gap:.5rem}.notebook-results-container .word-suggestion .tip-icon{flex-shrink:0}.notebook-results-container .word-written{font-size:1.3rem;color:var(--color-darker-gray);line-height:1.4;margin-top:.5rem;padding:.6rem .8rem;background:rgba(99,102,241,.08);border-radius:6px;display:flex;align-items:flex-start;gap:.5rem;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.notebook-results-container .word-written .written-icon{flex-shrink:0}.notebook-results-container .line-scores{display:flex;gap:1rem;margin-top:.5rem;padding:.5rem .8rem;background:rgba(99,102,241,.05);border-radius:6px}.notebook-results-container .score-item{display:flex;align-items:center;gap:.3rem;font-size:1.2rem;color:var(--color-darker-gray)}.notebook-results-container .score-item .score-icon{font-size:1rem}.notebook-results-container .word-expected{display:flex;align-items:center;gap:.5rem;margin-top:.4rem;padding:.4rem .8rem;background:rgba(147,51,234,.06);border-radius:6px;font-size:1.2rem}.notebook-results-container .expected-label{color:var(--color-secondary-text);font-weight:500}.notebook-results-container .expected-parts{font-weight:500}.notebook-results-container .expected-parts,.notebook-results-container .expected-text{font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-size:1.4rem;color:var(--color-darker-gray)}.notebook-results-container .line-status-icon{width:2.4rem;height:2.4rem;display:flex;align-items:center;justify-content:center;background:rgba(99,102,241,.1);border-radius:6px;font-size:1.2rem;flex-shrink:0}.notebook-results-container .word-line-number{font-weight:600;font-size:1.3rem;color:var(--color-darker-gray)}.notebook-results-container .line-badges{display:flex;align-items:center;gap:.5rem;margin-left:auto}.notebook-results-container .line-score,.notebook-results-container .word-type-label{font-size:1.2rem;font-weight:500;color:var(--color-secondary-text);background:rgba(0,0,0,.05);padding:.3rem .6rem;border-radius:4px;height:2.4rem;display:flex;align-items:center}.notebook-results-container .word-type-label{font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.notebook-results-container .word-issue{font-size:1.3rem;color:#b45309;line-height:1.4;margin-top:.5rem;padding:.6rem .8rem;background:rgba(251,191,36,.1);border-radius:6px;display:flex;align-items:flex-start;gap:.5rem}.notebook-results-container .word-issue .issue-icon{flex-shrink:0}.notebook-results-container .calligraphy-aspects{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.notebook-results-container .calligraphy-aspect{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.8rem 1rem;background:#fff;border-radius:8px;border:1px solid var(--color-border);font-size:1.4rem}.notebook-results-container .aspect-label{color:var(--color-secondary-text);font-weight:500}.notebook-results-container .aspect-value{font-weight:600;padding:.2rem .6rem;border-radius:4px}.notebook-results-container .aspect-value.excelente,.notebook-results-container .aspect-value.excellent{background:rgba(40,167,69,.15);color:#28a745}.notebook-results-container .aspect-value.bien,.notebook-results-container .aspect-value.good{background:rgba(255,193,7,.15);color:#d4a106}.notebook-results-container .aspect-value.acceptable,.notebook-results-container .aspect-value.fair,.notebook-results-container .aspect-value.regular{background:rgba(255,87,0,.15);color:#fd7e14}.notebook-results-container .aspect-value.low,.notebook-results-container .aspect-value.needs_practice,.notebook-results-container .aspect-value.needs_work,.notebook-results-container .aspect-value.poor{background:rgba(220,53,69,.15);color:#dc3545}.notebook-results-container .scoring-recommendation{font-size:1.4rem;color:var(--color-secondary-text);line-height:1.5;padding:1rem;background:#fff;border-radius:8px;border:1px solid var(--color-border);margin:0}.notebook-results-container .recognized-text{margin:2rem 0;padding:2rem;background:var(--color-lighter-gray);border-radius:12px;border:1px solid var(--color-border);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .recognized-text:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-results-container .recognized-text h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1rem}.notebook-results-container .recognized-content{font-size:1.5rem;color:var(--color-darker-gray);line-height:1.6}.notebook-results-container .writing-recommendation-box{display:flex;align-items:flex-start;gap:1rem;margin-top:1rem;padding:1rem;background:rgba(34,197,94,.1);border-radius:8px;color:#16a34a;font-size:1.4rem;line-height:1.5}.notebook-results-container .writing-recommendation-box .rec-icon{width:auto;height:auto;background:none;font-size:1.6rem}.notebook-results-container .error-feedback{margin:2rem 0;padding:2rem;background:linear-gradient(135deg,rgba(220,53,69,.05),rgba(239,68,68,.05));border-radius:12px;border:1px solid rgba(220,53,69,.2);text-align:left;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-results-container .error-feedback:hover{box-shadow:0 6px 16px rgba(220,53,69,.1)}.notebook-results-container .error-feedback h4{font-size:1.8rem;font-weight:700;color:#dc3545;margin:0 0 1.5rem;display:flex;align-items:center;gap:.8rem}.notebook-results-container .error-feedback ul{list-style:none;padding:0;margin:0}.notebook-results-container .error-feedback li{font-size:1.4rem;color:var(--color-darker-gray);padding:.8rem 0 .8rem 2rem;position:relative;border-bottom:1px solid rgba(220,53,69,.1)}.notebook-results-container .error-feedback li:last-child{border-bottom:none}.notebook-results-container .error-feedback li:before{content:"!";position:absolute;left:0;color:#dc3545;font-weight:700;font-size:1.6rem}.notebook-results-container .results-actions{display:flex;flex-direction:row;gap:1.5rem;justify-content:center;margin-top:2rem}.notebook-exercise-card{text-align:left}.notebook-exercise-card h4{font-size:1.6rem;margin-bottom:1rem;color:var(--color-darker-gray)}.notebook-instructions-section{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-radius:12px;padding:2rem;margin-bottom:2rem;border-left:4px solid var(--ghost-accent-color)}.notebook-instruction-text{display:flex;flex-direction:column;gap:.5rem}.instruction-japanese{font-size:2rem;font-weight:600;color:var(--color-darker-gray)}.instruction-romaji{font-size:1.4rem;color:var(--color-secondary-text);font-style:italic}.instruction-spanish{font-size:1.5rem;color:var(--color-darker-gray)}.notebook-requirements-section{background:var(--color-lighter-gray);border-radius:12px;padding:2rem;margin-bottom:2rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-requirements-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-requirements-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:2rem}.notebook-requirements-list li{background:#fff;padding:.75rem 1.25rem;border-radius:12px;font-size:1.4rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-requirements-list li:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-tasks-section{background:var(--color-lighter-gray);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-tasks-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-tasks-list{display:flex;flex-direction:column;gap:2rem}.notebook-task-item{display:flex;align-items:flex-start;gap:1rem;background:#fff;padding:1rem;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-task-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.task-number{width:32px;height:32px;background:var(--ghost-accent-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.4rem;flex-shrink:0}.task-content{flex:1}.task-character{font-size:3rem;font-weight:700;color:var(--color-darker-gray);line-height:1;margin-bottom:.5rem}.task-instruction{font-size:1.4rem;color:var(--color-secondary-text)}.task-repetitions{color:var(--ghost-accent-color);font-weight:600;margin-left:.5rem}.task-hints{font-size:1.2rem;color:var(--color-secondary-text);margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--color-border)}.notebook-questions-section{background:var(--color-lighter-gray);border-radius:12px;padding:2rem;margin-bottom:1.5rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-questions-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-questions-section h4{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 1.5rem}.notebook-questions-list{display:flex;flex-direction:column;gap:1rem}.notebook-question-item{display:flex;align-items:flex-start;gap:1rem;background:#fff;padding:1.2rem 1.5rem;border-radius:12px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.notebook-question-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08);transform:translateY(-1px)}.question-number{width:32px;height:32px;background:var(--ghost-accent-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.4rem;flex-shrink:0}.question-content{flex:1;display:flex;flex-direction:column;gap:.6rem}.question-characters{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}.question-hiragana{font-weight:600;color:var(--ghost-accent-color);background:rgba(255,87,0,.1)}.question-hiragana,.question-kanji{font-size:2.4rem;padding:.3rem .8rem;border-radius:8px}.question-kanji{font-weight:700;color:var(--color-darker-gray);background:rgba(34,197,94,.1)}.question-character{font-size:2.4rem;font-weight:600;color:var(--ghost-accent-color)}.question-sentence{font-size:1.8rem;font-weight:500;color:var(--color-darker-gray);background:rgba(99,102,241,.1);padding:.4rem 1rem;border-radius:8px}.question-romaji{font-size:1.4rem;color:var(--color-secondary-text);font-style:italic}.question-meaning{font-size:1.3rem;color:var(--color-secondary-text);background:var(--color-lighter-gray);padding:.2rem .6rem;border-radius:4px}.question-instruction{font-size:1.4rem;color:var(--color-darker-gray);line-height:1.5}.question-repetitions{display:inline-flex;align-items:center;justify-content:center;background:var(--ghost-accent-color);color:#fff;font-weight:700;font-size:1.2rem;padding:.2rem .6rem;border-radius:4px;margin-left:.5rem}.question-hints{display:flex;align-items:flex-start;gap:.5rem;font-size:1.2rem;color:var(--color-secondary-text);background:rgba(251,191,36,.1);padding:.6rem 1rem;border-radius:8px;margin-top:.3rem}.question-hints .hints-icon{flex-shrink:0}.question-hints .hints-text{line-height:1.5}.notebook-tabs-section{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}.notebook-tabs-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-tabs-section .tabs-header{display:flex;border-bottom:1px solid var(--color-border);overflow-x:auto;-webkit-overflow-scrolling:touch}.notebook-tabs-section .tab-button{flex:1;padding:1.2rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1.4rem;font-weight:600;color:var(--color-secondary-text);transition:background .2s,color .2s,border-color .2s;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:.8rem}.notebook-tabs-section .tab-button:hover{background:var(--color-lighter-gray)}.notebook-tabs-section .tab-button.active{color:var(--ghost-accent-color);border-bottom-color:var(--ghost-accent-color);background:rgba(255,87,0,.05)}.notebook-tabs-section .tabs-content{padding:2rem}.notebook-tabs-section .tab-content{display:none}.notebook-tabs-section .tab-content.active{display:block}.notebook-scoring-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border-left:4px solid #22c55e}.scoring-description{font-size:1.4rem;color:var(--color-secondary-text);margin-bottom:1rem}.scoring-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.scoring-level{background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,140,0,.1));border-radius:12px;padding:1rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.scoring-level:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.scoring-level.romaji{border-color:#718096;border-left:4px solid #718096}.scoring-level.romaji:hover{box-shadow:0 6px 16px rgba(113,128,150,.3)}.scoring-level.hiragana,.scoring-level.katakana{border-color:#48bb78;border-left:4px solid #48bb78}.scoring-level.hiragana:hover,.scoring-level.katakana:hover{box-shadow:0 6px 16px rgba(72,187,120,.3)}.scoring-level.kanji{border-color:#4299e1;border-left:4px solid #4299e1}.scoring-level.kanji:hover{box-shadow:0 6px 16px rgba(66,153,225,.3)}.level-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.level-system{font-weight:700;font-size:1.3rem;color:var(--color-darker-gray)}.level-max-grade{font-size:1.2rem;font-weight:600;color:var(--ghost-accent-color);background:rgba(217,164,67,.1);padding:.5rem 1rem;border-radius:6px;white-space:nowrap}.level-example{font-size:1.8rem;color:var(--color-darker-gray);margin-bottom:.5rem}.level-note{font-size:1.2rem;color:var(--color-secondary-text)}.scoring-recommendation{font-size:1.4rem;color:var(--color-darker-gray);background:#fff;padding:1rem;border-radius:12px;margin-top:1rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.scoring-recommendation:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-example-section{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border-left:4px solid #3b82f6;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-example-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.example-description{font-size:1.4rem;color:var(--color-secondary-text);margin-bottom:1rem}.example-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:2rem}.example-option{background:#fff;border-radius:12px;padding:1rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s;overflow:hidden;min-width:0;position:relative}.example-option:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;transition:height .3s}.example-option:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.example-option:hover:before{height:6px}.example-option.romaji:before{background:#718096}.example-option.hiragana:before,.example-option.katakana:before{background:#48bb78}.example-option.kanji:before{background:#4299e1}.example-option.hiragana,.example-option.kanji,.example-option.katakana,.example-option.romaji{border-top:none}.example-option.romaji:hover{box-shadow:0 6px 16px rgba(113,128,150,.2)}.example-option.hiragana:hover,.example-option.katakana:hover{box-shadow:0 6px 16px rgba(72,187,120,.2)}.example-option.kanji:hover{box-shadow:0 6px 16px rgba(66,153,225,.2)}.example-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.option-system{font-weight:700;font-size:1.3rem;color:var(--color-darker-gray)}.option-max-grade{padding:.25rem .75rem;border-radius:20px;font-size:1.2rem;font-weight:600}.example-format,.option-max-grade{background:var(--color-lighter-gray)}.example-format{font-family:Courier New,monospace;border-radius:6px;overflow-x:auto;white-space:pre;margin:0;line-height:1.6;max-width:100%}.example-format,.example-note{font-size:1.3rem;padding:1rem;border:1px solid var(--color-border)}.example-note{color:var(--color-secondary-text);background:#fff;border-radius:12px;margin-top:1rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.example-note:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.notebook-criteria-section{background:var(--color-lighter-gray);border-radius:12px;padding:2rem;margin-bottom:2rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.notebook-criteria-section:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.criteria-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.criteria-list li{background:#fff;padding:1rem;border-radius:12px;font-size:1.3rem;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.criteria-list li:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.criteria-list li strong{color:var(--ghost-accent-color)}.notebook-upload-section{background:#fff;border-radius:12px;padding:2rem;margin-top:2rem;border:2px dashed var(--color-border)}.notebook-upload-section h4{border-bottom:none;margin-bottom:.5rem}.notebook-upload-section>p{font-size:1.4rem;color:var(--color-secondary-text);margin-bottom:1.5rem}@media(max-width:1200px){.homework-exercises-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.type-filters{padding:0;margin:1.5rem 0}.type-filters-buttons{gap:.8rem}.type-filter-btn{padding:.6rem 1.2rem;font-size:1.3rem}.type-filter-btn .filter-checkbox{font-size:1.4rem}.type-filter-btn .filter-icon,.type-filter-btn .filter-label{font-size:1.3rem}.homework-exercises-grid{grid-template-columns:1fr;margin-top:2rem}.homework-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.homework-pagination .pagination-btn{width:100%;justify-content:center}.homework-pagination .pagination-info{order:-1}.homework-exercise-header{flex-direction:column;padding:2rem;gap:1.5rem;align-items:stretch}.homework-exercise-header-content{text-align:left}.homework-exercise-title{font-size:2rem}.homework-exercise-description{font-size:1.5rem}.homework-back-btn{align-self:center;width:auto}.homework-progress-info{gap:1rem}.score-info-inline{gap:1rem;flex-wrap:wrap}.score-info-inline .homework-score{font-size:1.4rem}.homework-question-counter{font-size:1.4rem;padding-bottom:1.5rem}.homework-exercise-progress,.homework-question-card{padding:2rem}.homework-question-text{font-size:2rem}.homework-question-options{gap:10px}.homework-option-btn{padding:10px 12px;min-height:52px;font-size:1.6rem}.homework-results{padding:3rem 2rem}.homework-results .results-emoji{font-size:5rem;margin-bottom:1.5rem}.homework-results .results-title{font-size:2.4rem}.homework-results .results-message{font-size:1.4rem;margin-bottom:2rem}.homework-results .results-stats{grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.5rem}.homework-results .result-stat:last-child{grid-column:span 2}.homework-results .stat-value{font-size:2.4rem}.homework-results .stat-label{font-size:1.3rem}.homework-results .results-actions{flex-direction:column}.homework-results .results-actions .gh-btn{width:100%}.homework-results .new-record-badge{font-size:1.6rem;padding:.8rem}.homework-results .achievements-title{font-size:2rem}.homework-results .unlocked-achievement-item{padding:1rem;gap:1rem}.homework-results .unlocked-achievement-item .achievement-icon{font-size:2.4rem}.homework-results .unlocked-achievement-item .achievement-details h4{font-size:1.6rem}.homework-results .unlocked-achievement-item .achievement-details p{font-size:1.3rem}.leaderboard-section,.weekly-ranking-section{padding:1.5rem;margin:1.5rem 0}.leaderboard-title,.weekly-ranking-title{font-size:1.5rem}.leaderboard-item,.weekly-ranking-item{padding:.8rem 1rem}.leaderboard-name,.leaderboard-score,.weekly-ranking-name,.weekly-ranking-score{font-size:1.3rem}.stats-mobile{display:inline}.stats-desktop{display:none}.homework-question-controls{flex-direction:column;align-items:center;gap:1.2rem}.homework-audio-player{padding:4px 8px;gap:8px;height:56px;margin-bottom:1.5rem}.homework-audio-play-btn{width:44px;height:44px}.homework-audio-play-btn svg{width:14px;height:14px}.homework-audio-time{font-size:12px;min-width:55px}.homework-japanese-text{font-size:1.6rem;margin-bottom:1rem;padding:1.2rem}.homework-romaji-text,.homework-spanish-text{font-size:1.5rem;margin-bottom:1.5rem;padding:1.2rem}.homework-listening-controls{flex-direction:column;gap:1rem;width:100%;margin-top:1.5rem}.homework-listening-controls .homework-audio-btn,.homework-listening-controls .homework-hint-btn,.homework-listening-controls .homework-romaji-btn,.homework-listening-controls .homework-spanish-btn{width:100%;min-width:100%}.homework-grammar-container{gap:1.5rem}.homework-sentence-builder,.homework-word-bank{padding:1.5rem}.word-bank-items{gap:.8rem;justify-content:center}.word-token{font-size:1.3rem;padding:.7rem 1rem}.homework-grammar-actions,.homework-multiselect-actions{flex-direction:column;gap:1rem}.homework-clear-btn,.homework-hints .homework-hint-btn,.homework-submit-btn{width:100%;min-width:100%}.homework-hints{width:100%}.correct-sequence-display{gap:.6rem}.correct-word{font-size:1.3rem;padding:.5rem .8rem}.results-penalties{padding:1.2rem;margin:1.5rem 0 0}.penalties-title{font-size:1.4rem}.penalty-item{padding:.6rem .8rem;gap:.8rem}.penalty-icon{width:28px;height:28px;font-size:1.2rem}.penalty-label{font-size:1.3rem}.penalty-count{font-size:1.1rem}.penalty-value{font-size:1.4rem}.penalties-total-label{font-size:1.3rem}.penalties-total-value{font-size:1.6rem}.homework-image-upload-area{padding:1.5rem}.homework-upload-label{padding:1rem}.homework-upload-icon{font-size:3rem}.homework-upload-primary{font-size:1.4rem}.homework-upload-secondary{font-size:1.2rem}.homework-upload-preview img{max-height:250px}.image-analysis-section,.image-correct-answer,.image-errors-section,.image-feedback-section{padding:1rem}.homework-colored-sentence{gap:.3rem;padding:.8rem}.homework-colored-word{padding:.3rem .6rem;font-size:1.3rem}.homework-analysis-legend{gap:.6rem}.homework-legend-item{font-size:1.1rem}.image-score-value{font-size:2rem}.notebook-results-container .results-stats{grid-template-columns:repeat(2,1fr)}.notebook-results-container .results-actions{flex-direction:column}.notebook-results-container .results-emoji{font-size:4rem}.notebook-results-container .results-title{font-size:2rem}.notebook-results-container .colored-sentence{font-size:1.8rem;padding:1rem}.notebook-results-container .colored-word{font-size:1.6rem;padding:.3rem .5rem}.notebook-results-container .word-japanese{font-size:1.6rem}.notebook-results-container .report-achievement,.notebook-results-container .report-recommendation{padding:1rem}.notebook-grade-display .grade-emoji{font-size:3rem}.notebook-grade-display .grade-value{font-size:2.5rem}.notebook-grade-display .grade-message{font-size:1.4rem}.homework-notebook-instructions h3{font-size:1.6rem}.homework-notebook-instructions p{font-size:1.3rem}.notebook-requirements-list{flex-direction:column}.criteria-list,.example-options,.scoring-levels{grid-template-columns:1fr}.scoring-level{padding:1.2rem}.level-header{flex-wrap:wrap;gap:.5rem}.level-system{font-size:1.2rem}.level-max-grade{font-size:1.1rem;padding:.2rem .6rem}.level-example{font-size:1.5rem;word-break:break-word}.level-note{font-size:1.1rem}.scoring-description,.scoring-recommendation{font-size:1.3rem}.example-option{padding:.8rem}.example-format{font-size:1.1rem;padding:.8rem;white-space:pre-wrap;word-break:break-word}.example-option-header{flex-wrap:wrap;gap:.5rem}.option-system{font-size:1.2rem}.option-max-grade{font-size:1.1rem}.task-character{font-size:2.5rem}.instruction-japanese{font-size:1.6rem}}@media(max-width:480px){.sentence-dropzone{min-height:60px;padding:1rem}.dropzone-placeholder{font-size:1.3rem;padding:.8rem}.sentence-word{font-size:1.3rem;padding:.5rem .8rem}.word-token{font-size:1.2rem;padding:.6rem .8rem}.homework-container{padding:2rem 1rem}.homework-exercise-card{border-radius:12px}.homework-exercise-content{padding:1.2rem}.homework-exercise-title{font-size:2.4rem}.homework-exercise-description{font-size:1.8rem}.homework-score-circle{width:120px;height:120px}.homework-score-percentage{font-size:2.8rem}.homework-feedback-result{flex-direction:column;text-align:center;gap:1rem;padding:1.5rem}.homework-feedback-icon{align-self:center;display:flex;justify-content:center;align-items:center}.homework-feedback-actions{flex-direction:column;gap:1rem}.score-info-inline{flex-direction:column;gap:.5rem;align-items:flex-end}.score-info-inline .homework-score{font-size:1.2rem}.homework-listening-content{padding:1.2rem}.homework-japanese-text{font-size:2rem;line-height:1.5}.homework-romaji-text,.homework-spanish-text{font-size:1.5rem}.homework-audio-btn,.homework-hint-btn,.homework-romaji-btn,.homework-spanish-btn{padding:1rem 1.5rem;font-size:1.4rem;min-width:100%;width:100%;height:42px}.homework-pagination{padding:1.2rem;gap:1.2rem}.homework-pagination .pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.homework-pagination .pagination-arrow{width:14px;height:14px}.homework-pagination .pagination-current{font-size:1.4rem}.homework-pagination .pagination-range{font-size:1.2rem}}.kana-practice-container{margin-top:2rem}.kana-practice-layout{display:flex;flex-direction:column;gap:2rem;align-items:stretch}.kana-quiz-card{width:100%;min-width:0;background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:2.4rem;position:relative;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.kana-quiz-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.kana-quiz-card:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0,rgba(255,87,0,.03),transparent 55%);pointer-events:none}.kana-stats-row{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.kana-controls-row{justify-content:flex-end;margin-bottom:1.2rem}.kana-stat-chip{font-family:JetBrains Mono,SF Mono,monospace;font-size:1.2rem;color:var(--color-secondary-text);background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:8px;padding:.4rem 1rem;white-space:nowrap;font-weight:500}.kana-stat-chip span{color:var(--color-darker-gray);font-weight:700}.kana-acc-bar{flex:1;height:4px;background:var(--color-lighter-gray);border-radius:4px;overflow:hidden;min-width:60px;border:1px solid var(--color-border)}.kana-acc-fill{height:100%;background:linear-gradient(90deg,var(--ghost-accent-color) 0,#ff8c00 100%);border-radius:4px;width:0;transition:width .5s}.kana-streak{display:flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,SF Mono,monospace;font-size:1.2rem;font-weight:500;padding:.4rem 1rem;border-radius:8px;background:var(--color-lighter-gray);border:1px solid var(--color-border);color:var(--color-secondary-text);transition:all .3s;white-space:nowrap}.kana-streak.hot{background:rgba(255,87,0,.1);border-color:var(--ghost-accent-color);color:var(--ghost-accent-color);font-weight:700}.kana-streak-dot{width:7px;height:7px;border-radius:50%;background:var(--color-secondary-text);opacity:.4;transition:all .3s}.kana-streak.hot .kana-streak-dot{background:var(--ghost-accent-color);opacity:1}.kana-stats-btn{background:#fff;border:1px solid var(--color-border);color:var(--color-secondary-text);padding:.4rem .8rem;border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .2s}.kana-stats-btn:hover{background:var(--color-lighter-gray);color:var(--color-darker-gray)}.kana-stats-btn.active{background:rgba(255,87,0,.08);border-color:var(--ghost-accent-color);color:var(--ghost-accent-color)}.kana-timer-bar{display:none;flex:1 0 100%;min-width:100%;height:6px;margin-top:.2rem}.kana-timer-bar.active{display:block}.kana-timer-fill{width:0;transition:width .1s linear}.kana-timer-fill.low{background:linear-gradient(90deg,#dc3545,#ff8c00)}.kana-display-area{display:flex;flex-direction:column;align-items:center;padding:3rem 0 1.5rem;position:relative}.kana-type-label{font-family:JetBrains Mono,SF Mono,monospace;font-size:1.1rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-secondary-text);margin-bottom:1.4rem;opacity:.7}.kana-group-hint{font-size:1.1rem;font-weight:500;color:var(--color-primary,#ff5700);margin-top:-.8rem;margin-bottom:1.2rem;background:rgba(255,87,0,.08);padding:.2rem .8rem;border-radius:20px;letter-spacing:.05em;opacity:.9}.kana-char-display{font-size:calc(clamp(5rem,12vw,8rem));line-height:1;color:var(--color-darker-gray);cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:400;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;transition:color .15s;position:relative}.kana-char-display.kana-anim-in{animation:kanaCharIn .22s ease forwards}@keyframes kanaCharIn{0%{opacity:0;transform:translateY(7px) scale(.93)}to{opacity:1;transform:none}}.kana-char-display.kana-anim-shake{animation:kanaCharShake .3s ease}@keyframes kanaCharShake{0%,to{transform:none}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}.kana-char-display.kana-anim-flash{animation:kanaCharFlash .28s ease}@keyframes kanaCharFlash{0%,to{color:var(--color-darker-gray)}50%{color:#28a745}}.kana-reveal-hint{height:2rem;margin-top:1.2rem;font-family:JetBrains Mono,SF Mono,monospace;font-size:1.4rem;color:var(--ghost-accent-color);letter-spacing:.1em;opacity:0;transition:opacity .18s;pointer-events:none;font-weight:600}.kana-reveal-hint.show{opacity:1}.kana-meaning{margin-top:.6rem;font-size:1.3rem;color:var(--color-secondary-text);font-style:italic;letter-spacing:.02em;opacity:.85}.kana-char-btns{display:flex;gap:.6rem;margin-top:1.2rem}.kana-mini-btn{font-family:JetBrains Mono,SF Mono,monospace;font-size:1.1rem;padding:.4rem 1rem;border-radius:6px;border:1px solid var(--color-border);background:transparent;color:var(--color-secondary-text);cursor:pointer;transition:all .14s}.kana-mini-btn:hover{background:var(--color-lighter-gray);color:var(--color-darker-gray)}.kana-mini-btn:active{transform:scale(.95)}.kana-mini-btn.sound-btn{color:var(--ghost-accent-color);border-color:rgba(255,87,0,.2)}.kana-mini-btn.sound-btn:hover{background:rgba(255,87,0,.05)}.kana-mini-btn.sound-btn.pulse{animation:kanaSoundPulse .45s ease}@keyframes kanaSoundPulse{0%,to{opacity:1}50%{opacity:.45}}.kana-input-area{margin-top:1.8rem;max-width:340px;margin-left:auto;margin-right:auto}.kana-input-wrap{position:relative;display:flex;align-items:center}.kana-text-input{width:100%;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:1.2rem 3rem 1.2rem 1.4rem;font-family:JetBrains Mono,SF Mono,monospace;font-size:1.6rem;color:var(--color-darker-gray);outline:none;transition:border-color .18s,box-shadow .18s;letter-spacing:.05em;caret-color:var(--ghost-accent-color)}.kana-text-input::-moz-placeholder{color:var(--color-secondary-text);opacity:.5}.kana-text-input::placeholder{color:var(--color-secondary-text);opacity:.5}.kana-text-input:focus{border-color:rgba(255,87,0,.3);box-shadow:0 0 0 3px rgba(255,87,0,.06)}.kana-text-input.ok{border-color:rgba(40,167,69,.3);box-shadow:0 0 0 3px rgba(40,167,69,.05)}.kana-text-input.no{border-color:rgba(220,53,69,.3);box-shadow:0 0 0 3px rgba(220,53,69,.05)}.kana-enter-hint{position:absolute;right:1.2rem;opacity:.4;pointer-events:none}.kana-enter-hint,.kana-enter-hint kbd{font-family:JetBrains Mono,SF Mono,monospace;font-size:1rem;color:var(--color-secondary-text)}.kana-enter-hint kbd{background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:3px;padding:.1rem .4rem}.kana-char-feedback{display:flex;justify-content:center;gap:2px;margin-top:.8rem;min-height:1.8rem;font-family:JetBrains Mono,SF Mono,monospace;font-size:1.3rem;letter-spacing:.15em}.kana-cf-ok{color:#28a745}.kana-cf-no{color:#dc3545;text-decoration:underline}.kana-quiz-msg{text-align:center;margin-top:1.2rem;font-family:JetBrains Mono,SF Mono,monospace;font-size:1.2rem;min-height:2rem;color:var(--color-secondary-text)}.kana-quiz-msg.err{color:#dc3545}.kana-quiz-msg .kana-ans{font-weight:700;color:var(--ghost-accent-color)}.kana-action-row{display:flex;justify-content:center;gap:1rem;margin-top:1.6rem}.kana-action-btn{font-size:1.3rem;font-weight:500;padding:.6rem 1.6rem;border-radius:10px;border:1px solid var(--color-border);background:transparent;color:var(--color-secondary-text);cursor:pointer;transition:all .14s}.kana-action-btn:hover{background:var(--color-lighter-gray);color:var(--color-darker-gray)}.kana-action-btn:active{transform:scale(.97)}.kana-action-btn.reveal-btn{color:var(--ghost-accent-color);border-color:rgba(255,87,0,.2)}.kana-action-btn.reveal-btn:hover{background:rgba(255,87,0,.05)}.kana-action-btn.skip-btn{color:#dc3545;border-color:rgba(220,53,69,.2);background:rgba(220,53,69,.05)}.kana-action-btn.skip-btn:hover{opacity:.8}.kana-action-btn.reset-btn{color:var(--color-secondary-text);font-size:1.1rem;padding:.4rem 1rem;opacity:.7}.kana-action-btn.reset-btn:hover{opacity:1}.kana-action-btn.finish-btn{background:var(--ghost-accent-color);color:#fff;border-color:var(--ghost-accent-color);font-weight:600}.kana-action-btn.finish-btn:hover{opacity:.9}.kana-exercise-progress{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.4rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.kana-progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;flex-wrap:wrap;gap:.8rem}.kana-progress-counter,.kana-progress-score-info{font-size:1.4rem;font-weight:500;color:var(--color-secondary-text)}.kana-progress-score-info{display:flex;gap:1.5rem;align-items:center}.kana-progress-bar{height:6px;overflow:hidden;border:none;border-radius:99px;background:color-mix(in srgb,var(--ghost-accent-color) 10%,transparent)}.kana-progress-fill{height:100%;border-radius:inherit;background:var(--ghost-accent-color);transition:width .26s}.kana-options-panel{width:100%;flex-shrink:0}.kana-options-toggle{width:100%;background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1.2rem 1.6rem;font-size:1.4rem;font-weight:600;color:var(--color-darker-gray);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s cubic-bezier(.4,0,.2,1);margin-bottom:.8rem;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.kana-options-toggle:hover{background:var(--color-lighter-gray);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.kana-options-toggle.open{background:linear-gradient(135deg,rgba(255,87,0,.05),rgba(255,140,0,.05));border-color:rgba(255,87,0,.2)}.kana-options-toggle .kana-chev{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;transition:transform .3s cubic-bezier(.4,0,.2,1);font-size:1.8rem;line-height:1;color:var(--color-secondary-text);background:var(--color-lighter-gray);border-radius:6px}.kana-options-toggle:hover .kana-chev{background:var(--color-border);color:var(--color-darker-gray)}.kana-options-toggle.open .kana-chev{transform:rotate(180deg);background:rgba(255,87,0,.1);color:var(--ghost-accent-color)}.kana-options-body{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;max-height:0;opacity:0;transition:max-height .5s cubic-bezier(.25,.46,.45,.94),opacity .3s ease-out;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05)}.kana-options-body.open{max-height:2e3px;opacity:1}.kana-group-section{padding:1.2rem 1.4rem;border-bottom:1px solid var(--color-border);animation:slideInFade .3s cubic-bezier(.4,0,.2,1) backwards}.kana-group-section:first-child{animation-delay:.05s}.kana-group-section:nth-child(2){animation-delay:.1s}.kana-group-section:nth-child(3){animation-delay:.15s}.kana-group-section:nth-child(4){animation-delay:.2s}.kana-group-section:nth-child(5){animation-delay:.25s}.kana-group-section:nth-child(6){animation-delay:.3s}@keyframes slideInFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.kana-group-section:last-child{border-bottom:none}.kana-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.kana-group-title{font-family:JetBrains Mono,SF Mono,monospace;font-size:1.1rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-darker-gray);font-weight:600}.kana-group-links{display:flex;gap:.8rem}.kana-group-link{font-size:1.1rem;cursor:pointer;opacity:.65;transition:opacity .14s;background:none;border:none;padding:0;color:var(--color-secondary-text)}.kana-group-link:hover{opacity:1}.kana-group-link.link-on{color:var(--ghost-accent-color)}.kana-group-grid{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-start}.kana-group-grid .kana-opt-wrap{flex:0 0 auto;width:48px}.kana-opt-wrap{position:relative}.kana-opt-wrap input{position:absolute;opacity:0;width:0;height:0}.kana-opt-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .3rem;border-radius:8px;border:1px solid var(--color-border);background:var(--color-lighter-gray);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;gap:1px}.kana-opt-wrap input:checked+.kana-opt-label{background:rgba(255,87,0,.08);border-color:var(--ghost-accent-color);transform:scale(1.05);box-shadow:0 2px 8px rgba(255,87,0,.15)}.kana-opt-label:hover{border-color:var(--color-darker-gray);background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.08)}.kana-opt-jp{font-family:Noto Sans JP,Hiragino Sans,sans-serif;font-size:1.4rem;color:var(--color-darker-gray);line-height:1}.kana-opt-rm{font-family:JetBrains Mono,SF Mono,monospace;font-size:.9rem;color:var(--color-secondary-text);font-weight:500;line-height:1}.kana-free-badge{display:inline-flex;align-items:center;gap:.4rem;background:rgba(40,167,69,.1);color:#28a745;padding:.3rem .8rem;border-radius:8px;font-size:1.1rem;font-weight:600;letter-spacing:.05em}@media(max-width:767px){.kana-practice-layout{flex-direction:column}.kana-options-panel{width:100%}.kana-char-display{font-size:calc(clamp(4rem,15vw,6rem))}.kana-stats-row{gap:.6rem}.kana-stat-chip,.kana-streak{font-size:1.1rem;padding:.3rem .8rem}.kana-quiz-card{padding:1.6rem}.kana-display-area{padding:2rem 0 1rem}.kana-action-row{flex-wrap:wrap}.kana-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr))}.kana-group-grid .kana-opt-wrap{width:auto}}.homework-listening-transcript{margin:1rem 0;text-align:left}.homework-listening-transcript summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600}.homework-listening-transcript summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}.mcp-template .mcp-integrations{padding-top:0;padding-bottom:6rem}.mcp-section-intro{max-width:74rem;margin:2.4rem 0 3.2rem;color:var(--color-secondary-text);font-size:1.8rem;line-height:1.6}.mcp-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,0.55fr);gap:2.4rem;align-items:start}.mcp-card{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--color-border);border-radius:8px}.mcp-card-primary{box-shadow:0 12px 32px rgba(24,24,24,.06)}.mcp-card-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.4rem;align-items:center;padding:2.4rem;background:#f8f7f4;border-bottom:1px solid var(--color-border)}.mcp-card-logo{display:grid;width:52px;height:52px;place-items:center;padding:1rem;overflow:hidden;background:#fff;border:1px solid var(--color-border);border-radius:8px}.mcp-card-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.mcp-card-header-info{min-width:0}.mcp-card-kicker{display:block;margin-bottom:.3rem;color:var(--ghost-accent-color);font-size:1.1rem;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:0}.mcp-card-title{margin:0;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:2.4rem;line-height:1.2}.mcp-card-subtitle{margin:.4rem 0 0;color:var(--color-secondary-text);font-size:1.3rem;line-height:1.4}.mcp-status-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-radius:999px;font-size:1.1rem;font-weight:700;white-space:nowrap}.mcp-status-badge.available{color:#236b3b;background:#e9f7ee}.mcp-status-badge.available>span{width:6px;height:6px;background:#2f9e56;border-radius:50%}.mcp-status-badge.coming-soon{color:#76561b;background:#f8ebc9}.mcp-card-body{padding:2.4rem}.mcp-card-description{margin:0;color:var(--color-secondary-text);font-size:1.55rem;line-height:1.6}.mcp-connection-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:2.4rem 0;padding:1.6rem 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.mcp-connection-meta>div{min-width:0;padding:0 1.6rem;border-left:1px solid var(--color-border)}.mcp-connection-meta>div:first-child{padding-left:0;border-left:0}.mcp-connection-meta>div:last-child{padding-right:0}.mcp-connection-meta dd,.mcp-connection-meta dt{margin:0}.mcp-connection-meta dt{margin-bottom:.4rem;color:var(--color-secondary-text);font-size:1.1rem;font-weight:650}.mcp-connection-meta dd{overflow:hidden;color:var(--color-darker-gray);font-size:1.4rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.mcp-toggle-config{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;width:100%;min-height:4.6rem;align-items:center;justify-content:center;gap:.8rem;padding:1rem 1.6rem;color:#fff;background-color:var(--ghost-accent-color);border:1px solid var(--ghost-accent-color);border-radius:6px;cursor:pointer;font-family:var(--font-sans);font-size:1.6rem;font-weight:600;line-height:1.3;transition:background-color .2s,border-color .2s}.mcp-toggle-config.active,.mcp-toggle-config:hover{color:#fff;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color);opacity:.9;transform:none}.mcp-copy-btn:focus-visible,.mcp-toggle-config:focus-visible{outline:2px solid var(--ghost-accent-color);outline-offset:3px}.mcp-toggle-icon{width:18px;height:18px;transition:transform .2s}.mcp-toggle-config.active .mcp-toggle-icon{transform:rotate(180deg)}.mcp-config-content{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--color-border)}.mcp-config-content[hidden]{display:none}.mcp-steps{display:grid;gap:2.4rem;margin:0;padding:0;list-style:none}.mcp-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:1.2rem;align-items:start}.mcp-step-number{display:grid;width:30px;height:30px;place-items:center;color:#fff;background:var(--ghost-accent-color);border-radius:50%;font-size:1.2rem;font-weight:800}.mcp-step h4{margin:0 0 .5rem;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:1.55rem;line-height:1.35}.mcp-step p{margin:0;color:var(--color-secondary-text);font-size:1.4rem;line-height:1.6}.mcp-step-with-fields{min-width:0}.mcp-config-fields{margin-top:1.6rem;border-top:1px solid var(--color-border)}.mcp-config-field{display:grid;grid-template-columns:10rem minmax(0,1fr);gap:1.4rem;align-items:center;padding:1.2rem 0;border-bottom:1px solid var(--color-border)}.mcp-config-label{color:var(--color-secondary-text);font-size:1.2rem;font-weight:700}.mcp-config-value-wrapper{display:flex;min-width:0;align-items:center;gap:.8rem}.mcp-config-value{display:block;flex:1;min-width:0;overflow:hidden;padding:.8rem 1rem;color:var(--color-primary-text);background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:6px;font-family:var(--font-mono);font-size:1.2rem;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;-moz-user-select:text;user-select:text}.mcp-config-value.static{border-color:transparent;font-weight:750}.mcp-config-value.static,.mcp-copy-btn{background:transparent;font-family:var(--font-sans)}.mcp-copy-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;width:34px;height:34px;flex-shrink:0;place-items:center;padding:0;color:var(--color-primary-text);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:color .2s,border-color .2s,background-color .2s}.mcp-copy-btn:hover{color:var(--ghost-accent-color);background:transparent;border-color:var(--ghost-accent-color);transform:none}.mcp-copy-btn.is-copied{color:#fff;background:#236b3b;border-color:#236b3b}.mcp-copy-btn svg{width:16px;height:16px}.mcp-token-alert{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.2rem;align-items:start;margin-top:2.6rem;padding:1.6rem;color:#624700;background:#fff7e3;border:1px solid #e4cf99;border-radius:8px}.mcp-token-alert-icon{display:grid;width:34px;height:34px;place-items:center;background:#f4e3b7;border-radius:50%}.mcp-token-alert-icon svg{width:17px;height:17px}.mcp-token-alert div>span,.mcp-token-alert strong{display:block}.mcp-token-alert strong{margin-bottom:.3rem;font-size:1.4rem}.mcp-token-alert div>span{font-size:1.3rem;line-height:1.5}.mcp-token-alert a{color:#624700;font-weight:750}.mcp-sidebar{display:grid;gap:2.4rem}.mcp-coming-card .mcp-card-header{grid-template-columns:auto minmax(0,1fr)}.mcp-coming-card .mcp-status-badge{grid-column:1/-1;width:-moz-max-content;width:max-content}.mcp-coming-card .mcp-card-body{min-height:13rem}.mcp-info-section{padding:2.4rem 0 0;border-top:3px solid var(--ghost-accent-color)}.mcp-info-kicker{display:block;margin-bottom:.8rem;color:var(--ghost-accent-color);font-size:1.1rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.mcp-info-title{margin:0 0 1.2rem;color:var(--color-darker-gray);font-family:var(--font-sans);font-size:2.2rem;line-height:1.25}.mcp-info-content p{margin:0 0 1rem;color:var(--color-secondary-text);font-size:1.45rem;line-height:1.65}.mcp-info-content p:last-child{margin-bottom:0}.mcp-info-content strong{color:var(--color-primary-text)}[data-theme=dark] .mcp-card{background:var(--dark-surface)}[data-theme=dark] .mcp-card-primary{box-shadow:none}[data-theme=dark] .mcp-card-header{background:var(--dark-surface-elevated)}[data-theme=dark] .mcp-card-logo{background:#fff}[data-theme=dark] .mcp-card-kicker,[data-theme=dark] .mcp-info-kicker{color:var(--ghost-accent-color)}[data-theme=dark] .mcp-status-badge.available{color:#9be8b4;background:#173323}[data-theme=dark] .mcp-status-badge.coming-soon{color:#efd38d;background:#493b20}[data-theme=dark] .mcp-toggle-config,[data-theme=dark] .mcp-toggle-config.active,[data-theme=dark] .mcp-toggle-config:hover{color:#fff;background-color:var(--ghost-accent-color);border-color:var(--ghost-accent-color)}[data-theme=dark] .mcp-copy-btn:focus-visible,[data-theme=dark] .mcp-toggle-config:focus-visible{outline-color:var(--ghost-accent-color)}[data-theme=dark] .mcp-step-number{color:#fff;background:var(--ghost-accent-color)}[data-theme=dark] .mcp-config-value{background:#272727}[data-theme=dark] .mcp-config-value.static{background:transparent}[data-theme=dark] .mcp-copy-btn{color:var(--color-primary-text);background:transparent}[data-theme=dark] .mcp-copy-btn:hover{color:var(--ghost-accent-color);background:transparent;border-color:var(--ghost-accent-color)}[data-theme=dark] .mcp-copy-btn.is-copied{color:#fff;background:#236b3b;border-color:#236b3b}[data-theme=dark] .mcp-token-alert{color:#f1d58e;background:#2f2819;border-color:#554727}[data-theme=dark] .mcp-token-alert-icon{background:#493b20}[data-theme=dark] .mcp-token-alert a{color:var(--ghost-accent-color)}[data-theme=dark] .mcp-info-section{border-color:var(--ghost-accent-color)}@media(max-width:960px){.mcp-layout{grid-template-columns:1fr}.mcp-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media(max-width:767px){.mcp-template .mcp-integrations{padding-bottom:4rem}.mcp-section-intro{margin:2rem 0 2.4rem;font-size:1.6rem}.mcp-card-header{grid-template-columns:auto minmax(0,1fr);padding:1.8rem}.mcp-card-logo{width:46px;height:46px}.mcp-card-title{font-size:2.1rem}.mcp-status-badge{grid-column:1/-1;width:-moz-max-content;width:max-content}.mcp-card-body{padding:1.8rem}.mcp-connection-meta{margin:2rem 0}.mcp-connection-meta>div{padding:0 1rem}.mcp-config-content{margin-top:2.4rem;padding-top:2.4rem}.mcp-config-field{gap:.6rem}.mcp-config-field,.mcp-sidebar{grid-template-columns:1fr}.mcp-coming-card .mcp-card-body{min-height:auto}}@media(max-width:420px){.mcp-connection-meta{grid-template-columns:1fr;padding:0}.mcp-connection-meta>div,.mcp-connection-meta>div:first-child,.mcp-connection-meta>div:last-child{padding:1rem 0;border-top:1px solid var(--color-border);border-left:0}.mcp-connection-meta>div:first-child{border-top:0}}@media(prefers-reduced-motion:reduce){.mcp-copy-btn,.mcp-toggle-config,.mcp-toggle-icon{transition:none}}.thanks-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:3rem}.thanks-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s;border:1px solid var(--color-border);height:100%;display:flex;flex-direction:column;width:100%;max-width:100%}.thanks-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.thanks-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.thanks-card-image{width:100%;height:60%;overflow:hidden;margin:0;background:#f8f9fa;flex-shrink:0;border-bottom:1px solid var(--color-border)}.thanks-list .thanks-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:none;border:none;border-radius:0;box-shadow:none;outline:none}.thanks-card-text{padding:1.5rem;flex:1;display:flex;flex-direction:column;justify-content:flex-start}.thanks-card-title{font-size:2.4rem;font-weight:600;color:var(--color-darker-gray);margin:0 0 .5rem;line-height:1.25;font-family:var(--font-sans)}.thanks-card-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);margin:0;font-family:var(--font-sans);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(min-width:768px){.thanks-list{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media(min-width:1200px){.thanks-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:767px){.thanks-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.thanks-card{max-width:100%}.thanks-card-text{padding:1.25rem}.thanks-card-title{font-size:2.2rem}.thanks-card-description{font-size:1.6rem}}.thanks-motivation{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:center;padding-top:20px;padding-bottom:20px}.thanks-motivation-text{flex:2 1 300px}.thanks-motivation-text.gh-content,.thanks-motivation-text.gh-content p:first-child{margin-top:10px}.thanks-motivation-image{flex:1 1 260px;max-width:400px}.thanks-motivation-image img{width:100%;height:auto;border-radius:12px;border:1px solid var(--color-border)}@media(max-width:767px){.thanks-motivation{flex-direction:column}.thanks-motivation-image,.thanks-motivation-text{max-width:100%}}@media(max-width:480px){.thanks-list{grid-template-columns:1fr;gap:2rem;justify-content:stretch;padding:0}.thanks-card{max-width:none;margin:0}.thanks-card-text{padding:1.5rem}.thanks-card-title{font-size:2rem;margin-bottom:.75rem}.thanks-card-description{font-size:1.6rem;-webkit-line-clamp:3;line-clamp:3}}.mapbox-map,.maptiler-map{width:100%;height:400px;margin:2rem 0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);border:1px solid var(--color-border);position:relative;isolation:isolate}.mapbox-map.view-3d,.maptiler-map.view-3d{height:500px}.mapbox-popup{max-width:300px}.mapbox-popup-content{padding:12px;border-radius:12px}.mapbox-marker{cursor:pointer}.mapboxgl-canvas-container canvas{outline:none}.custom-marker{width:30px;height:30px;border-radius:50%;background-color:#ff6b6b;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.3);cursor:pointer;animation:marker-pulse 2s infinite}.mapbox-map.loading,.maptiler-map.loading{display:flex;align-items:center;justify-content:center;background-color:#f5f5f5}.mapbox-map.loading:after,.maptiler-map.loading:after{content:"Cargando mapa...";color:#666;font-size:14px}.mapboxgl-popup-content h3{margin:0;padding:0;font-size:14px;font-weight:600}@keyframes marker-pulse{0%{box-shadow:0 0 0 0 hsla(0,100%,71%,.7)}70%{box-shadow:0 0 0 15px hsla(0,100%,71%,0)}to{box-shadow:0 0 0 0 hsla(0,100%,71%,0)}}@media(min-width:1200px){.mapbox-map,.maptiler-map{height:500px}}@media(max-width:767px){.mapbox-map,.maptiler-map{height:300px}}.youtube-template .gh-section{padding:2rem 0}.youtube-template .gh-section:first-child{padding-top:0}.youtube-container{margin-top:3rem;min-height:300px;display:flex;align-items:center;justify-content:center;background:var(--color-lighter-gray);border:1px solid var(--color-border);border-radius:12px;padding:4rem;text-align:center;scroll-margin-top:2rem}#youtube-container.has-content,.youtube-container.has-content{margin-top:3rem;background:transparent;border:none;padding:0;display:block;min-height:auto;text-align:left}.youtube-placeholder{flex-direction:column;gap:1.5rem}.youtube-placeholder,.youtube-placeholder-icon{display:flex;align-items:center;color:var(--color-secondary-text)}.youtube-placeholder-icon{width:80px;height:80px;opacity:.3;border-radius:50%;background:var(--color-lighter-gray);border:1px solid var(--color-border);justify-content:center;font-size:2.4rem;font-weight:700}.youtube-placeholder-kanji{opacity:1;background:var(--ghost-accent-color,#a7312a);color:#fff;border:3px double hsla(0,0%,100%,.75);font-family:var(--font-serif,Georgia,"Times New Roman",serif);box-shadow:0 9px 24px rgba(167,49,42,.22)}.youtube-placeholder-icon.youtube-placeholder-error{background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22)}.youtube-placeholder-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem;color:var(--color-darker-gray)}.youtube-placeholder-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5}.youtube-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2rem;padding:0;transition:opacity .15s}.youtube-video-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s;border:1px solid var(--color-border);height:100%;display:flex;flex-direction:column;cursor:pointer;position:relative;transform-origin:center center}.youtube-video-card:hover{transform:translateY(-8px);box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.youtube-video-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.youtube-video-thumbnail{position:relative;width:100%;height:200px;background:var(--color-lighter-gray);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border)}.youtube-video-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s;border:none;border-radius:0;box-shadow:none}.youtube-video-card:hover .youtube-video-thumbnail img{transform:scale(1.05)}.youtube-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;background:var(--ghost-accent-color);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:2;box-shadow:0 4px 12px rgba(255,87,0,.3)}.youtube-video-card:hover .youtube-play-overlay{background:var(--ghost-accent-color);transform:translate(-50%,-50%) scale(1.1);box-shadow:0 6px 16px rgba(255,87,0,.4)}.youtube-play-overlay svg{width:22px;height:22px;color:#fff;margin-left:3px}.youtube-duration{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.85);color:#fff;padding:4px 8px;border-radius:4px;font-size:1.3rem;font-weight:600;z-index:2;letter-spacing:.5px}.youtube-video-content{padding:1.6rem;flex:1;display:flex;flex-direction:column;gap:1rem}.youtube-video-title{font-size:2.4rem;font-weight:600;font-family:var(--font-sans);color:var(--color-darker-gray);line-height:1.25;-webkit-line-clamp:2;line-clamp:2}.youtube-video-description,.youtube-video-title{margin:0;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.youtube-video-description{font-size:1.8rem;line-height:1.4;color:var(--color-secondary-text);flex:1;-webkit-line-clamp:3;line-clamp:3}.youtube-video-meta{justify-content:space-between;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:1.4rem;color:var(--color-secondary-text)}.youtube-date,.youtube-pagination,.youtube-video-meta,.youtube-views{display:flex;align-items:center}.youtube-pagination{grid-column:1/-1;justify-content:space-between;margin-top:2rem;padding:2rem;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:box-shadow .2s}.youtube-pagination:hover{box-shadow:0 6px 16px rgba(0,0,0,.05),0 2px 6px rgba(0,0,0,.08)}.youtube-pagination .pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.youtube-pagination .pagination-current{font-size:1.6rem;font-weight:600;color:var(--color-darker-gray)}.youtube-pagination .pagination-range{font-size:1.3rem;color:var(--color-secondary-text)}.youtube-error{display:flex;flex-direction:column;align-items:center;gap:1.5rem;color:var(--color-secondary-text);padding:4rem 2rem}.youtube-error-text{font-size:1.8rem;font-weight:500;margin-bottom:.5rem;color:var(--color-darker-gray)}.youtube-error-subtitle{font-size:1.4rem;opacity:.7;max-width:400px;line-height:1.5;text-align:center}@media(max-width:1200px){.youtube-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.youtube-container{padding:3rem 2rem}.youtube-grid{grid-template-columns:1fr;gap:2rem;margin-top:2rem}.youtube-video-content{padding:1.5rem}.youtube-video-title{font-size:2rem}.youtube-video-description{font-size:1.6rem}.youtube-pagination{flex-direction:column;gap:1.5rem;padding:1.5rem}.youtube-pagination .pagination-btn{width:100%;justify-content:center}.youtube-pagination .pagination-info{order:-1}}@media(max-width:480px){.youtube-pagination{padding:1.2rem;gap:1.2rem}.youtube-pagination .pagination-btn{padding:.6rem 1.2rem;font-size:1.3rem}.youtube-pagination .pagination-arrow{width:14px;height:14px}.youtube-pagination .pagination-current{font-size:1.4rem}.youtube-pagination .pagination-range{font-size:1.2rem}}:root{--interactive-state-enter-duration:0.38s;--interactive-state-exit-duration:0.2s;--interactive-state-enter-easing:cubic-bezier(0.22, 1, 0.36, 1);--interactive-state-exit-easing:ease-in}@keyframes interactiveStateEnter{0%{opacity:0}to{opacity:1}}@keyframes interactiveStateExit{0%{opacity:1}to{opacity:0}}@keyframes interactiveNotificationEnter{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes interactiveNotificationExit{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(20px)}}@keyframes siteNotificationTimer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes interactiveSpin{to{transform:rotate(1turn)}}@keyframes interactivePenaltyPop{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes interactiveCarouselForward{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes interactiveCarouselReverse{0%{transform:translateX(-50%)}to{transform:translateX(0)}}:is(.account-template,.community-template,.goshuin-game-template,.homework-template,.stories-template,.stories-game-template,.trophy-room-template,.vocabulary-template,.vocabulary-game-template,.youtube-template) .fade-in{opacity:0;animation:interactiveStateEnter var(--interactive-state-enter-duration) var(--interactive-state-enter-easing) both}:is(.homework-template,.stories-game-template,.vocabulary-game-template) .game-screen.active{animation:interactiveStateEnter var(--interactive-state-enter-duration) var(--interactive-state-enter-easing) both}:is(.homework-template .homework-results .unlocked-achievement-item,.homework-template .notebook-results-container,.stories-game-template .pronunciation-results,.stories-game-template .story-report-screen.active,.vocabulary-game-template .unlocked-achievement-item){animation:interactiveStateEnter var(--interactive-state-enter-duration) var(--interactive-state-enter-easing) both}:is(.account-template,.community-template,.goshuin-game-template,.homework-template,.stories-template,.stories-game-template,.trophy-room-template,.vocabulary-template,.vocabulary-game-template,.youtube-template) .fade-out{animation:interactiveStateExit var(--interactive-state-exit-duration) var(--interactive-state-exit-easing) forwards}.site-toast-stack{position:fixed;z-index:99999;top:max(20px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));display:grid;width:calc(min(360px,100vw - 40px));max-height:calc(100vh - 40px);gap:10px;overflow-y:auto;pointer-events:none;scrollbar-width:none}.site-toast-stack::-webkit-scrollbar{display:none}.site-toast-stack>*{pointer-events:auto}.site-notification{--site-notification-accent:var(--ghost-accent-color, #d9a443);--site-notification-soft:color-mix(in srgb, var(--site-notification-accent) 12%, transparent);--site-notification-shadow:color-mix(in srgb, var(--site-notification-accent) 20%, transparent);position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) 28px;width:100%;min-width:0;gap:12px;align-items:start;overflow:hidden;padding:14px 12px 14px 14px;border:1px solid color-mix(in srgb,var(--site-notification-accent) 58%,var(--color-border));border-left:4px solid var(--site-notification-accent);border-radius:12px;background:color-mix(in srgb,var(--site-notification-accent) 7%,#fff);box-shadow:0 8px 22px var(--site-notification-shadow);color:var(--color-primary-text);overflow-wrap:anywhere;transition:box-shadow .2s;will-change:opacity,transform}.site-notification:hover{box-shadow:0 10px 28px var(--site-notification-shadow)}.site-notification.success{--site-notification-accent:#28a745}.site-notification.error,.site-notification.success{background:color-mix(in srgb,var(--site-notification-accent) 7%,#fff)}.site-notification.error{--site-notification-accent:#dc3545}.site-notification-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--site-notification-soft);color:var(--site-notification-accent);font-size:1.8rem;font-weight:800;line-height:1}.site-notification-content{display:flex;min-width:0;flex-direction:column;gap:3px;padding-top:1px}.site-notification-label{margin:0;color:var(--site-notification-accent);font-size:1.05rem;font-weight:750;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.site-notification-title{margin:0;color:var(--color-primary-text);font-size:1.5rem;font-weight:650;line-height:1.35}.site-notification-description{margin:1px 0 0;color:var(--color-secondary-text);font-size:1.3rem;line-height:1.4}.site-notification-close{display:grid;width:28px;height:28px;padding:0;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--color-secondary-text);cursor:pointer;font:inherit;font-size:2rem;line-height:1;transition:background .2s,color .2s}.site-notification-close:hover{background:var(--site-notification-soft);color:var(--site-notification-accent)}.site-notification-close:focus-visible{outline:2px solid var(--site-notification-accent);outline-offset:2px}.site-notification-progress{position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--site-notification-accent);transform-origin:left;animation:siteNotificationTimer var(--site-notification-duration) linear forwards}.site-notification.is-paused .site-notification-progress{animation-play-state:paused}.site-notification.is-entering{animation:interactiveNotificationEnter var(--interactive-state-exit-duration) ease-out both}.site-notification.is-leaving{animation:interactiveNotificationExit var(--interactive-state-exit-duration) ease-in both}[data-theme=dark] .site-notification{background:color-mix(in srgb,var(--site-notification-accent) 9%,var(--dark-surface-elevated))}@media(max-width:600px){.site-toast-stack{top:max(12px,env(safe-area-inset-top));right:12px;width:calc(100vw - 24px);max-height:calc(100vh - 24px)}}:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container){transition:background-color .2s,border-color .2s,opacity .3s}:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).placeholder-state.transitioning{background:transparent;border-color:transparent;box-shadow:none;transition:opacity .3s}[data-theme=dark] :where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).placeholder-state.transitioning:not(.results-loading-state){border-color:var(--color-border);background:var(--dark-surface-elevated);box-shadow:0 4px 12px rgba(0,0,0,.18),0 1px 3px rgba(0,0,0,.24)}[data-theme=dark] :where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).placeholder-state:not(.transitioning):not(.error-state){border-color:var(--color-border);background:var(--dark-surface-elevated)}:where(.homework-container,.stories-game-container,.vocabulary-game-container).placeholder-state.transitioning.results-loading-state{border-color:var(--color-border);background:var(--color-lighter-gray,#f8f8f8);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);transition:none}[data-theme=dark] :where(.homework-container,.stories-game-container,.vocabulary-game-container).placeholder-state.transitioning.results-loading-state{border-color:var(--color-border);background:var(--dark-surface-elevated)}:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).error-state{display:flex;min-height:300px;padding:4rem;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:12px;background:var(--color-lighter-gray,#f8f8f8);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);text-align:center;transition:none}[data-theme=dark] :where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).error-state{border-color:var(--color-border);background:var(--dark-surface)}.goshuin-game-template :is(.gj-error,.gj-app),:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).error-state>*,:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container).transitioning>*{animation:interactiveStateEnter var(--interactive-state-enter-duration) var(--interactive-state-enter-easing) both}.goshuin-game-template .gj-error{flex-direction:column;min-height:300px;gap:1.5rem;padding:4rem;border-radius:12px;background:var(--color-lighter-gray,#f8f8f8);box-shadow:0 4px 12px rgba(0,0,0,.03),0 1px 3px rgba(0,0,0,.05);text-align:center}[data-theme=dark] .goshuin-game-template .gj-error{border-color:var(--color-border);background:var(--dark-surface)}[data-theme=dark] .goshuin-game-template .gj-loading{border-color:var(--color-border);background:var(--dark-surface-elevated)}:is(.homework-template,.stories-game-template,.vocabulary-game-template) :is(.homework-exercise-progress,.story-progress,.vocabulary-game-progress){border-color:var(--color-border);background:var(--game-option-background);background-image:none}[data-theme=dark] :is(.homework-template,.stories-game-template,.vocabulary-game-template) :is(.homework-exercise-progress,.story-progress,.vocabulary-game-progress){border-color:var(--color-border);background:var(--game-option-background);background-image:none}[data-theme=dark] .homework-template :is(.homework-audio-player,.homework-romaji-btn,.homework-spanish-btn,.homework-hint-btn){border-color:var(--color-border);background:var(--game-option-background);color:var(--color-primary-text)}[data-theme=dark] .stories-template .story-audio-player{border-color:var(--color-border);background:var(--game-option-background);color:var(--color-primary-text)}[data-theme=dark] .stories-template .story-progress-bar{background:hsla(0,0%,100%,.1)}[data-theme=dark] .homework-template :is(.homework-romaji-btn,.homework-spanish-btn,.homework-hint-btn):hover:not(:disabled){background:var(--game-option-background)}[data-theme=dark] .homework-template :is(.homework-romaji-btn,.homework-spanish-btn,.homework-hint-btn):disabled{background:var(--game-option-background)}[data-theme=dark] :is(.account-placeholder-buttons,.community-placeholder-buttons,.goshuin-login-actions,.homework-placeholder-buttons,.stories-game-placeholder-buttons,.trophy-room-placeholder-buttons,.vocabulary-game-placeholder-buttons) .gh-secondary-btn[data-portal=signup]{border:1px solid var(--color-border);background:var(--dark-surface);color:var(--color-primary-text)}[data-theme=dark] :is(.account-placeholder-buttons,.community-placeholder-buttons,.goshuin-login-actions,.homework-placeholder-buttons,.stories-game-placeholder-buttons,.trophy-room-placeholder-buttons,.vocabulary-game-placeholder-buttons) .gh-secondary-btn[data-portal=signup]:hover{background:var(--dark-surface-elevated)}.goshuin-game-template .gj-error>span:first-child{width:80px;height:80px;border:3px double hsla(0,0%,100%,.75);background:#dc3545;box-shadow:0 9px 24px rgba(220,53,69,.22);font-size:2.4rem;font-weight:700}.goshuin-game-template .gj-error>div{display:flex;flex-direction:column;align-items:center;gap:.5rem}.goshuin-game-template .gj-error strong{font-size:1.8rem;font-weight:500}:is(.account-placeholder-kanji,.community-placeholder-kanji,.homework-placeholder-kanji,.stories-placeholder-kanji,.stories-game-placeholder-kanji,.trophy-room-placeholder-kanji,.vocabulary-placeholder-kanji,.vocabulary-game-placeholder-kanji,.youtube-placeholder-kanji,.gj-loading-seal,.gj-error>span:first-child){font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}[data-theme=dark] .gj-loading-seal,[data-theme=dark] :is(.account-placeholder-kanji,.community-placeholder-kanji,.homework-placeholder-kanji,.stories-placeholder-kanji,.stories-game-placeholder-kanji,.trophy-room-placeholder-kanji,.vocabulary-placeholder-kanji,.vocabulary-game-placeholder-kanji,.youtube-placeholder-kanji):not([class*=placeholder-error]){border:3px double hsla(0,0%,100%,.75);background:var(--ghost-accent-color,#a7312a);color:#fff}@media(prefers-reduced-motion:reduce){.goshuin-game-template :is(.gj-error,.gj-app),.site-notification-progress,.site-notification:is(.is-entering,.is-leaving),:is(.account-template,.community-template,.goshuin-game-template,.homework-template,.stories-template,.stories-game-template,.trophy-room-template,.vocabulary-template,.vocabulary-game-template,.youtube-template) :is(.fade-in,.fade-out),:is(.homework-template .homework-results .unlocked-achievement-item,.homework-template .notebook-results-container,.stories-game-template .pronunciation-results,.stories-game-template .story-report-screen.active,.vocabulary-game-template .unlocked-achievement-item),:where(.account-container,.community-container,.homework-container,.stories-container,.stories-game-container,.trophy-room-container,.vocabulary-container,.vocabulary-game-container,.youtube-container)>*{opacity:1;animation:none;transform:none}}/*# sourceMappingURL=site.css.map */
