.rp-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px}.rp-header h1{font-size:24px;letter-spacing:-.04em;margin:6px 0 0}.rp-header-actions,.rp-week-controls,.rp-search,.rp-plan-footer,.rp-dialog-footer,.rp-dialog-footer>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.rp-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border:1px solid var(--line,#e6e1d8);border-radius:10px;background:#fff;color:var(--ink,#3f433d);padding:9px 14px;font:600 12px/1.4 'Noto Sans JP',sans-serif;text-decoration:none;cursor:pointer}.rp-button.primary{background:var(--green,#657457);border-color:var(--green,#657457);color:#fff}.rp-button.small{min-height:35px;padding:7px 11px;font-size:11px}.rp-button.icon{width:37px;font-size:22px;padding:3px}.rp-button:disabled{opacity:.45;cursor:default}.rp-button:hover:not(:disabled){border-color:#b9bdad;filter:brightness(.98)}.rp-panel{margin:0 0 20px;overflow:hidden}.rp-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px;flex-wrap:wrap}.rp-panel-heading h2{font-size:15px;margin:0}.rp-week-controls input,.rp-search input[type=search]{min-height:40px;border:1px solid var(--line,#e6e1d8);border-radius:9px;background:#fffefa;color:var(--ink,#3f433d);padding:8px 10px;font:12px 'Noto Sans JP',sans-serif}.rp-search label{font-size:11px;color:var(--muted,#858277);display:flex;align-items:center;gap:6px}.rp-search input[type=checkbox]{width:17px;height:17px;accent-color:var(--green,#657457)}.rp-meta,.rp-unit{display:block;font-size:10px;color:var(--muted,#858277);line-height:1.6}.rp-unit{display:inline}.rp-table-wrap{overflow:auto}.rp-table{width:100%;border-collapse:collapse;white-space:normal}.rp-table th,.rp-table td{padding:13px 20px;border-bottom:1px solid var(--line,#e6e1d8);font-size:12px;text-align:left;vertical-align:middle}.rp-table th{font-size:10px;color:var(--muted,#858277);font-weight:500;background:#fbfaf7}.rp-table th:not(:first-child),.rp-table td:not(:first-child){text-align:right}.rp-table td:first-child{min-width:160px}.rp-table td:not(:first-child){min-width:90px}.rp-shortage{color:#b2734d;font-weight:700}.rp-ok{color:var(--green,#657457);font-size:10px}.rp-unmatched{display:block;font-size:10px;color:#a17c5d;margin-top:4px}.rp-missing{display:flex;gap:12px;align-items:flex-start;padding:0 20px 16px;color:var(--muted,#858277);font-size:11px}.rp-missing>span{white-space:nowrap;padding-top:8px}.rp-missing>div{display:flex;gap:6px;flex-wrap:wrap}.rp-chip{border:1px solid #e7ddd0;border-radius:20px;background:#fff9f0;color:#856f50;padding:7px 11px;font:11px 'Noto Sans JP',sans-serif;cursor:pointer}.rp-chip span{margin-left:8px}.rp-notice{margin:0 0 16px;padding:11px 15px;border:1px solid #e5dccd;border-radius:9px;background:#fbf6ed;color:#8d7458;font-size:11px}.rp-notice.inline{border:0;border-radius:0;margin:0;padding:0 20px 16px;background:transparent}.rp-plan-footer{justify-content:space-between;padding:16px 20px}.rp-summary-warning{color:#9b7a57;font-size:10px!important;white-space:normal!important}.rp-summary-warning a{color:var(--green,#657457)}.rp-recipe-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;padding:0 20px 12px}.rp-recipe-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;border-top:1px solid var(--line,#e6e1d8);min-width:0}.rp-recipe-card h3{font-size:12px;font-weight:600;margin:4px 0;overflow-wrap:anywhere}.rp-empty{padding:30px 16px;color:var(--muted,#858277);font-size:12px;text-align:center}.rp-recipe-list>.rp-empty{grid-column:1/-1}.rp-dialog{width:min(880px,calc(100vw - 32px));box-sizing:border-box;padding:0;border:1px solid var(--line,#e6e1d8);border-radius:18px;background:#fffdf9;color:var(--ink,#3f433d);max-height:90vh;max-height:90dvh;overflow:auto;box-shadow:0 30px 80px #2f35282b}.rp-dialog::backdrop{background:#292a274f;backdrop-filter:blur(3px)}.rp-dialog-heading{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:#fffdf9;border-bottom:1px solid var(--line,#e6e1d8);padding:18px 22px;z-index:2}.rp-dialog-heading h2{font-size:16px;margin:0}.rp-remove{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#9d8b79;font-size:24px;cursor:pointer}.rp-remove:hover{background:#f1e9de}.rp-editor-fields{display:grid;grid-template-columns:1fr 170px;gap:16px;padding:20px 22px}.rp-editor-fields>label,.rp-ingredient-row>label{display:flex;flex-direction:column;gap:7px;font-size:10px;color:var(--muted,#858277);min-width:0}.rp-dialog select,.rp-dialog input{box-sizing:border-box;width:100%;min-height:42px;border:1px solid var(--line,#e6e1d8);border-radius:8px;background:#fff;color:var(--ink,#3f433d);padding:8px 9px;font:12px 'Noto Sans JP',sans-serif;min-width:0}.rp-dialog input:read-only{background:#f5f3ed;color:#77796e}.rp-yield-field{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:11px}.rp-yield-field input{width:110px}.rp-ingredient-head{display:flex;justify-content:space-between;align-items:center;padding:3px 22px 12px;font-size:12px}.rp-ingredient-row{display:grid;grid-template-columns:minmax(130px,1.1fr) minmax(130px,1.2fr) 90px 72px 34px;gap:9px;align-items:end;padding:13px 0;border-top:1px solid var(--line,#e6e1d8)}#rpIngredientRows{padding:0 22px 14px}.rp-link-info{grid-column:1/-1;color:#9b856b;font-size:10px;line-height:1.6}.rp-dialog-footer{position:sticky;bottom:0;justify-content:space-between;background:#fffdf9;border-top:1px solid var(--line,#e6e1d8);padding:16px 22px;z-index:2}
@media(max-width:760px){.rp-header{align-items:flex-start;flex-direction:column}.rp-header h1{font-size:21px}.rp-panel-heading{padding:16px}.rp-recipe-list{grid-template-columns:1fr;padding:0 16px 12px}.rp-search{width:100%;justify-content:space-between}.rp-search input[type=search]{flex:1;min-width:0}.rp-missing{flex-direction:column;gap:7px;padding:0 16px 12px}.rp-missing>span{padding-top:0}.rp-table th,.rp-table td{padding:12px 14px}.rp-plan-footer{padding:14px 16px}.rp-editor-fields{padding:16px;grid-template-columns:1fr 130px;gap:12px}.rp-yield-field input{width:88px}.rp-ingredient-head{padding:0 16px 12px}#rpIngredientRows{padding:0 16px 10px}.rp-ingredient-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px;gap:10px}.rp-ingredient-row>label:first-child{grid-column:1/3}.rp-ingredient-row>label:nth-child(2){grid-column:1/3}.rp-ingredient-row>label:nth-child(3){grid-column:1;grid-row:3}.rp-ingredient-row>label:nth-child(4){grid-column:2;grid-row:3}.rp-ingredient-row>.rp-remove{grid-column:3;grid-row:3}.rp-dialog-heading,.rp-dialog-footer{padding:15px 16px}.rp-dialog-footer{flex-direction:column;align-items:stretch;gap:10px}.rp-dialog-footer>div{justify-content:flex-end}.rp-week-controls{width:100%;justify-content:flex-start}.rp-notice.inline{padding:0 16px 12px}}
@media(max-width:430px){.rp-dialog{width:calc(100vw - 16px);border-radius:14px}.rp-editor-fields{grid-template-columns:1fr}.rp-header-actions{width:100%}.rp-header-actions>.rp-button{flex:1}.rp-plan-footer{align-items:flex-start;flex-direction:column}.rp-week-controls input{flex:1;min-width:0}.rp-recipe-card h3{font-size:12px}.rp-dialog-footer>div>.rp-button{flex:1}}

/* 食材を左右2列に配置し、狭い画面では元の順番で1列に戻す */
#recipesPage .rp-demand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0 20px}
#recipesPage .rp-demand-grid .rp-table th,#recipesPage .rp-demand-grid .rp-table td{padding:12px 8px}
#recipesPage .rp-demand-grid .rp-table td:first-child{min-width:0;width:40%;overflow-wrap:anywhere}
#recipesPage .rp-demand-grid .rp-table td:not(:first-child){min-width:0;white-space:normal}
#recipesPage .rp-recipe-list{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){#recipesPage .rp-demand-grid{grid-template-columns:1fr;padding:0 12px;gap:0}#recipesPage .rp-recipe-list{grid-template-columns:1fr}}

#recipesPage .rp-panel[hidden]{display:none!important}.rp-view-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.rp-view-tabs .rp-button{flex:1;min-height:48px;text-align:center}

.rp-dialog [data-rp-save-status]:empty{display:none}

#recipesPage .rp-unverified-queue{margin:0 20px 16px;border-top:1px solid #ded4c5;border-bottom:1px solid #ded4c5;padding:6px 0;color:#514334}
#recipesPage .rp-unverified-queue summary{cursor:pointer;min-height:44px;align-content:center;font-size:14px;font-weight:700}
#recipesPage .rp-unverified-queue summary span{font-size:12px;font-weight:400;margin-left:8px}
#recipesPage .rp-unverified-queue p{font-size:13px;line-height:1.7;margin:5px 0 12px}
#recipesPage .rp-unverified-queue>div{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:10px}
#recipesPage .rp-unverified-queue .rp-chip{min-height:44px;font-size:12px;border-radius:10px}
#recipesPage [data-recipe-status]{min-height:44px;font-size:13px}
#recipesPage .rp-arrival-late{color:#953a24}
@media(max-width:600px){#recipesPage .rp-unverified-queue{margin:0 15px 12px}#recipesPage .rp-unverified-queue summary span{display:block;margin-left:18px}#recipesPage .us31-toolbar[aria-label="レシピの登録状態"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}}

/* 週間食材: 状態を先に選び、数値は1つの表で比較する。 */
#recipesPage .rp-demand-tables .rp-demand-grid{display:block}
#recipesPage .rp-demand-filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 20px}
#recipesPage .rp-demand-filters .rp-button{min-height:44px;font-size:14px;padding:9px 14px}
#recipesPage .rp-demand-filters strong{font-variant-numeric:tabular-nums;font-size:18px}
#recipesPage .rp-demand-filters span{font-size:11px}
#recipesPage .rp-demand-filters .rp-filter-label{font-size:inherit}
#recipesPage .rp-demand-result{margin:9px 20px 12px;color:#62584a;font-size:12px}
#recipesPage .rp-demand-tables .rp-table td{font-variant-numeric:tabular-nums;font-size:16px;line-height:1.6}
#recipesPage .rp-demand-tables .rp-table td:first-child{width:42%;padding:16px 10px}
#recipesPage .rp-demand-tables .rp-unit{color:#62584a;font-size:12px}
#recipesPage .rp-demand-tables .rp-shortage{color:#953a24;font-size:18px}
#recipesPage .rp-demand-tables .rp-ok{color:#3e5941;font-size:13px}
#recipesPage .rp-demand-tables .rp-calculation summary{min-height:32px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}
#recipesPage .rp-formula{font-size:13px;margin:10px 0 14px}
#recipesPage .rp-formula summary{cursor:pointer;min-height:38px;display:flex;align-items:center;gap:7px;text-decoration:underline;text-underline-offset:3px}
#recipesPage .rp-formula summary::before{content:'＋'}
#recipesPage .rp-formula[open] summary::before{content:'−'}
@media(max-width:600px){
  #recipesPage .rp-demand-filters{padding:0 12px;gap:6px;flex-wrap:nowrap}
  #recipesPage .rp-demand-filters .rp-button{flex:1;padding:8px 6px;font-size:12px;gap:2px;min-width:0;display:grid;grid-template-columns:auto auto;justify-content:center}
  #recipesPage .rp-demand-filters .rp-filter-label{grid-column:1/-1;white-space:nowrap}
  #recipesPage .rp-demand-result{margin:8px 12px 10px}
  #recipesPage .rp-demand-tables .rp-table-wrap{overflow:visible}
  #recipesPage .rp-demand-tables .rp-table,#recipesPage .rp-demand-tables tbody{display:block;width:100%}
  #recipesPage .rp-demand-tables thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  #recipesPage .rp-demand-tables tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 0;border-top:1px solid #d8d0c2;gap:10px 6px}
  #recipesPage .rp-demand-tables .rp-table td{display:block;min-width:0;border:0;padding:0 3px;overflow-wrap:anywhere;text-align:left}
  #recipesPage .rp-demand-tables .rp-table td:first-child{grid-column:1/-1;width:auto;padding:0 3px;font-size:17px}
  #recipesPage .rp-demand-tables .rp-table td:not(:first-child)::before{content:attr(data-label);display:block;color:#62584a;font-size:11px;margin-bottom:4px;font-weight:600}
  #recipesPage .rp-demand-tables .rp-table td.rp-empty{grid-column:1/-1;padding:20px 10px;font-size:14px}
  #recipesPage .rp-demand-tables .rp-meta{font-size:11px;line-height:1.5}
  #recipesPage .rp-demand-tables .rp-table .rp-button{min-height:44px;font-size:12px;margin:7px 0}
  #recipesPage .rp-demand-guide{padding:0 15px 12px;font-size:13px}
  #recipesPage .rp-demand-guide label{gap:6px}
  #recipesPage .rp-demand-guide input{width:100%;min-width:0;box-sizing:border-box;font-size:16px}
}

.rp-discard-prompt{padding:20px;margin:16px 22px;border:2px solid #a87845;border-radius:12px;background:#fff5df;color:#55442d}.rp-discard-prompt[hidden]{display:none}.rp-discard-prompt h3{margin:0 0 8px}.rp-discard-prompt p{line-height:1.7;margin:8px 0 15px}.rp-discard-prompt>div{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:600px){.rp-discard-prompt{margin:12px;padding:16px}.rp-discard-prompt button{min-height:44px;flex:1}}

#recipesPage .rp-demand-guide{padding:0 20px 16px;font-size:14px;line-height:1.7;color:#403a30}#recipesPage .rp-demand-guide p{margin:4px 0 10px}#recipesPage .rp-demand-guide label{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#recipesPage .rp-demand-guide input{padding:10px;min-width:210px;font:inherit;border:1px solid #bcb29f;border-radius:8px;background:#fffefa}.rp-editor-guide{padding:0 22px 12px;font-size:13px;line-height:1.7;color:#514b42}.rp-calculation{margin-top:6px;font-size:11px;line-height:1.6;text-align:left}.rp-calculation summary{cursor:pointer;color:#514b42}.rp-calculation p{margin:6px 0;min-width:170px}#recipesPage .rp-table th{font-size:12px;color:#514b42}#recipesPage .rp-table td{font-size:14px}#recipesPage .rp-meta,#recipesPage .rp-unmatched{font-size:12px;color:#62584a}.rp-dialog label{font-size:13px}.rp-dialog input,.rp-dialog select{font-size:16px;min-height:40px}

/* Optional exact-dish maker credit works in both appearance modes. */
.rp-maker-tag{display:block;width:fit-content;max-width:100%;box-sizing:border-box;margin-top:7px;padding:5px 9px;background:#f2ead3;color:#42583f;border:1px solid #b4a078;border-radius:3px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.rp-maker-unknown{color:#875630;border-style:dashed}
.rp-recipe-card>[data-rp-maker]{min-height:44px;min-width:44px}
.rp-maker-dialog{width:min(540px,calc(100vw - 24px))}
.rp-maker-dialog .rp-dialog-heading{gap:12px}.rp-maker-dialog .rp-dialog-heading>.rp-button{min-width:44px;min-height:44px;flex:none}
.rp-maker-body{padding:16px 22px}.rp-maker-body h3{font-size:16px;line-height:1.6;margin:0 0 16px;overflow-wrap:anywhere}.rp-maker-body label{display:grid;gap:8px;font-size:13px;line-height:1.6}.rp-maker-body input{min-height:44px;font-size:16px}.rp-maker-body p{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.rp-maker-dialog .rp-dialog-footer .rp-button,.rp-maker-dialog .rp-discard-prompt .rp-button{min-height:44px;min-width:44px}.rp-maker-dialog [data-rp-maker-status]{color:#79502d}
@media print{[data-rp-maker],.rp-maker-dialog{display:none!important}}

/* Keep the label input on the same sheet while its native actions remain reachable. */
.rp-maker-dialog{overflow:hidden}.rp-maker-dialog>form{display:flex;flex-direction:column;max-height:calc(90dvh - 2px);min-height:0}.rp-maker-dialog .rp-dialog-heading,.rp-maker-dialog .rp-dialog-footer{flex:none}.rp-maker-dialog .rp-maker-body{min-height:0;overflow:auto}.rp-maker-dialog:has(.rp-discard-prompt:not([hidden])){overflow:auto}.rp-maker-dialog>form:has(.rp-discard-prompt:not([hidden])){display:block;max-height:none}.rp-maker-dialog:has(.rp-discard-prompt:not([hidden])) .rp-maker-body{overflow:visible}

/* The credit shares the card without squeezing the original recipe name. */
.rp-recipe-card:has(>[data-rp-maker]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.rp-recipe-card:has(>[data-rp-maker])>div{grid-column:1/-1;min-width:0}.rp-recipe-card:has(>[data-rp-maker])>.rp-button{min-width:0;min-height:44px;white-space:normal;overflow-wrap:anywhere}
