:root{color-scheme:light;font-family:Noto Sans JP,system-ui,-apple-system,sans-serif;background:#f7f7fb;color:#0f172a}*,*:before,*:after{box-sizing:border-box}html{-webkit-tap-highlight-color:rgba(0,0,0,.1);touch-action:manipulation}body{margin:0;-webkit-text-size-adjust:100%;font-size:16px;line-height:1.6}button,.nav button,.bottom-nav button,input[type=submit],input[type=button]{min-height:38px}select{min-height:44px}@media (hover: none){button:active,.tip-card:active,.flip-card:active,.corp-flip-card:active{opacity:.9}}.app{min-height:100vh}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:200px;padding:24px}.topbar{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top));background:#fff;border-bottom:1px solid #e5e7eb}.brand{font-weight:700;font-size:.95rem;background:transparent;border:none;padding:0;min-height:auto;cursor:pointer}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.nav button{margin-left:0;min-height:28px;padding:4px 8px;font-size:12px}.content{max-width:1000px;margin:0 auto;padding:24px;overflow-x:hidden}.content>*+*{margin-top:12px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 4px 14px #0f172a0f;min-width:0}.tip-card{position:relative;border-color:#e5e7eb;background:#fff;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.tip-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.tip-index{font-size:11px;letter-spacing:.02em;background:#f8fafc;color:#475569;border-radius:999px;padding:4px 9px;font-weight:600;border:1px solid #e2e8f0;line-height:1;font-variant-numeric:tabular-nums;flex:0 0 auto}.tip-title{margin:0;font-weight:600;letter-spacing:.01em;font-size:16px;line-height:1.4;color:#0f172a}.tip-card:hover{border-color:#dbe4ff;box-shadow:0 10px 24px #0f172a14;transform:translateY(-1px)}.tip-card .tip-actions button.primary{background:#111827;border-color:#111827}.tip-card .tip-actions button.primary:hover{background:#0f172a;border-color:#0f172a}.card-title{font-weight:700;font-size:14px;color:#0f172a;margin-bottom:8px}.detail-panel{background:#0f172a;color:#fff;border-radius:10px;padding:12px;font-size:13px;line-height:1.5;box-shadow:0 10px 24px #0f172a3d;margin-bottom:12px}.detail-title{font-weight:700;margin-bottom:6px}.disabled-panel{opacity:.6}.banner{border-radius:12px;background:#eef2ff;padding:12px 16px;margin-bottom:12px}.banner-title{font-weight:700;color:#1e293b}.about-page h2,.pack-manage-page h2{font-size:16px}.about-page h3,.pack-manage-page h3{font-size:15px}.about-page .banner-title,.pack-manage-page .banner-title{font-size:14px}.about-page .card-title,.pack-manage-page .card-title,.about-page p,.about-page ol,.about-page li,.pack-manage-page p,.pack-manage-page ol,.pack-manage-page li{font-size:13px}.about-page label,.pack-manage-page label{font-size:12px}.about-page .detail-title,.pack-manage-page .detail-title{font-size:14px}.about-page .detail-body,.pack-manage-page .detail-body{font-size:13px}.my-packs-page{display:flex;flex-direction:column;gap:20px}.section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.section-header h3{margin:0}.section-meta{display:flex;align-items:center;gap:8px;font-size:13px}.section-desc{margin:0 0 12px;font-size:14px;color:#64748b;line-height:1.5}.loading-placeholder{padding:12px 0;color:#64748b;font-size:14px}.error-msg{padding:10px 12px;background:#fef2f2;color:#b91c1c;border-radius:8px;font-size:14px;word-break:break-word}.empty-state{padding:16px;text-align:center;font-size:14px}.reload-btn{margin-top:12px;padding:10px 18px;font-size:14px;min-height:44px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer}.reload-btn:hover:not(:disabled){background:#e2e8f0}.goals-section{margin-bottom:24px}.goals-section .section-desc{font-size:13px;margin-bottom:12px}.goals-empty{padding:16px;font-size:14px;margin-bottom:12px}.goals-date{font-size:13px;color:#64748b;margin-bottom:12px}.goals-today{margin-bottom:12px}.goal-block{margin-bottom:16px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.goal-title{font-weight:600;font-size:15px;color:#1e293b;margin-bottom:10px}.subgoal-block{margin-left:12px;margin-bottom:10px}.subgoal-title{font-size:14px;color:#475569;margin-bottom:8px}.actions-list{display:flex;flex-direction:column;gap:6px}.action-item{display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:44px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;cursor:pointer;transition:background .15s}.action-item:hover{background:#f8fafc}.action-item.completing{opacity:.7;pointer-events:none}.action-item.done{background:#ecfdf5;border-color:#a7f3d0}.action-item .action-check{width:26px;height:26px;min-width:26px;border:2px solid #94a3b8;border-radius:50%;background:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;color:#059669}.action-loading{margin-left:auto;font-size:12px;color:#94a3b8}.action-item.done .action-check{background:#10b981;border-color:#10b981;color:#fff}.goals-error-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px}.goals-error-wrap .error-msg{flex:1;margin:0}.goals-error-dismiss{width:24px;height:24px;padding:0;border:none;background:transparent;font-size:18px;line-height:1;color:#b91c1c;cursor:pointer;border-radius:4px}.goals-error-dismiss:hover{background:#fee2e2}.goals-actions-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.goals-edit-btn{margin-top:0}.goals-logs-btn{padding:8px 14px;font-size:13px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer}.goals-logs-btn:hover{background:#f1f5f9;color:#475569}.goals-logs{margin-top:12px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;max-height:200px;overflow-y:auto}.goals-logs-title{font-size:13px;font-weight:500;color:#64748b;margin-bottom:8px}.goals-log-item{display:flex;gap:12px;font-size:13px;padding:4px 0;border-bottom:1px solid #e2e8f0}.goals-log-item:last-child{border-bottom:none}.goals-log-date{color:#64748b;min-width:90px}.goals-edit{padding:12px 0}.goal-edit-block{margin-bottom:16px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.subgoal-edit-block{margin-left:12px;margin-top:10px;padding:10px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.action-edit-row{display:flex;gap:8px;align-items:center;margin-top:6px}.goals-input{flex:1;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.goals-input-sm{padding:6px 10px;font-size:13px}.goals-input-action{flex:1}.goals-add-btn{margin-top:8px;margin-right:8px;padding:6px 12px;font-size:13px;background:transparent;border:1px dashed #94a3b8;border-radius:6px;color:#64748b;cursor:pointer}.goals-add-btn:hover{background:#f1f5f9;color:#475569}.goals-remove-btn{padding:4px 10px;font-size:12px;background:transparent;border:1px solid #fecaca;border-radius:4px;color:#b91c1c;cursor:pointer}.goals-remove-btn:hover{background:#fef2f2}.goals-edit-actions{display:flex;gap:12px;margin-top:16px}.consult-section{display:grid;gap:12px}.consult-pack-select{margin-bottom:12px}.consult-pack-label{display:block;font-size:13px;font-weight:500;color:#64748b;margin-bottom:8px}.consult-pack-checkboxes{display:flex;flex-wrap:wrap;gap:12px 20px}.consult-pack-checkboxes .consult-option{margin-bottom:0}.consult-no-packs{font-size:13px;margin-bottom:12px}.consult-hint{font-size:12px;margin-right:8px}.consult-option{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;margin-bottom:8px}.consult-option input{width:18px;height:18px}.consult-chat{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;background:#f8fafc}.consult-messages{min-height:120px;max-height:320px;overflow-y:auto;padding:12px}.consult-placeholder{font-size:12px;line-height:1.35;padding:4px 10px;text-align:center}.consult-msg{margin-bottom:12px}.consult-msg:last-child{margin-bottom:0}.consult-msg.user .consult-msg-content{background:#e0e7ff;color:#1e293b;margin-left:24px;border-radius:12px 12px 4px}.consult-msg.assistant .consult-msg-content{background:#fff;border:1px solid #e2e8f0;margin-right:24px;border-radius:12px 12px 12px 4px}.consult-context-badge{font-size:11px;color:#64748b;margin-top:6px;margin-right:24px;padding-left:4px}.consult-referenced-tips{font-size:12px;color:#64748b;margin-top:8px;margin-right:24px;padding:8px 10px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.consult-referenced-label{margin-right:4px}.consult-tip-link{color:#4f46e5;text-decoration:none}.consult-tip-link:hover{text-decoration:underline}.consult-tip-plain{color:#64748b}.consult-tip-none{color:#94a3b8;font-style:italic}.consult-msg-content{padding:12px 14px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.consult-clear-btn{font-size:13px;padding:6px 12px;background:transparent;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;color:#64748b}.consult-clear-btn:hover:not(:disabled){background:#f8fafc;color:#334155}.consult-error-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fef2f2;border-top:1px solid #fecaca}.consult-error-wrap .error-msg{flex:1;margin:0}.consult-error-dismiss{font-size:12px;padding:4px 10px;background:transparent;border:1px solid #fca5a5;border-radius:6px;cursor:pointer;color:#b91c1c}.consult-error-dismiss:hover{background:#fee2e2}.consult-input-row{display:flex;flex-direction:column;gap:8px;padding:12px;background:#fff;border-top:1px solid #e5e7eb}.consult-input{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;line-height:1.5;resize:none;min-height:44px;box-sizing:border-box}.consult-input:focus{outline:none;border-color:#3b82f6}.consult-input-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.consult-char-count{font-size:12px;color:#94a3b8}.consult-send-btn{flex-shrink:0;min-height:44px;padding:10px 20px}.case-section{display:grid;gap:12px}.case-form{display:flex;flex-direction:column;gap:12px}.case-question{font-size:18px;font-weight:700;color:#0f172a;line-height:1.4}.case-answer-input{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;font-size:16px;line-height:1.6;resize:vertical;min-height:120px}.case-answer-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.case-char-count{font-size:12px;color:#94a3b8;text-align:right}.case-submit-btn{align-self:flex-start;min-height:44px;padding:10px 20px}.case-review{background:#f8fafc;border-color:#e2e8f0;margin-top:4px}.case-review-text{white-space:pre-wrap;font-size:14px;line-height:1.7}.corp-section{display:grid;gap:12px}.corp-error-block{padding:12px 0}.corp-error-hint,.corp-empty-hint{font-size:13px;margin:8px 0 0}.corp-cards-wrap{display:flex;flex-direction:column;gap:16px}.corp-flip-card{perspective:1000px;-webkit-perspective:1000px;cursor:pointer;min-height:180px;touch-action:manipulation}.corp-flip-inner{position:relative;width:100%;min-height:180px;transition:transform .5s ease;transform-style:preserve-3d;-webkit-transform-style:preserve-3d}.corp-flip-card.flipped .corp-flip-inner{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}.corp-flip-front,.corp-flip-back{backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0f172a0f}.corp-flip-front{position:relative;z-index:1}.corp-flip-back{position:absolute;top:0;left:0;right:0;min-height:100%;transform:rotateY(180deg);-webkit-transform:rotateY(180deg);background:#0f172a;color:#fff;border-color:#1e293b;overflow-y:auto}.corp-card-label{font-size:11px;font-weight:600;color:#64748b;letter-spacing:.02em;margin-bottom:4px}.corp-flip-back .corp-card-label{color:#94a3b8}.corp-card-value{font-size:14px;line-height:1.55;color:#334155;margin-bottom:12px}.corp-card-value.corp-company{font-weight:600;color:#1e293b}.corp-card-value.corp-action{color:#fff;margin-bottom:10px}.corp-flip-hint{font-size:12px;color:#94a3b8;margin-top:8px}.corp-flip-back .corp-flip-hint{color:#64748b;margin-top:12px}.corp-pub-date{font-size:12px;color:#94a3b8;margin-bottom:8px}.corp-flip-back .corp-source-link{font-size:13px;color:#93c5fd;text-decoration:none;display:inline-block;position:relative;z-index:10;cursor:pointer;padding:4px 0}.corp-flip-back .corp-source-link:hover{text-decoration:underline}.corp-cases-list{display:flex;flex-direction:column;gap:12px}.corp-item{display:block;text-decoration:none;color:inherit;transition:border-color .15s ease,box-shadow .15s ease}.corp-item-link{cursor:pointer}.corp-item:hover{border-color:#c7d2fe;box-shadow:0 6px 18px #0f172a14}.corp-title{font-weight:600;font-size:15px;margin-bottom:8px;line-height:1.4}.corp-challenge,.corp-action,.corp-block{font-size:13px;line-height:1.6;margin-bottom:6px}.corp-label{font-weight:600;color:#475569;margin-right:4px}.news-section{display:grid;gap:12px}.news-item{display:block;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.news-item:hover{border-color:#c7d2fe;box-shadow:0 6px 18px #0f172a14;transform:translateY(-1px)}.news-title{font-weight:700;margin-bottom:4px}.news-item-link{display:block;text-decoration:none;color:inherit;padding:4px 0;border-bottom:1px dashed #e5e7eb}.news-item-link:last-child{border-bottom:none}.news-tip{margin-bottom:4px}.news-link{font-size:12px;color:#2563eb}.news-label{font-size:11px;color:#64748b;margin-bottom:4px}.news-section .card{padding:12px;margin-bottom:10px}.itaku-section{display:grid;gap:12px}.itaku-item{display:block;text-decoration:none;color:inherit;border:1px solid #e5e7eb;border-radius:12px;padding:14px}.itaku-item:hover{border-color:#c7d2fe;box-shadow:0 6px 18px #0f172a14}.itaku-title{font-weight:700;margin-bottom:6px;word-break:break-word;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.itaku-overview{margin-top:6px;font-size:12px;word-break:break-word;overflow-wrap:anywhere;display:block;white-space:normal}.itaku-meta{font-size:12px;color:#64748b;word-break:break-word;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.rubric-row{display:flex;gap:8px;align-items:flex-start;margin:8px 0}.rubric-badge{font-size:11px;padding:4px 8px;border-radius:999px;font-weight:700;min-width:36px;text-align:center}.rubric-badge.ok{background:#dcfce7;color:#166534}.rubric-badge.ng{background:#fee2e2;color:#991b1b}.app-footer{text-align:center;padding:12px 16px;font-size:11px;color:#64748b;border-top:1px solid #e5e7eb;background:#f8fafc}.app-footer a{color:#64748b;text-decoration:none}.app-footer a:hover{text-decoration:underline;color:#475569}.footer-sep{margin:0 8px;color:#cbd5e1}.bottom-nav{display:none}.diagram{background:#0f172a;color:#e2e8f0;padding:12px;border-radius:8px;overflow-x:auto}.diagram-image img{width:100%;border-radius:8px;background:#f8fafc}.flip-card{border:1px dashed #cbd5f5;border-radius:12px;padding:16px;cursor:pointer;background:#f8fafc;margin:8px 0 16px;transition:transform .15s ease;touch-action:pan-y pinch-zoom;min-height:120px;display:flex;flex-direction:column;justify-content:center;user-select:none;-webkit-user-select:none}.flip-card:hover{transform:translateY(-1px)}.flip-card-3d{perspective:1000px;min-height:160px}.flip-card-3d-inner{position:relative;width:100%;min-height:140px;transition:transform .4s ease;transform-style:preserve-3d}.flip-card-3d.flipped .flip-card-3d-inner{transform:rotateY(180deg)}.flip-card-3d-front,.flip-card-3d-back{position:absolute;width:100%;min-height:140px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;justify-content:center;padding:16px;border-radius:12px;background:#f8fafc;border:1px dashed #cbd5f5}.flip-card-3d-back{transform:rotateY(180deg);background:#eef2ff;border-color:#c7d2fe}.flip-card-3d-hint{font-size:12px;color:#64748b;margin-top:8px}.stage-panel{animation:fadeIn .2s ease;font-size:13px;line-height:1.6}.stage-panel h3{font-size:14px}.stage-panel h4,.stage-panel .explain-text{font-size:13px}.stage-panel .flip-card-3d-front>div:not(.muted):not(.flip-card-3d-hint),.stage-panel .flip-card-3d-back>div:not(.muted):not(.flip-card-3d-hint){font-size:13px}.exercise-prompt{font-size:13px;line-height:1.6;color:#374151}.exercise-hint{font-size:11px;color:#94a3b8;margin-top:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.daily-target-card{background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px;padding:16px;margin-bottom:16px}.daily-target-label{font-size:12px;font-weight:600;color:#4f46e5;letter-spacing:.02em;margin-bottom:6px}.daily-target-pack{font-size:13px;color:#64748b;margin-bottom:4px}.daily-target-tip{font-size:16px;font-weight:600;color:#1e293b;margin-bottom:8px;line-height:1.4}.daily-target-principle{font-size:13px;line-height:1.5;margin-bottom:12px}.daily-target-btn{min-height:44px;padding:10px 20px}.packs-collapsible{margin-top:16px;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.packs-toggle-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;background:#f8fafc;border:none;cursor:pointer;font-size:14px;color:#334155;text-align:left;transition:background .15s}.packs-toggle-btn:hover{background:#f1f5f9}.packs-toggle-label{font-weight:500}.packs-toggle-icon{font-size:10px;color:#64748b}.packs-list-wrap{padding:16px;background:#fff;border-top:1px solid #e2e8f0}.packs-list-wrap .grid{margin-top:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.tips-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.row:last-child{margin-bottom:0}.row.wrap{flex-wrap:wrap;width:100%}.row.wrap>*{min-width:0}.gap{gap:6px}button{padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;cursor:pointer;transition:all .15s ease}button.primary{background:#2563eb;color:#fff;border-color:#2563eb}button.primary:hover{background:#1d4ed8;border-color:#1d4ed8}button.secondary{background:#f1f5f9;color:#334155;border-color:#e2e8f0}button.secondary:hover{background:#e2e8f0;border-color:#cbd5e1}button.danger{background:#dc2626;color:#fff;border-color:#dc2626}button.danger:hover{background:#b91c1c;border-color:#b91c1c}button.danger-outline{background:transparent;color:#dc2626;border-color:#dc2626}button.danger-outline:hover{background:#fef2f2}.profile-divider{margin:24px 0 16px;border:none;border-top:1px solid #e5e7eb}.profile-delete-section{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.profile-delete-section h4{margin:0 0 8px;font-size:14px;color:#64748b}.profile-delete-section .small{font-size:12px;margin:0 0 12px}.delete-confirm p{margin:0 0 12px;font-size:14px}.delete-confirm-buttons{display:flex;gap:12px;flex-wrap:wrap}button:hover{transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}input,textarea{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0;max-width:100%}select{padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;max-width:100%}.muted{color:#64748b;font-size:13px}.badge{background:#f1f5f9;padding:4px 10px;border-radius:8px;font-size:12px}.status-badge{font-size:11px;padding:2px 8px;color:#334155}.tip-status{display:inline-block;font-size:11.5px;margin-bottom:8px;padding:3px 8px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.tip-actions{gap:6px;margin-bottom:6px}.tip-metrics{font-size:11.5px;color:#64748b;display:flex;gap:8px;flex-wrap:wrap}.review-counts .badge{font-size:11px;padding:2px 8px}.review-link{border:none;background:#f1f5f9;cursor:pointer}.classification-badge.consultant{background:#eef2ff;color:#4f46e5}.classification-badge.domain{background:#f0fdf4;color:#15803d}.pack-search-section{margin-top:24px}.pack-search-section:first-of-type{margin-top:0}.pack-search-section-title{font-size:1rem;font-weight:600;color:#4f46e5;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.consultant-category-block{margin-bottom:24px}.consultant-category-header{font-size:14px;font-weight:600;color:#4f46e5;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.pack-meta{flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start}.pack-meta .badge,.pack-meta .review-link{font-size:11px;padding:4px 8px;flex:0 0 auto;white-space:nowrap;display:inline-flex;align-items:center;min-height:24px;line-height:1.2;box-sizing:border-box}.pack-meta .review-link{width:auto;min-height:24px;color:inherit}.review-compact button{padding:6px 10px;font-size:12px}.review-compact .badge{font-size:11px;padding:2px 8px}.explain-block{margin-top:8px}.explain-label{font-size:12px;color:#64748b;margin-bottom:4px}.explain-text{color:#1f2937;line-height:1.6}.explain-em{color:#1d4ed8;font-weight:700}.apply-summary-toggle{display:block;width:100%;padding:10px 0;margin:8px 0 12px;background:transparent;border:none;border-bottom:1px dashed #cbd5e1;font-size:13px;color:#64748b;cursor:pointer;text-align:left}.apply-summary-toggle:hover{color:#475569}.apply-summary .explain-block{margin-top:10px}.stepper{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;font-size:12px;color:#94a3b8}.stepper .step{display:flex;align-items:center;gap:6px}.stepper .step.active{color:#1d4ed8;font-weight:700}.stepper .arrow{color:#cbd5f5}.tabs{display:flex;gap:8px;margin-bottom:12px}.tabs button.active{background:#1e293b;color:#fff}.error{color:#ef4444;margin:8px 0}label{display:block;font-size:13px;color:#475569;margin:10px 0 6px}h2{margin-top:0;font-size:18px}h3{margin-top:0;font-size:16px}p{margin:8px 0 12px}@media (max-width: 640px){.flow-image{height:260px}.tip-actions button{padding:6px 10px;font-size:11px}.pack-meta{flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important;display:flex!important;gap:4px}.pack-meta .badge,.pack-meta .review-link{font-size:10px;padding:4px 6px;white-space:nowrap;min-height:22px}.topbar{flex-direction:row;align-items:center;justify-content:center;gap:8px}.topbar .nav{display:none}.content{padding:14px 16px}.grid{grid-template-columns:1fr}.stage-panel{padding-bottom:16px}button{padding:8px 14px}input,textarea,select,.case-question{font-size:16px}.corp-title{font-size:14px}.card{padding:12px;margin-bottom:12px}h2{font-size:17px}h3{font-size:15px}.muted{font-size:12px}.card .card{padding:10px;margin-bottom:10px;box-shadow:none}.news-title{font-size:14px;word-break:break-word}.news-tip{font-size:13px;line-height:1.5}.news-link{font-size:12px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e5e7eb;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:4px 6px;padding-bottom:max(4px,env(safe-area-inset-bottom));z-index:10}.bottom-nav button{font-size:10px;padding:6px 2px;min-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content{padding-bottom:52px;padding-bottom:max(52px,calc(44px + env(safe-area-inset-bottom)))}.app-footer{padding-bottom:max(12px,calc(52px + env(safe-area-inset-bottom)))}.badge{font-size:11px}.tip-title{font-size:14px;line-height:1.4}.news-title,.itaku-title{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-tip,.itaku-overview{display:block;white-space:normal}.corp-flip-card,.corp-flip-inner{min-height:180px}.corp-card-value{font-size:13px}.consult-msg{max-width:90%}.consult-placeholder{font-size:11px;line-height:1.3;padding:4px 8px}.consult-input{min-height:100px}.consult-input-footer{flex-wrap:wrap}.consult-send-btn{flex:1;min-width:120px}.consult-msg.user .consult-msg-content{margin-left:8px}.consult-msg.assistant .consult-msg-content{margin-right:8px}}.legal-page{max-width:720px;margin:0 auto}.legal-page h1{font-size:24px;margin:0 0 8px}.legal-updated{color:#64748b;font-size:13px;margin:0 0 24px}.legal-page section{margin-bottom:24px}.legal-page section h2{font-size:16px;margin:0 0 8px;color:#0f172a}.legal-page section p,.legal-page section ul{margin:0 0 12px;font-size:14px;line-height:1.7}.legal-page section ul{padding-left:20px}.legal-page section li{margin-bottom:6px}.legal-footer{margin-top:32px;padding-top:20px;border-top:1px solid #e5e7eb}.legal-links{margin-top:20px;padding-top:16px;text-align:center;font-size:13px;color:#64748b}.legal-links a{color:#2563eb;cursor:pointer;text-decoration:none}.legal-links a:hover{text-decoration:underline}.forgot-password-link{margin:-8px 0 8px;font-size:14px}.forgot-password-link a{color:#3b82f6}.legal-sep{margin:0 10px;color:#cbd5e1}.admin-tabs{margin-bottom:16px;flex-wrap:wrap}.admin-tabs button{font-size:13px;padding:8px 12px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb}.admin-table th{background:#f8fafc;font-weight:600}.admin-table .mono{font-family:ui-monospace,monospace;font-size:12px}.admin-table .admin-error-msg{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-badge{font-size:11px;padding:2px 8px;border-radius:6px}.role-admin{background:#fef3c7;color:#92400e}.role-user{background:#f1f5f9;color:#475569}.admin-feedback-list{display:flex;flex-direction:column;gap:12px}.admin-feedback-item{padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.admin-feedback-meta{display:flex;gap:12px;font-size:12px;color:#64748b;margin-bottom:6px}.admin-feedback-content{font-size:14px;white-space:pre-wrap;word-break:break-word}.admin-tips-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.admin-tip-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer}.admin-tip-item:hover{background:#f1f5f9;border-color:#cbd5e1}.admin-tip-item.selected{background:#eff6ff;border-color:#3b82f6}.admin-tip-title{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-tip-id{font-size:11px;flex-shrink:0;margin-left:8px}.admin-tip-edit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.admin-user-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-action-btn{font-size:12px;padding:6px 10px;min-height:36px}.feedback-form{margin-top:24px;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.feedback-form h4{margin:0 0 12px;font-size:14px}.feedback-form label{display:block;margin-bottom:4px}.feedback-form select{margin-bottom:12px}.feedback-form textarea{margin-bottom:8px}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;padding-bottom:max(20px,env(safe-area-inset-bottom))}.onboarding-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a80;cursor:pointer}.onboarding-card{position:relative;z-index:1;max-width:400px;width:100%;background:#fff;border-radius:16px;padding:24px;box-shadow:0 20px 40px #00000026}.onboarding-progress{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.onboarding-dot{width:8px;height:8px;border-radius:50%;background:#e2e8f0;transition:background .2s}.onboarding-dot.active{background:#3b82f6}.onboarding-title{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:18px;font-weight:600;color:#0f172a}.onboarding-icon{font-size:24px;line-height:1}.onboarding-body{margin:0 0 24px;font-size:15px;line-height:1.6;color:#475569}.onboarding-actions{display:flex;flex-direction:column;gap:12px}.onboarding-actions .primary{width:100%;min-height:48px;font-size:16px}.onboarding-skip{background:transparent;border:none;color:#64748b;font-size:14px;cursor:pointer;padding:8px}.onboarding-skip:hover{color:#475569}.empty-state-guide{padding:24px 16px;text-align:center;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1}.empty-state-icon{font-size:48px;line-height:1;margin-bottom:12px}.empty-state-title{margin:0 0 8px;font-size:16px;font-weight:600;color:#1e293b}.empty-state-body{margin:0 0 20px;font-size:14px;line-height:1.6;color:#64748b}.empty-state-btn{min-height:44px;padding:10px 24px}.onboarding-welcome{margin-bottom:16px}.onboarding-welcome-icon{font-size:32px;line-height:1;margin-bottom:8px}
