@import "https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800&family=Noto+Sans+JP:wght@400;700;800&display=swap";:root{--spla-yellow:#facc15;--spla-blue:#6366f1;--spla-pink:#ec4899;--spla-green:#4ade80;--spla-orange:#f97316;--bg-color:#f8fafc;--text-dark:#0f172a;--text-light:#fff;--panel-bg:#ffffffd9;--panel-border:#f1f5f9;--border-radius:16px;--shadow:0 4px 6px -1px #0000000d, 0 2px 4px -2px #0000000d;--shadow-inner:inset 0 2px 4px 0 #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-dark);-webkit-font-smoothing:antialiased;font-family:"M PLUS Rounded 1c",Noto Sans JP,sans-serif;font-size:16px;overflow:hidden}.main-wrapper{flex-direction:column;width:100vw;max-width:100vw;height:100dvh;display:flex;overflow:hidden}.app-container{flex-direction:column;flex:1;width:100%;display:flex;overflow:hidden}@media (width>=768px){.app-container{flex-direction:row}}.dashboard-area{background-color:var(--panel-bg);-webkit-backdrop-filter:blur(12px);max-height:var(--mobile-panel-height,40dvh);border-bottom:1px solid var(--panel-border);box-shadow:var(--shadow);z-index:10;flex-shrink:0;padding:16px;overflow-y:auto}@media (width>=768px){.dashboard-area{border-bottom:none;border-right:1px solid var(--panel-border);width:350px;max-height:100dvh}}.dashboard-header{text-align:center;color:var(--spla-pink);justify-content:center;align-items:center;gap:8px;margin-bottom:12px;font-size:1.25rem;font-weight:800;display:flex}.font-size-control{box-shadow:var(--shadow-inner);background:#f1f5f9cc;border-radius:9999px;align-items:center;gap:4px;padding:4px;display:flex}.font-size-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-weight:700;transition:all .2s;display:flex}.font-size-btn:hover{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0000001a}.font-size-btn.dec{font-size:10px}.font-size-btn.inc{font-size:12px}.font-size-indicator{color:#64748b;text-align:center;width:12px;font-size:12px;font-weight:800}.status-row{justify-content:space-between;gap:8px;margin-bottom:16px;display:flex}.status-box{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--border-radius);text-align:center;background:#ffffff80;border:2px solid #e2e8f0;flex:1;padding:.5rem;font-weight:800;transition:border-color .2s;box-shadow:0 1px 2px #00000005}.status-box:focus-within{border-color:var(--spla-blue)}.status-box select{text-align:center;cursor:pointer;appearance:none;width:100%;font-family:inherit;font-weight:800;font-size:inherit;color:var(--text-dark);background-color:#0000;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .25rem center;background-repeat:no-repeat;background-size:1.25rem;border:none;outline:none;padding-left:1.5rem;padding-right:1.5rem}.win-loss-container{color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-inner);background:#1e293b;flex-direction:column;margin-bottom:16px;padding:12px;display:flex}.win-loss-counters{justify-content:space-between;align-items:center;width:100%;display:flex}.counter-group{align-items:center;gap:8px;padding:0 8px;display:flex}.counter-btn{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1rem;font-weight:800;transition:background .2s;display:flex}.counter-btn.win-plus{color:#ec4899;background:#ec489933}.counter-btn.win-plus:hover{background:#ec489966}.counter-btn.lose-plus{color:#4ade80;background:#4ade8033}.counter-btn.lose-plus:hover{background:#4ade8066}.counter-btn.minus{color:#cbd5e1;background:#334155}.counter-btn.minus:hover{background:#475569}.counter-value{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;width:3.5rem;display:flex}.counter-label{color:#94a3b8;font-size:10px;line-height:1}.counter-num{font-size:1.5rem;font-weight:800;line-height:1.2}.counter-divider{background:#475569;width:1px;height:40px}.reset-btn-container{border-top:1px solid #334155;justify-content:flex-end;width:100%;margin-top:12px;padding-top:8px;display:flex}.reset-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:.75rem;font-weight:700;transition:color .2s;display:flex}.reset-btn:hover{color:#fff}.task-section{border-radius:var(--border-radius);box-shadow:var(--shadow);margin-bottom:16px}.task-header{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:12px;display:flex}.task-title{font-size:.75rem;font-weight:800}.task-icon{font-size:.75rem;transition:transform .2s}.task-icon.collapsed{transform:rotate(90deg)}.task-content{padding:0 12px 12px;font-size:.875rem;font-weight:700;line-height:1.6}.task-content.hidden{display:none}.task-section.one-point{border-left:4px solid var(--spla-yellow);background:#fefce8cc}.task-section.one-point .task-title{color:#854d0e}.task-section.one-point .task-icon{color:#ca8a04}.task-section.one-point .task-content{color:var(--text-dark)}.task-section.core-task{background:#fffc;border:1px solid #f1f5f9}.task-section.core-task .task-title{color:var(--spla-blue)}.task-section.core-task .task-icon{color:#818cf8}.task-section.core-task .task-content{color:var(--text-dark)}.task-section.ng-actions{background:#fff1f2cc;border:1px solid #ffe4e6}.task-section.ng-actions .task-title{color:var(--spla-pink)}.task-section.ng-actions .task-icon{color:#fb7185}.task-section.achieved{background:#f8fafccc;border:1px solid #e2e8f0}.task-section.achieved .task-title{color:#64748b}.task-section.achieved .task-icon{color:#94a3b8}.task-section.achieved .task-content{color:#475569;font-weight:600}.ng-list{color:#334155;padding-left:12px;list-style:inside}.ng-list li{margin-bottom:4px}.markdown-body ul li{margin-bottom:.25em}.resizer{background-color:var(--bg-color);cursor:row-resize;border-bottom:1px solid var(--panel-border);touch-action:none;-webkit-user-select:none;user-select:none;z-index:20;flex-shrink:0;justify-content:center;align-items:center;height:16px;display:flex;position:relative}.resizer:after{content:"";background-color:#cbd5e1;border-radius:2px;width:40px;height:4px;display:block}.resizer:active:after{background-color:var(--spla-blue)}@media (width>=768px){.resizer{display:none}}.upgrade-banner{border-radius:var(--border-radius);text-align:center;color:#475569;background:#f1f5f9;border:1px dashed #cbd5e1;margin-bottom:16px;padding:12px;font-size:.8rem;font-weight:700}.upgrade-banner a{color:var(--spla-purple);text-decoration:underline}.affiliate-relax-box{border-radius:var(--border-radius);text-align:center;background:#fffc;border:2px dashed #fbcfe8;margin-top:16px;padding:16px}.relax-header{color:#f472b6;margin-bottom:8px;font-size:.75rem;font-weight:800}.relax-link{color:var(--text-dark);background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;padding:12px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:block}.relax-link:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.relax-title{margin-bottom:4px;font-size:.875rem;font-weight:800;display:block}.relax-desc{color:#64748b;font-size:.75rem;display:block}.chat-area{background-color:var(--bg-color);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.chat-history{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.chat-msg{word-wrap:break-word;border-radius:20px;max-width:85%;padding:12px 16px;font-size:.875rem;line-height:1.6}.chat-msg.model{background:#fff;border:1px solid #e2e8f0;border-top-left-radius:4px;align-self:flex-start;margin-top:16px;font-weight:700;position:relative;box-shadow:0 1px 2px #00000005}.chat-msg.model:before{content:"Coach";color:#94a3b8;font-size:.65rem;font-weight:800;position:absolute;top:-18px;left:4px}.chat-msg.user{background:var(--spla-blue);color:#fff;border-bottom-right-radius:4px;align-self:flex-end;font-weight:700;box-shadow:0 2px 4px #6366f133}.chat-input-area{background:#fff;border-top:1px solid #f1f5f9;flex-direction:column;gap:8px;padding:12px;display:flex}.chat-input-wrapper{align-items:flex-end;gap:8px;width:100%;display:flex}.chat-input-area textarea{resize:none;min-height:48px;max-height:120px;box-shadow:var(--shadow-inner);background:#fff;border:1px solid #e2e8f0;border-radius:20px;outline:none;flex:1;padding:12px 16px;font-family:inherit;font-weight:700;transition:border-color .2s,box-shadow .2s;font-size:16px!important}.chat-input-area textarea:focus{border-color:var(--spla-blue);box-shadow:0 0 0 2px #6366f133}.chat-submit-btn{color:#fff;cursor:not-allowed;background:#cbd5e1;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-weight:800;transition:background .2s,transform .1s;display:flex}.chat-submit-btn.active{background:var(--spla-blue);cursor:pointer;box-shadow:0 4px 6px #6366f14d}.chat-submit-btn.active:active{transform:scale(.95)}.loading-indicator{background:#fff;border:1px solid #e2e8f0;border-radius:20px 20px 20px 4px;align-self:flex-start;gap:6px;margin-top:16px;padding:12px 16px;display:flex}.dot{background:var(--spla-blue);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both bounce}.dot:first-child{animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.rate-limit-warning{color:#fff;z-index:100;background:#ff4757;border-radius:20px;padding:8px 16px;font-size:.85rem;font-weight:700;animation:.3s ease-out slideDown;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #ff475766}@keyframes slideDown{0%{opacity:0;top:-20px}to{opacity:1;top:16px}}.back-to-site-link{background:var(--spla-pink);border:2px solid #fff;border-radius:6px;align-items:center;padding:4px 12px;font-size:.75rem;font-weight:800;line-height:1;text-decoration:none;transition:transform .2s,opacity .2s;display:inline-flex;box-shadow:0 2px 4px #f222ff66;color:#fff!important;-webkit-text-fill-color:white!important}.back-to-site-link:hover{opacity:.9;transform:translateY(-1px)scale(.98)}
