:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #f5f6fb;--card: #ffffff;--accent: #8b0000;--accent-soft: #fef2ed;--text: #1f1d28;--muted: #6a6a7a;--border: #ececf5;--primary-color: var(--accent);--primary-color-dark: #6a0a0a;--primary-color-soft: var(--accent-soft);--surface: #ffffff;--surface-muted: #f4f4f6;--surface-elevated: #ffffff;--danger: #b42318;--danger-bg: #fef3f2;--info: #5b21b6;--info-bg: #ede9fe;--shadow: 0 8px 32px rgba(31, 29, 40, .06);--shadow-soft: 0 12px 40px rgba(31, 29, 40, .07);--radius-lg: 1.25rem;--radius-md: .75rem;--ease: .16s ease}*{box-sizing:border-box}html{background:var(--bg)}body{position:relative;margin:0;min-width:320px;min-height:100vh;color:var(--text);background:var(--bg);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}#root{min-height:100vh}.layout{max-width:1100px;margin:0 auto;padding:0 1.25rem 2.5rem}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding:1.1rem 0;margin-bottom:1.5rem;border-bottom:1px solid var(--border);background:transparent;color:var(--text)}.topbar-brand{display:flex;flex-direction:column;gap:.2rem}.brand-name{font-size:1.15rem;font-weight:800;letter-spacing:.06em;color:var(--text)}.brand-tagline{margin:0;font-size:.875rem;color:var(--muted);line-height:1.45;max-width:26rem}.page-title,h1,h2,h3{margin:0;color:var(--text)}.page-heading{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.list-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.company-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);overflow:hidden}.company-list-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.65rem .9rem;border-bottom:1px solid var(--border)}.company-list-row:last-child{border-bottom:0}.company-list-name{font-weight:600;color:var(--text);min-width:0}.company-list-hit{flex:1;min-width:0;display:flex;align-items:center;text-decoration:none;color:inherit;margin:-.15rem 0;padding:.15rem 0;border-radius:.35rem;transition:background var(--ease)}.company-list-hit:hover{background:#1f1d280a}.company-list-hit:hover .company-list-name{color:var(--accent);text-decoration:underline}.company-list-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.list-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;align-items:center}.filter-search{flex:1 1 220px;min-width:200px}.filter-select{flex:0 1 260px;min-width:200px;cursor:pointer}.product-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);overflow:hidden}.product-list-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.65rem .9rem;border-bottom:1px solid var(--border)}.product-list-row:last-child{border-bottom:0}.product-list-main{flex:1 1 200px;min-width:0;display:grid;gap:.2rem}.product-list-name{font-weight:600;color:var(--text)}.product-list-type{font-size:.875rem;color:var(--muted)}.product-list-company{font-size:.85rem}.product-list-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;flex-shrink:0}.form-toolbar-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.save-hint{min-width:6.5rem;text-align:right;font-size:.8rem;font-weight:600;color:transparent;transition:color var(--ease)}.save-hint--idle{color:transparent}.save-hint--saving{color:var(--muted)}.save-hint--saved{color:#166534;background:#dcfce7;padding:.2rem .55rem;border-radius:999px;text-align:center}.save-hint--error{color:var(--danger)}.eyebrow{margin:0 0 .35rem;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.nav{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center}.nav-link{padding:.5rem .85rem;border-radius:var(--radius-md);color:var(--muted);font-weight:600;font-size:.875rem;border:1px solid transparent;background:transparent;transition:color var(--ease),background var(--ease),border-color var(--ease)}.nav-link:hover{color:var(--text);background:var(--surface-muted)}.nav-link-active{color:var(--accent);background:var(--accent-soft);border-color:#8b000026}.content{display:grid;gap:1.5rem}.section-card,.detail-card{padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow);transition:border-color var(--ease)}.section-card:hover,.detail-card:hover{border-color:#e0e0ea}.section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.section-subtitle{margin:.55rem 0 0;max-width:42rem;color:var(--muted)}.actions,.form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1rem;border:1px solid var(--primary-color);border-radius:var(--radius-md);background:var(--primary-color);color:#fff;font-weight:600;font-size:.9rem;letter-spacing:.01em;cursor:pointer;box-shadow:none;transition:background var(--ease),border-color var(--ease),opacity var(--ease)}.button:hover{background:var(--primary-color-dark);border-color:var(--primary-color-dark)}.button:active{opacity:.92}.button:disabled{opacity:.55;cursor:not-allowed}.button-sm{padding:.38rem .65rem;font-size:.8rem;border-radius:.5rem}.button-secondary{background:var(--surface-muted);border-color:var(--border);color:var(--text)}.button-secondary:hover{background:#eaeaf0;border-color:#dcdce3}.button-danger{background:var(--danger);border-color:var(--danger);color:#fff}.button-danger:hover{background:#912018;border-color:#912018}.button-icon{min-width:2.75rem;padding-inline:.75rem}.table-wrap{overflow-x:auto}.table{width:100%;min-width:760px;border-collapse:collapse}.table th,.table td{padding:.9rem .75rem;border-bottom:1px solid var(--border);vertical-align:top;text-align:left}.table th{color:var(--primary-color);font-size:.9rem;font-weight:700}.table tbody tr{transition:transform var(--ease),background-color var(--ease)}.table tbody tr:hover{background:#1f1d2809}.text-link{color:var(--primary-color);font-weight:600;transition:color var(--ease),opacity var(--ease)}.text-link:hover{text-decoration:underline}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-group,.stack{display:grid;gap:.5rem}.form-group-full{grid-column:1 / -1}.form-editor-section{display:grid;gap:.75rem}.form-editor-section-title-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem 1rem}.form-editor-section-title-row .form-editor-section-title{margin:0;flex:1 1 auto;min-width:8rem}.form-editor-section-page-break{display:flex;align-items:flex-start;gap:.45rem;flex:0 1 18rem;font-size:.8125rem;font-weight:500;line-height:1.35;color:var(--text);cursor:pointer}.form-editor-section-page-break input{margin-top:.15rem;flex-shrink:0}.form-editor-section-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.form-editor-section-lead{margin:0;font-size:.875rem;color:var(--muted);line-height:1.45}.form-grid-inset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media(max-width:720px){.form-grid-inset{grid-template-columns:1fr}}.label{font-weight:600;color:var(--primary-color)}.input,.textarea{width:100%;padding:.85rem .95rem;border:1px solid rgba(148,163,184,.26);border-radius:.85rem;background:#ffffffeb;color:var(--text);box-shadow:inset 0 1px #ffffffe6;transition:border-color var(--ease),box-shadow var(--ease),background-color var(--ease)}.input:focus,.textarea:focus{outline:none;border-color:var(--primary-color);background:#fff;box-shadow:0 0 0 3px #8b00001f}input[type=color].input-color{max-width:4.5rem;min-height:2.75rem;padding:.2rem .35rem;cursor:pointer}.field-error{color:var(--danger);font-size:.9rem}.alert{margin:0 0 1rem;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid transparent}.alert-error{background:var(--danger-bg);color:var(--danger);border:1px solid #fecdca}.alert-info{background:var(--info-bg);color:var(--info);border-color:#0b6ab32e}.muted{margin:0;color:var(--muted)}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.parameter-section{gap:1rem}.google-sheets-panel{margin-bottom:1rem}.google-sheets-panel-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem}.google-sheets-panel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.google-connected-badge{font-size:.85rem;font-weight:600;color:var(--muted)}.google-sheets-banner{margin:1rem 0 0}.small-margin{margin:0 0 .6rem}.inline-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em;padding:.1em .35em;border-radius:.35em;background:#004b8714}.google-sheets-disabled{margin-bottom:1rem}.parameter-card-actions-wrap{align-items:flex-start}.parameter-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:1rem}.template-button-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:1rem}.template-button{padding:1rem 1.1rem;border:1px solid var(--border);border-radius:1rem;background:var(--card);color:var(--text);text-align:left;font-weight:600;cursor:pointer;transition:border-color var(--ease),background var(--ease);box-shadow:none}.template-button:hover{border-color:#dcdce3;background:var(--surface-muted)}.template-button-add{border-style:dashed}.parameter-toolbar-group{display:grid;gap:.75rem;padding:1rem;border:1px solid rgba(0,75,135,.1);border-radius:1rem;background:#fff9}.parameter-hint{margin-top:.75rem;max-width:52rem}.import-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.parameter-table-list{display:grid;gap:1rem}.parameter-card{overflow:hidden}.parameter-card-body{display:flex;flex-direction:column;gap:0}.parameter-card-shell{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.parameter-card-footnote-block{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(0,75,135,.1);width:100%}.parameter-card-footnote-label{display:block;margin-bottom:.35rem;font-size:.75rem;font-weight:600;color:var(--muted)}.parameter-card-footnote{display:block;width:100%;box-sizing:border-box;margin:0;padding:.45rem .55rem;font-size:.875rem;line-height:1.4;border:1px solid rgba(0,75,135,.15);border-radius:.35rem;background:#ffffffd9;color:var(--text);resize:vertical;font-family:inherit}.parameter-card-meta{display:flex;gap:.9rem;align-items:flex-start;flex:1;min-width:0}.parameter-card-badge{display:inline-flex;align-items:center;justify-content:center;min-width:3.5rem;padding:.4rem .7rem;border-radius:999px;background:#004b8714;color:var(--primary-color);font-size:.8rem;font-weight:700}.parameter-card-title{margin:0;color:var(--text)}.parameter-card-note{margin:.35rem 0 0;color:var(--muted)}.parameter-card-actions{justify-content:flex-end;flex-shrink:0}.parameter-card-head{display:grid;gap:.75rem;flex:1;min-width:0;width:100%}.parameter-title-input{display:block;width:100%;box-sizing:border-box;font-size:1rem;font-weight:700}.parameter-note{min-height:5.25rem}.parameter-grid{min-width:920px}.spreadsheet-table{border-collapse:separate;border-spacing:0;min-width:980px;background:#fff}.spreadsheet-table th,.spreadsheet-table td{padding:0;border-right:1px solid rgba(148,163,184,.2);border-bottom:1px solid rgba(148,163,184,.2);background:#fff}.spreadsheet-cell{position:relative}.spreadsheet-cell-selected{background:#1a73e81f!important}.spreadsheet-table thead th{position:sticky;top:0;z-index:1;background:#f8fbff}.spreadsheet-corner,.spreadsheet-row-index{width:3rem;min-width:3rem;text-align:center;font-weight:700;color:var(--muted);background:#f4f7fb}.spreadsheet-column-index{min-width:120px;text-align:center;font-weight:700;color:var(--muted);background:#f4f7fb!important}.spreadsheet-col-head{position:relative;padding:0!important}.spreadsheet-col-label{display:block;padding:.5rem .35rem}.spreadsheet-col-resize{position:absolute;top:0;right:0;width:8px;height:100%;padding:0;border:0;cursor:col-resize;background:transparent;z-index:2}.spreadsheet-col-resize:hover{background:#1a73e840}.parameter-column-head{display:grid;grid-template-columns:minmax(140px,1fr) auto;gap:.5rem;align-items:center;padding:.35rem}.spreadsheet-head-cell{background:#f8fbff}.input-compact{min-width:120px;padding:.65rem .75rem}.spreadsheet-input{width:100%;min-width:120px;padding:.75rem .85rem;border:0;border-radius:0;background:transparent;color:var(--text);box-shadow:none;transition:background-color var(--ease),box-shadow var(--ease)}.spreadsheet-input:hover{background:#004b8708}.spreadsheet-input:focus,.spreadsheet-input-active{outline:none;background:#004b8708;box-shadow:inset 0 0 0 2px #1a73e8;transform:none}.spreadsheet-header-input{font-weight:600}.parameter-grid-lock{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:999px;background:#004b8714;color:var(--primary-color);font-size:.82rem;font-weight:700}.parameter-detail-stack{display:grid;gap:1rem;margin-top:1.5rem}.usage-instruction{display:grid;gap:.75rem}.usage-instruction-section{display:grid;gap:.35rem}.usage-instruction-section-follow{margin-top:.35rem}.usage-section-banner{text-align:center;font-weight:800;padding:.75rem .85rem;background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);border-radius:1rem}.usage-section-banner-input{text-align:center;font-weight:800;color:var(--accent);background:var(--accent-soft)}.usage-section-banner-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.65rem 1rem}.usage-section-banner-row .usage-section-banner-input{flex:1 1 14rem;min-width:0}.usage-section-page-break{display:flex;align-items:flex-start;gap:.45rem;flex:0 1 17rem;font-size:.8125rem;font-weight:500;line-height:1.35;color:var(--text);cursor:pointer}.usage-section-page-break input{margin-top:.15rem;flex-shrink:0}.usage-instruction-table th .usage-step-input{width:100%;margin:0;font:inherit;font-weight:800;color:inherit;background:#ffffffa6;border:1px solid rgba(148,163,184,.4);border-radius:.35rem;padding:.35rem .5rem;box-sizing:border-box}.usage-instruction-table .usage-text-edit{display:block;width:100%;min-height:4.25rem;margin:0;resize:vertical;font:inherit;line-height:1.45;box-sizing:border-box}.usage-instruction-step-table+.usage-instruction-step-table{margin-top:.15rem}.usage-instruction-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:1rem;background:#ffffffeb}.usage-instruction-table th,.usage-instruction-table td{border-bottom:1px solid rgba(148,163,184,.18);padding:.75rem .85rem;vertical-align:top}.usage-instruction-table thead tr:first-child th.usage-step-head{border-top-left-radius:calc(1rem - 1px);border-top-right-radius:calc(1rem - 1px);overflow:hidden}.usage-instruction-table tbody tr:last-child th:first-child,.usage-instruction-table tbody tr:last-child td:first-child{border-bottom-left-radius:calc(1rem - 1px)}.usage-instruction-table tbody tr:last-child th:last-child,.usage-instruction-table tbody tr:last-child td:last-child{border-bottom-right-radius:calc(1rem - 1px)}.usage-instruction-table tr:last-child th,.usage-instruction-table tr:last-child td{border-bottom:0}.usage-section{background:var(--accent-soft);color:var(--accent);font-weight:800;text-align:left}.usage-step{background:#1f1d280d;color:var(--text);font-weight:800;text-align:left}.usage-step-letter{padding-left:1.25rem}.usage-img{width:84px;min-width:84px}.usage-img img{display:block;width:56px;height:56px;object-fit:contain;margin:0 auto;opacity:.95}.usage-text{font-size:.95rem;line-height:1.45;color:var(--text)}.usage-note{color:var(--muted);font-style:italic}.usage-hint{margin-top:.25rem}.parameter-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.sheet-page{display:grid;gap:1rem}.sheet-topbar,.sheet-meta-card,.sheet-canvas{padding:1.25rem;border:1px solid var(--border);border-radius:1.25rem;background:linear-gradient(180deg,var(--surface-elevated),var(--surface));box-shadow:var(--shadow)}.sheet-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.sheet-topbar-minimal{justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.sheet-toolbar,.sheet-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.sheet-jss-hint{margin:0;flex:1 1 12rem;font-size:.88rem}.sheet-jss-hint a{color:var(--primary-color)}.jss-parameter-sheet{overflow:auto;max-width:100%}.jss-parameter-sheet .jss_container{max-width:100%}.sheet-standalone{display:flex;flex-direction:column;min-height:100vh;padding:.65rem .85rem .85rem;gap:.65rem;box-sizing:border-box}.sheet-standalone-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0;min-height:2.85rem;padding:.35rem .65rem .35rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.sheet-standalone-title{margin:0;font-size:1rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sheet-standalone-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.sheet-save-notice{font-size:.88rem;color:var(--info)}.sheet-standalone-canvas{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-soft)}.sheet-error-wrap{margin:2rem auto;max-width:32rem;padding:1.5rem}.sheet-meta-card{display:grid;gap:.75rem}.sheet-canvas{overflow:hidden}.spreadsheet-sheet-page{min-width:1400px}.spreadsheet-table-readonly tbody tr:hover{background:transparent}.spreadsheet-value-cell{padding:.75rem .85rem!important;white-space:pre-wrap}.detail-list{display:grid;gap:.85rem;margin:0}.detail-list div{display:grid;gap:.2rem}.detail-list dt{font-size:.9rem;color:var(--muted)}.detail-list dd{margin:0;font-weight:500}.bullet-list{margin:0;padding-left:1.25rem;color:var(--text)}.color-chip{display:inline-block;width:.9rem;height:.9rem;margin-right:.5rem;border:1px solid rgba(15,23,42,.15);border-radius:999px;vertical-align:middle}@media(max-width:760px){.topbar,.section-header{flex-direction:column;align-items:stretch}.topbar{padding-bottom:1rem}.form-grid{grid-template-columns:1fr}.table{min-width:620px}.parameter-grid{min-width:720px}.import-header,.parameter-card-shell,.sheet-topbar{flex-direction:column;align-items:stretch}}
