@font-face{font-family:Pretendard;src:url('./PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#202a24;--muted:#647068;--bg:#f6f7f5;--paper:#fff;--line:#e1e6e1;--green:#245c3d;--serif:Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-family:Pretendard,'Apple SD Gothic Neo','Malgun Gothic','Noto Sans',sans-serif;font-size:15px;line-height:1.55;letter-spacing:-.015em;background:var(--bg);color:var(--ink)}
html{scroll-behavior:auto}body{word-break:keep-all;overflow-wrap:anywhere}button,input,textarea,select{font-family:inherit;font-size:14px;line-height:1.5}input,select,textarea{border-color:#ccd5ce;border-radius:8px;padding:10px 12px}button{min-height:40px;border-radius:8px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #75a987;outline-offset:3px}p{line-height:1.75}em{font-style:normal}h1,h2,h3,h4{font-family:inherit;font-weight:650;letter-spacing:-.035em}h3{font-size:18px}small,.hint{font-size:13px!important;line-height:1.7}.nav{height:72px;padding:0 32px;background:#fff;position:sticky;top:0;border-bottom:1px solid var(--line);gap:22px;z-index:20}.logo{font-family:inherit;font-size:29px;font-weight:800;letter-spacing:-1.4px}.nav nav{gap:4px;margin-left:24px}.nav nav button{border:0;background:transparent;padding:10px 16px;color:#657068;font-weight:550;white-space:nowrap;font-size:15px}.nav nav button[aria-current=page]{background:#eaf2ec;color:#245c3d;font-weight:700}.nav #language{margin-left:auto;max-width:125px}.app-intro{max-width:1420px;padding:34px 36px 16px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px}.intro-kicker{font-size:11px;letter-spacing:.08em;color:#62816b;margin:0 0 6px;font-weight:700}.app-intro h1{font-size:28px;line-height:1.4;margin:0 0 7px}.app-intro p:last-child{font-size:15px;color:var(--muted);margin:0}.help-link{font-size:13px;white-space:nowrap;color:#52655a}.workspace{padding:16px 36px 42px;max-width:1420px}.section-title{margin-bottom:16px}.section-title h2{font-size:17px;margin:0}.tools .outline{font-size:13px;background:#fff;padding:7px 12px}.workspace-layout{grid-template-columns:238px minmax(0,1fr);gap:24px}.library{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;align-self:start;position:sticky;top:94px}.tabs button{font-size:12px;padding:6px 10px;min-height:34px;border-radius:7px}.search-label input{font-size:14px;background:#f8faf8}.recipe-list{max-height:calc(100vh - 340px);min-height:230px;gap:3px}.recipe-card{padding:11px 9px;border-radius:8px;gap:10px}.recipe-card b{font-size:14px;font-weight:600}.recipe-card small{font-size:11px!important;margin-top:3px;line-height:1.5}.recipe-card.active{background:#eaf2ec;border-color:transparent}.swatch{width:26px;height:26px;box-shadow:none;border:1px solid #0000000a}.aside-note{font-size:12px;padding:8px 0 0;margin-bottom:0}.editor{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px}.recipe-name{font-size:26px;font-weight:650;line-height:1.4;letter-spacing:-.035em;padding:4px 0;min-width:0}.recipe-heading p{font-size:13px;line-height:1.7;max-width:580px;margin:9px 0 18px}.recipe-heading .eyebrow{font-size:11px;letter-spacing:0;color:#647068}.text-button{font-size:13px}.batch-bar{background:#f5f7f4;padding:14px;border:1px solid #e6eae5;gap:12px}.batch-bar label>span{font-size:12px}.input-unit input{font-family:inherit;font-weight:650;font-size:20px}.quick-batches button{font-size:13px;background:#fff}.button{font-size:14px;font-weight:600;padding:10px 16px;border-radius:8px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0 0}.metric{padding:15px 16px;background:#fafbf9;border-color:#edf0eb;border-radius:9px}.metric strong{font-family:inherit;font-size:29px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.metric .label{font-size:13px;margin-bottom:5px;color:#526258}.metric small{display:none}.metric .unit{font-size:12px}.metric.accent{background:#eff5ed;border-color:#e3ecdF}#metrics:not(.expanded)>.metric:nth-child(2),#metrics:not(.expanded)>.metric:nth-child(4),#metrics:not(.expanded)>.metric:nth-child(7),#metrics:not(.expanded)>.metric:nth-child(8){display:none}.metric-disclosure{display:block;margin:3px 0 10px auto;background:transparent;border:0;font-size:12px;color:#506859;text-decoration:underline;text-underline-offset:3px;min-height:32px;padding:5px}.detail-fold{border:1px solid var(--line);border-radius:8px;padding:0 15px;margin:12px 0;background:#fff}.detail-fold summary,.production-estimator summary{cursor:pointer;font-weight:550;font-size:14px;padding:13px 0;color:#4c6052}.detail-fold[open]{padding-bottom:15px}.detail-fold .metrics{margin:0 0 12px}.detail-fold .lower-grid{margin:0}.advanced-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.advanced-metrics .metric strong{font-size:24px}.advanced-metrics .metric small{display:block}.table-top{margin-top:22px}.table-top h3{font-size:17px}.table-top span{font-size:12px}th{font-size:13px!important;font-weight:600;background:#f7f9f6}td{font-size:14px!important}.ingredients th,.ingredients td{padding:12px 14px}.ingredient-name{font-size:15px!important;font-weight:550;line-height:1.5}.row-meta{font-size:11px!important;line-height:1.6!important;color:#727b74}.ingredients input{font-size:16px;font-variant-numeric:tabular-nums;min-height:42px}.ingredients tfoot td,.ingredients tfoot th{font-weight:650;background:#f1f5ef}.plus-toolbar{gap:8px}.plus-toolbar button{font-size:13px}.actions{gap:8px}.subpanel p,.subpanel #review-summary{font-size:14px;line-height:1.75}.callout{font-size:13px;line-height:1.8;background:#f7f6ef}.alcohol:empty{display:none}.lower-grid{gap:20px}.eyebrow{letter-spacing:.03em}.prose{max-width:780px;padding:0 24px;line-height:1.85}.prose h1{font-size:32px}.prose h2{font-size:22px;margin-top:36px}.prose p{font-size:16px;color:#45534a}.prose code{font-size:14px}.studio-section{padding:12px 36px 44px;max-width:1200px;margin:auto}.studio-section>.section-head,.studio-section>.hint,.studio-tabs,.studio-section>.actions,.studio-section>a{display:none}.studio-section>.subpanel{display:none;margin:0;padding:26px;border-radius:12px}.studio-section .eyebrow{display:none}.studio-section h3{font-size:21px;margin-bottom:10px}.studio-section .production-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.production-inputs label{font-size:13px;color:#526258;line-height:1.6}.production-inputs input{max-width:none!important;font-size:17px;margin-top:6px;font-variant-numeric:tabular-nums}.yield-grid{gap:14px;margin:20px 0}.yield-grid>span{font-size:13px;background:#f5f8f3;padding:16px;border-radius:8px}.yield-grid b{font-family:inherit!important;font-size:24px;font-weight:650}.trial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trial-card{background:#fafbf8;border-color:var(--line);padding:20px}.trial-card h4{font-size:18px;margin:0 0 12px}.trial-card label{font-size:14px}.trial-card textarea{font-size:14px}.production-estimator{max-width:1128px;margin:20px auto 12px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 24px}.production-estimator[open]{padding-bottom:24px}.ai-section{max-width:1200px;margin:0 auto;padding:20px 36px 50px;grid-template-columns:1fr 1.5fr;background:transparent;gap:32px}.ai-section h2{font-size:26px;line-height:1.45}.ai-section p{font-size:15px;line-height:1.8}.ai-section .eyebrow{display:none}.ai-section em{font-family:inherit;font-style:normal}.ai-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}.ai-card label{font-size:14px}.ai-card textarea{font-size:14px;line-height:1.75}footer{padding:22px 36px;border-top:1px solid var(--line);background:#fff;gap:16px;align-items:center}footer p,footer small,footer a{font-size:12px!important;line-height:1.7}footer .logo{display:none}footer small{display:none}footer>div{gap:20px}body[data-view]:not([data-view=formula]) #workspace,body[data-view]:not([data-view=documents]) #ai,body[data-view]:not([data-view=production]) .production-estimator{display:none}body[data-view=formula] #studio-panel,body[data-view=documents] #studio-panel{display:none}body[data-view=production] #menu-desk,body[data-view=margin] #margin-desk,body[data-view=trials] #trial-desk{display:block}body[data-view=production] .studio-section>.actions,body[data-view=trials] .studio-section>.actions{display:flex;margin-top:16px}
@media(min-width:1000px){.studio-section #shopping-table .row-meta{max-width:260px;max-height:3.2em;overflow:auto}#rows .row-meta{max-width:310px}}
@media(max-width:1000px){.nav{padding:0 20px;gap:12px}.nav nav{margin-left:0}.nav nav button{font-size:13px;padding:10px}.app-intro{padding:28px 24px 12px}.workspace{padding:16px 24px 32px}.workspace-layout{grid-template-columns:210px minmax(0,1fr);gap:16px}.editor{padding:20px}.library{padding:12px}.metric{padding:12px}.metric strong{font-size:25px}.quick-batches{display:none}.studio-section{padding:16px 24px 36px}}
@media(max-width:760px){.nav{height:auto;min-height:64px;padding:12px 18px 0;flex-wrap:wrap;gap:10px;position:sticky}.nav .logo{font-size:26px}.nav #language{order:1}.nav nav{order:2;width:100%;overflow-x:auto;gap:2px;padding:0 0 10px;margin:0}.nav nav button{flex-shrink:0;font-size:14px;padding:8px 12px}.app-intro{padding:24px 18px 10px;align-items:start}.app-intro h1{font-size:23px;max-width:290px}.app-intro p:last-child{font-size:14px}.help-link{font-size:12px}.workspace{padding:12px 14px 24px}.workspace-layout{grid-template-columns:1fr;gap:14px}.library{position:static;padding:14px;border:1px solid var(--line)}.recipe-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:208px;min-height:0;overflow:auto;gap:4px}.recipe-card{min-width:0;width:100%;padding:10px 6px;gap:8px}.recipe-card b{font-size:13px}.recipe-card small{font-size:10px!important}.recipe-card .swatch{width:20px;height:20px}.aside-note{display:none}.tabs{margin-bottom:10px}.search-label input{margin-bottom:8px}.section-title{align-items:start;flex-direction:column;gap:10px}.tools{gap:5px}.tools .outline{font-size:12px;min-height:34px}.editor{padding:18px 14px}.recipe-name{font-size:24px}.recipe-heading .text-button{max-width:70px;font-size:12px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.metric strong{font-size:28px}.metric .label{font-size:13px}.advanced-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.table-top{align-items:start;gap:5px}.table-top span{font-size:12px;line-height:1.6}.ingredients{min-width:540px}.ingredients td,.ingredients th{padding:10px 12px}.batch-bar{padding:12px;align-items:end}.batch-bar .button{font-size:13px}.input-unit input{width:100px}.studio-section{padding:10px 14px 30px}.studio-section>.subpanel{padding:20px 16px}.studio-section .production-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.studio-section h3{font-size:21px}.yield-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.yield-grid b{font-size:21px}.trial-grid{grid-template-columns:1fr}.production-estimator{margin:14px 14px 6px;padding:0 16px}.ai-section{padding:10px 18px 30px;grid-template-columns:1fr;gap:16px}.ai-section>div>h2{font-size:23px}.ai-section p{font-size:14px}.ai-card{padding:18px}.prose{padding:0 20px}.prose h1{font-size:27px}.prose p{font-size:15px}footer{padding:20px;display:block}footer>div{margin-top:12px}footer p{margin:0}.detail-fold{padding:0 12px}dialog{max-width:calc(100vw - 24px);padding:20px}}
@media print{.nav,.app-intro,.metric-disclosure,.detail-fold:not([open]),footer{display:none!important}.library{display:none!important}.workspace-layout{display:block}.editor{border:0;padding:0}#metrics>.metric{display:block!important}.metrics{grid-template-columns:repeat(4,1fr)}.studio-section>.subpanel{break-inside:auto}.studio-section .actions{display:none!important}}

.recipe-notes .eyebrow{display:none}.recipe-notes p{font-size:13px;color:#566159;margin:5px 0 10px;line-height:1.8}.recipe-notes .callout{margin:10px 0}.studio-section>.actions{padding-top:12px}.studio-section>.actions::before{content:'브라우저 저장 · 별도 백업 권장';width:100%;font-size:12px;color:#657269}html:not([lang=ko]) .studio-section>.actions::before{content:'Browser storage · Keep a separate backup'}html[lang=zh-CN] .studio-section>.actions::before{content:'浏览器存储 · 请单独备份'}html[lang=ja] .studio-section>.actions::before{content:'ブラウザー保存 · バックアップ推奨'}

/* v5: intrinsic-size and line-box repairs */
*,*::before,*::after{box-sizing:border-box}.metrics>*,.yield-grid>*,.production-inputs>*,.target-grid>*,.recipe-heading>*,.trial-grid>*,.stock-form>*{min-width:0}.advanced-metrics{margin:8px 0 14px!important}.metric strong,.yield-grid b{display:block;line-height:1.35;overflow-wrap:anywhere;white-space:normal;max-width:100%}.metric .unit{display:inline-block;margin:2px 0 0}.metric .label{min-height:1.6em;line-height:1.6}.metric small{line-height:1.8!important}.actions,.weigh-head,.stock-form{flex-wrap:wrap}.button,.outline,.plus-toolbar button{white-space:normal;height:auto;line-height:1.55;overflow-wrap:anywhere}.recipe-heading>div{flex:1;min-width:0}.recipe-heading>button{flex-shrink:0;max-width:110px}.recipe-name{max-width:100%;line-height:1.55}.add-row{flex-wrap:wrap;gap:10px}.add-row select{flex:1 1 240px;min-width:0;max-width:100%}.table-scroll{max-width:100%;overflow-x:auto}.ingredients{min-width:620px;table-layout:fixed}.ingredients th:nth-child(1){width:42%}.ingredients th:nth-child(2){width:22%}.ingredients th:nth-child(3){width:11%}.ingredients th:nth-child(4){width:17%}.ingredients th:nth-child(5){width:8%}.ingredients input{width:100%;min-width:0}.ingredient-name{white-space:normal;overflow-wrap:anywhere;text-align:left;max-width:100%;height:auto}.row-meta{display:block;white-space:normal;overflow-wrap:anywhere}.target-input>span{display:flex;gap:8px;align-items:flex-start;line-height:1.6}.target-input input[type=number]{width:100%}.nav nav{min-width:0;overflow-x:auto}.stock-form{display:flex;gap:12px;align-items:end;padding-bottom:12px}.stock-form label{flex:1 1 180px;font-size:13px}.stock-form input,.stock-form select{display:block;width:100%;margin-top:6px}.weighing-card{max-width:1128px;margin:0 auto 28px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:12px}.weigh-head{display:flex;gap:16px;align-items:start;justify-content:space-between}.weigh-head>div{flex:1;min-width:220px}.weigh-head h2{font-size:22px;margin:0 0 10px}.weigh-head p{font-size:14px;color:var(--muted);max-width:640px}.weigh-table{min-width:600px;table-layout:fixed}.weigh-table th:first-child{width:38%}.weigh-table th:nth-child(2){width:20%}.weigh-table th:nth-child(3){width:25%}.weigh-table td{padding:12px}.weigh-table input{width:100%;font-size:19px;font-variant-numeric:tabular-nums}.weight-ok{color:#245c3d}.weight-warning{color:#a54421;font-weight:650}#weigh-status{padding:16px;background:#eef4eb;margin:16px 0;border-radius:8px;line-height:1.8}#weigh-note{width:100%;display:block;margin:8px 0 16px;min-height:80px}#weigh-session>label{display:block;margin:16px 0;font-size:14px}#weigh-tolerance{display:block;width:140px;margin-top:8px}.empty-bench{padding:24px;background:#f6f8f4;border-radius:8px;font-size:14px}.history-item{display:block;width:100%;text-align:left;margin:8px 0;overflow-wrap:anywhere}.weighing-card .detail-fold{margin-top:20px}body[data-view]:not([data-view=production]) #weighing-panel{display:none}@media(max-width:1100px){.nav nav button{padding:8px 10px}.metric strong{font-size:25px}.weighing-card{margin:0 24px 24px}}@media(max-width:760px){.weighing-card{margin:0 14px 20px;padding:18px 14px}.stock-form{display:grid;grid-template-columns:1fr}.stock-form label{min-width:0}.stock-form button{width:100%}.recipe-heading>button{max-width:72px}.yield-grid{padding:10px}.yield-grid>span{padding:12px}.yield-grid b{font-size:20px}.app-intro{flex-wrap:wrap}.app-intro .help-link{margin-left:0}.nav nav{padding-bottom:10px}.weigh-head>div{min-width:0;width:100%;flex-basis:100%}}@media print{#stock-scale{display:none}.weighing-card{border:0}.weigh-head button,#weigh-finish,#weigh-csv{display:none}}
