.keyboard-help-overlay{position:fixed;z-index:30;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:rgba(20,20,18,.26)}.keyboard-help-modal{width:min(650px,100%);max-height:min(720px,calc(100vh - 40px));overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 18px 50px #00000029}.keyboard-help-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.keyboard-help-header h2{font-size:16px;letter-spacing:-.02em}.keyboard-help-close{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;background:transparent;color:var(--muted)}.keyboard-help-close:hover{background:var(--surface-hover)}.keyboard-help-content{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;padding:20px}.category-title{margin-bottom:8px;color:var(--muted);font-size:11px;font-weight:650}.shortcuts-list{display:grid;gap:7px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#50504b;font-size:12px}.shortcut-keys{display:flex;align-items:center;gap:3px}.key{padding:2px 5px;border:1px solid var(--line-strong);border-bottom-color:#bababa;border-radius:4px;background:#f8f8f7;color:#4b4b46;font-size:10px;font-family:inherit}.key-separator{color:var(--quiet)}.shortcut-desc{color:var(--muted);text-align:right}.keyboard-help-footer{padding:13px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.keyboard-help-footer kbd{font-family:inherit}.keyboard-help-footer p{margin:0}@media (max-width:560px){.keyboard-help-content{grid-template-columns:1fr}}.skip-link{position:fixed;top:0;left:50%;transform:translate(-50%) translateY(-100%);background:var(--accent);color:#fff;padding:.75rem 1.5rem;text-decoration:none;font-weight:600;font-size:.9rem;border-radius:0 0 7px 7px;box-shadow:0 8px 20px #00000029;z-index:10002;transition:transform .3s ease;border:3px solid transparent}.skip-link:focus{transform:translate(-50%) translateY(0)!important;outline:3px solid rgba(255,255,255,.8);outline-offset:2px}.skip-link:hover{background:var(--accent-hover);transform:translate(-50%) translateY(0)}@media (prefers-contrast: high){.skip-link{background:black;border-color:#fff}.skip-link:focus{outline-color:#fff;outline-width:4px}}.layout{display:flex;height:100vh;overflow:hidden;background:var(--surface)}.sidebar{display:flex;width:286px;flex:0 0 286px;flex-direction:column;height:100vh;overflow:hidden;border-right:1px solid var(--line);background:var(--sidebar)}.brand-lockup{display:flex;align-items:center;gap:10px;min-height:62px;padding:0 20px}.brand-mark{display:grid;width:24px;height:24px;place-items:center;border-radius:6px;background:var(--ink);color:#fff}.brand-lockup strong{font-size:15px;font-weight:690;letter-spacing:-.025em}.sidebar-nav{flex:1;padding:8px 10px 24px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:transparent transparent}.sidebar-nav:hover{scrollbar-color:#c8c8c4 transparent}.nav-group{margin-top:14px}.nav-label{padding:0 10px 6px;color:var(--quiet);font-size:11px;font-weight:620}.nav-group-toggle{display:flex;width:100%;min-height:30px;align-items:center;justify-content:space-between;padding:0 10px;border-radius:7px;background:transparent;text-align:left}.nav-group-toggle:hover{background:rgba(0,0,0,.04);color:var(--ink)}.nav-group-toggle svg{transition:transform .16s ease}.nav-group-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.nav-item{display:flex;align-items:center;gap:9px;min-height:34px;padding:0 10px;border-radius:8px;color:#5f605d}.nav-item:hover{background:rgba(0,0,0,.045);color:var(--ink)}.nav-item.active{background:#e5e5e3;color:#20211f;font-weight:650}.nav-icon{display:grid;width:18px;flex:0 0 18px;place-items:center;color:#777875}.nav-item.active .nav-icon{color:var(--ink)}.nav-copy{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:8px}.nav-text{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.nav-copy small{color:var(--quiet);font-size:11px}.main-content{min-width:0;flex:1;height:100vh;overflow:auto;background:var(--surface)}.content-wrapper{min-height:100%}.workspace-bar{position:sticky;z-index:2;top:0;display:flex;height:62px;align-items:center;padding:0 28px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.workspace-title{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:14px;font-weight:650}.main-content::-webkit-scrollbar{width:10px}.main-content::-webkit-scrollbar-thumb{border:3px solid var(--surface);border-radius:99px;background:#cacac6}.mobile-menu-btn,.mobile-overlay,.mobile-close-btn{display:none}@media (max-width:820px){.sidebar{position:fixed;z-index:6;width:min(286px,86vw);transform:translate(-102%);transition:transform .18s ease;box-shadow:16px 0 40px #0000001f}.sidebar.open{transform:translate(0)}.mobile-menu-btn{position:fixed;z-index:5;top:13px;left:14px;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.hamburger-icon{display:grid;gap:3px}.hamburger-icon span{width:15px;height:1.5px;background:var(--ink)}.mobile-overlay{position:fixed;z-index:5;top:0;right:0;bottom:0;left:0;display:block;background:rgba(25,25,24,.22)}.mobile-close-btn{position:absolute;top:13px;right:12px;display:block;width:36px;height:36px;border-radius:8px;background:transparent}.workspace-bar{padding-left:64px}.brand-lockup{padding-right:54px}}.toast-container{position:fixed;z-index:20;right:20px;bottom:20px;display:grid;width:min(360px,calc(100vw - 40px));gap:8px}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;box-shadow:0 8px 20px #00000014;opacity:0;transform:translateY(8px);transition:.16s ease}.toast-visible{opacity:1;transform:translateY(0)}.toast-leaving{opacity:0;transform:translateY(8px)}.toast-content{display:flex;min-width:0;align-items:center;gap:8px}.toast-icon{display:grid;flex:0 0 auto;place-items:center;color:#5b5b55}.toast-message{color:#40403c;font-size:13px}.toast-success .toast-icon{color:#277a56}.toast-error .toast-icon{color:#b54242}.toast-warning .toast-icon{color:#9a6b1c}.toast-close{display:grid;width:25px;height:25px;flex:0 0 auto;place-items:center;border-radius:5px;background:transparent;color:#777770}.toast-close:hover{background:var(--surface-hover);color:var(--ink)}.loading-overlay{position:fixed;z-index:25;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.loading-backdrop{background:rgba(25,25,23,.2)}.loading-content{width:min(280px,calc(100vw - 40px));padding:20px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 15px 35px #0000001f;text-align:center}.loading-spinner{display:inline-grid;place-items:center;width:28px;height:28px;margin-bottom:10px;border:2px solid #d4d4cf;border-top-color:#242422;border-radius:50%;animation:spin .8s linear infinite}.spinner-ring{display:none}.loading-message{color:#4c4c47;font-size:13px}.loading-progress{display:flex;align-items:center;gap:8px;margin-top:13px}.progress-bar{height:5px;flex:1;overflow:hidden;border-radius:99px;background:#e8e8e5}.progress-fill{height:100%;border-radius:inherit;background:#252523}.progress-text{color:var(--muted);font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}.calendar-page{width:100%;padding:24px 40px}.calendar-workspace{display:grid;width:100%;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.calendar-panel{display:grid;width:min(100%,780px);height:520px;max-height:calc(100dvh - 110px);min-height:440px;align-self:start;grid-template-rows:88px minmax(0,1fr) 22px;justify-self:center;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 12px 32px #1919170f}.calendar-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:#d74444;color:#fff}.calendar-summary>div{display:grid;gap:2px}.calendar-summary strong{font-size:20px;font-weight:620;letter-spacing:-.035em}.calendar-summary span{color:#ffffffc2;font-size:10px}.calendar-lunar-summary{justify-items:end;text-align:right}.calendar-lunar-summary strong{font-family:Songti SC,STSong,serif;font-size:19px;letter-spacing:.04em}.calendar-main{display:grid;min-width:0;min-height:0;padding:10px 18px 4px;grid-template-rows:30px minmax(0,1fr)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{align-items:center}.calendar-weekdays span{color:var(--muted);font-size:11px;font-weight:560;text-align:center}.calendar-weekdays .is-weekend{color:#d74444}.calendar-grid{min-height:0;gap:2px 4px}.calendar-grid.has-5-weeks{grid-template-rows:repeat(5,minmax(0,1fr))}.calendar-grid.has-6-weeks{grid-template-rows:repeat(6,minmax(0,1fr))}.calendar-day{position:relative;display:flex;min-width:0;min-height:0;align-items:center;justify-content:center;flex-direction:column;gap:1px;border-radius:10px;background:transparent;color:#30312f;transition:background-color .12s ease,transform .12s ease}.calendar-day:hover{background:var(--surface-subtle)}.calendar-day:active{transform:scale(.97)}.calendar-solar-day{font-size:22px;font-weight:520;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.calendar-day small{width:calc(100% - 8px);overflow:hidden;color:var(--muted);font-size:9px;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.calendar-day em{position:absolute;top:5px;right:6px;display:grid;width:18px;height:18px;place-items:center;border:1px solid #acd8bb;border-radius:6px;background:#e7f6ec;color:#247248;font-size:9px;font-style:normal;font-weight:750}.calendar-day.is-workday em{border-color:#efc49b;background:#fff0df;color:#9a501c}.calendar-day.is-outside{color:#c7c8c5}.calendar-day.is-outside small{color:#d0d1ce}.calendar-day.is-outside.is-weekend .calendar-solar-day{color:#e7b8b8}.calendar-day.is-weekend:not(.is-outside) .calendar-solar-day{color:#d74444}.calendar-day.has-festival:not(.is-selected) small{color:#d52d50;font-weight:620}.calendar-day.is-holiday:not(.is-selected){background:#f3faf6}.calendar-day.is-holiday:not(.is-selected) small{color:#247248;font-weight:650}.calendar-day.is-workday:not(.is-selected){background:#fff8f0}.calendar-day.is-workday:not(.is-selected) small{color:#9a501c;font-weight:650}.calendar-day.is-today:not(.is-selected){background:#fff9f9;box-shadow:inset 0 0 0 1.5px #d74444}.calendar-day.is-today:not(.is-selected):before{position:absolute;top:5px;left:6px;display:grid;width:18px;height:18px;place-items:center;border-radius:6px;background:#d74444;color:#fff;content:"今";font-size:9px;font-weight:700}.calendar-day.is-selected{z-index:1;background:#d74444;color:#fff;box-shadow:0 5px 14px #d7444438}.calendar-day.is-selected .calendar-solar-day,.calendar-day.is-selected.is-weekend .calendar-solar-day{color:#fff}.calendar-day.is-selected small{color:#ffffffd1}.calendar-day.is-selected em{background:rgba(255,255,255,.18);color:#fff}.calendar-data-note{align-self:center;padding:0 22px;color:var(--quiet);font-size:8px;text-align:right}.calendar-config-card{display:flex;align-self:start;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 34px #19191714}.calendar-config-heading{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line)}.calendar-config-heading>span{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;background:#f9e8e8;color:#c83e3e}.calendar-config-heading>div{display:grid;gap:1px}.calendar-config-heading strong{font-size:12px}.calendar-config-heading small{color:var(--quiet);font-size:9px}.calendar-month-stepper{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:6px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface-subtle)}.calendar-month-stepper>strong{font-size:12px;font-weight:650;text-align:center;font-variant-numeric:tabular-nums}.calendar-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.calendar-select-field{display:grid;gap:6px}.calendar-select-field span{color:var(--muted);font-size:10px;font-weight:620}.calendar-select-field select{width:100%;min-height:36px;padding:0 32px 0 10px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371726f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:12px}.calendar-icon-button{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;background:transparent;color:var(--muted)}.calendar-icon-button:hover{background:var(--surface-hover);color:var(--ink)}.calendar-today-button{min-height:34px;padding:0 10px;border-radius:7px;background:var(--accent);color:#fff;font-size:11px;font-weight:620}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:820px){.calendar-page{padding:18px}.calendar-workspace{grid-template-columns:1fr}.calendar-config-card{grid-row:1}.calendar-panel{width:100%;height:540px;max-height:none;min-height:0;grid-template-rows:78px minmax(0,1fr) 20px}.calendar-summary{padding:0 18px}.calendar-summary strong{font-size:17px}.calendar-lunar-summary strong{font-size:16px}.calendar-main{padding:8px 8px 2px}.calendar-grid{gap:2px}.calendar-solar-day{font-size:18px}.calendar-day{border-radius:8px}.calendar-day em{top:3px;right:3px}}.tool-page{width:100%;padding:24px 40px}.tool-body,.tool-canvas{width:100%;min-width:0}.tool-header,.tool-heading-row,.tool-description{display:none}.generator-workspace{display:grid;width:100%;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.generator-brief,.generator-delivery{min-width:0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft)}.generator-brief{grid-column:2;align-self:start;border-radius:18px;box-shadow:0 12px 34px #19191714}.generator-fields{display:grid;gap:12px}.generator-field{display:grid;gap:7px}.generator-field>span,.generator-facts dt,.delivery-metrics dt{color:var(--muted);font-size:11px;font-weight:620}.generator-field select,.field-with-unit{min-height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.generator-field select{width:100%;padding:0 11px}.field-with-unit{display:flex;align-items:center}.field-with-unit input{width:100%;min-width:0;height:38px;padding:0 11px;border:0;outline:0}.field-with-unit em{padding-right:11px;color:var(--muted);font-size:12px;font-style:normal}.generator-facts,.delivery-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.generator-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.generator-facts div,.delivery-metrics div{min-width:0;padding-top:9px;border-top:1px solid var(--line)}.generator-facts dd,.delivery-metrics dd{margin-top:3px;overflow:hidden;color:var(--ink);font-size:11px;font-weight:620;text-overflow:ellipsis;white-space:nowrap}.generator-actions{display:flex;gap:8px;margin-top:14px}.generator-submit,.generator-reset{min-height:36px;padding:0 13px;border-radius:8px;font-size:12px;font-weight:650}.generator-submit{background:var(--accent);color:#fff}.generator-submit:hover:not(:disabled){background:var(--accent-hover)}.generator-reset{border:1px solid var(--line-strong);background:var(--surface);color:var(--muted)}.generator-error{display:flex;align-items:center;gap:7px;margin-top:12px;color:var(--danger);font-size:12px}.generator-delivery{display:flex;width:min(100%,720px);min-height:360px;max-height:calc(100dvh - 110px);align-self:start;grid-row:1;grid-column:1;flex-direction:column;justify-self:center}.generator-delivery>header{display:none}.delivery-placeholder{display:grid;min-height:0;flex:1;place-content:center;color:var(--quiet);text-align:center}.delivery-placeholder i,.delivery-placeholder p{display:none}.delivery-placeholder strong{font-size:12px;font-weight:560}.delivery-media{display:grid;min-height:0;flex:1;place-items:center;overflow:hidden;border-radius:8px;background:var(--surface-subtle)}.delivery-media img,.delivery-media video{width:100%;height:100%;object-fit:contain}.delivery-download{align-self:flex-start;margin-top:12px}.file-delivery{display:grid;min-height:0;flex:1;place-content:center;justify-items:center;gap:7px;border-radius:8px;background:var(--surface-subtle);color:var(--muted)}.generation-canvas{display:none}.data-studio{display:grid;width:100%;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.data-schema,.data-output{min-width:0;min-height:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft)}.data-schema{grid-column:2;align-self:start;border-radius:18px;box-shadow:0 12px 34px #19191714}.data-output{display:flex;width:min(100%,720px);min-height:360px;max-height:calc(100dvh - 110px);grid-row:1;grid-column:1;flex-direction:column;justify-self:center}.studio-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.studio-heading span,.studio-heading p{display:none}.studio-heading h2{font-size:13px;font-weight:650}.studio-heading>strong{color:var(--muted);font-size:11px;font-weight:600}.data-field-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.data-field-toggle{display:flex;min-width:0;min-height:34px;align-items:center;gap:7px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;cursor:pointer}.data-field-toggle.is-selected{color:var(--ink);font-weight:620}.data-field-toggle input{accent-color:var(--accent)}.data-type-icon{display:grid;place-items:center;color:var(--muted)}.data-runbar{display:flex;align-items:center;justify-content:space-between;padding-top:12px}.data-link{padding:5px;background:transparent;color:var(--muted);font-size:11px}.data-run-controls,.data-run-controls label,.data-export{display:flex;align-items:center;gap:7px}.data-run-controls label{color:var(--muted);font-size:11px}.data-run-controls input{width:56px;height:32px;padding:0 7px;text-align:center}.data-run-button,.data-export button{min-height:32px;padding:0 10px;border-radius:7px;background:var(--accent);color:#fff;font-size:11px;font-weight:650}.data-export button{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.data-table-wrap{min-height:0;flex:1;overflow:auto;border:1px solid var(--line);border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:11px}.data-table th{position:sticky;z-index:1;top:0;padding:8px;background:var(--surface-subtle);color:var(--muted);text-align:left}.data-table td{padding:0;border-top:1px solid var(--line)}.row-index{width:34px;padding:0 8px!important;color:var(--quiet)}.cell-copy{display:block;width:100%;padding:8px;overflow:hidden;background:transparent;color:var(--ink);text-align:left;text-overflow:ellipsis;white-space:nowrap}.cell-copy:hover{background:var(--surface-subtle)}.cell-copy em{margin-left:5px;color:#27805c;font-size:9px;font-style:normal}.data-empty-output{display:grid;min-height:0;flex:1;place-content:center;color:var(--quiet);text-align:center}.data-empty-output span{display:none}.data-empty-output p{font-size:11px}.text-studio{display:grid;width:100%;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.text-result-panel,.text-config-card{min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);background:var(--surface)}.text-result-panel{display:grid;width:min(100%,720px);min-height:360px;max-height:calc(100dvh - 110px);align-self:start;grid-template-rows:auto minmax(0,1fr);justify-self:center;border-radius:12px;box-shadow:var(--shadow-soft)}.text-config-card{display:flex;align-self:start;flex-direction:column;gap:14px;padding:18px;border-radius:18px;box-shadow:0 12px 34px #19191714}.text-editor-pane,.text-generation-pane{min-width:0;min-height:0}.text-editor-pane{display:block}.editor-toolbar,.generator-pane-heading{display:none}.input-container{position:relative;min-width:0;min-height:0}.text-input,.result-text{width:100%;color:var(--ink);line-height:1.7;resize:none}.text-editor-pane .text-input{width:100%;height:clamp(180px,28vh,270px);min-height:0;padding:12px 12px 48px}.input-actions{position:absolute;right:10px;bottom:10px;display:flex;gap:6px}.action-btn{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted);font-size:11px}.clear-btn{color:#9b4545}.text-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--surface-subtle)}.text-metrics .stat-item{display:flex;min-height:68px;align-items:center;justify-content:center;flex-direction:column;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stat-value{order:2;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}.stat-label{color:var(--muted);font-size:10px}.text-generation-pane{display:flex;flex-direction:column}.text-generation-controls{padding-top:14px;border-top:1px solid var(--line)}.controls-row{display:grid;gap:12px}.type-checkboxes{display:flex;flex-wrap:wrap;gap:6px}.checkbox-item{display:flex;min-height:30px;align-items:center;gap:5px;padding:0 8px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:11px}.length-control,.length-input{display:flex;align-items:center;gap:6px}.length-control{justify-content:flex-end}.length-field{width:58px;height:30px;padding:0 6px;text-align:center}.unit-text{color:var(--muted);font-size:10px}.generate-btn-small{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;background:var(--accent);color:#fff}.result-container{position:relative;display:flex;min-height:0;flex:1;flex-direction:column;overflow:hidden}.result-text{min-height:0;flex:1;padding:12px 12px 44px;border:0}.result-actions{position:absolute;right:8px;bottom:8px;display:flex;gap:6px}.writer-result-empty{display:grid;min-height:0;flex:1;place-content:center;color:var(--quiet);text-align:center}.writer-result-empty span{font-size:11px;font-weight:620}.writer-result-empty p{display:none}@media (max-width:820px){.tool-page{padding:18px}.generator-workspace,.data-studio,.text-studio{grid-template-columns:1fr}.generator-brief,.data-schema,.text-config-card{width:100%;grid-row:1;grid-column:1}.generator-delivery,.data-output,.text-result-panel{width:100%;grid-row:2;grid-column:1}.generator-delivery{min-height:330px;max-height:none}.data-output{min-height:360px;max-height:none}.delivery-metrics,.generator-facts{grid-template-columns:repeat(2,1fr)}.text-result-panel{min-height:420px;max-height:none}.text-metrics{grid-template-columns:repeat(2,1fr)}}.number-input-wrapper{display:grid;gap:6px}.number-input-label{color:var(--muted);font-size:12px}.number-input-container{display:flex;align-items:center;min-height:36px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface)}.number-input-container:focus-within{border-color:var(--focus);outline:2px solid color-mix(in srgb,var(--focus) 22%,transparent)}.number-input{width:100%;min-width:0;height:34px;padding:0 10px;border:0;outline:0;background:transparent}.number-input-unit{padding-right:10px;color:var(--muted);font-size:12px}.number-input-hint{color:var(--quiet);font-size:11px}.aes-workspace{display:grid;width:100%;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.aes-result-panel{display:flex;width:min(100%,820px);align-self:start;flex-direction:column;justify-self:center;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft)}.aes-config-card{display:flex;min-height:0;align-self:start;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 34px #19191714}.aes-control-stack{display:grid;gap:14px}.aes-mode-tabs{display:grid;grid-template-columns:repeat(2,1fr);padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface-subtle)}.aes-mode-tabs button{min-height:32px;border-radius:7px;background:transparent;color:var(--muted);font-size:11px}.aes-mode-tabs button.is-active{background:var(--accent);color:#fff;font-weight:650;box-shadow:0 1px 3px #0000001f}.aes-field{display:grid;min-width:0;min-height:0;gap:6px}.aes-field>span{color:var(--muted);font-size:10px;font-weight:620}.aes-password-input{display:flex;height:36px;align-items:center;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.aes-password-input:focus-within{border-color:var(--focus);outline:2px solid color-mix(in srgb,var(--focus) 20%,transparent)}.aes-password-input input{min-width:0;height:34px;flex:1;padding:0 10px;border:0;outline:0}.aes-password-input button{display:grid;width:38px;height:34px;place-items:center;background:transparent;color:var(--muted)}.aes-key-field small{color:var(--quiet);font-size:9px}.aes-key-field small.is-valid{color:#277a56}.aes-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.aes-text-field{grid-template-rows:auto minmax(0,1fr);gap:8px;padding:14px 16px 16px}.aes-text-field+.aes-text-field{border-left:1px solid var(--line)}.aes-text-field>span{color:var(--ink);font-size:11px;font-weight:650}.aes-text-field textarea{width:100%;height:clamp(220px,34vh,310px);min-height:180px;padding:11px;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.7;resize:vertical}.aes-result-field textarea{background:var(--surface-subtle)}.aes-actions{display:flex;align-items:center;gap:7px}.aes-actions{padding-top:2px}.aes-actions button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:5px;padding:0 12px;border-radius:7px;font-size:11px;font-weight:650}.aes-primary{min-width:88px;flex:1;background:var(--accent);color:#fff}.aes-primary:hover{background:var(--accent-hover)}.aes-clear{background:transparent;color:var(--muted)}.aes-clear:hover:not(:disabled){background:var(--surface-hover);color:var(--ink)}.aes-warning{padding-top:12px;border-top:1px solid var(--line);color:#a36a24;font-size:10px}@media (max-width:1050px){.aes-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:16px}}@media (max-width:820px){.aes-workspace{grid-template-columns:1fr}.aes-config-card{grid-row:1;width:100%}.aes-result-panel{grid-row:2;width:100%}.aes-text-grid{grid-template-columns:1fr}.aes-text-field+.aes-text-field{border-top:1px solid var(--line);border-left:0}.aes-text-field textarea{height:190px}}.app{min-height:100vh;background:var(--canvas)}:root{--canvas: #f5f5f4;--sidebar: #f3f3f2;--surface: #ffffff;--surface-subtle: #f6f6f5;--surface-hover: #eeeeec;--line: #e5e5e2;--line-strong: #d5d5d1;--ink: #242523;--muted: #71726f;--quiet: #a0a19d;--accent: #242523;--accent-hover: #0d0e0d;--focus: #4385f5;--danger: #b84242;--shadow-soft: 0 8px 24px rgba(25,25,23,.035)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{min-width:320px;background:var(--canvas);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{border:0;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}input,select,textarea{border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:2px solid color-mix(in srgb,var(--focus) 22%,transparent);outline-offset:0}*:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{background:#d8e9ff}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
