:root{--ink:#2f2a25;--muted:#756c63;--paper:#f7f0e5;--cream:#fffaf2;--orange:#bd5b3d;--rust:#9d452f;--sage:#798b72;--line:#d9cdbd;--blue:#6e8ea0}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'Noto Sans TC',sans-serif;background:#e7d9c7 url('assets/roasting-studio-manga.png') left center/cover fixed no-repeat;min-height:100vh}.paper-grain{position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.17'/%3E%3C/svg%3E");mix-blend-mode:multiply}.app-shell{max-width:1440px;margin:auto;padding:28px 5vw 16px;background:linear-gradient(90deg,rgba(255,250,242,.88),rgba(255,250,242,.96) 38%,rgba(255,250,242,.84));min-height:100vh}.topbar,.hero-copy,.panel-heading,.card-top,.inquiry-actions,footer{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center}.brand-mark{background:var(--ink);color:var(--paper);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:20px;transform:rotate(-8deg)}h1,h2,h3,p{margin:0}.brand h1{font:900 22px 'Zen Kaku Gothic New',sans-serif;letter-spacing:.08em}.eyebrow,.section-label,.kicker{font-size:10px;letter-spacing:.16em;font-weight:900;color:var(--rust)}.top-actions{color:var(--muted);font-size:12px;gap:12px}.session-dot{width:8px;height:8px;background:var(--sage);border-radius:50%;box-shadow:0 0 0 4px #e6ede1}.ghost-btn{border:1px solid var(--line);background:transparent;border-radius:20px;padding:7px 13px;color:var(--muted);cursor:pointer}.hero-copy{padding:58px 0 36px;align-items:flex-end}.hero-copy h2{font:900 clamp(28px,4vw,52px) 'Zen Kaku Gothic New',sans-serif;letter-spacing:.03em;margin:10px 0 12px}.subtitle{color:var(--muted);font-size:14px}.batch-card{background:rgba(255,250,242,.75);border:1px solid var(--line);border-radius:14px;padding:15px 20px;min-width:190px;box-shadow:0 6px 18px #7d62411c}.batch-card span,.batch-card small{display:block;color:var(--muted);font-size:11px}.batch-card strong{display:block;margin:4px 0;font-size:14px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:20px}.left-column,.right-column{display:flex;flex-direction:column;gap:20px}.panel,.inquiry-card{background:rgba(255,250,242,.9);border:1px solid #ded2c2;border-radius:16px;box-shadow:0 8px 24px #795b3d14}.panel{padding:22px}.panel-heading{align-items:flex-start}.panel-heading h3,.control-copy h3,.inquiry-card h3{font-size:19px;margin-top:5px;letter-spacing:.02em}.legend{display:flex;gap:14px;color:var(--muted);font-size:11px;align-items:center}.legend-line{display:inline-block;width:20px;height:3px;border-radius:3px;margin-right:5px;background:var(--orange)}.legend-line.env{background:var(--blue)}.legend-dash{display:inline-block;width:20px;border-top:2px dashed var(--sage);margin-right:5px}.chart-wrap{height:335px;position:relative;margin:18px 0 8px}.chart-wrap canvas{width:100%;height:100%}.chart-tip{position:absolute;right:0;top:4px;color:#a0978d;font-size:10px}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding-top:16px}.metric{padding-left:15px;border-left:1px solid var(--line)}.metric:first-child{border-left:0;padding-left:0}.metric span{font-size:10px;color:var(--muted);display:block;margin-bottom:5px}.metric strong{font-size:18px}.metric.accent strong,.metric.accent b{color:var(--rust)}.control-panel{display:flex;gap:30px;align-items:center}.control-copy{min-width:240px}.control-copy p{color:var(--muted);font-size:12px;margin-top:7px}.controls{flex:1}.slider-line{display:flex;align-items:center;gap:12px;font-weight:900;font-size:13px}.slider-line input{flex:1;accent-color:var(--orange)}output{color:var(--rust);font-weight:900;width:47px}.button-row{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.button-row button{font-family:inherit;font-size:11px;border-radius:20px;padding:9px 14px;cursor:pointer}.primary-btn{background:var(--rust);color:white;border:1px solid var(--rust);box-shadow:0 4px 10px #9d452f30}.event-btn{background:transparent;border:1px solid var(--line);color:var(--muted)}.event-btn:hover,.tag:hover{border-color:var(--rust);color:var(--rust)}.count-badge,.step-count{font-size:10px;letter-spacing:.1em;color:var(--muted);background:#eee5d9;border-radius:20px;padding:5px 9px}.event-list{margin-top:15px}.event-item{display:grid;grid-template-columns:70px 1fr auto;align-items:center;padding:11px 0;border-top:1px solid #e8ded2;font-size:12px}.event-item:first-child{border-top:0}.event-item .event-time{color:var(--muted);font-variant-numeric:tabular-nums}.event-item .event-label{font-weight:700}.event-item small{font-size:10px;color:var(--muted)}.inquiry-card{background:#3b3935;color:#fffaf2;padding:25px;position:relative;overflow:hidden}.inquiry-card:after{content:'探究';position:absolute;right:-12px;bottom:-25px;font:900 110px 'Zen Kaku Gothic New';color:#ffffff08;transform:rotate(-12deg)}.inquiry-card .section-label{color:#ddb09f}.step-count{background:#5a544e;color:#ead7cb}.step-bar{height:4px;background:#5a544e;border-radius:4px;margin:14px 0 24px}.step-bar i{display:block;height:100%;width:25%;background:#e19472;border-radius:4px;transition:.3s}.question-mark{font:900 42px Georgia;color:#e19472;line-height:1;margin-bottom:10px}.inquiry-card h3{font-size:20px;line-height:1.45;max-width:320px}.inquiry-card>p{font-size:13px;line-height:1.8;color:#d9d0c7;margin-top:10px}.prompt-box{margin-top:20px}.prompt-box span{display:block;font-size:11px;color:#cfc2b7;margin-bottom:7px}.prompt-box textarea,.notes{width:100%;resize:vertical;border:1px solid #716960;border-radius:8px;background:#48443f;color:#fffaf2;padding:11px;font:12px inherit;min-height:78px;outline:none}.prompt-box textarea::placeholder,.notes::placeholder{color:#a79e95}.inquiry-actions{margin-top:14px}.text-btn{border:0;background:none;color:#d8a590;font-size:11px;cursor:pointer;padding:0}.next-btn{border:0;border-radius:20px;background:#f1c8b5;color:#49352e;font-weight:700;padding:10px 16px;cursor:pointer}.hint{display:none!important;color:#d8a590!important;font-size:11px!important;margin-top:12px!important}.hint.visible{display:block!important}.insight-panel{padding-bottom:18px}.pen-icon{font-size:22px;color:var(--rust)}.notes{background:#fbf6ee;color:var(--ink);border-color:var(--line);min-height:92px;margin-top:15px}.notes::placeholder{color:#aaa098}.tag-row{display:flex;gap:7px;margin-top:10px}.tag{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:16px;padding:5px 10px;font:11px inherit;cursor:pointer}.tag.active{background:#f1dfd4;border-color:#d4a08b;color:var(--rust)}.phase-panel{padding:19px 22px}.phase-list{margin-top:12px}.phase{display:grid;grid-template-columns:28px 1fr auto;align-items:center;border-top:1px solid #e8ded2;padding:10px 0;font-size:11px;color:var(--muted)}.phase:first-child{border-top:0}.phase b{color:#a9a096;font-size:10px}.phase.active{color:var(--ink);font-weight:700}.phase.active b{color:var(--rust)}.phase em{font-style:normal;font-variant-numeric:tabular-nums}footer{padding:30px 0 0;font-size:10px;color:#a49a90;letter-spacing:.04em}@media(max-width:900px){.app-shell{padding:22px 4vw}.workspace-grid{grid-template-columns:1fr}.hero-copy{align-items:flex-start;gap:20px;flex-direction:column}.batch-card{align-self:stretch}.control-panel{align-items:stretch;flex-direction:column;gap:16px}.chart-wrap{height:270px}}@media(max-width:560px){.top-actions span:not(.session-dot){display:none}.hero-copy{padding-top:40px}.metric-row{grid-template-columns:repeat(2,1fr);gap:14px}.metric:nth-child(3){border-left:0;padding-left:0}.legend{display:none}.chart-wrap{height:230px}.button-row button{flex:1}.panel{padding:17px}}
