@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg: #0f0b2e;--bg-gradient: linear-gradient(135deg, #1a1145 0%, #0f0b2e 30%, #0a1628 60%, #0d2137 100%);--surface: rgba(255, 255, 255, .08);--surface-hover: rgba(255, 255, 255, .12);--surface-muted: rgba(255, 255, 255, .04);--surface-subtle: rgba(255, 255, 255, .06);--glass: rgba(255, 255, 255, .1);--glass-strong: rgba(255, 255, 255, .14);--glass-border: rgba(255, 255, 255, .15);--glass-border-strong: rgba(255, 255, 255, .22);--blur: 20px;--text: #f1f5f9;--text-muted: #94a3b8;--text-soft: #64748b;--primary: #818cf8;--primary-hover: #a5b4fc;--primary-soft: rgba(129, 140, 248, .15);--success: #34d399;--success-soft: rgba(52, 211, 153, .12);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, .12);--danger: #f87171;--danger-soft: rgba(248, 113, 113, .12);--focus-ring: rgba(129, 140, 248, .4);--radius: 16px;--radius-sm: 12px;--radius-xs: 8px;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{background:var(--bg);background-image:var(--bg-gradient);margin:0;min-height:100dvh;min-width:320px;overflow-x:hidden;position:relative}body:before,body:after{border-radius:50%;content:"";filter:blur(80px);pointer-events:none;position:fixed;z-index:0}body:before{background:radial-gradient(circle,rgba(129,140,248,.2) 0%,transparent 70%);height:600px;left:-10%;top:-5%;width:600px}body:after{background:radial-gradient(circle,rgba(56,189,248,.12) 0%,transparent 70%);bottom:10%;height:500px;right:-8%;width:500px}#root{position:relative;z-index:1}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}.app-shell{margin:0 auto;max-width:1120px;min-height:100dvh;padding:36px 24px 116px}.page-header{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:28px}.eyebrow{background:linear-gradient(90deg,var(--primary),#38bdf8);background-clip:text;-webkit-background-clip:text;color:transparent;font-size:12px;font-weight:700;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{color:#fff;font-size:36px;font-weight:760;line-height:1.12;margin-bottom:0}h2{color:#fff;font-size:24px;font-weight:720;line-height:1.24;margin-bottom:8px}h3{color:var(--text);font-size:16px;font-weight:680;line-height:1.35;margin-bottom:0}.save-state{align-items:center;background:var(--success-soft);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(52,211,153,.2);border-radius:999px;color:var(--success);display:inline-flex;font-size:13px;font-weight:650;min-height:34px;padding:7px 12px;white-space:nowrap}.stepper{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-border);border-radius:var(--radius);display:grid;gap:0;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:18px;overflow:hidden}.stepper-item{align-items:center;background:transparent;border:0;color:var(--text-muted);display:flex;font-size:13px;font-weight:650;gap:8px;min-height:50px;padding:10px 12px;position:relative;transition:background-color .2s ease,color .2s ease}.stepper-item+.stepper-item{border-left:1px solid var(--glass-border)}.stepper-item:after{background:transparent;bottom:0;content:"";height:2px;left:12px;position:absolute;right:12px;transition:background-color .2s ease}.stepper-item.is-active{background:#ffffff0f;color:var(--text)}.stepper-item.is-active:after{background:var(--primary)}.stepper-index{align-items:center;background:var(--surface);border-radius:999px;color:var(--text-muted);display:inline-flex;flex:0 0 26px;font-size:12px;font-weight:760;height:26px;justify-content:center;transition:background-color .2s ease,color .2s ease}.is-active .stepper-index{background:var(--primary-soft);color:var(--primary)}.panel{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:0 8px 32px #0003,inset 0 1px #ffffff0f;padding:30px}.section-heading{border-bottom:1px solid var(--glass-border);margin-bottom:24px;padding-bottom:20px}.section-heading p{color:var(--text-muted);line-height:1.65;margin-bottom:0;max-width:760px}.step-count{color:var(--primary);display:block;font-size:13px;font-weight:760;margin-bottom:8px}.form-grid,.two-column{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.stack{display:grid;gap:18px}.field{display:grid;gap:7px}.field-label{color:var(--text);font-size:14px;font-weight:700}.required,.field-error{color:var(--danger)}.text-input,.text-area{background:#ffffff0f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text);min-height:46px;padding:11px 12px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;width:100%}.text-input::placeholder,.text-area::placeholder{color:var(--text-soft)}.text-input:hover,.text-area:hover{background:#ffffff17;border-color:var(--glass-border-strong)}.text-area{line-height:1.55;min-height:112px;resize:vertical}.text-input:focus,.text-area:focus{background:#ffffff1a;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring);outline:0}select.text-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}select.text-input option{background:#1e293b;color:var(--text)}.metrics-row{align-items:start;display:grid;gap:18px;grid-template-columns:1fr 1fr}.time-input-row{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 84px}.efficiency-input-row{align-items:center;display:flex;gap:10px}.efficiency-input-row .quick-tag-row{flex-shrink:0}.efficiency-input-row .text-input{max-width:88px;min-width:0}.input-suffix{color:var(--text-muted);flex-shrink:0;font-size:14px;font-weight:650}.field-hint,.field-error,.empty-text{font-size:13px;line-height:1.45}.field-hint,.empty-text{color:var(--text-muted)}.empty-text{background:var(--surface-subtle);border:1px dashed var(--glass-border-strong);border-radius:var(--radius-xs);margin:0;padding:12px 14px}@media(max-width:820px){.app-shell{padding:22px 14px 158px}.page-header{align-items:flex-start;flex-direction:column}h1{font-size:28px}.stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.stepper-item:nth-child(odd){border-left:0}.stepper-item:nth-child(n+3){border-top:1px solid var(--glass-border)}.panel{padding:20px}.form-grid,.two-column,.metrics-row,.review-summary,.review-list{grid-template-columns:1fr}.review-summary div+div,.review-item:nth-child(2n){border-left:0}.review-summary div+div,.review-item:nth-child(n+2){border-top:1px solid var(--glass-border)}.action-bar{bottom:12px;flex-wrap:wrap;left:14px;right:14px}.action-spacer{display:none}.action-bar button{flex:1 1 calc(50% - 10px)}.submit-state{flex:1 1 100%}}.hint-card,.warning-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:0;border-left:3px solid;border-radius:var(--radius-sm);line-height:1.6;margin:0;padding:12px 14px}.hint-card{background:var(--primary-soft);border-left-color:var(--primary);color:#c7d2fe}.warning-card{background:var(--warning-soft);border-left-color:var(--warning);color:#fde68a}.computed-text{background:var(--surface-subtle);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-muted);line-height:1.55;margin:0;padding:12px 14px}.chip-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(136px,1fr))}.chip{align-items:center;background:var(--surface);border:1px solid var(--glass-border);border-radius:999px;color:var(--text-muted);display:inline-flex;gap:7px;min-height:38px;padding:7px 11px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.chip:hover{background:var(--surface-hover);border-color:#818cf84d}.chip.is-selected{background:var(--primary-soft);border-color:#818cf866;color:var(--primary-hover)}.quick-tag-row,.selected-tool-row{display:flex;flex-wrap:wrap;gap:8px}.quick-tag,.selected-tool{align-items:center;background:var(--surface);border:1px solid var(--glass-border);border-radius:999px;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:13px;font-weight:650;min-height:34px;padding:6px 11px;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .16s ease}.quick-tag:hover,.selected-tool:hover{background:var(--primary-soft);border-color:#818cf84d;color:var(--primary-hover)}.quick-tag.is-selected{background:var(--primary);border-color:var(--primary);color:#fff}.quick-tag.is-selected:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}.quick-tag:active,.selected-tool:active{transform:scale(.97)}.selected-tool{background:var(--primary-soft);border-color:#818cf84d;color:var(--primary-hover);gap:6px}.selected-tool span{color:var(--primary);font-weight:760}.star-rating{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-height:46px}.star-button{align-items:center;background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius-xs);color:var(--text-soft);cursor:pointer;display:inline-flex;font-size:22px;height:44px;justify-content:center;line-height:1;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .16s ease;width:44px}.star-button:hover{background:#fbbf241a;border-color:#fbbf244d;color:var(--warning)}.star-button:active{transform:scale(.95)}.star-button.is-active{background:#fbbf241f;border-color:#fbbf2459;color:var(--warning)}.star-button:focus-visible,.quick-tag:focus-visible,.selected-tool:focus-visible,.chip:focus-within{outline:3px solid var(--focus-ring);outline-offset:2px}.star-score{color:var(--text);font-size:14px;font-weight:760;min-width:48px}.tool-picker-card{background:var(--surface-subtle);border:1px solid var(--glass-border);border-radius:var(--radius);display:grid;gap:14px;padding:16px}.tool-category-group{display:grid;gap:10px}.tool-category-group+.tool-category-group{border-top:1px solid var(--glass-border);padding-top:14px}.tool-category-heading h3{color:var(--text);font-size:15px}.custom-tool-row{align-items:center;display:grid;gap:10px;grid-template-columns:64px minmax(0,1fr)}.custom-tool-row span{color:var(--text-muted);font-size:13px;font-weight:700}.custom-tool-add-row{display:flex;gap:8px;margin-top:12px}.custom-tool-add-row .text-input{flex:1}.custom-tool-add-row .secondary-button{flex-shrink:0}.compact-input{min-height:38px;padding-block:8px}.entry-card{background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius);display:grid;gap:16px;padding:18px}.entry-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.primary-button,.secondary-button,.ghost-button{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-weight:720;justify-content:center;min-height:44px;padding:10px 16px;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .16s ease,box-shadow .2s ease}.primary-button{background:linear-gradient(135deg,var(--primary),#6366f1);border:1px solid rgba(129,140,248,.5);box-shadow:0 4px 16px #6366f140;color:#fff}.primary-button:hover{box-shadow:0 6px 24px #6366f159;filter:brightness(1.1)}.secondary-button{background:var(--primary-soft);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(129,140,248,.3);color:var(--primary-hover)}.secondary-button:hover{background:#818cf838;border-color:#818cf866}.ghost-button{background:var(--surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);color:var(--text-muted)}.ghost-button:hover{background:var(--surface-hover);border-color:var(--glass-border-strong);color:var(--text)}.ghost-button.danger{border-color:#f8717133;color:var(--danger)}.ghost-button.danger:hover{background:var(--danger-soft);border-color:#f8717159}.primary-button:active,.secondary-button:active,.ghost-button:active{transform:scale(.97)}.primary-button:focus-visible,.secondary-button:focus-visible,.ghost-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.review-panel{display:grid;gap:16px}.review-summary{background:var(--surface-subtle);border:1px solid var(--glass-border);border-radius:var(--radius);display:grid;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.review-summary div{display:grid;gap:6px;padding:14px}.review-summary div+div{border-left:1px solid var(--glass-border)}.review-summary span{color:var(--text-muted);font-size:13px;font-weight:700}.review-summary strong{color:var(--text);font-size:15px;line-height:1.45}.review-section-grid{display:grid;gap:16px}.review-section{border:1px solid var(--glass-border);border-radius:var(--radius);overflow:hidden}.review-section h3{background:var(--surface-subtle);border-bottom:1px solid var(--glass-border);color:var(--text);font-size:15px;margin:0;padding:12px 16px}.review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.review-item{display:grid;gap:8px;padding:14px 16px}.review-item:nth-child(2n){border-left:1px solid var(--glass-border)}.review-item:nth-child(n+3),.review-item.is-wide{border-top:1px solid var(--glass-border)}.review-item.is-wide{grid-column:1 / -1}.review-item.is-wide:nth-child(2n){border-left:0}.review-item dt{color:var(--text-muted);font-size:13px;font-weight:700}.review-item dd{color:var(--text);line-height:1.6;margin:0;white-space:pre-wrap}.review-item dd.is-empty{color:var(--text-soft)}.action-bar{align-items:center;background:#0f0b2ebf;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--glass-border);border-radius:var(--radius);bottom:18px;box-shadow:0 16px 44px #0000004d;display:flex;gap:10px;left:max(20px,calc((100vw - 1120px)/2 + 24px));padding:10px;position:fixed;right:max(20px,calc((100vw - 1120px)/2 + 24px))}.action-spacer{flex:1}.submit-state{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-xs);display:inline-flex;font-size:13px;font-weight:700;min-height:38px;padding:8px 12px}.submit-state.is-success{background:var(--success-soft);color:var(--success)}.submit-state.is-error{background:var(--danger-soft);color:var(--danger)}.header-status{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.submission-count{color:var(--text-dim);font-size:12px;font-weight:500}.submission-history{border-top:1px solid var(--glass-border);margin-top:16px;padding-top:16px}.submission-history h3{margin-bottom:12px}.submission-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.submission-list li{align-items:center;background:var(--glass);border:1px solid var(--glass-border);border-radius:8px;display:flex;gap:12px;padding:10px 14px}.submission-id{color:var(--primary);font-family:var(--mono);font-size:13px;font-weight:600}.submission-info{color:var(--text);flex:1;font-size:14px}.submission-time{color:var(--text-dim);font-size:12px;white-space:nowrap}
