:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s}:root{--page-padding:16px;--header-height:56px;--radius-lg:16px;--radius-md:10px;--touch-min:44px;--content-max-width:1200px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}@media (width>=768px){:root{--page-padding:24px;--header-height:64px}}@media (width>=1024px){:root{--page-padding:32px}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;min-height:100dvh;overflow-x:hidden}#app{width:100%;min-height:100dvh}@media (width<=767px){input,select,textarea{font-size:16px!important}}@media (hover:hover) and (pointer:fine){.hover-lift:hover{transform:translateY(-1px)}}:root{--color-primary:#2563eb;--color-primary-dark:#1d4ed8;--color-primary-light:#3b82f6;--color-primary-rgb:37, 99, 235;--color-primary-border:#bfdbfe;--color-primary-border-hover:#93c5fd;--color-primary-surface:#eff6ff;--color-primary-surface-soft:#f8fbff;--color-primary-surface-muted:#dbeafe;--color-accent:#0284c7;--color-bg:#f0f2f8;--color-bg-soft:#f8f9fc;--color-surface:#fff;--color-border:#e5e7eb;--color-border-soft:#f0f2f5;--color-text:#1e293b;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-success:#10b981;--color-success-dark:#16a34a;--color-success-bg:#ecfdf5;--color-danger:#ef4444;--color-danger-dark:#b91c1c;--color-danger-bg:#fef2f2;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-info-bg:#eff6ff;--gradient-primary:linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);--gradient-page:linear-gradient(165deg, #eff6ff 0%, #f8fafc 40%, #f0f2f8 100%);--gradient-banner:linear-gradient(145deg, #1d4ed8 0%, #2563eb 50%, #3b82f6 100%);--shadow-sm:0 1px 3px #0f172a0f;--shadow-md:0 4px 16px #0f172a14;--shadow-lg:0 12px 40px #2563eb1f;--shadow-card:0 2px 12px #0f172a0d;--shadow-card-hover:0 8px 28px #2563eb24;--radius-sm:8px;--radius-xl:20px;--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--select-chevron-active:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--select-chevron-disabled:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23cbd5e1' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}body{font-family:var(--font-display);color:var(--color-text);background:var(--color-bg)}.app-page{background:var(--gradient-page);min-height:100dvh}.app-header{z-index:50;-webkit-backdrop-filter:blur(12px);padding-top:var(--safe-top);box-shadow:var(--shadow-sm);background:#ffffffe0;border-bottom:1px solid #e2e8f0cc;position:sticky;top:0}.app-header__inner{max-width:var(--content-max-width);padding:0 var(--page-padding);height:var(--header-height);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.app-header__left{align-items:center;gap:10px;min-width:0;display:flex}.app-header__back{width:var(--touch-min);height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;flex-shrink:0;font-size:18px;transition:background .15s,border-color .15s,transform .15s}.app-header__title{color:var(--color-text);letter-spacing:-.02em;margin:0;font-size:18px;font-weight:700}.app-header__badge{background:var(--color-danger-bg);color:var(--color-danger);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.app-header__action{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;padding:8px 16px;font-size:14px;transition:all .15s}.app-main{max-width:var(--content-max-width);padding:var(--page-padding);padding-bottom:calc(var(--safe-bottom) + var(--page-padding));margin:0 auto}.app-main--wide{max-width:1400px}.app-section{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);min-width:0;max-width:100%;overflow:hidden}.app-section__head{border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.app-section__title{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.app-section__desc{color:var(--color-text-muted);margin:4px 0 0;font-size:13px;font-weight:400}.app-section__body{padding:16px}.app-page--list-fill{flex-direction:column;min-height:100dvh;display:flex}.app-page--list-fill>.app-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.app-page--list-fill .manage-desktop,.app-page--list-fill .manage-mobile-section,.app-page--list-fill .user-manage-main{flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:0;display:flex}.app-page--list-fill .app-section.list-page-fill,.app-page--list-fill .app-section.list-page-fill .app-section__body{flex-direction:column;flex:1;min-height:0;display:flex}.app-page--list-fill .quote-toolbar,.app-page--list-fill .manage-toolbar,.app-page--list-fill .manage-status-bar,.app-page--list-fill .urgent-stat-grid,.app-page--list-fill .app-section__head,.app-page--list-fill .status-tabs-scroll{flex-shrink:0;min-width:0;max-width:100%}.list-page-fill{flex-direction:column;flex:1;gap:16px;min-width:0;max-width:100%;min-height:0;display:flex}.list-page-fill__content{-webkit-overflow-scrolling:touch;flex:1;min-width:0;max-width:100%;min-height:0;padding-bottom:4px;overflow:clip auto}.list-page-pagination{border:1px solid var(--color-primary-surface-muted);border-radius:var(--radius-xl);background:linear-gradient(180deg, #fff 0%, var(--color-primary-surface-soft) 100%);box-shadow:0 1px 3px #0f172a0d, 0 4px 14px rgba(var(--color-primary-rgb), .06);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:14px 18px;display:flex}.list-page-pagination [class*=__info]{color:var(--color-text-muted);font-size:13px;line-height:1.5}.list-page-pagination [class*=__actions]{background:#eff6ffb8;border:1px solid #bfdbfea6;border-radius:999px;align-items:center;gap:8px;padding:4px;display:flex}.list-page-pagination [class*=__page]{text-align:center;min-width:76px;color:var(--color-primary);border:1px solid var(--color-primary-border);font-variant-numeric:tabular-nums;background:#fff;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700;box-shadow:inset 0 1px #ffffffe6}.list-page-pagination .app-btn--ghost.app-btn--sm{min-height:36px;color:var(--color-text-secondary);background:0 0;border:1px solid #0000;border-radius:999px;padding:0 16px;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.list-page-pagination .app-btn--ghost.app-btn--sm:hover:not(:disabled){border-color:var(--color-primary-border-hover);color:var(--color-primary);box-shadow:0 1px 4px rgba(var(--color-primary-rgb), .12);background:#fff}.list-page-pagination .app-btn--ghost.app-btn--sm:disabled{opacity:.42;cursor:not-allowed}@media (width<=640px){.list-page-pagination{border-radius:var(--radius-lg);box-sizing:border-box;flex-direction:column;align-items:stretch;max-width:100%;padding:12px}.list-page-pagination [class*=__info]{font-size:12px}.list-page-pagination [class*=__actions]{flex-wrap:wrap;justify-content:center}}.manage-page .app-main{flex-direction:column;gap:16px;min-height:0;display:flex}.manage-list-query{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;width:100%;min-width:0;display:flex}.manage-list-query__search{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;height:44px;box-shadow:var(--shadow-sm);flex:220px;align-items:center;gap:10px;padding:0 14px;display:flex}.manage-list-query__search:focus-within{border-color:var(--color-primary-border);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12)}.app-brand-mark{background:var(--gradient-primary);color:#fff;letter-spacing:.02em;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:800;display:inline-flex}.app-brand-mark--sm{border-radius:6px;width:24px;height:24px;font-size:10px}.manage-list-query__input{background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.manage-list-query__date{color:var(--color-text-muted);flex-shrink:0;align-items:center;gap:8px;font-size:13px;display:inline-flex}.manage-list-query__date-input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);height:44px;padding:0 10px;font-size:14px}.manage-list-query__date-sep{color:var(--color-text-muted);flex-shrink:0;font-size:13px}.manage-list-query__actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.manage-list-query__actions .app-btn--sm{min-height:44px;padding:0 16px}.manage-toolbar--query{align-items:flex-start}.manage-toolbar--query .manage-list-query{flex:1;min-width:0}.manage-mobile-query{background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);box-sizing:border-box;padding:12px 10px 0}.app-page--list-fill .manage-list-query{flex-shrink:0}@media (width<=767px){.manage-list-query__date,.manage-list-query__date-sep{width:100%}.manage-list-query__date-input{flex:1;min-width:0}}.manage-status-bar{background:#ffffffb3;border-radius:12px;flex-wrap:wrap;flex-shrink:0;gap:8px;padding:4px;display:flex}.manage-status-pill{min-height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.manage-status-pill:hover{border-color:var(--color-border);color:var(--color-text);background:#fff}.manage-status-pill.is-active{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .28);border-color:#0000;font-weight:600}.quote-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;min-width:0;display:grid}.quote-card-grid>*{min-width:0;max-width:100%;height:100%;min-height:0}.quote-card-grid--stack{grid-template-columns:1fr}.quote-card-grid--2col{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-card-grid--mobile{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.quote-card-grid--mobile>*{height:auto}.quote-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;max-width:100%;box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:18px 18px 16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.quote-card--clickable{cursor:pointer}.quote-card--clickable:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.quote-card.is-active{border-color:var(--color-primary-border-hover);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .15), var(--shadow-card-hover)}.quote-card__head{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.quote-card__head-tags{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.quote-card__title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;word-break:break-word;flex:1;margin:0;font-size:16px;font-weight:700;line-height:1.4}.quote-card__sub,.quote-card__meta-line{min-width:0;color:var(--color-text-secondary);overflow-wrap:anywhere;word-break:break-word;align-items:center;gap:6px;margin:0;font-size:13px;line-height:1.5;display:flex}.quote-card__summary{color:var(--color-text-muted);overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:12px;line-height:1.6}.quote-card__reject{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);margin:0;padding:8px 10px;font-size:13px;line-height:1.5}.quote-card__status{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.quote-card__status--success{background:var(--color-success-bg);color:#047857}.quote-card__status--muted{color:#6b7280;background:#f3f4f6}.quote-card__status--warning{background:var(--color-warning-bg);color:#b45309}.quote-card__footer{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:4px;padding-top:14px;display:flex}.quote-card__date-block{flex-direction:column;gap:4px;display:flex}.quote-card__date-label{color:var(--color-text-muted);font-size:11px}.quote-card__date{color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.quote-card__actions{border-top:1px solid var(--color-border-soft);flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;display:flex}@media (width<=1200px){.quote-card-grid:not(.quote-card-grid--stack):not(.quote-card-grid--mobile):not(.quote-card-grid--2col){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.quote-card-grid:not(.quote-card-grid--stack):not(.quote-card-grid--mobile):not(.quote-card-grid--2col){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.app-page{width:100%;max-width:100%;overflow-x:clip}.app-header__inner{min-width:0;max-width:100%}.app-page--list-fill{width:100%;max-width:100%;overflow-x:clip}.app-page--list-fill>.app-main{width:100%;max-width:100%;padding-left:10px;padding-right:10px;overflow-x:clip}.app-page--list-fill .app-section__body{min-width:0;max-width:100%;padding:10px;overflow-x:clip}.quote-card-grid,.quote-card-grid--mobile{width:100%;min-width:0;max-width:100%}.quote-card{width:100%;max-width:100%;overflow-x:hidden}}@media (width<=640px){.quote-card-grid:not(.quote-card-grid--stack):not(.quote-card-grid--mobile){grid-template-columns:1fr}.quote-card-grid>*{height:auto}.quote-card{height:auto;padding:14px 14px 12px}.quote-card__head{flex-direction:column;align-items:stretch}.quote-card__head-tags{justify-content:flex-start}.quote-card__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quote-card__actions .app-btn{width:100%;min-width:0;padding-left:10px;padding-right:10px}}.app-card-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.app-card-grid--rows{grid-template-columns:1fr;gap:10px}.app-card-grid--rows .app-card{grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 12px;padding:12px 14px;display:grid}.app-card-grid--rows .app-card:hover{transform:none}.app-card-grid--rows .app-card__icon{grid-row:1/-1;margin-bottom:0;font-size:22px}.app-card-grid--rows .app-card__title{grid-area:1/2}.app-card-grid--rows .app-card__meta,.app-card-grid--rows .app-card__tag{grid-area:2/2;margin-top:0}.app-card-grid--rows .app-card__actions{border-top:none;grid-area:1/3/-1;align-self:center;margin-top:0;padding-top:0}.app-card-grid--rows .app-card-add,.app-card-grid--rows .app-card-add--full-row{flex-direction:row;grid-column:1/-1;gap:12px;min-height:56px}.app-card-grid--rows .app-card-add .app-card-add__plus,.app-card-grid--rows .app-card-add--full-row .app-card-add__plus{width:32px;height:32px;font-size:18px;line-height:32px}.app-card-grid--rows .app-card-add:hover:not(:disabled){transform:none}.app-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;text-align:left;box-shadow:var(--shadow-sm);padding:16px 14px;transition:transform .15s,box-shadow .15s,border-color .15s;position:relative}.app-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.app-card.is-active{border-color:var(--color-primary);background:linear-gradient(180deg, var(--color-primary-surface) 0%, #fff 100%);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12)}.app-card__icon{margin-bottom:10px;font-size:24px;line-height:1}.app-card__title{color:var(--color-text);word-break:break-word;font-size:14px;font-weight:600;line-height:1.4;display:block}.app-card__meta{color:var(--color-text-muted);margin-top:6px;font-size:12px;display:block}.app-card__tag{background:var(--color-info-bg);color:var(--color-primary);border-radius:999px;margin-top:8px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.app-card__actions{border-top:1px solid var(--color-border-soft);gap:6px;margin-top:12px;padding-top:10px;display:flex}.app-card-add{border:2px dashed var(--color-primary-border);border-radius:var(--radius-lg);min-height:120px;color:var(--color-primary);cursor:pointer;background:#eef2ff80;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:all .15s;display:flex}.app-card-add:hover:not(:disabled){background:var(--color-primary-surface);border-color:var(--color-primary-light);transform:translateY(-2px)}.app-card-add:disabled{opacity:.45;cursor:not-allowed}.app-card-add__plus{background:var(--gradient-primary);color:#fff;text-align:center;border-radius:50%;width:40px;height:40px;font-size:22px;line-height:40px}.app-card-add__label{font-size:13px;font-weight:600}.app-card-add--full-row{flex-direction:row;grid-column:1/-1;gap:12px;min-height:56px}.app-card-add--full-row .app-card-add__plus{width:32px;height:32px;font-size:18px;line-height:32px}.app-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.app-list-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:16px 18px;transition:border-color .15s,box-shadow .15s,transform .15s}.app-list-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover)}.app-list-card.is-unread{border-color:var(--color-primary-border);background:linear-gradient(#f8faff 0%,#fff 100%)}.app-list-card__row{justify-content:space-between;align-items:center;gap:12px;display:flex}.app-list-card__main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.app-list-card__title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-list-card__title-row strong{color:var(--color-text);font-size:15px}.app-list-card__meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.app-list-card__path,.app-list-card__sub{color:var(--color-text-muted);font-size:12px}.app-list-card__text{color:var(--color-text-secondary);font-size:13px}.app-list-card__message{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.app-list-card-btn{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;padding:0}.app-record-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.app-record-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:grid}.app-record-item.is-clickable{cursor:pointer}.app-record-item.is-clickable:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover)}.app-record-item:has(.app-record-item__main:hover){border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover)}.app-record-item.is-unread{border-color:var(--color-primary-border);background:linear-gradient(#f8faff 0%,#fff 100%)}.app-record-item__icon{border-radius:var(--radius-md);background:var(--color-info-bg);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.app-record-item__main{text-align:left;cursor:pointer;min-width:0;font:inherit;color:inherit;background:0 0;border:none;padding:0}.app-record-item__title-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.app-record-item__title-row strong{color:var(--color-text);font-size:15px;font-weight:600}.app-record-item__path{color:var(--color-text-muted);margin-bottom:2px;font-size:12px;display:block}.app-record-item__text{color:var(--color-text-secondary);font-size:13px;line-height:1.5;display:block}.app-record-item__text.is-highlight{color:var(--color-primary)}.app-record-item__aside{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.app-record-item__time{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.app-record-item__badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}@media (width<=640px){.app-record-item{grid-template-rows:auto auto;grid-template-columns:auto 1fr}.app-record-item__aside{border-top:1px solid var(--color-border-soft);flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:2px;padding-top:10px}}.app-page--centered{padding:calc(var(--safe-top) + 24px) var(--page-padding) calc(var(--safe-bottom) + 24px);justify-content:center;align-items:center;display:flex}.app-form-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border-soft);width:100%;max-width:640px;box-shadow:var(--shadow-lg);padding:32px 24px}.app-form-card__head{text-align:center;margin-bottom:28px}.app-form-card__head h1{color:var(--color-text);margin:0 0 8px;font-size:24px;font-weight:700}.app-form-card__head p{color:var(--color-text-secondary);margin:0;font-size:14px}.app-form-stack{flex-direction:column;gap:18px;display:flex}.app-success-panel{text-align:center;padding:24px 0}.app-success-panel__icon{background:var(--color-success-bg);width:64px;height:64px;color:var(--color-success);border-radius:50%;margin:0 auto 16px;font-size:32px;line-height:64px}.app-success-panel h2{color:var(--color-text);margin:0 0 8px}.app-success-panel p{color:var(--color-text-secondary);margin:0 0 20px}.app-detail-grid{flex-direction:column;gap:14px;display:flex}.app-detail-row{grid-template-columns:88px 1fr;align-items:start;gap:12px;display:grid}.app-detail-row.is-block{grid-template-columns:1fr}.app-detail-row label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.app-detail-row span,.app-detail-row p{color:var(--color-text);word-break:break-word;margin:0}.app-detail-row p{white-space:pre-wrap;line-height:1.6}.app-split-layout{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=900px){.app-split-layout{grid-template-columns:320px 1fr}}.app-split-layout .app-section{min-height:0}.app-user-list{grid-template-columns:1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}.app-user-item{border:1px solid var(--color-border-soft);background:var(--color-surface);border-radius:var(--radius-lg);cursor:pointer;text-align:left;width:100%;box-shadow:var(--shadow-card);flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.app-user-item:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.app-user-item.is-active{border-color:var(--color-primary-border-hover);background:linear-gradient(180deg, var(--color-primary-surface) 0%, #fff 100%);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .15), var(--shadow-card-hover)}.app-user-item strong{color:var(--color-text)}.app-user-item span{color:var(--color-text-secondary);font-size:13px}.app-user-item em{color:var(--color-primary);font-size:12px;font-style:normal}.app-perm-group{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);padding:18px;transition:border-color .15s,box-shadow .15s}.app-perm-group:hover{border-color:var(--color-primary-surface-muted);box-shadow:var(--shadow-card-hover)}.perm-groups-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=900px){.perm-groups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-perm-group__head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.app-perm-group__head h3{color:var(--color-text);margin:0;font-size:15px}.app-perm-list{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=900px){.app-perm-list{grid-template-columns:repeat(3,1fr)}}.app-perm-item{color:var(--color-text);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.app-perm-item.is-disabled{opacity:.7;cursor:not-allowed}.app-tabs{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);gap:6px;margin-bottom:20px;padding:5px;display:flex}.app-tab{border-radius:var(--radius-md);min-height:42px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;flex:1;font-size:14px;font-weight:600;transition:all .2s}.app-tab.is-active{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .35)}.app-btn{border-radius:var(--radius-md);cursor:pointer;min-height:40px;box-shadow:none;white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 18px;font-size:14px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.app-btn:disabled{opacity:.55;cursor:not-allowed}.app-btn--primary{border-color:var(--color-primary);color:var(--color-primary)}.app-btn--secondary{color:var(--color-text-secondary);border-color:#cbd5e1}.app-btn--ghost{border-color:var(--color-primary-border);color:var(--color-primary);font-weight:500}.app-btn--danger{color:var(--color-danger);border-color:#fca5a5}.app-btn--sm{min-height:32px;padding:0 12px;font-size:12px;font-weight:500}.app-field{flex-direction:column;gap:8px;display:flex}.app-field>span,.app-field>label{color:var(--color-text);font-size:14px;font-weight:600}.app-field em{color:var(--color-danger);font-style:normal}.app-input,.app-field input:not([type=checkbox]),.app-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);background:var(--color-surface);box-sizing:border-box;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.app-field input:not([type=checkbox]){min-height:var(--touch-min)}.app-input:focus,.app-field input:focus,.app-field select:focus,.app-field textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .15);outline:none}.app-field select,select.app-input,.app-form-block select,select.workspace-input,.selection-table select,.selection-card__field select,.item-list select,.component-picker__brand,select:not([multiple]):not([size]){appearance:none;width:100%;min-height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);background-color:var(--color-surface);background-image:var(--select-chevron);cursor:pointer;box-sizing:border-box;background-position:right 14px center;background-repeat:no-repeat;background-size:16px 16px;padding:11px 42px 11px 14px;font-family:inherit;font-size:15px;font-weight:500;line-height:1.4;transition:border-color .15s,box-shadow .15s,background-color .15s,background-image .15s}.selection-table select,.selection-card__field select,.item-list select,.component-picker__brand{background-position:right 10px center;min-height:38px;padding:8px 36px 8px 12px;font-size:14px;font-weight:500}.app-field select:focus,select.app-input:focus,.app-form-block select:focus,select.workspace-input:focus,.selection-table select:focus,.selection-card__field select:focus,.item-list select:focus,.component-picker__brand:focus,select:not([multiple]):not([size]):focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12);background-image:var(--select-chevron-active);outline:none}@media (hover:hover) and (pointer:fine){.app-field select:not(:disabled):hover,select.app-input:not(:disabled):hover,.app-form-block select:not(:disabled):hover,select.workspace-input:not(:disabled):hover,.selection-table select:not(:disabled):hover,.selection-card__field select:not(:disabled):hover,.item-list select:not(:disabled):hover,.component-picker__brand:not(:disabled):hover,select:not([multiple]):not([size]):not(:disabled):hover{background-color:#fafbfc;border-color:#cbd5e1}}.app-field select:disabled,select.app-input:disabled,.app-form-block select:disabled,select.workspace-input:disabled,.selection-table select:disabled,.selection-card__field select:disabled,.item-list select:disabled,.component-picker__brand:disabled,select:not([multiple]):not([size]):disabled{opacity:1;cursor:not-allowed;color:var(--color-text-muted);background-color:var(--color-bg-soft);border-color:var(--color-border-soft);background-image:var(--select-chevron-disabled)}.app-field select option,select.app-input option,select.workspace-input option,select:not([multiple]):not([size]) option{color:var(--color-text);background:var(--color-surface);padding:10px 12px}.app-field select option:checked,select:not([multiple]):not([size]) option:checked{color:var(--color-primary);font-weight:600}select::-ms-expand{display:none}.app-dialog-mask{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;padding:var(--page-padding);background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.app-dialog{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:440px;max-height:90vh;box-shadow:var(--shadow-lg);padding:28px 24px;overflow-y:auto}.app-dialog__title{color:var(--color-text);margin:0 0 6px;font-size:20px;font-weight:700}.app-dialog__subtitle{color:var(--color-text-muted);margin:0 0 20px;font-size:13px}.app-dialog__footer{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.app-form-block{flex-direction:column;gap:10px;display:flex}.app-form-block>label{color:var(--color-text);font-size:14px;font-weight:600}.app-check-list{border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:180px;margin:0;padding:0;list-style:none;overflow-y:auto}.app-check-list li+li{border-top:1px solid var(--color-border-soft)}.app-check-option{cursor:pointer;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:flex}.app-check-option input{accent-color:var(--color-primary)}.app-check-option .muted{color:var(--color-text-muted);font-size:12px}.app-check-row{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.app-check-row input{accent-color:var(--color-primary)}.app-empty-box{color:var(--color-text-muted);background:var(--color-bg-soft);border-radius:var(--radius-md);text-align:center;padding:12px;font-size:13px}.app-error{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);margin:0;padding:10px 12px;font-size:13px}.app-success{border-radius:var(--radius-md);background:var(--color-success-bg);color:#047857;margin:0;padding:10px 12px;font-size:13px}.app-empty,.app-loading{text-align:center;color:var(--color-text-muted);padding:56px 20px;font-size:14px}.app-empty-icon{opacity:.6;margin-bottom:12px;font-size:48px}.app-badge{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.app-badge--primary{background:var(--color-info-bg);color:var(--color-primary)}.app-badge--success{background:var(--color-success-bg);color:var(--color-success)}.app-badge--danger{background:var(--color-danger-bg);color:var(--color-danger)}.app-badge--warning{background:var(--color-warning-bg);color:#b45309}.app-badge--muted{color:var(--color-text-muted);background:#f1f5f9}.app-quick-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.app-quick-item{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);color:inherit;box-shadow:var(--shadow-card);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:120px;padding:20px 14px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.app-quick-item:hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-primary-border);transform:translateY(-3px)}.app-quick-item__icon{font-size:30px}.app-quick-item__label{color:var(--color-text);align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex;position:relative}.app-quick-item__desc{color:var(--color-text-muted);text-align:center;font-size:12px;line-height:1.4}.app-quick-item__badge{background:var(--color-danger);color:#fff;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px}.app-hero{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md);padding:32px 24px}.app-hero__avatar{background:var(--gradient-primary);color:#fff;width:64px;height:64px;box-shadow:0 8px 24px rgba(var(--color-primary-rgb), .35);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:26px;font-weight:700;display:flex}.app-hero h2{color:var(--color-text);margin:0 0 8px;font-size:22px;font-weight:700}.app-hero p{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.6}.app-layout-split{flex-direction:column;gap:20px;display:flex}.app-columns-3{grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;display:grid}@media (width>=768px){.app-header__title{font-size:20px}.app-quick-grid{grid-template-columns:repeat(3,1fr);gap:16px}.app-layout-split{flex-direction:row;align-items:flex-start}.app-layout-split .app-hero{text-align:left;flex:1}.app-layout-split .app-hero__avatar{margin:0 0 16px}.app-layout-split .app-quick-grid{flex:1.2}}@media (width>=1024px){.app-quick-grid{grid-template-columns:repeat(3,1fr)}}@media (hover:hover) and (pointer:fine){.app-header__back:hover{background:var(--color-info-bg);border-color:var(--color-primary-border)}.app-header__action:hover{border-color:var(--color-primary-border);color:var(--color-primary)}.app-btn--primary:hover:not(:disabled){border-color:var(--color-primary-dark);color:var(--color-primary-dark)}.app-btn--ghost:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary-dark)}.app-btn--secondary:hover:not(:disabled){color:var(--color-text);border-color:#94a3b8}.app-btn--danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger-dark)}}.project-source-tag{border-radius:999px;flex-shrink:0;align-items:center;padding:1px 7px;font-size:11px;font-weight:600;line-height:1.5;display:inline-flex}.project-source-tag--customer{background:var(--color-primary-surface);color:var(--color-primary)}.project-source-tag--internal{color:#16a34a;background:#f0fdf4}:root{--sidebar-width:240px;--shell-header-height:56px}.app-shell{background:#f4f6fb;min-height:100dvh;display:flex}.app-sidebar{width:var(--sidebar-width);color:#e2e8f0;background:linear-gradient(#0f172a 0%,#1e293b 100%);border-right:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;display:flex}.app-sidebar__brand{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:12px 16px;display:flex}.app-sidebar__logo{background:var(--gradient-primary);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:800;display:flex}.app-sidebar__brand-text{flex-direction:column;gap:2px;min-width:0;display:flex}.app-sidebar__brand-text strong{color:#f8fafc;font-size:13px;font-weight:700;line-height:1.2}.app-sidebar__brand-text span{color:#94a3b8;font-size:10px}.app-sidebar__nav{flex:1;padding:16px 12px;overflow-y:auto}.app-sidebar__group+.app-sidebar__group{margin-top:20px}.app-sidebar__group-title{letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin:0 0 8px;padding:0 10px;font-size:11px;font-weight:600}.app-sidebar__link{color:#cbd5e1;border-radius:10px;align-items:center;gap:10px;margin-bottom:4px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.app-sidebar__link:hover{color:#f8fafc;background:#ffffff0f}.app-sidebar__link.is-active{color:#fff;background:#2563eb38;box-shadow:inset 3px 0 #3b82f6}.app-sidebar__link-icon{text-align:center;flex-shrink:0;width:20px;font-size:15px}.app-sidebar__link-label{flex:1;min-width:0}.app-sidebar__badge{background:var(--color-danger);color:#fff;text-align:center;border-radius:999px;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;line-height:20px;box-shadow:0 0 0 2px #0f172acc}.app-sidebar__footer{border-top:1px solid #ffffff14;padding:12px 14px 16px}.app-sidebar__portal{color:#cbd5e1;cursor:pointer;text-align:left;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;padding:8px 12px;font-size:13px;transition:background .15s,border-color .15s}.app-sidebar__portal:hover{background:#ffffff14;border-color:#fff3}.app-shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.app-shell__header{height:var(--shell-header-height);border-bottom:1px solid var(--color-border-soft);box-shadow:var(--shadow-sm);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 32px;display:flex}.app-shell__title{color:var(--color-text);letter-spacing:-.02em;margin:0;font-size:20px;font-weight:700}.app-shell__header-actions{flex-shrink:0;align-items:center;gap:14px;display:flex}.app-shell__portal{border:1px solid var(--color-border-soft);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:6px 12px;font-size:13px;transition:background .15s,border-color .15s,color .15s}.app-shell__portal:hover{border-color:var(--color-border);color:var(--color-text);background:#f8fafc}.app-shell__user{align-items:center;gap:8px;display:flex}.app-shell__avatar{background:var(--gradient-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.app-shell__user-info{flex-direction:column;gap:1px;min-width:0;display:flex}.app-shell__user-info strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;overflow:hidden}.app-shell__user-info span{color:var(--color-text-muted);font-size:11px}.app-shell__logout{color:#dc2626;cursor:pointer;background:#ef444414;border:1px solid #ef444459;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.app-shell__logout:hover:not(:disabled){background:#ef444424;border-color:#ef444480}.app-shell__logout:disabled{opacity:.6;cursor:not-allowed}.app-shell__content{flex-direction:column;flex:1;min-height:0;padding:24px 32px 32px;display:flex;overflow-y:auto}.app-shell .app-page>.app-header{display:none}.app-shell .app-page{background:0 0;min-height:auto}.app-shell .app-main,.app-shell .app-main.app-main--wide{max-width:none;margin:0;padding:0}.app-shell .app-shell__content .manage-page .app-main{padding:0}.app-shell .app-shell__content>.app-page--list-fill{flex:1;height:auto;min-height:0}.detail-dialog{flex-direction:column;max-width:860px;max-height:min(90vh,920px);padding:18px 20px 16px;display:flex;overflow:hidden}.detail-dialog .dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.detail-dialog .dialog-head .app-dialog__title{margin:0}.detail-dialog .close-btn{width:var(--touch-min,36px);height:var(--touch-min,36px);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;color:var(--color-text-secondary);font-size:22px;line-height:1}.detail-dialog__hero{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-primary-surface-soft) 0%, var(--color-primary-surface) 100%);justify-content:space-between;align-items:center;gap:12px 16px;padding:10px 14px;display:flex}.detail-dialog__hero-main{flex:1;min-width:0}.detail-dialog__title-row{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.detail-dialog__eyebrow{letter-spacing:.04em;color:var(--color-primary);text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:600}.detail-dialog__name{color:var(--color-text);word-break:break-word;margin:0;font-size:17px;font-weight:700;line-height:1.3}.detail-dialog__badges{flex-wrap:wrap;gap:6px;display:flex}.detail-dialog__stats{flex-shrink:0;gap:8px;display:flex}.detail-dialog__stat{border:1px solid rgba(var(--color-primary-rgb), .12);border-radius:var(--radius-sm);text-align:center;background:#ffffffe0;flex-direction:column;gap:2px;min-width:68px;padding:6px 8px;display:flex}.detail-dialog__stat--purpose{background:0 0;border-color:#0000;align-items:center;min-width:76px;padding:6px 4px}.detail-dialog__stat--purpose .inquiry-purpose-tag{margin-top:2px}.detail-dialog__stat strong:not(.inquiry-purpose-tag){color:var(--color-text);word-break:break-word;font-size:14px;font-weight:700;line-height:1.2}.detail-dialog__stat>span:not(.inquiry-purpose-tag){color:var(--color-text-muted);white-space:nowrap;font-size:11px}.detail-dialog__tabs{border-bottom:1px solid var(--color-border-soft);background:0 0;gap:28px;margin-top:10px;padding:0;display:flex}.detail-dialog__tab{height:auto;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:none;margin-bottom:-1px;padding:8px 0;font-size:14px;font-weight:600;transition:color .15s,border-color .15s}.detail-dialog__tab:hover{color:var(--color-text)}.detail-dialog__tab.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.detail-dialog__body{flex-direction:column;flex:1;gap:14px;min-height:0;margin-top:12px;padding-right:4px;display:flex;overflow-y:auto}.detail-dialog__body--quote{gap:8px;padding-top:0}.detail-dialog__quote-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.project-detail-section{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);padding:16px}.project-detail-section__title{border-bottom:1px solid var(--color-border-soft);color:var(--color-text-secondary);letter-spacing:.02em;margin:0 0 12px;padding-bottom:10px;font-size:13px;font-weight:700}.project-detail-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;display:grid}.project-detail-field{flex-direction:column;gap:4px;min-width:0;display:flex}.project-detail-field__label{color:var(--color-text-muted);font-size:12px}.project-detail-field__value{color:var(--color-text);word-break:break-word;font-size:14px;font-weight:500}.project-detail-field__value.is-muted{color:var(--color-text-muted);font-weight:400}.project-detail-field__link{color:var(--color-primary);text-decoration:none}.project-detail-field__link:hover{text-decoration:underline}.inquiry-purpose-tag{border-radius:999px;justify-content:center;align-items:center;width:fit-content;padding:4px 12px;font-size:13px;font-weight:600;line-height:1.4;display:inline-flex}.inquiry-purpose-tag--plan{background:var(--color-primary-surface);color:var(--color-primary)}.inquiry-purpose-tag--bid{color:#c2410c;background:#fff7ed}.inquiry-purpose-tag--procurement{color:#047857;background:#ecfdf5}.project-detail-requirements{border-radius:var(--radius-md);color:var(--color-text);white-space:pre-wrap;word-break:break-word;background:#f8fafc;margin:0;padding:14px 16px;font-size:14px;line-height:1.7}.project-detail-document{border:1px dashed var(--color-border);border-radius:var(--radius-md);background:#fafafa;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.project-detail-document__info{align-items:center;gap:12px;min-width:0;display:flex}.project-detail-document__icon{border:1px solid var(--color-primary-border);background:var(--color-primary-surface);border-radius:10px;flex-shrink:0;width:40px;height:40px;position:relative}.project-detail-document__icon:before{content:"";border:2px solid var(--color-primary);border-radius:2px;position:absolute;inset:10px 11px 10px 9px}.project-detail-document__icon:after{content:"";background:var(--color-primary);width:14px;height:2px;box-shadow:0 5px 0 var(--color-primary), 0 10px 0 var(--color-primary-border-hover);border-radius:999px;position:absolute;top:14px;left:13px}.project-detail-document__name{color:var(--color-text);word-break:break-all;margin:0;font-size:14px;font-weight:600}.project-detail-document__hint{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.project-detail-document__readonly{color:var(--color-text-muted);flex-shrink:0;font-size:12px}@media (width<=640px){.detail-dialog__hero{flex-direction:column;align-items:stretch}.detail-dialog__stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-detail-fields{grid-template-columns:1fr}.project-detail-document{flex-direction:column;align-items:stretch}}#app{margin:0;padding:0;font-weight:400}.login-page[data-v-13eb9070]{background:var(--gradient-banner);flex-direction:column;min-height:100dvh;display:flex}.login-banner[data-v-13eb9070]{display:none}.login-section[data-v-13eb9070]{padding:calc(var(--safe-top) + var(--page-padding)) var(--page-padding) calc(var(--safe-bottom) + var(--page-padding));flex:1;justify-content:center;align-items:center;display:flex}.login-card[data-v-13eb9070]{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);border:1px solid #fff3;padding:32px 24px}.login-header[data-v-13eb9070]{text-align:center;margin-bottom:28px}.login-header h2[data-v-13eb9070]{color:var(--color-text);letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:700}.login-header p[data-v-13eb9070]{color:var(--color-text-secondary);margin:0;font-size:14px}.login-form[data-v-13eb9070]{flex-direction:column;gap:18px;display:flex}.form-item[data-v-13eb9070]{flex-direction:column;gap:8px;display:flex}.form-item label[data-v-13eb9070]{color:var(--color-text);font-size:14px;font-weight:600}.form-item input[data-v-13eb9070]{height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);appearance:none;background:var(--color-surface);color:var(--color-text);outline:none;padding:0 14px;font-size:16px;transition:border-color .2s,box-shadow .2s}.form-item input[data-v-13eb9070]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .15)}.remember-row[data-v-13eb9070]{color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:14px;display:inline-flex}.remember-row input[data-v-13eb9070]{cursor:pointer;width:16px;height:16px}.error-msg[data-v-13eb9070]{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);text-align:center;margin:0;padding:10px 12px;font-size:13px}.success-msg[data-v-13eb9070]{border-radius:var(--radius-md);color:#047857;text-align:center;background:#ecfdf5;margin:0;padding:10px 12px;font-size:13px}.login-btn[data-v-13eb9070]{height:var(--touch-min);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;box-shadow:none;background:0 0;font-size:16px;font-weight:600;transition:border-color .2s,color .2s}.login-btn[data-v-13eb9070]:active:not(:disabled){transform:scale(.98)}.login-btn[data-v-13eb9070]:disabled{opacity:.6;cursor:not-allowed}.hint[data-v-13eb9070]{text-align:center;color:var(--color-text-muted);margin:20px 0 0;font-size:12px}.public-link[data-v-13eb9070]{text-align:center;margin:12px 0 0;font-size:13px}.public-link a[data-v-13eb9070]{color:var(--color-primary-light);font-weight:500;text-decoration:none}.public-link a[data-v-13eb9070]:hover{text-decoration:underline}.link-btn[data-v-13eb9070]{color:var(--color-primary-light);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:500}.link-btn[data-v-13eb9070]:hover{text-decoration:underline}@media (width>=768px){.login-page[data-v-13eb9070]{flex-direction:row}.login-banner[data-v-13eb9070]{color:#fff;flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.banner-content h1[data-v-13eb9070]{letter-spacing:-.03em;margin:0 0 12px;font-size:40px;font-weight:800}.banner-content>p[data-v-13eb9070]{opacity:.92;margin:0 0 32px;font-size:18px}.feature-list[data-v-13eb9070]{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.feature-list li[data-v-13eb9070]{opacity:.88;padding-left:20px;font-size:15px;position:relative}.feature-list li[data-v-13eb9070]:before{content:"✓";font-weight:700;position:absolute;left:0}.login-section[data-v-13eb9070]{background:var(--color-surface);padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);flex:0 0 480px}.login-card[data-v-13eb9070]{max-width:360px;box-shadow:none;border:none;padding:48px 36px}.login-header[data-v-13eb9070]{text-align:left}.login-header h2[data-v-13eb9070]{font-size:28px}.public-link a[data-v-13eb9070],.link-btn[data-v-13eb9070]{color:var(--color-primary)}}@media (width>=1024px){.login-section[data-v-13eb9070]{flex:0 0 520px}}.login-page[data-v-697edee7]{background:var(--gradient-banner);flex-direction:column;min-height:100dvh;display:flex}.login-banner[data-v-697edee7]{display:none}.login-section[data-v-697edee7]{padding:calc(var(--safe-top) + var(--page-padding)) var(--page-padding) calc(var(--safe-bottom) + var(--page-padding));flex:1;justify-content:center;align-items:center;display:flex}.login-card[data-v-697edee7]{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid #fff3;padding:32px 24px}.login-header[data-v-697edee7]{text-align:center;margin-bottom:28px}.login-header h2[data-v-697edee7]{color:var(--color-text);margin:0 0 6px;font-size:24px;font-weight:700}.login-header p[data-v-697edee7]{color:var(--color-text-secondary);margin:0;font-size:14px}.login-form[data-v-697edee7]{flex-direction:column;gap:16px;display:flex}.form-item[data-v-697edee7]{flex-direction:column;gap:8px;display:flex}.form-item label[data-v-697edee7]{color:var(--color-text);font-size:14px;font-weight:600}.form-item input[data-v-697edee7]{height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;padding:0 14px;font-size:16px}.form-item input[data-v-697edee7]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .15)}.error-msg[data-v-697edee7],.success-msg[data-v-697edee7]{border-radius:var(--radius-md);text-align:center;margin:0;padding:10px 12px;font-size:13px}.error-msg[data-v-697edee7]{background:var(--color-danger-bg);color:var(--color-danger)}.success-msg[data-v-697edee7]{color:#047857;background:#ecfdf5}.login-btn[data-v-697edee7]{height:var(--touch-min);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;box-shadow:none;background:0 0;font-size:16px;font-weight:600}.login-btn[data-v-697edee7]:disabled{opacity:.6;cursor:not-allowed}.public-link[data-v-697edee7]{text-align:center;margin:16px 0 0;font-size:13px}.public-link a[data-v-697edee7]{color:var(--color-primary-light);font-weight:500;text-decoration:none}@media (width>=768px){.login-page[data-v-697edee7]{flex-direction:row}.login-banner[data-v-697edee7]{color:#fff;flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.banner-content h1[data-v-697edee7]{margin:0 0 12px;font-size:40px;font-weight:800}.banner-content>p[data-v-697edee7]{opacity:.92;margin:0 0 32px;font-size:18px}.feature-list[data-v-697edee7]{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.feature-list li[data-v-697edee7]{opacity:.88;padding-left:20px;font-size:15px;position:relative}.feature-list li[data-v-697edee7]:before{content:"✓";font-weight:700;position:absolute;left:0}.login-section[data-v-697edee7]{background:var(--color-surface);flex:0 0 520px}.login-card[data-v-697edee7]{max-width:380px;box-shadow:none;border:none;padding:48px 36px}.login-header[data-v-697edee7]{text-align:left}.public-link a[data-v-697edee7]{color:var(--color-primary)}}.brand-accent[data-v-9192ab59]{color:var(--color-primary)}.user-bar[data-v-9192ab59]{align-items:center;gap:12px;display:flex}.user-name[data-v-9192ab59]{color:var(--color-text-secondary);font-size:14px}.portal-layout[data-v-9192ab59]{flex-direction:column;gap:20px;display:flex}.system-grid[data-v-9192ab59]{grid-template-columns:1fr;gap:14px;display:grid}.system-card[data-v-9192ab59]{text-align:left;cursor:pointer;align-items:flex-start;width:100%;position:relative}.system-card.disabled[data-v-9192ab59]{opacity:.65;cursor:not-allowed}.system-card .app-badge[data-v-9192ab59]{position:absolute;top:16px;right:16px}@media (width>=768px){.system-grid[data-v-9192ab59]{grid-template-columns:repeat(3,1fr)}}.mobile-tab-bar[data-v-061b9ef3]{z-index:100;padding:6px var(--safe-left) calc(6px + var(--safe-bottom)) var(--safe-right);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-border-soft);background:#fffffff5;grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0f172a0f}.mobile-tab-bar__item[data-v-061b9ef3]{min-height:var(--touch-min);color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 0;font-size:11px;font-weight:500;text-decoration:none;display:flex;position:relative}.mobile-tab-bar__item.is-active[data-v-061b9ef3]{color:var(--color-primary)}.mobile-tab-bar__icon[data-v-061b9ef3]{font-size:20px;line-height:1}.mobile-tab-bar__label[data-v-061b9ef3]{line-height:1.2}.mobile-app[data-v-0d13d57b]{width:100%;max-width:100%;min-height:100dvh;overflow-x:clip}.mobile-app--with-tab[data-v-0d13d57b] .app-page{padding-bottom:calc(var(--touch-min) + 16px + var(--safe-bottom))}.mobile-app--with-tab[data-v-0d13d57b] .app-main{padding-bottom:8px}.app-shell__notify[data-v-0d13d57b]{position:relative}.app-shell__notify-btn[data-v-0d13d57b]{border:1px solid var(--border,#e5e7eb);cursor:pointer;background:#fff;border-radius:8px;padding:6px 10px;position:relative}.app-shell__notify-badge[data-v-0d13d57b]{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:18px;height:18px;padding:0 4px;font-size:11px;line-height:18px;position:absolute;top:-6px;right:-6px}.app-shell__notify-panel[data-v-0d13d57b]{z-index:30;background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:360px;max-height:420px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 12px 32px #0f172a1f}.app-shell__notify-head[data-v-0d13d57b]{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.app-shell__notify-mark[data-v-0d13d57b]{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:13px}.app-shell__notify-list[data-v-0d13d57b]{margin:0;padding:0;list-style:none}.app-shell__notify-item[data-v-0d13d57b]{cursor:pointer;border-bottom:1px solid #f8fafc;padding:12px 14px}.app-shell__notify-item.is-unread[data-v-0d13d57b]{background:#eff6ff}.app-shell__notify-item strong[data-v-0d13d57b]{margin-bottom:4px;display:block}.app-shell__notify-item p[data-v-0d13d57b]{color:#475569;margin:0 0 4px;font-size:13px}.app-shell__notify-item span[data-v-0d13d57b]{color:#94a3b8;font-size:12px}.app-shell__notify-empty[data-v-0d13d57b]{text-align:center;color:#94a3b8;margin:0;padding:24px 14px}.app-shell__user-name--super-admin[data-v-0d13d57b],.app-shell__role--super-admin[data-v-0d13d57b]{color:#dc2626}.flow-timeline[data-v-1d861071]{flex-direction:column;gap:14px;display:flex}.flow-timeline__placeholder[data-v-1d861071]{text-align:center;color:var(--color-text-muted);margin:0;padding:24px 0;font-size:14px}.flow-timeline__terminal[data-v-1d861071]{border-radius:var(--radius-md);color:var(--color-danger-dark);text-align:center;background:#fef2f2;border:1px solid #fecaca;padding:10px 12px;font-size:14px;font-weight:600}.flow-vtrack[data-v-1d861071]{align-items:flex-start;gap:0;margin:0;padding:4px 2px 8px;list-style:none;display:flex;overflow-x:auto}.flow-vtrack__item[data-v-1d861071]{flex-direction:column;flex:1 0 72px;align-items:center;min-width:64px;display:flex;position:relative}.flow-vtrack__rail[data-v-1d861071]{justify-content:center;align-items:center;width:100%;height:14px;display:flex;position:relative}.flow-vtrack__dot[data-v-1d861071]{box-sizing:border-box;z-index:1;background:#fff;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;width:12px;height:12px}.flow-vtrack__line[data-v-1d861071]{background:#e2e8f0;width:calc(100% - 12px);height:2px;position:absolute;top:50%;left:calc(50% + 6px);transform:translateY(-50%)}.flow-vtrack__label[data-v-1d861071]{text-align:center;color:var(--color-text-muted);word-break:keep-all;margin:8px 0 0;padding:0 4px;font-size:12px;font-weight:500;line-height:1.35}.flow-vtrack__item.is-completed .flow-vtrack__dot[data-v-1d861071]{border-color:var(--color-success-dark);background:var(--color-success-dark)}.flow-vtrack__item.is-completed .flow-vtrack__line[data-v-1d861071]{background:var(--color-success-dark)}.flow-vtrack__item.is-completed .flow-vtrack__label[data-v-1d861071]{color:var(--color-text);font-weight:600}.flow-vtrack__item.is-active .flow-vtrack__dot[data-v-1d861071]{border-color:var(--color-primary);background:var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb), .15)}.flow-vtrack__item.is-active .flow-vtrack__label[data-v-1d861071]{color:var(--color-primary-dark);font-weight:700}.flow-vtrack__item.is-failed .flow-vtrack__dot[data-v-1d861071]{background:#dc2626;border-color:#dc2626}.flow-vtrack__item.is-failed .flow-vtrack__label[data-v-1d861071]{color:var(--color-danger-dark);font-weight:700}.flow-vtrack__item.is-pending .flow-vtrack__dot[data-v-1d861071]{background:#f8fafc;border-color:#cbd5e1}.flow-vtrack__item.is-pending .flow-vtrack__line[data-v-1d861071]{background:#e2e8f0}@media (width<=640px){.flow-vtrack__item[data-v-1d861071]{flex-basis:64px;min-width:56px}.flow-vtrack__label[data-v-1d861071]{font-size:11px}}.quote-summary[data-v-226b934e]{flex-direction:column;gap:14px;display:flex}.quote-summary__placeholder[data-v-226b934e]{text-align:center;color:var(--color-text-muted);padding:24px 0;font-size:14px}.quote-summary__head[data-v-226b934e]{flex-direction:column;gap:8px;display:flex}.quote-summary__meta[data-v-226b934e]{color:var(--color-text-muted);margin-left:10px;font-size:13px;font-weight:400}.quote-summary__warn[data-v-226b934e]{color:#b45309;margin:0;font-size:13px}.quote-summary__warn--expired[data-v-226b934e]{border-radius:var(--radius-md);background:#fffbeb;border:1px solid #fcd34d;padding:10px 12px}.quote-price-tag[data-v-226b934e]{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.quote-price-tag--valid[data-v-226b934e]{color:#047857;background:#ecfdf5}.quote-price-tag--expired[data-v-226b934e]{color:#b91c1c;background:#fef2f2}.quote-table__row--expired[data-v-226b934e]{background:#fff7ed}.quote-system[data-v-226b934e]{flex-direction:column;gap:10px;display:flex}.quote-system__title[data-v-226b934e]{color:var(--color-text-secondary);margin:0;font-size:14px}.quote-cabinet[data-v-226b934e]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted,#fafafa);overflow:hidden}.quote-cabinet__head[data-v-226b934e]{border-bottom:1px solid var(--color-border-soft);background:#fff;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.quote-cabinet__tag[data-v-226b934e]{background:var(--color-primary-surface);color:#3730a3;border-radius:999px;padding:2px 8px;font-size:12px}.quote-cabinet__missing[data-v-226b934e]{color:var(--color-danger-dark);font-size:12px}.quote-cabinet__remark[data-v-226b934e]{border-bottom:1px solid var(--color-border-soft);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;background:#fff;margin:0;padding:8px 12px;font-size:13px;line-height:1.5}.quote-table[data-v-226b934e]{border-collapse:collapse;width:100%;font-size:13px}.quote-table th[data-v-226b934e],.quote-table td[data-v-226b934e]{border-bottom:1px solid var(--color-border-soft);text-align:left;padding:8px 10px}.quote-table th[data-v-226b934e]{color:var(--color-text-secondary);background:#f8fafc;font-weight:600}.quote-table__num[data-v-226b934e]{text-align:right;white-space:nowrap}.quote-table__total-label[data-v-226b934e]{text-align:right;font-weight:600}.quote-table__total[data-v-226b934e]{color:var(--color-primary);font-weight:700}.quote-cabinet__empty[data-v-226b934e]{color:var(--color-text-muted);margin:0;padding:14px 12px;font-size:13px}.quote-summary__cabinet-total[data-v-226b934e]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.quote-summary__cabinet-total span[data-v-226b934e]{color:var(--color-text-secondary);font-size:14px;font-weight:600}.quote-summary__cabinet-total strong[data-v-226b934e]{color:var(--color-text);white-space:nowrap;font-size:18px;font-weight:700}.quote-summary__grand-total[data-v-226b934e]{border:1px solid var(--color-primary-border);border-radius:var(--radius-md);background:var(--color-primary-surface);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.quote-summary__grand-total span[data-v-226b934e]{color:var(--color-text-secondary);font-size:14px;font-weight:600}.quote-summary__grand-total strong[data-v-226b934e]{color:var(--color-primary);white-space:nowrap;font-size:22px;font-weight:700}.quote-summary--compact[data-v-226b934e]{gap:10px}.quote-summary--compact .quote-summary__placeholder[data-v-226b934e]{padding:16px 0;font-size:13px}.quote-summary--compact .quote-cabinet__head[data-v-226b934e]{padding:8px 10px}.quote-summary--compact .quote-summary__grand-total[data-v-226b934e]{padding:10px 12px}.quote-summary--compact .quote-summary__grand-total strong[data-v-226b934e]{font-size:18px}@media (width<=767px){.quote-summary__head>div[data-v-226b934e]{flex-direction:column;gap:4px;display:flex}.quote-summary__meta[data-v-226b934e]{margin-left:0}.quote-cabinet[data-v-226b934e]{overflow:hidden}.quote-table[data-v-226b934e]{font-size:12px;display:block}.quote-table thead[data-v-226b934e]{display:none}.quote-table tbody[data-v-226b934e],.quote-table tfoot[data-v-226b934e]{display:block}.quote-table tr[data-v-226b934e]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:#fff;margin-bottom:8px;padding:10px;display:block}.quote-table tr[data-v-226b934e]:last-child{margin-bottom:0}.quote-table td[data-v-226b934e]{text-align:right;word-break:break-word;border-bottom:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:4px 0;display:flex}.quote-table td[data-v-226b934e]:before{content:attr(data-label);max-width:42%;color:var(--color-text-muted);text-align:left;flex:none;font-weight:500}.quote-table td.quote-table__num[data-v-226b934e]{text-align:right;white-space:normal}.quote-table__foot-row[data-v-226b934e]{border-color:var(--color-primary-border);background:var(--color-primary-surface);margin-top:4px}.quote-table__foot-row td[data-v-226b934e]{padding:6px 0}.quote-table__foot-row .quote-table__total-label[data-v-226b934e]{justify-content:flex-end;font-weight:600}.quote-table__foot-row .quote-table__total-label[data-v-226b934e]:before{display:none}.quote-table__foot-row .quote-table__total[data-v-226b934e]{font-size:15px}.quote-summary__cabinet-total[data-v-226b934e],.quote-summary__grand-total[data-v-226b934e]{padding:10px 12px}.quote-summary__cabinet-total strong[data-v-226b934e],.quote-summary__grand-total strong[data-v-226b934e]{font-size:17px}}.detail-dialog__loading[data-v-32c8937a]{text-align:center;color:var(--color-text-muted);padding:24px 0;font-size:14px}.brand-accent[data-v-d1e5c0c0]{color:var(--color-primary)}.user-bar[data-v-d1e5c0c0]{align-items:center;gap:12px;display:flex}.dashboard[data-v-d1e5c0c0]{flex-direction:column;gap:20px;display:flex}.dashboard-loading[data-v-d1e5c0c0]{text-align:center;color:var(--color-text-muted);padding:80px 0;font-size:14px}.kpi-row[data-v-d1e5c0c0]{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.kpi-card[data-v-d1e5c0c0]{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 22px}.kpi-card__label[data-v-d1e5c0c0]{color:var(--color-text-muted);margin:0 0 10px;font-size:13px}.kpi-card__value[data-v-d1e5c0c0]{color:var(--color-text);font-size:28px;font-weight:700;line-height:1.2;display:block}.kpi-card__trend[data-v-d1e5c0c0]{margin-top:10px;font-size:12px;font-weight:600;display:inline-block}.kpi-card__trend.is-up[data-v-d1e5c0c0]{color:var(--color-success)}.kpi-card__trend.is-down[data-v-d1e5c0c0]{color:var(--color-danger)}.dashboard-body[data-v-d1e5c0c0]{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.dashboard-main[data-v-d1e5c0c0]{flex-direction:column;gap:20px;min-width:0;display:flex}.dashboard-aside[data-v-d1e5c0c0]{flex-direction:column;gap:20px;display:flex}.panel[data-v-d1e5c0c0]{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.panel__head[data-v-d1e5c0c0]{border-bottom:1px solid var(--color-border-soft);padding:16px 20px}.panel__head h2[data-v-d1e5c0c0]{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.panel__body[data-v-d1e5c0c0]{padding:20px}.panel__body--flush[data-v-d1e5c0c0]{padding:0}.panel-empty[data-v-d1e5c0c0]{text-align:center;color:var(--color-text-muted);padding:40px 20px;font-size:14px}.quote-table[data-v-d1e5c0c0]{border-collapse:collapse;width:100%;font-size:13px}.quote-table th[data-v-d1e5c0c0],.quote-table td[data-v-d1e5c0c0]{border-bottom:1px solid var(--color-border-soft);text-align:left;padding:12px 16px}.quote-table th[data-v-d1e5c0c0]{color:var(--color-text-secondary);white-space:nowrap;background:#f8fafc;font-weight:600}.quote-row[data-v-d1e5c0c0]{cursor:pointer;transition:background .15s}.quote-row[data-v-d1e5c0c0]:hover{background:#f8faff}.quote-table td.amount[data-v-d1e5c0c0]{color:var(--color-primary);font-weight:600}.status-tag[data-v-d1e5c0c0]{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.status-pending[data-v-d1e5c0c0]{background:var(--color-warning-bg);color:#b45309}.status-won[data-v-d1e5c0c0]{background:var(--color-success-bg);color:#047857}.status-sent[data-v-d1e5c0c0]{background:var(--color-info-bg);color:var(--color-primary)}.status-expired[data-v-d1e5c0c0]{background:var(--color-danger-bg);color:var(--color-danger)}.status-draft[data-v-d1e5c0c0]{color:var(--color-text-muted);background:#f1f5f9}.trend-line-chart[data-v-d1e5c0c0]{flex-direction:column;gap:8px;padding:4px 0 0;display:flex}.trend-line-chart__svg[data-v-d1e5c0c0]{width:100%;height:auto;min-height:160px;overflow:visible}.trend-line-chart__grid line[data-v-d1e5c0c0]{stroke:#e2e8f0;stroke-width:1px;stroke-dasharray:4 4}.trend-line-chart__area[data-v-d1e5c0c0]{fill:url(#trend-area-gradient)}.trend-line-chart__line[data-v-d1e5c0c0]{fill:none;stroke:var(--color-primary);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.trend-line-chart__dot[data-v-d1e5c0c0]{fill:#fff;stroke:var(--color-primary);stroke-width:2px}.trend-line-chart__dot-core[data-v-d1e5c0c0]{fill:var(--color-primary)}.trend-line-chart__value[data-v-d1e5c0c0]{fill:#475569;font-size:11px;font-weight:700}.trend-line-chart__labels[data-v-d1e5c0c0]{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0 12px;display:grid}.trend-line-chart__label[data-v-d1e5c0c0]{text-align:center;color:var(--color-text-muted);font-size:12px}.quick-grid[data-v-d1e5c0c0]{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.quick-btn[data-v-d1e5c0c0]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-primary-surface-soft);min-height:88px;color:var(--color-text);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s,transform .15s;display:flex}.quick-btn[data-v-d1e5c0c0]:hover{border-color:var(--color-primary-border);background:var(--color-primary-surface);transform:translateY(-1px)}.quick-btn__icon[data-v-d1e5c0c0]{font-size:22px}.todo-list[data-v-d1e5c0c0]{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.todo-item[data-v-d1e5c0c0]{color:var(--color-text-secondary);align-items:center;gap:10px;font-size:14px;line-height:1.5;text-decoration:none;transition:color .15s;display:flex}.todo-item[data-v-d1e5c0c0]:hover{color:var(--color-primary)}.todo-dot[data-v-d1e5c0c0]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.todo-dot--danger[data-v-d1e5c0c0]{background:var(--color-danger)}.todo-dot--warning[data-v-d1e5c0c0]{background:var(--color-warning)}.todo-dot--info[data-v-d1e5c0c0]{background:var(--color-primary)}.dialog-wide[data-v-522ee39c]{max-width:860px}.dialog-head[data-v-522ee39c]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dialog-head .app-dialog__title[data-v-522ee39c]{margin:0}.close-btn[data-v-522ee39c]{width:var(--touch-min);height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;color:var(--color-text-secondary);font-size:22px;line-height:1}.approve-dialog__body[data-v-522ee39c]{max-height:min(60vh,520px);margin-top:12px;overflow-y:auto}.approve-dialog__hint[data-v-522ee39c]{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fcd34d;margin-bottom:12px;padding:12px 14px;font-size:14px}.approve-dialog__hint p[data-v-522ee39c]{margin:0 0 10px}.approve-confirm-box[data-v-522ee39c]{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fde68a;margin-top:12px;padding:16px;font-size:14px;line-height:1.6}.approve-confirm-box p[data-v-522ee39c]{margin:0 0 10px}.approve-confirm-box p[data-v-522ee39c]:last-child{margin-bottom:0}.approve-confirm-box__expired[data-v-522ee39c]{white-space:pre-line;font-weight:600}.audit-dialog__hint[data-v-522ee39c]{border:1px solid var(--color-primary-border);border-radius:var(--radius-md);background:var(--color-primary-surface);color:#1e40af;margin-top:12px;padding:12px 14px;font-size:14px;line-height:1.5}.project-action-buttons[data-v-0648df13]{flex-wrap:wrap;place-content:flex-end flex-start;align-items:center;gap:8px;display:flex}.project-action-buttons__empty[data-v-0648df13]{color:var(--color-text-muted);font-size:13px}.quote-card[data-v-b76b5abd]{box-sizing:border-box;border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;min-width:0;max-width:100%;height:100%;box-shadow:var(--shadow-card);cursor:pointer;flex-direction:column;gap:10px;padding:18px 18px 16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.quote-card[data-v-b76b5abd]:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.project-card--urgent[data-v-b76b5abd]{background:linear-gradient(#fffafb 0%,#fff 100%);border-color:#fecaca}.project-card.is-active[data-v-b76b5abd]{border-color:var(--color-primary-border-hover);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .15), var(--shadow-card-hover)}.project-card.is-locked[data-v-b76b5abd]:hover{border-color:var(--color-border-soft);box-shadow:var(--shadow-card);transform:none}.quote-card__head[data-v-b76b5abd]{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.quote-card__head-tags[data-v-b76b5abd]{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.quote-card__title[data-v-b76b5abd]{min-width:0;color:var(--color-text);overflow-wrap:anywhere;word-break:break-word;flex:1;margin:0;font-size:16px;font-weight:700;line-height:1.4}.quote-card__status[data-v-b76b5abd]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.status-pending[data-v-b76b5abd]{background:var(--color-warning-bg);color:#b45309}.status-won[data-v-b76b5abd]{background:var(--color-success-bg);color:#047857}.status-sent[data-v-b76b5abd]{background:var(--color-info-bg);color:var(--color-primary)}.status-expired[data-v-b76b5abd]{background:var(--color-danger-bg);color:var(--color-danger)}.quote-card__project[data-v-b76b5abd],.quote-card__customer[data-v-b76b5abd]{min-width:0;min-height:20px;color:var(--color-text-secondary);overflow-wrap:anywhere;word-break:break-word;align-items:center;gap:6px;margin:0;font-size:13px;line-height:1.5;display:flex}.quote-card__customer.is-empty[data-v-b76b5abd],.quote-card__project.is-empty[data-v-b76b5abd]{visibility:hidden}.project-card__meta[data-v-b76b5abd]{flex-direction:column;flex-shrink:0;gap:4px;min-height:48px;display:flex}.project-card__summary[data-v-b76b5abd]{flex:1;min-height:40px}.quote-card__project[data-v-b76b5abd]{color:var(--color-text);font-weight:600}.quote-card__project-icon[data-v-b76b5abd],.quote-card__customer-icon[data-v-b76b5abd]{flex-shrink:0;font-size:14px}.quote-card__summary[data-v-b76b5abd]{color:var(--color-text-muted);overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:12px;line-height:1.6}.quote-card__footer[data-v-b76b5abd]{border-top:1px solid var(--color-border-soft);flex-shrink:0;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:14px;display:flex}.quote-card__date-block[data-v-b76b5abd]{flex-direction:column;gap:4px;display:flex}.quote-card__date-block--start[data-v-b76b5abd]{text-align:left;align-items:flex-start}.quote-card__date-label[data-v-b76b5abd]{color:var(--color-text-muted);font-size:11px}.quote-card__date[data-v-b76b5abd]{color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.project-card__actions[data-v-b76b5abd]{border-top:1px solid var(--color-border-soft);flex-shrink:0;align-items:flex-end;min-height:76px;padding-top:12px;display:flex}.project-card__actions[data-v-b76b5abd] .project-action-buttons{flex-wrap:wrap;place-content:flex-end flex-start;gap:8px;width:100%}.project-card__actions[data-v-b76b5abd] .project-action-buttons .app-btn{min-height:34px}@media (width<=640px){.quote-card[data-v-b76b5abd]{height:auto;padding:14px 12px 12px;overflow-x:hidden}.quote-card__head[data-v-b76b5abd]{flex-direction:column;align-items:stretch}.quote-card__head-tags[data-v-b76b5abd]{justify-content:flex-start}.project-card__meta[data-v-b76b5abd]{min-height:0}.project-card__summary[data-v-b76b5abd]{flex:none;min-height:0}.quote-card__footer[data-v-b76b5abd]{margin-top:0}.project-card__actions[data-v-b76b5abd]{align-items:stretch;min-height:0}.project-card__actions[data-v-b76b5abd] .project-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.project-card__actions[data-v-b76b5abd] .project-action-buttons .app-btn{width:100%;min-width:0;padding-left:10px;padding-right:10px}.project-card__actions[data-v-b76b5abd] .project-action-buttons .app-btn:last-child:nth-child(odd){grid-column:1/-1}}.manage-page .app-main[data-v-21a22027],.manage-desktop[data-v-21a22027]{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.manage-mobile-section[data-v-21a22027]{flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:0;display:flex}.manage-mobile-section .app-section__body[data-v-21a22027]{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.manage-toolbar[data-v-21a22027]{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;display:flex}.manage-search[data-v-21a22027]{border:1px solid var(--color-border-soft);background:var(--color-surface);border-radius:999px;flex:1;align-items:center;gap:10px;min-width:240px;height:44px;padding:0 16px;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 1px 3px #0f172a0a}.manage-search[data-v-21a22027]:focus-within{border-color:var(--color-primary-border);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12)}.manage-search__icon[data-v-21a22027]{opacity:.6;font-size:14px}.manage-search__input[data-v-21a22027]{background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.manage-main-tabs[data-v-21a22027]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:8px;padding:4px;display:flex}.manage-main-tab[data-v-21a22027]{min-height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.manage-main-tab.is-active[data-v-21a22027]{background:var(--gradient-primary);color:#fff}.manage-main-tab__count[data-v-21a22027]{background:#00000014;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px}.manage-main-tab.is-active .manage-main-tab__count[data-v-21a22027]{background:#ffffff40}.manage-create-btn[data-v-21a22027]{min-height:44px;margin-left:auto;padding:0 20px}.manage-status-bar[data-v-21a22027]{background:#ffffffb3;border-radius:12px;flex-wrap:wrap;flex-shrink:0;gap:8px;padding:4px;display:flex}.manage-status-pill[data-v-21a22027]{min-height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.manage-status-pill[data-v-21a22027]:hover{border-color:var(--color-border);color:var(--color-text);background:#fff}.manage-status-pill.is-active[data-v-21a22027]{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .28);border-color:#0000;font-weight:600}.manage-status-pill.is-active .manage-status-pill__badge[data-v-21a22027]{color:#fff;background:#ffffff47}.manage-status-pill__badge[data-v-21a22027]{background:var(--color-danger);color:#fff;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px}.manage-layout[data-v-21a22027]{flex:1;grid-template-columns:320px minmax(0,1fr);gap:16px;min-height:0;display:grid}.manage-layout--stacked[data-v-21a22027]{grid-template-columns:minmax(0,1fr);gap:16px}.manage-project-list[data-v-21a22027]{border:1px solid rgba(var(--color-primary-rgb), .1);min-height:0;box-shadow:0 4px 24px rgba(var(--color-primary-rgb), .06);flex-direction:column;display:flex;overflow:hidden}.manage-project-list__head[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.manage-project-list__head h3[data-v-21a22027]{color:var(--color-text);letter-spacing:-.02em;margin:0;font-size:16px;font-weight:700}.manage-project-list__head .manage-project-list__count[data-v-21a22027]{background:var(--gradient-primary);color:#fff;min-width:28px;height:28px;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .25);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.manage-project-list__table[data-v-21a22027]{width:100%}.manage-project-list__table-head[data-v-21a22027],.manage-project-row[data-v-21a22027]{grid-template-columns:minmax(80px,.85fr) minmax(0,.65fr) minmax(0,.58fr) minmax(0,.72fr) minmax(0,.85fr) minmax(0,.65fr) minmax(0,.75fr) minmax(228px,1.4fr);align-items:center;gap:0 8px;width:100%;display:grid}.manage-col[data-v-21a22027]{min-width:0;padding:14px 2px}.manage-col--edge-start[data-v-21a22027]{padding-left:20px}.manage-col--name[data-v-21a22027]{min-width:0;padding-right:4px}.manage-col--edge-end[data-v-21a22027]{padding-right:12px}.manage-col--actions[data-v-21a22027]{text-align:right;justify-content:flex-end;min-width:min-content;padding-left:6px;padding-right:12px;display:flex;overflow:visible}.manage-project-list__table-head .manage-col[data-v-21a22027]{padding-top:12px;padding-bottom:12px}.manage-project-list__table-head .manage-col--name[data-v-21a22027]{text-align:left}.manage-project-list__table-head .manage-col--source[data-v-21a22027],.manage-project-list__table-head .manage-col--status[data-v-21a22027],.manage-project-list__table-head .manage-col--contact[data-v-21a22027],.manage-project-list__table-head .manage-col--systems[data-v-21a22027],.manage-project-list__table-head .manage-col--assignee[data-v-21a22027],.manage-project-list__table-head .manage-col--time[data-v-21a22027]{text-align:center}.manage-project-list__table-head .manage-col--actions[data-v-21a22027]{text-align:right}.manage-project-list__table-head[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);color:var(--color-text-muted);letter-spacing:.02em;background:#f8fafc;font-size:12px;font-weight:600}.manage-col--name[data-v-21a22027],.manage-col--contact[data-v-21a22027],.manage-col--systems[data-v-21a22027],.manage-col--assignee[data-v-21a22027],.manage-col--time[data-v-21a22027]{text-align:left}.manage-col--source[data-v-21a22027],.manage-col--status[data-v-21a22027]{text-align:left;justify-content:center;align-items:center;display:flex}.manage-project-list__body[data-v-21a22027]{flex-direction:column;display:flex}.manage-project-row[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);background:var(--color-surface);width:100%;color:var(--color-text);transition:background .15s,box-shadow .15s}.manage-project-row[data-v-21a22027]:nth-child(2n){background:#fcfdff}.manage-project-row[data-v-21a22027]:hover{background:linear-gradient(90deg, var(--color-primary-surface) 0%, #fff 100%);box-shadow:inset 3px 0 0 var(--color-primary-light)}.manage-project-row.is-locked[data-v-21a22027]{opacity:.68}.manage-project-row__actions[data-v-21a22027]{justify-content:flex-end;align-self:center;align-items:center;width:100%;min-width:0;display:flex;overflow:visible}.manage-project-row__actions-inner[data-v-21a22027]{flex-wrap:nowrap;flex-shrink:0;justify-content:flex-end;gap:4px;display:inline-flex}.manage-project-row__actions-inner .app-btn--sm[data-v-21a22027]{white-space:nowrap;border-radius:6px;flex-shrink:0;min-height:28px;padding:0 8px;font-size:11px}.manage-project-row__name[data-v-21a22027]{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:14px;font-weight:600;overflow:hidden}.manage-project-row__source[data-v-21a22027] .project-source-tag{box-sizing:border-box;min-height:24px;padding:2px 8px;font-size:12px;line-height:1.2}.manage-project-status[data-v-21a22027]{box-sizing:border-box;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex}.manage-project-status.app-badge--primary[data-v-21a22027]{background:var(--color-primary-surface);color:var(--color-primary-dark)}.manage-project-status.app-badge--warning[data-v-21a22027]{color:#c2410c;background:#fff7ed}.manage-project-status.app-badge--success[data-v-21a22027]{color:#047857;background:#ecfdf5}.manage-project-status.app-badge--danger[data-v-21a22027]{color:#dc2626;background:#fef2f2}.manage-project-status.app-badge--muted[data-v-21a22027]{color:var(--color-text-muted);background:#f1f5f9}.manage-project-row__contact[data-v-21a22027],.manage-project-row__assignee[data-v-21a22027]{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:13px;overflow:hidden}.manage-project-row__systems[data-v-21a22027]{text-align:center;flex-direction:column;align-self:center;align-items:center;gap:3px;min-width:0;line-height:1.35;display:flex}.manage-project-row__systems-main[data-v-21a22027]{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.manage-project-row__systems-sub[data-v-21a22027]{color:var(--color-text-muted);margin-top:2px;font-size:11px;display:block}.manage-project-row__time[data-v-21a22027]{color:var(--color-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center;font-size:12px}.manage-project-row__placeholder[data-v-21a22027]{color:var(--color-text-muted);font-size:13px}.manage-col--source .manage-project-row__placeholder[data-v-21a22027],.manage-col--status .manage-project-row__placeholder[data-v-21a22027]{text-align:center;width:100%}.manage-col--actions.manage-project-row__placeholder[data-v-21a22027]{text-align:right;width:100%}.manage-pagination--mobile[data-v-21a22027]{margin-top:0}.panel[data-v-21a22027]{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.manage-urgent-tag[data-v-21a22027]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.manage-sidebar[data-v-21a22027]{flex-direction:column;min-height:560px;display:flex}.manage-sidebar__head[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.manage-sidebar__head h3[data-v-21a22027]{margin:0;font-size:15px;font-weight:700}.manage-sidebar__count[data-v-21a22027]{background:var(--color-info-bg);color:var(--color-primary);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.manage-sidebar__body[data-v-21a22027]{flex:1;padding:10px;overflow-y:auto}.manage-project-item[data-v-21a22027]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);text-align:left;cursor:pointer;background:#fff;width:100%;margin-bottom:8px;padding:14px;transition:border-color .15s,box-shadow .15s,background .15s}.manage-project-item[data-v-21a22027]:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.manage-project-item.is-active[data-v-21a22027]{border-color:var(--color-primary);background:linear-gradient(180deg, var(--color-primary-surface) 0%, #fff 100%);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .1)}.manage-project-item.is-locked[data-v-21a22027]{opacity:.92}.manage-project-item__top[data-v-21a22027]{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.manage-project-item__title-wrap[data-v-21a22027]{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.manage-project-item__top strong[data-v-21a22027]{color:var(--color-text);font-size:14px;line-height:1.4}.manage-project-item__status[data-v-21a22027]{border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.manage-project-item__meta[data-v-21a22027]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.5}.manage-sidebar__empty[data-v-21a22027]{text-align:center;color:var(--color-text-muted);padding:40px 12px;font-size:13px}.manage-content[data-v-21a22027]{flex-direction:column;gap:20px;min-height:560px;padding:22px;display:flex}.manage-detail-head[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:18px;display:flex}.manage-detail-head__title-row[data-v-21a22027]{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.manage-detail-head h2[data-v-21a22027]{color:var(--color-text);margin:0;font-size:22px;font-weight:700}.manage-detail-head__status[data-v-21a22027]{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.manage-detail-head__sub[data-v-21a22027]{color:var(--color-text-muted);margin:0 0 4px;font-size:13px;line-height:1.6}.manage-detail-head__actions[data-v-21a22027]{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.manage-system-bar[data-v-21a22027]{flex-wrap:wrap;gap:8px;display:flex}.manage-system-pill[data-v-21a22027]{border:1px solid var(--color-border);min-height:38px;color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.manage-system-pill span[data-v-21a22027]{text-align:center;background:#f1f5f9;border-radius:999px;min-width:20px;height:20px;padding:0 6px;font-size:11px;line-height:20px}.manage-system-pill.is-active[data-v-21a22027]{border-color:var(--color-primary);background:var(--color-info-bg);color:var(--color-primary)}.manage-system-pill.is-active span[data-v-21a22027]{background:rgba(var(--color-primary-rgb), .15)}.manage-system-add[data-v-21a22027]{border:1px dashed var(--color-primary-border);background:var(--color-primary-surface-soft);min-height:38px;color:var(--color-primary);cursor:pointer;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.manage-cabinet-section[data-v-21a22027]{flex-direction:column;gap:14px;display:flex}.manage-cabinet-head[data-v-21a22027]{justify-content:space-between;align-items:center;gap:12px;display:flex}.manage-cabinet-head h3[data-v-21a22027]{margin:0;font-size:16px;font-weight:700}.manage-cabinet-grid[data-v-21a22027]{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.manage-cabinet-card[data-v-21a22027]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;flex-direction:column;gap:8px;padding:16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.manage-cabinet-card[data-v-21a22027]:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.manage-cabinet-card__head[data-v-21a22027]{justify-content:space-between;align-items:center;display:flex}.manage-cabinet-card__icon[data-v-21a22027]{font-size:24px}.manage-cabinet-card__actions[data-v-21a22027]{align-items:center;gap:8px;margin-left:auto;display:flex}.manage-cabinet-card__edit[data-v-21a22027]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.manage-cabinet-card__delete[data-v-21a22027]{color:var(--color-danger);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.manage-cabinet-card strong[data-v-21a22027]{color:var(--color-text);font-size:15px}.manage-cabinet-card__tag[data-v-21a22027]{background:var(--color-info-bg);color:var(--color-primary);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:600}.manage-cabinet-card__hint[data-v-21a22027]{color:var(--color-text-muted);font-size:12px}.manage-cabinet-add[data-v-21a22027]{border:2px dashed var(--color-primary-border);border-radius:var(--radius-lg);min-height:140px;color:var(--color-primary);cursor:pointer;background:#eef2ff73;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.manage-cabinet-add span[data-v-21a22027]:first-child{background:var(--gradient-primary);color:#fff;text-align:center;border-radius:50%;width:36px;height:36px;font-size:22px;line-height:36px}.manage-empty-inline[data-v-21a22027],.manage-content-empty[data-v-21a22027]{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.manage-content-empty[data-v-21a22027]{flex:1}.manage-content-empty__icon[data-v-21a22027]{opacity:.7;font-size:48px}.manage-content-empty h3[data-v-21a22027]{color:var(--color-text);margin:0;font-size:18px}.manage-content-empty p[data-v-21a22027]{margin:0;font-size:14px}.manage-workspace-cta[data-v-21a22027]{border:1px dashed var(--color-primary-border);border-radius:var(--radius-lg);text-align:center;background:linear-gradient(#f8faff 0%,#fff 100%);padding:32px 24px}.manage-workspace-cta p[data-v-21a22027]{color:var(--color-text-secondary);margin:0 0 16px;font-size:14px;line-height:1.6}.manage-customer-panel[data-v-21a22027]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-primary-surface-soft);padding:18px}.manage-customer-panel__tip[data-v-21a22027]{color:var(--color-text-secondary);margin:0 0 14px;font-size:14px;line-height:1.6}.manage-customer-panel__block h4[data-v-21a22027]{margin:0 0 8px;font-size:14px}.manage-customer-panel__block p[data-v-21a22027]{white-space:pre-wrap;color:var(--color-text);margin:0;line-height:1.6}.manage-customer-panel__meta[data-v-21a22027]{color:var(--color-text-muted);flex-wrap:wrap;gap:16px;margin-top:14px;font-size:13px;display:flex}.column-section[data-v-21a22027]{min-height:420px}.column-section .app-section__body[data-v-21a22027]{max-height:calc(100dvh - 220px);overflow-y:auto}.column-empty[data-v-21a22027]{text-align:center;color:var(--color-text-muted);margin:24px 0 0;font-size:13px}.main-tabs[data-v-21a22027]{margin-bottom:12px}.status-tabs-scroll[data-v-21a22027]{-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none;width:100%;min-width:0;max-width:100%;margin-bottom:14px;display:block;overflow:auto hidden}.status-tabs-scroll[data-v-21a22027]::-webkit-scrollbar{display:none}.status-tabs[data-v-21a22027]{border-bottom:1px solid var(--color-border);box-sizing:border-box;flex-wrap:nowrap;align-items:stretch;width:max-content;min-width:0;max-width:none;padding:0 4px;display:flex}.status-tab[data-v-21a22027]{min-height:40px;color:var(--color-text-muted);white-space:nowrap;cursor:pointer;touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex-shrink:0;align-items:center;gap:4px;margin-bottom:-1px;padding:0 14px 10px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.status-tab[data-v-21a22027]:hover{color:var(--color-text-secondary)}.status-tab.is-active[data-v-21a22027]{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.status-tab-badge[data-v-21a22027]{background:var(--color-danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.tab-count[data-v-21a22027]{background:#0000000f;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.status-tab .tab-count[data-v-21a22027]{min-width:auto;height:auto;font-size:12px;font-weight:inherit;opacity:.7;background:0 0;border-radius:0;padding:0}.status-tab.is-active .tab-count[data-v-21a22027]{opacity:.85}.app-tab.is-active .tab-count[data-v-21a22027]{background:#ffffff59}.app-tab:not(.is-active) .tab-count[data-v-21a22027]{color:var(--color-text-muted);background:#e5e7eb}.project-list-panel[data-v-21a22027]{flex-direction:column;flex:1;gap:0;width:100%;min-width:0;max-width:100%;min-height:0;display:flex;overflow-x:clip}@media (width<=767px){.manage-page.app-page--list-fill>.app-main[data-v-21a22027]{padding-left:10px;padding-right:10px}.manage-page .manage-mobile-section .app-section__body[data-v-21a22027]{min-width:0;padding:10px}.manage-page .manage-mobile-section .status-tabs-scroll[data-v-21a22027],.manage-page .manage-mobile-toolbar[data-v-21a22027]{padding-left:10px;padding-right:10px}}.manage-mobile-section .status-tabs-scroll[data-v-21a22027]{border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);border-radius:var(--radius-xl) var(--radius-xl) 0 0;cursor:grab;box-sizing:border-box;margin-bottom:0;padding:0 10px}.manage-mobile-section .status-tabs-scroll[data-v-21a22027]:active{cursor:grabbing}.manage-mobile-section .status-tabs[data-v-21a22027]{border-bottom:none;padding:0}.manage-mobile-toolbar[data-v-21a22027]{background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);box-sizing:border-box;padding:12px 10px 0;display:flex}.manage-mobile-create-btn[data-v-21a22027]{flex:1;min-height:44px}.app-card--project[data-v-21a22027]{align-items:start}.app-card-grid--rows .app-card--project[data-v-21a22027]{grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:start}.app-card-grid--rows .app-card--project .app-card__icon[data-v-21a22027]{grid-area:1/1}.app-card-grid--rows .app-card--project .app-card__body[data-v-21a22027]{grid-area:1/2}.app-card-grid--rows .app-card--project .app-card__actions[data-v-21a22027]{border-top:1px solid var(--color-border-soft);flex-wrap:nowrap;grid-area:2/1/auto/-1;align-self:stretch;gap:8px;width:100%;max-width:none;margin-top:10px;padding-top:10px;display:flex}.app-card-grid--rows .app-card--project .app-card__actions .app-btn[data-v-21a22027]{flex:1 1 0;min-width:0;min-height:36px;padding-left:8px;padding-right:8px}.app-card--project.is-locked[data-v-21a22027]{cursor:default}.app-card--project.is-locked[data-v-21a22027]:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border);transform:none}.app-card--project .app-card__icon[data-v-21a22027]{margin-top:2px}.app-card__body[data-v-21a22027]{flex-direction:column;grid-column:2;gap:2px;min-width:0;display:flex}.app-card__title-row[data-v-21a22027]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-card--project .app-card__title[data-v-21a22027]{grid-area:auto}.app-card--project .app-card__meta[data-v-21a22027]{grid-area:auto;margin-top:0;line-height:1.4}.dialog-wide[data-v-21a22027]{max-width:640px}.approve-dialog[data-v-21a22027]{max-width:860px}.approve-dialog__body[data-v-21a22027]{max-height:min(60vh,520px);margin-top:12px;overflow-y:auto}.approve-dialog__hint[data-v-21a22027]{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fcd34d;margin-bottom:12px;padding:12px 14px;font-size:14px}.approve-dialog__hint p[data-v-21a22027]{margin:0 0 10px}.approve-confirm-box[data-v-21a22027]{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fde68a;margin-top:12px;padding:16px;font-size:14px;line-height:1.6}.approve-confirm-box p[data-v-21a22027]{margin:0 0 10px}.approve-confirm-box p[data-v-21a22027]:last-child{margin-bottom:0}.dialog-head[data-v-21a22027]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dialog-head .app-dialog__title[data-v-21a22027]{margin:0}.close-btn[data-v-21a22027]{width:var(--touch-min);height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;color:var(--color-text-secondary);font-size:22px;line-height:1}@media (width<=1100px){.manage-layout[data-v-21a22027]{grid-template-columns:280px minmax(0,1fr)}.manage-cabinet-grid[data-v-21a22027]{grid-template-columns:repeat(2,minmax(0,1fr))}}.quote-empty[data-v-21a22027]{text-align:center;color:var(--color-text-muted);padding:72px 20px;font-size:14px}.quote-card-grid[data-v-21a22027]{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.quote-card-grid[data-v-21a22027]>*{height:100%;min-height:0}.quote-card-grid--mobile[data-v-21a22027]{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.quote-card-grid--mobile[data-v-21a22027]>*{height:auto}.quote-card[data-v-21a22027]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);cursor:pointer;flex-direction:column;gap:10px;padding:18px 18px 16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.quote-card[data-v-21a22027]:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.project-card.is-active[data-v-21a22027]{border-color:var(--color-primary-border-hover);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .15), var(--shadow-card-hover)}.project-card.is-locked[data-v-21a22027]:hover{border-color:var(--color-border-soft);box-shadow:var(--shadow-card);transform:none}.quote-card__head[data-v-21a22027]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.quote-card__head-tags[data-v-21a22027]{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.quote-card__title[data-v-21a22027]{color:var(--color-text);margin:0;font-size:16px;font-weight:700;line-height:1.4}.quote-card__status[data-v-21a22027]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.status-pending[data-v-21a22027]{background:var(--color-warning-bg);color:#b45309}.status-won[data-v-21a22027]{background:var(--color-success-bg);color:#047857}.status-sent[data-v-21a22027]{background:var(--color-info-bg);color:var(--color-primary)}.status-expired[data-v-21a22027]{background:var(--color-danger-bg);color:var(--color-danger)}.quote-card__project[data-v-21a22027],.quote-card__customer[data-v-21a22027]{color:var(--color-text-secondary);align-items:center;gap:6px;margin:0;font-size:13px;line-height:1.5;display:flex}.quote-card__project[data-v-21a22027]{color:var(--color-text);font-weight:600}.quote-card__project-icon[data-v-21a22027],.quote-card__customer-icon[data-v-21a22027]{flex-shrink:0;font-size:14px}.quote-card__summary[data-v-21a22027]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.6}.quote-card__footer[data-v-21a22027]{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:4px;padding-top:14px;display:flex}.quote-card__date-block[data-v-21a22027]{flex-direction:column;gap:4px;display:flex}.quote-card__date-block--start[data-v-21a22027]{text-align:left;align-items:flex-start}.quote-card__date-label[data-v-21a22027]{color:var(--color-text-muted);font-size:11px}.quote-card__date[data-v-21a22027]{color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.project-card__actions[data-v-21a22027]{align-items:flex-end;min-height:76px;display:flex}.project-card__actions[data-v-21a22027] .project-action-buttons{flex-wrap:wrap;place-content:flex-end flex-start;width:100%}.project-card__actions[data-v-21a22027] .project-action-buttons .app-btn{min-height:34px}@media (width<=1200px){.quote-card-grid[data-v-21a22027]:not(.quote-card-grid--mobile){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.quote-card-grid[data-v-21a22027]:not(.quote-card-grid--mobile){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.quote-card-grid[data-v-21a22027]:not(.quote-card-grid--mobile){grid-template-columns:1fr}}.component-picker[data-v-a18198ba]{flex-direction:column;gap:16px;display:flex}.component-picker__loading[data-v-a18198ba],.component-picker__empty[data-v-a18198ba],.component-picker__empty-row[data-v-a18198ba]{text-align:center;color:var(--color-text-muted);padding:32px 16px;font-size:14px}.component-picker__toolbar[data-v-a18198ba]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.component-picker__search-wrap[data-v-a18198ba]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex:240px;align-items:center;gap:10px;min-width:0;min-height:40px;padding:0 12px;display:flex}.component-picker__search-wrap[data-v-a18198ba]:focus-within{border-color:var(--color-primary-border);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12)}.component-picker__search[data-v-a18198ba]{background:0 0;border:none;outline:none;flex:1;min-width:0;min-height:38px;padding:0;font-size:14px}.component-picker__brand[data-v-a18198ba]{min-width:140px}.component-picker__tabs[data-v-a18198ba]{flex-wrap:wrap;gap:8px;display:flex}.component-picker__tab[data-v-a18198ba]{border:1px solid var(--color-border);min-height:34px;color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.component-picker__tab.is-active[data-v-a18198ba]{border-color:var(--color-primary);background:var(--color-info-bg);color:var(--color-primary)}.component-picker__table-wrap[data-v-a18198ba]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:#fff;overflow:auto}.component-picker__table[data-v-a18198ba]{border-collapse:collapse;width:100%;min-width:920px;font-size:13px}.component-picker__table th[data-v-a18198ba],.component-picker__table td[data-v-a18198ba]{border-bottom:1px solid var(--color-border-soft);text-align:left;vertical-align:middle;padding:12px 14px}.component-picker__table th[data-v-a18198ba]{color:var(--color-text-secondary);white-space:nowrap;background:#f8fafc;font-weight:600}.component-picker__model[data-v-a18198ba]{color:var(--color-text-muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.component-picker__price[data-v-a18198ba],.component-picker__subtotal[data-v-a18198ba]{color:var(--color-primary);white-space:nowrap;font-weight:700}.component-picker__stepper[data-v-a18198ba]{align-items:center;gap:8px;display:inline-flex}.component-picker__stepper button[data-v-a18198ba]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;width:28px;height:28px}.component-picker__remove[data-v-a18198ba]{color:var(--color-danger);cursor:pointer;background:0 0;border:none;font-size:13px}.component-picker__footer[data-v-a18198ba]{color:var(--color-text-secondary);justify-content:flex-end;align-items:baseline;gap:12px;padding-top:4px;font-size:14px;display:flex}.component-picker__footer strong[data-v-a18198ba]{color:var(--color-primary);font-size:22px}.component-picker__actions[data-v-a18198ba]{justify-content:flex-end;gap:10px;display:flex}.component-picker__dialog[data-v-a18198ba]{max-width:720px}.component-picker__picker-list[data-v-a18198ba]{flex-direction:column;gap:8px;max-height:420px;margin-top:16px;display:flex;overflow:auto}.component-picker__picker-item[data-v-a18198ba]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);text-align:left;cursor:pointer;background:#fff;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:12px 14px;display:flex}.component-picker__picker-item[data-v-a18198ba]:hover{border-color:var(--color-primary-border);background:#f8faff}.component-picker__picker-tag[data-v-a18198ba]{background:var(--color-info-bg);color:var(--color-primary);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.component-picker__picker-price[data-v-a18198ba]{color:var(--color-text-muted);font-size:12px}@media (width<=768px){.component-picker__toolbar[data-v-a18198ba]{flex-direction:column;align-items:stretch}.component-picker__brand[data-v-a18198ba]{width:100%}}.workspace-page .app-loading[data-v-e187e4ed]{padding:80px 0}.workspace[data-v-e187e4ed]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);min-height:calc(100dvh - 120px);box-shadow:var(--shadow-card);grid-template-columns:220px minmax(0,1fr);gap:0;display:grid;overflow:hidden}.workspace-stepper[data-v-e187e4ed]{border-right:1px solid var(--color-border-soft);background:#fafbfc;padding:24px 0}.workspace-stepper__brand[data-v-e187e4ed]{color:var(--color-text-secondary);padding:0 20px 20px;font-size:13px;font-weight:700}.workspace-stepper__list[data-v-e187e4ed]{margin:0;padding:0;list-style:none}.workspace-stepper__item[data-v-e187e4ed]{position:relative}.workspace-stepper__item.is-active[data-v-e187e4ed]:before{content:"";background:var(--color-primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.workspace-stepper__btn[data-v-e187e4ed]{width:100%;color:var(--color-text-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:12px 20px;font-size:14px;font-weight:500;display:flex}.workspace-stepper__btn[data-v-e187e4ed]:disabled{opacity:.45;cursor:not-allowed}.workspace-stepper__item.is-active .workspace-stepper__btn[data-v-e187e4ed]{color:var(--color-primary);font-weight:700}.workspace-stepper__item.is-done .workspace-stepper__btn[data-v-e187e4ed]{color:var(--color-text-secondary)}.workspace-stepper__num[data-v-e187e4ed]{border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.workspace-stepper__item.is-active .workspace-stepper__num[data-v-e187e4ed]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.workspace-main[data-v-e187e4ed]{flex-direction:column;min-width:0;display:flex}.workspace-main__head[data-v-e187e4ed]{justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 32px 0;display:flex}.workspace-main__head h2[data-v-e187e4ed]{margin:0 0 8px;font-size:24px;font-weight:700}.workspace-main__head p[data-v-e187e4ed]{color:var(--color-text-muted);margin:0;font-size:14px}.workspace-main__body[data-v-e187e4ed]{flex:1;padding:24px 32px;overflow-y:auto}.workspace-form__grid[data-v-e187e4ed]{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.workspace-form__grid--3[data-v-e187e4ed]{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-auxiliary__body[data-v-e187e4ed]{flex-direction:column;gap:18px;display:flex}.workspace-auxiliary .workspace-form__grid[data-v-e187e4ed]:last-child{margin-bottom:0}.workspace-summary[data-v-e187e4ed]{flex-direction:column;gap:16px;display:flex}.workspace-summary__alert[data-v-e187e4ed]{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fcd34d;padding:14px 16px;font-size:14px}.workspace-summary__alert p[data-v-e187e4ed]{margin:0 0 10px}.workspace-summary__pending[data-v-e187e4ed]{flex-direction:column;gap:8px;margin:0 0 12px;padding-left:18px;display:flex}.workspace-summary__pending li[data-v-e187e4ed]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.workspace-field[data-v-e187e4ed]{flex-direction:column;gap:8px;display:flex}.workspace-field--full[data-v-e187e4ed]{margin-top:4px}.workspace-field span[data-v-e187e4ed]{color:var(--color-text);font-size:14px;font-weight:600}.workspace-input[data-v-e187e4ed]{border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;width:100%;min-height:42px;padding:10px 14px;font-family:inherit;font-size:14px}.workspace-input.is-readonly[data-v-e187e4ed]{color:var(--color-text-secondary);background:#f8fafc}textarea.workspace-input[data-v-e187e4ed]{resize:vertical;min-height:120px}.workspace-meta[data-v-e187e4ed]{color:var(--color-text-muted);flex-wrap:wrap;gap:16px;margin-top:16px;font-size:13px;display:flex}.workspace-cabinet-config[data-v-e187e4ed]{flex-direction:column;gap:20px;display:flex}.cabinet-target-bar[data-v-e187e4ed]{border-bottom:1px solid var(--color-border-soft);flex-direction:column;gap:10px;padding-bottom:4px;display:flex}.cabinet-target-bar__systems[data-v-e187e4ed],.cabinet-target-bar__cabinets[data-v-e187e4ed]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cabinet-target-pill-wrap[data-v-e187e4ed]{border:1px solid var(--color-border);background:#fff;border-radius:999px;align-items:center;display:inline-flex;overflow:hidden}.cabinet-target-pill-wrap.is-active[data-v-e187e4ed]{border-color:var(--color-primary);background:var(--color-info-bg)}.cabinet-target-pill-wrap.is-active .cabinet-target-pill[data-v-e187e4ed]{color:var(--color-primary)}.cabinet-target-pill-wrap.is-active .cabinet-target-pill__remove[data-v-e187e4ed]{border-left-color:var(--color-primary-border);color:var(--color-primary)}.cabinet-target-pill[data-v-e187e4ed]{min-height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:0;padding:0 12px;font-size:12px;font-weight:600}.cabinet-target-pill__remove[data-v-e187e4ed]{border:none;border-left:1px solid var(--color-border);min-width:28px;min-height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;padding:0 8px;font-size:16px;line-height:1}.cabinet-target-pill__remove[data-v-e187e4ed]:hover:not(:disabled){color:var(--color-danger);background:#fee2e2}.cabinet-target-pill__remove[data-v-e187e4ed]:disabled{opacity:.5;cursor:not-allowed}.cabinet-target-add[data-v-e187e4ed]{border:1px dashed var(--color-primary-border);background:var(--color-primary-surface-soft);min-height:32px;color:var(--color-primary);cursor:pointer;border-radius:999px;padding:0 12px;font-size:12px;font-weight:600}.cabinet-config-layout[data-v-e187e4ed]{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:24px;display:grid}.cabinet-preview[data-v-e187e4ed]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);text-align:center;background:#f8fafc;padding:24px 20px}.cabinet-preview__diagram[data-v-e187e4ed]{justify-content:center;margin-bottom:20px;display:flex}.cabinet-preview__box[data-v-e187e4ed]{background:linear-gradient(#fff 0%,#f1f5f9 100%);border:2px solid #94a3b8;border-radius:6px;width:120px;height:200px;position:relative}.cabinet-preview__inner[data-v-e187e4ed]{border:1px dashed #cbd5e1;border-radius:4px;justify-content:center;align-items:center;height:48px;display:flex;position:absolute;top:18px;left:14px;right:14px}.cabinet-preview__label[data-v-e187e4ed]{color:var(--color-text-muted);font-size:11px;font-weight:600}.cabinet-preview__handle[data-v-e187e4ed]{background:#cbd5e1;border-radius:4px;width:8px;height:28px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.cabinet-preview__info strong[data-v-e187e4ed]{color:var(--color-text);margin-bottom:8px;font-size:15px;display:block}.cabinet-preview__info p[data-v-e187e4ed]{color:var(--color-text-muted);margin:0 0 4px;font-size:13px;line-height:1.5}.cabinet-preview__price[data-v-e187e4ed]{font-weight:700;color:var(--color-primary)!important;margin-top:10px!important;font-size:14px!important}.cabinet-config-form[data-v-e187e4ed]{flex-direction:column;gap:18px;display:flex}.cabinet-price-panel[data-v-e187e4ed]{border-radius:var(--radius-md);color:#065f46;background:#ecfdf5;border:1px solid #bbf7d0;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px 14px;font-size:13px;display:flex}.cabinet-price-panel strong[data-v-e187e4ed]{color:#047857;font-size:15px}.cabinet-config-form__grid[data-v-e187e4ed]{gap:16px;display:grid}.cabinet-config-form__grid--3[data-v-e187e4ed]{grid-template-columns:repeat(3,minmax(0,1fr))}.cabinet-config-form__grid--2[data-v-e187e4ed]{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-cabinet__systems[data-v-e187e4ed]{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.workspace-system-pill[data-v-e187e4ed]{border:1px solid var(--color-border);min-height:36px;color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.workspace-system-pill.is-active[data-v-e187e4ed]{border-color:var(--color-primary);background:var(--color-info-bg);color:var(--color-primary)}.workspace-cabinet__grid[data-v-e187e4ed]{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.workspace-cabinet-card[data-v-e187e4ed]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);cursor:pointer;background:#fff;flex-direction:column;gap:8px;padding:18px;transition:border-color .15s,box-shadow .15s;display:flex}.workspace-cabinet-card.is-active[data-v-e187e4ed]{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12)}.workspace-cabinet-card strong[data-v-e187e4ed]{font-size:15px}.workspace-cabinet-card span[data-v-e187e4ed]{color:var(--color-text-muted);font-size:12px}.workspace-cabinet-add[data-v-e187e4ed]{border:2px dashed var(--color-primary-border);border-radius:var(--radius-md);background:var(--color-primary-surface-soft);min-height:100px;color:var(--color-primary);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.workspace-cabinet-add span[data-v-e187e4ed]:first-child{background:var(--gradient-primary);color:#fff;text-align:center;border-radius:50%;width:32px;height:32px;font-size:20px;line-height:32px}.workspace-component__head[data-v-e187e4ed]{border-radius:var(--radius-md);background:#f8faff;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:14px;display:flex}.workspace-tip[data-v-e187e4ed]{text-align:center;color:var(--color-text-muted);padding:32px}.workspace-tip--inline[data-v-e187e4ed]{text-align:left;padding:0 0 12px;font-size:13px}.workspace-customer-preview[data-v-e187e4ed]{border:1px solid var(--color-primary-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);box-shadow:0 1px 3px rgba(var(--color-primary-rgb), .08);margin-bottom:16px;padding:16px 18px}.workspace-customer-preview__title[data-v-e187e4ed]{color:var(--color-text);margin:0 0 12px;font-size:14px;font-weight:700}.workspace-customer-preview__grid[data-v-e187e4ed]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0;display:grid}.workspace-customer-preview__item[data-v-e187e4ed]{min-width:0}.workspace-customer-preview__item dt[data-v-e187e4ed]{color:var(--color-text-muted);margin:0 0 4px;font-size:12px;font-weight:500}.workspace-customer-preview__item dd[data-v-e187e4ed]{color:var(--color-text);word-break:break-word;margin:0;font-size:14px;font-weight:600}.workspace-field em[data-v-e187e4ed]{color:#dc2626;font-style:normal}.workspace-alert[data-v-e187e4ed]{border-radius:var(--radius-md);color:var(--color-danger-dark);background:#fef2f2;border:1px solid #fecaca;margin:0;padding:12px 14px;font-size:14px}.cabinet-cascade-grid[data-v-e187e4ed]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.cabinet-cascade-grid .workspace-field span em[data-v-e187e4ed]{color:#dc2626;font-style:normal}.cabinet-spec-readonly[data-v-e187e4ed]{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:#f8fafc;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:12px 14px;font-size:13px;display:grid}.cabinet-spec-readonly__row[data-v-e187e4ed]{flex-direction:column;gap:4px;display:flex}.cabinet-spec-readonly__row span[data-v-e187e4ed]{color:var(--color-text-muted)}.cabinet-spec-readonly__row strong[data-v-e187e4ed]{color:var(--color-text);font-weight:600}.cabinet-target-bar__cabinets--flat[data-v-e187e4ed]{padding-bottom:2px}.workspace-footer[data-v-e187e4ed]{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;gap:16px;padding:16px 32px 24px;display:flex}.workspace-footer__quote[data-v-e187e4ed]{color:var(--color-text-muted);font-size:13px}.workspace-footer__actions[data-v-e187e4ed]{gap:10px;display:flex}@media (width<=900px){.workspace[data-v-e187e4ed]{grid-template-columns:1fr}.workspace-stepper[data-v-e187e4ed]{border-right:none;border-bottom:1px solid var(--color-border-soft);padding:16px}.workspace-stepper__list[data-v-e187e4ed]{gap:8px;display:flex;overflow-x:auto}.workspace-stepper__item.is-active[data-v-e187e4ed]:before{display:none}.workspace-stepper__btn[data-v-e187e4ed]{white-space:nowrap;padding:8px 12px}.workspace-form__grid[data-v-e187e4ed],.workspace-customer-preview__grid[data-v-e187e4ed],.workspace-cabinet__grid[data-v-e187e4ed],.cabinet-config-layout[data-v-e187e4ed],.cabinet-cascade-grid[data-v-e187e4ed],.cabinet-config-form__grid--3[data-v-e187e4ed],.cabinet-config-form__grid--2[data-v-e187e4ed]{grid-template-columns:1fr}.cabinet-config-layout[data-v-e187e4ed]{flex-direction:column;display:flex}.workspace-footer[data-v-e187e4ed]{flex-direction:column;align-items:stretch}}.cabinet-page[data-v-ad54bea6]{flex-direction:column;display:flex}.cabinet-page-head[data-v-ad54bea6]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;padding:18px 20px;display:flex}.cabinet-page-head__title[data-v-ad54bea6]{color:var(--color-text);margin:0 0 4px;font-size:20px;font-weight:700}.cabinet-page-head__breadcrumb[data-v-ad54bea6]{color:var(--color-text-muted);margin:0;font-size:13px}.header-inner-wide[data-v-ad54bea6]{width:100%;max-width:1400px}.header-text[data-v-ad54bea6]{min-width:0}.header-text .app-header__title[data-v-ad54bea6]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.breadcrumb[data-v-ad54bea6]{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:12px;overflow:hidden}.type-badge[data-v-ad54bea6]{flex-shrink:0}.page-main[data-v-ad54bea6]{box-sizing:border-box;width:100%;max-width:100%;padding-bottom:calc(80px + var(--safe-bottom) + var(--page-padding));flex:1}.page-main.view-mode[data-v-ad54bea6]{padding-bottom:calc(var(--safe-bottom) + var(--page-padding))}.config-grid[data-v-ad54bea6]{flex-direction:column;gap:16px;width:100%;display:flex}.card[data-v-ad54bea6]{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card);box-sizing:border-box;width:100%;overflow:hidden}.tab-hint[data-v-ad54bea6]{color:var(--color-text-muted);margin:-12px 0 16px;font-size:12px}.tab-loading[data-v-ad54bea6],.empty-catalog[data-v-ad54bea6]{text-align:center;color:var(--color-text-muted);padding:48px 16px;font-size:14px}.card-head[data-v-ad54bea6]{border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.card-head h2[data-v-ad54bea6]{color:var(--color-text);margin:0;font-size:15px;font-weight:600}.add-btn[data-v-ad54bea6]{border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;background:#fff;padding:6px 14px;font-size:13px}.card-body[data-v-ad54bea6]{padding:16px}.empty-row[data-v-ad54bea6]{color:var(--color-text-muted);margin:0;font-size:13px}.table-wrap[data-v-ad54bea6]{overflow-x:auto}.selection-table[data-v-ad54bea6]{border-collapse:collapse;width:100%;font-size:13px}.selection-table th[data-v-ad54bea6]{text-align:left;color:#6b7280;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #f3f4f6;padding:10px 12px;font-weight:500}.selection-table td[data-v-ad54bea6]{color:#374151;vertical-align:middle;border-bottom:1px solid #f9fafb;padding:10px 12px}.selection-table select[data-v-ad54bea6]{width:100%;min-width:120px}.action-col[data-v-ad54bea6]{text-align:center;width:72px}.stepper[data-v-ad54bea6]{border:1px solid #e5e7eb;border-radius:8px;align-items:center;display:inline-flex;overflow:hidden}.stepper button[data-v-ad54bea6]{cursor:pointer;color:#374151;background:#f9fafb;border:none;width:32px;height:32px;font-size:16px}.stepper span[data-v-ad54bea6]{text-align:center;min-width:36px;font-weight:500}.remove-btn[data-v-ad54bea6]{color:var(--color-danger-dark);cursor:pointer;background:#fee2e2;border:none;border-radius:6px;padding:4px 10px;font-size:12px}.remove-btn--block[data-v-ad54bea6]{width:100%;margin-top:8px;padding:8px}.selection-cards[data-v-ad54bea6]{flex-direction:column;gap:12px;display:flex}.selection-card[data-v-ad54bea6]{border-radius:var(--radius-md);background:var(--color-primary-surface-soft);border:1px solid #e5e7eb;padding:12px}.selection-card__field[data-v-ad54bea6]{align-items:center;gap:12px;margin-bottom:10px;display:flex}.selection-card__field label[data-v-ad54bea6]{color:#6b7280;flex-shrink:0;width:40px;font-size:13px}.selection-card__field select[data-v-ad54bea6]{flex:1;min-width:0}.selection-card__field--qty[data-v-ad54bea6]{justify-content:space-between}.loading-state[data-v-ad54bea6]{color:#9ca3af;flex:1;justify-content:center;align-items:center;display:flex}.page-footer[data-v-ad54bea6]{padding:12px var(--page-padding);padding-bottom:calc(12px + var(--safe-bottom));z-index:20;background:#fff;border-top:1px solid #e5e7eb;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #0000000a}.footer-inner[data-v-ad54bea6]{flex-wrap:wrap;justify-content:center;gap:12px;max-width:1400px;margin:0 auto;display:flex}.btn-outline[data-v-ad54bea6],.btn-primary[data-v-ad54bea6],.btn-secondary[data-v-ad54bea6]{min-height:var(--touch-min);border-radius:var(--radius-md);cursor:pointer;box-shadow:none;background:0 0;padding:0 20px;font-size:14px}.btn-outline[data-v-ad54bea6]{color:var(--color-text-muted);border:1px solid #cbd5e1}.btn-primary[data-v-ad54bea6]{border:1px solid var(--color-primary);color:var(--color-primary);min-width:160px;font-weight:600}.btn-primary[data-v-ad54bea6]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-ad54bea6]{color:var(--color-text-secondary);border:1px solid #cbd5e1}@media (width>=1200px){.cabinet-page .page-main.app-main--wide[data-v-ad54bea6]:not(.view-mode){max-width:1400px;margin-left:auto;margin-right:auto}}@media (width<=767px){.footer-inner[data-v-ad54bea6]{flex-direction:column}.btn-outline[data-v-ad54bea6],.btn-primary[data-v-ad54bea6],.btn-secondary[data-v-ad54bea6]{width:100%}.btn-primary[data-v-ad54bea6]{order:-1}}.quote-list-page .app-main[data-v-de5a1352]{flex-direction:column;flex:1;gap:20px;min-height:0;display:flex}.quote-toolbar[data-v-de5a1352]{flex-direction:column;flex-shrink:0;align-items:stretch;gap:12px;display:flex}.quote-empty[data-v-de5a1352]{text-align:center;color:var(--color-text-muted);padding:72px 20px;font-size:14px}.quote-card-grid[data-v-de5a1352]{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.quote-card[data-v-de5a1352]{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);cursor:pointer;flex-direction:column;gap:10px;padding:18px 18px 16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.quote-card[data-v-de5a1352]:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.quote-card__head[data-v-de5a1352]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.quote-card__head-tags[data-v-de5a1352]{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.quote-card__title[data-v-de5a1352]{color:var(--color-text);margin:0;font-size:16px;font-weight:700;line-height:1.4}.quote-card__status[data-v-de5a1352]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.status-pending[data-v-de5a1352],.status-processing[data-v-de5a1352],.status-auditing[data-v-de5a1352]{background:var(--color-warning-bg);color:#b45309}.status-won[data-v-de5a1352]{background:var(--color-success-bg);color:#047857}.status-sent[data-v-de5a1352]{background:var(--color-info-bg);color:var(--color-primary)}.status-expired[data-v-de5a1352]{background:var(--color-danger-bg);color:var(--color-danger)}.quote-card__no[data-v-de5a1352]{color:var(--color-text-muted);margin:0;font-size:12px}.quote-card__project[data-v-de5a1352],.quote-card__customer[data-v-de5a1352]{color:var(--color-text-secondary);align-items:center;gap:6px;margin:0;font-size:13px;line-height:1.5;display:flex}.quote-card__project[data-v-de5a1352]{color:var(--color-text);font-weight:600}.quote-card__project-icon[data-v-de5a1352],.quote-card__customer-icon[data-v-de5a1352]{flex-shrink:0;font-size:14px}.quote-card__summary[data-v-de5a1352]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.6}.quote-card__footer[data-v-de5a1352]{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:4px;padding-top:14px;display:flex}.quote-card__price-block[data-v-de5a1352],.quote-card__date-block[data-v-de5a1352]{flex-direction:column;gap:4px;display:flex}.quote-card__date-block[data-v-de5a1352]{text-align:right;align-items:flex-end}.quote-card__price-label[data-v-de5a1352],.quote-card__date-label[data-v-de5a1352]{color:var(--color-text-muted);font-size:11px}.quote-card__price[data-v-de5a1352]{color:var(--color-primary);font-size:22px;font-weight:700;line-height:1.2}.quote-card__date[data-v-de5a1352]{color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.quote-card__review[data-v-de5a1352]{border:1px solid var(--color-primary-border);background:var(--color-primary-surface);color:var(--color-primary);cursor:pointer;border-radius:999px;align-self:flex-start;padding:4px 12px;font-size:12px;font-weight:600}.quote-card__review[data-v-de5a1352]:hover{background:#e0e7ff}.app-form-block[data-v-de5a1352]{flex-direction:column;gap:10px;margin-top:16px;display:flex}.app-empty-box[data-v-de5a1352]{border-radius:var(--radius-md);background:var(--color-bg-muted,#f3f4f6);color:var(--color-text-muted);padding:12px;font-size:13px}@media (width<=1200px){.quote-card-grid[data-v-de5a1352]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.quote-card-grid[data-v-de5a1352]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.quote-card-grid[data-v-de5a1352]{grid-template-columns:1fr}.quote-card__price[data-v-de5a1352]{font-size:20px}}.perm-page .app-main[data-v-6c720f54]{gap:12px}.perm-tabs[data-v-6c720f54]{flex-wrap:wrap;gap:8px;padding:0 0 4px;display:flex}.perm-tab[data-v-6c720f54]{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px}.perm-tab.is-active[data-v-6c720f54]{border-color:var(--color-primary);color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08);font-weight:600}.panel-msg[data-v-6c720f54]{border-radius:var(--radius-md);margin:0 0 12px;padding:10px 12px;font-size:13px}.panel-msg--error[data-v-6c720f54]{background:var(--color-danger-bg);color:var(--color-danger)}.panel-msg--success[data-v-6c720f54]{color:#047857;background:#ecfdf5}.quote-empty[data-v-6c720f54]{text-align:center;color:var(--color-text-muted);padding:48px 20px;font-size:14px}.role-tag[data-v-6c720f54]{border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.role-tag--super-admin[data-v-6c720f54]{color:#b45309;background:#fef3c7}.role-tag--admin[data-v-6c720f54]{color:#6d28d9;background:#ede9fe}.role-tag--executor[data-v-6c720f54]{color:#047857;background:#ecfdf5}.role-tag--user[data-v-6c720f54]{color:#6b7280;background:#f3f4f6}.perm-dialog[data-v-6c720f54]{width:min(560px,100vw - 32px);max-height:calc(100vh - 48px);overflow-y:auto}.perm-dialog__hint[data-v-6c720f54]{color:var(--color-text-muted);margin:12px 0 0;font-size:13px;line-height:1.5}.perm-dialog__groups[data-v-6c720f54]{gap:12px;margin-top:16px;display:grid}.perm-dialog__group h4[data-v-6c720f54]{margin:0 0 8px;font-size:14px}.perm-dialog__group ul[data-v-6c720f54]{gap:6px;margin:0;padding:0;list-style:none;display:grid}.perm-dialog__group li[data-v-6c720f54]{color:var(--color-text-muted);padding-left:18px;font-size:13px;position:relative}.perm-dialog__group li[data-v-6c720f54]:before{content:"○";color:#d1d5db;position:absolute;left:0}.perm-dialog__group li.is-granted[data-v-6c720f54]{color:var(--color-text);font-weight:500}.perm-dialog__group li.is-granted[data-v-6c720f54]:before{content:"●";color:var(--color-primary)}.approval-page .app-section__head[data-v-398b8b21],.status-tabs-scroll[data-v-398b8b21]{flex-shrink:0}.status-tabs-scroll[data-v-398b8b21]{scrollbar-width:none;border-bottom:1px solid var(--color-border-soft);padding:0 12px;overflow-x:auto}.status-tabs-scroll[data-v-398b8b21]::-webkit-scrollbar{display:none}.status-tabs[data-v-398b8b21]{border-bottom:1px solid var(--color-border);gap:0;width:max-content;min-width:100%;display:flex}.status-tab[data-v-398b8b21]{min-height:40px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;margin-bottom:-1px;padding:0 14px 10px;font-size:14px;font-weight:500}.status-tab.is-active[data-v-398b8b21]{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.quote-empty[data-v-398b8b21]{text-align:center;color:var(--color-text-muted);padding:72px 20px;font-size:14px}.panel-msg[data-v-398b8b21]{border-radius:var(--radius-md);margin:0 0 12px;padding:10px 12px;font-size:13px}.panel-msg--error[data-v-398b8b21]{background:var(--color-danger-bg);color:var(--color-danger)}.panel-msg--success[data-v-398b8b21]{color:#047857;background:#ecfdf5}.approval-dialog-backdrop[data-v-398b8b21]{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.approval-dialog[data-v-398b8b21]{border-radius:var(--radius-xl);background:var(--color-surface);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:20px}.approval-dialog h3[data-v-398b8b21]{margin:0 0 8px}.approval-dialog p[data-v-398b8b21]{color:var(--color-text-muted);margin:0 0 12px;font-size:13px}.approval-dialog textarea[data-v-398b8b21]{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;width:100%;padding:10px 12px;font-size:14px}.approval-dialog__actions[data-v-398b8b21]{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.user-manage-page[data-v-c0751d2b]{min-height:100vh}.user-manage-main[data-v-c0751d2b]{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.user-manage-panel[data-v-c0751d2b]{flex-direction:column;flex:1;min-height:0;display:flex}.user-manage-panel .app-section__head[data-v-c0751d2b],.user-manage-panel .status-tabs-scroll[data-v-c0751d2b],.user-manage-panel .account-tabs-scroll[data-v-c0751d2b]{flex-shrink:0}.status-tabs-scroll[data-v-c0751d2b]{-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%;min-width:0;max-width:100%;display:block;overflow:auto hidden}.status-tabs-scroll[data-v-c0751d2b]::-webkit-scrollbar{display:none}.status-tabs[data-v-c0751d2b]{border-bottom:1px solid var(--color-border);box-sizing:border-box;flex-wrap:nowrap;align-items:stretch;width:max-content;min-width:100%;padding:0 4px;display:flex}.status-tab[data-v-c0751d2b]{min-height:40px;color:var(--color-text-muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex-shrink:0;align-items:center;gap:4px;margin-bottom:-1px;padding:0 14px 10px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.status-tab[data-v-c0751d2b]:hover{color:var(--color-text-secondary)}.status-tab.is-active[data-v-c0751d2b]{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.user-manage-toolbar[data-v-c0751d2b]{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.user-manage-search[data-v-c0751d2b]{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;max-width:280px;height:40px;padding:0 12px;font-size:14px}.user-manage-date[data-v-c0751d2b]{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.user-manage-date__input[data-v-c0751d2b]{border:1px solid var(--color-border);border-radius:var(--radius-md);height:40px;padding:0 10px;font-size:14px}.user-manage-date-sep[data-v-c0751d2b],.self-tip[data-v-c0751d2b]{color:var(--color-text-muted);font-size:13px}.quote-empty[data-v-c0751d2b]{text-align:center;color:var(--color-text-muted);padding:72px 20px;font-size:14px}.panel-msg[data-v-c0751d2b]{border-radius:var(--radius-md);margin:0 0 12px;padding:10px 12px;font-size:13px}.panel-msg--error[data-v-c0751d2b]{background:var(--color-danger-bg);color:var(--color-danger)}.panel-msg--success[data-v-c0751d2b]{color:#047857;background:#ecfdf5}@media (width<=767px){.user-manage-mobile-section .account-tabs-scroll[data-v-c0751d2b]{border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:0 12px}.user-manage-mobile-section .status-tabs[data-v-c0751d2b]{border-bottom:none;padding:0}}.urgent-page.manage-page .app-main[data-v-ee1f6a97],.manage-desktop[data-v-ee1f6a97]{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.manage-mobile-section[data-v-ee1f6a97],.manage-mobile-section .app-section__body[data-v-ee1f6a97]{flex-direction:column;flex:1;min-height:0;display:flex}.manage-toolbar[data-v-ee1f6a97]{flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;display:flex}.manage-toolbar--intro[data-v-ee1f6a97]{margin-bottom:0}.urgent-mobile-head[data-v-ee1f6a97]{padding-bottom:0}.urgent-intro[data-v-ee1f6a97]{flex:1;min-width:0}.urgent-intro__title[data-v-ee1f6a97]{color:var(--color-text);margin:0 0 6px;font-size:22px;font-weight:700;line-height:1.3}.urgent-intro__desc[data-v-ee1f6a97]{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.6}.urgent-stat-grid[data-v-ee1f6a97]{flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.urgent-stat-grid--mobile[data-v-ee1f6a97]{background:linear-gradient(180deg, var(--color-primary-surface-soft) 0%, #fff 100%);grid-template-columns:repeat(3,minmax(0,1fr));padding:0 16px 12px}.urgent-stat-card[data-v-ee1f6a97]{border-radius:var(--radius-xl);border:1px solid var(--color-border-soft);background:var(--color-surface);align-items:center;gap:14px;padding:16px 18px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 1px 3px #0f172a0d}.urgent-stat-card[data-v-ee1f6a97]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0f172a14}.urgent-stat-card__icon[data-v-ee1f6a97]{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;line-height:1;display:flex}.urgent-stat-card__content[data-v-ee1f6a97]{flex-direction:column;gap:4px;min-width:0;display:flex}.urgent-stat-card__value[data-v-ee1f6a97]{font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.urgent-stat-card__label[data-v-ee1f6a97]{color:var(--color-text-muted);white-space:nowrap;font-size:13px}.urgent-stat-card--danger[data-v-ee1f6a97]{background:linear-gradient(135deg,#fff5f5 0%,#fff 100%);border-color:#fecaca}.urgent-stat-card--danger .urgent-stat-card__icon[data-v-ee1f6a97]{background:#fee2e2}.urgent-stat-card--danger .urgent-stat-card__value[data-v-ee1f6a97]{color:#dc2626}.urgent-stat-card--warning[data-v-ee1f6a97]{background:linear-gradient(135deg,#fffbeb 0%,#fff 100%);border-color:#fde68a}.urgent-stat-card--warning .urgent-stat-card__icon[data-v-ee1f6a97]{background:#fef3c7}.urgent-stat-card--warning .urgent-stat-card__value[data-v-ee1f6a97]{color:#d97706}.urgent-stat-card--info[data-v-ee1f6a97]{border-color:var(--color-primary-border);background:linear-gradient(135deg, var(--color-primary-surface) 0%, #fff 100%)}.urgent-stat-card--info .urgent-stat-card__icon[data-v-ee1f6a97]{background:var(--color-primary-surface-muted)}.urgent-stat-card--info .urgent-stat-card__value[data-v-ee1f6a97]{color:var(--color-primary)}.urgent-stat-card--total[data-v-ee1f6a97]{background:linear-gradient(135deg,#f8fafc 0%,#fff 100%);border-color:#e2e8f0}.urgent-stat-card--total .urgent-stat-card__icon[data-v-ee1f6a97]{background:#e2e8f0}.urgent-stat-card--total .urgent-stat-card__value[data-v-ee1f6a97]{color:var(--color-text)}.project-list-panel[data-v-ee1f6a97]{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.quote-empty[data-v-ee1f6a97]{text-align:center;color:var(--color-text-muted);padding:72px 20px;font-size:14px}.quote-card-grid[data-v-ee1f6a97]{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.quote-card-grid[data-v-ee1f6a97]>*{height:100%;min-height:0}.quote-card-grid--mobile[data-v-ee1f6a97]{grid-template-columns:1fr}.manage-pagination--mobile[data-v-ee1f6a97]{margin-top:0}@media (width<=1200px){.quote-card-grid[data-v-ee1f6a97]:not(.quote-card-grid--mobile){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.quote-card-grid[data-v-ee1f6a97]:not(.quote-card-grid--mobile),.urgent-stat-grid[data-v-ee1f6a97]:not(.urgent-stat-grid--mobile){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.urgent-stat-grid[data-v-ee1f6a97]:not(.urgent-stat-grid--mobile),.urgent-stat-grid--mobile[data-v-ee1f6a97]{grid-template-columns:1fr}.urgent-stat-card__value[data-v-ee1f6a97]{font-size:22px}}.inquiry-page[data-v-c17bb749]{padding:calc(var(--safe-top) + 12px) var(--page-padding) calc(var(--safe-bottom) + 24px);justify-content:center;align-items:flex-start;display:flex}.inquiry-page .app-form-card[data-v-c17bb749]{width:100%;max-width:640px;padding-top:0}.inquiry-page .app-form-card__head[data-v-c17bb749]{margin-bottom:12px}.inquiry-head__top[data-v-c17bb749]{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.inquiry-session[data-v-c17bb749]{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.tab-panel[data-v-c17bb749]{min-height:360px}.code-row[data-v-c17bb749]{gap:10px;display:flex}.code-row input[data-v-c17bb749]{flex:1}.mock-hint[data-v-c17bb749]{color:var(--color-text-secondary);margin:0;font-size:13px}.upload-box[data-v-c17bb749]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.file-input[data-v-c17bb749]{display:none}.file-name[data-v-c17bb749]{color:var(--color-text);font-size:14px}.hint[data-v-c17bb749]{color:var(--color-text-muted);margin:0;font-size:12px}.deadline-availability-hint[data-v-c17bb749]{margin-top:6px}.deadline-availability-hint--full[data-v-c17bb749]{color:#dc2626}.upload-progress[data-v-c17bb749]{width:100%;margin-top:4px}.upload-progress__track[data-v-c17bb749]{background:#e2e8f0;border-radius:999px;width:100%;height:8px;overflow:hidden}.upload-progress__bar[data-v-c17bb749]{border-radius:inherit;background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-light) 100%);height:100%;transition:width .15s}.upload-progress__text[data-v-c17bb749]{color:var(--color-text-secondary);margin:8px 0 0;font-size:13px}.upload-progress__speed[data-v-c17bb749]{color:var(--color-primary);font-variant-numeric:tabular-nums;margin-left:8px}.submit-btn[data-v-c17bb749]{width:100%;min-height:48px;font-size:16px}.tab-count[data-v-c17bb749]{background:#ffffff47;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.app-tab:not(.is-active) .tab-count[data-v-c17bb749]{background:var(--color-surface-muted,var(--color-primary-surface));color:var(--color-primary,var(--color-primary-dark))}.progress-section[data-v-c17bb749]{margin-top:0}.status-tabs-scroll[data-v-c17bb749]{-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none;width:100%;min-width:0;max-width:100%;margin-bottom:12px;display:block;overflow:auto hidden}.status-tabs-scroll[data-v-c17bb749]::-webkit-scrollbar{display:none}.status-tabs[data-v-c17bb749]{border-bottom:1px solid var(--color-border);box-sizing:border-box;flex-wrap:nowrap;align-items:stretch;gap:0;width:max-content;min-width:100%;padding:0 4px;display:flex}.status-tab[data-v-c17bb749]{min-height:36px;color:var(--color-text-muted);white-space:nowrap;cursor:pointer;touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex-shrink:0;align-items:center;gap:4px;margin-bottom:-1px;padding:0 12px 10px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.status-tab[data-v-c17bb749]:hover{color:var(--color-text-secondary)}.status-tab.is-active[data-v-c17bb749]{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.status-tab .tab-count[data-v-c17bb749]{min-width:auto;height:auto;font-size:12px;font-weight:inherit;opacity:.7;background:0 0;border-radius:0;margin-left:0;padding:0}.status-tab.is-active .tab-count[data-v-c17bb749]{opacity:.85;color:inherit;background:0 0}.progress-head[data-v-c17bb749]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.progress-head__label[data-v-c17bb749]{color:var(--color-text-secondary);font-size:14px;font-weight:600}.progress-placeholder[data-v-c17bb749]{min-height:160px;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.progress-list[data-v-c17bb749]{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.progress-item[data-v-c17bb749]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:10px 12px}.progress-item__head[data-v-c17bb749]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.progress-item__name[data-v-c17bb749]{color:var(--color-text);word-break:break-word;font-size:15px;line-height:1.35}.progress-item__meta[data-v-c17bb749]{color:var(--color-text-muted);flex-direction:column;gap:2px;margin:6px 0 10px;font-size:12px;display:flex}.status-badge[data-v-c17bb749]{color:var(--color-text-muted);background:#f1f5f9;border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:11px;font-weight:600;display:inline-flex}.status-badge.is-pending[data-v-c17bb749],.status-badge.is-submitted[data-v-c17bb749]{background:var(--color-primary-surface);color:#3730a3}.status-badge.is-processing[data-v-c17bb749]{color:#c2410c;background:#fff7ed}.status-badge.is-pending_review[data-v-c17bb749]{color:#a16207;background:#fef9c3}.status-badge.is-under_review[data-v-c17bb749]{color:#b45309;background:#fef3c7}.status-badge.is-done[data-v-c17bb749]{color:#047857;background:#ecfdf5}.status-badge.is-rejected[data-v-c17bb749]{color:var(--color-danger-dark);background:#fef2f2}.status-badge.is-cancelled[data-v-c17bb749]{color:var(--color-text-muted);background:#f1f5f9}.timeline[data-v-c17bb749]{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.timeline li[data-v-c17bb749]{text-align:center;color:#9ca3af;word-break:break-all;background:#f3f4f6;border-radius:6px;padding:6px 2px;font-size:11px;line-height:1.25}.timeline li.is-pending[data-v-c17bb749],.timeline li.is-submitted[data-v-c17bb749]{background:var(--color-primary-surface);color:#3730a3;font-weight:600}.timeline li.is-processing[data-v-c17bb749]{color:#9a3412;background:#ffedd5;font-weight:600}.timeline li.is-pending_review[data-v-c17bb749]{color:#a16207;background:#fef9c3;font-weight:600}.timeline li.is-under_review[data-v-c17bb749]{color:#b45309;background:#fef3c7;font-weight:600}.timeline li.is-done[data-v-c17bb749]{color:#065f46;background:#d1fae5;font-weight:600}.rejected-note[data-v-c17bb749]{color:var(--color-danger-dark);font-size:13px}.cancelled-note[data-v-c17bb749]{color:var(--color-text-muted);font-size:13px}.done-note[data-v-c17bb749]{color:#047857;font-size:13px}.quote-btn[data-v-c17bb749]{width:100%;margin-top:8px}.quote-sent-time[data-v-c17bb749]{color:var(--color-text-muted);margin:8px 0 0;font-size:12px}.dialog-wide[data-v-c17bb749]{max-width:860px}.dialog-head[data-v-c17bb749]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dialog-head .app-dialog__title[data-v-c17bb749]{margin:0}.close-btn[data-v-c17bb749]{width:var(--touch-min);height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;color:var(--color-text-secondary);font-size:22px;line-height:1}.customer-quote-dialog__body[data-v-c17bb749]{-webkit-overflow-scrolling:touch;max-height:min(62vh,560px);margin-top:8px;overflow-y:auto}.cancel-btn[data-v-c17bb749]{width:100%;margin-top:8px}@media (width<=767px){.tab-panel[data-v-c17bb749]{min-height:280px}.progress-placeholder[data-v-c17bb749]{min-height:120px}.timeline[data-v-c17bb749]{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline li[data-v-c17bb749]:nth-child(5){grid-column:1/-1}}@media (width>=768px){.inquiry-page .app-form-card[data-v-c17bb749]{padding:24px 36px 40px}.quote-btn[data-v-c17bb749],.cancel-btn[data-v-c17bb749]{width:auto}}.supplier-page[data-v-8d7f5b50]{padding:calc(var(--safe-top) + 12px) var(--page-padding) calc(var(--safe-bottom) + 24px);justify-content:center;align-items:flex-start;display:flex}.supplier-page .app-form-card[data-v-8d7f5b50]{width:100%;max-width:1100px}.supplier-login-hint[data-v-8d7f5b50]{color:var(--color-text-muted);margin:6px 0 0;font-size:13px}.portal-picker[data-v-8d7f5b50]{margin-bottom:16px}.portal-picker__label[data-v-8d7f5b50]{color:var(--color-text-secondary);margin:0 0 10px;font-size:14px}.portal-picker__label em[data-v-8d7f5b50]{color:var(--color-danger)}.portal-picker__grid[data-v-8d7f5b50]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.portal-card[data-v-8d7f5b50]{border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:left;cursor:pointer;background:#fff;flex-direction:column;gap:4px;padding:14px;transition:border-color .15s;display:flex}.portal-card strong[data-v-8d7f5b50]{color:var(--color-text);font-size:15px}.portal-card span[data-v-8d7f5b50]{color:var(--color-text-muted);font-size:12px}.portal-card.is-selected[data-v-8d7f5b50],.portal-card[data-v-8d7f5b50]:hover{border-color:var(--color-primary);background:var(--color-primary-surface)}.pending-box[data-v-8d7f5b50]{text-align:center;padding:24px 16px}.pending-box__icon[data-v-8d7f5b50]{margin-bottom:12px;font-size:40px}.pending-box h2[data-v-8d7f5b50]{margin:0 0 8px;font-size:18px}.pending-box p[data-v-8d7f5b50]{color:var(--color-text-secondary);margin:0 0 8px;font-size:14px}.pending-box .app-btn[data-v-8d7f5b50]{margin-top:16px}.portal-readonly[data-v-8d7f5b50]{border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);background:#f8fafc;padding:10px 12px;font-size:14px;font-weight:600}.auth-switch-hint[data-v-8d7f5b50]{text-align:center;color:var(--color-text-muted);margin:12px 0 0;font-size:13px}.link-btn[data-v-8d7f5b50]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.reject-notice[data-v-8d7f5b50]{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);padding:12px 14px;font-size:13px}.reject-notice strong[data-v-8d7f5b50]{margin-bottom:4px;font-size:14px;display:block}.reject-notice p[data-v-8d7f5b50]{margin:4px 0 0}.reject-notice__hint[data-v-8d7f5b50]{color:#b45309}.price-status-tabs[data-v-8d7f5b50]{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.price-status-tab[data-v-8d7f5b50]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px}.price-status-tab.is-active[data-v-8d7f5b50]{border-color:var(--color-primary);background:var(--color-primary-surface);color:var(--color-primary);font-weight:600}.price-status-badge[data-v-8d7f5b50]{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.price-status-badge.status-pending[data-v-8d7f5b50]{color:#92400e;background:#fef3c7}.price-status-badge.status-approved[data-v-8d7f5b50]{color:#047857;background:#ecfdf5}.price-status-badge.status-rejected[data-v-8d7f5b50]{background:var(--color-danger-bg);color:var(--color-danger)}.price-status-badge.status-expired[data-v-8d7f5b50]{color:#6b7280;background:#f3f4f6}.price-validity-tip[data-v-8d7f5b50]{color:var(--color-text-secondary);margin:0;font-size:12px}.price-validity-tip.is-warning[data-v-8d7f5b50]{color:#b45309}.price-validity-tip.is-expired[data-v-8d7f5b50]{color:#6b7280}.price-expired-tip[data-v-8d7f5b50]{color:#6b7280;margin:0;font-size:12px}.price-reject-reason[data-v-8d7f5b50]{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);margin:0;padding:6px 10px;font-size:12px}.price-approved-tip[data-v-8d7f5b50]{color:#047857;margin:0;font-size:12px}.save-success-msg[data-v-8d7f5b50]{border-radius:var(--radius-md);color:#047857;background:#ecfdf5;margin:0 0 10px;padding:8px 12px;font-size:13px}.dialog-success-panel[data-v-8d7f5b50]{padding:8px 0 16px}@media (width<=767px){.portal-picker__grid[data-v-8d7f5b50]{grid-template-columns:1fr}}.supplier-portal-tag[data-v-8d7f5b50]{color:var(--color-primary);margin:6px 0 0;font-size:13px}.supplier-head__top[data-v-8d7f5b50]{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.supplier-session[data-v-8d7f5b50]{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.toolbar[data-v-8d7f5b50]{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:12px;display:flex}.price-cards[data-v-8d7f5b50]{flex-direction:column;gap:8px;display:flex}.price-card[data-v-8d7f5b50]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.price-card__head[data-v-8d7f5b50]{justify-content:space-between;align-items:center;gap:8px;display:flex}.price-card__category[data-v-8d7f5b50]{background:var(--color-primary-surface);color:var(--color-primary-dark);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.price-card__time[data-v-8d7f5b50]{color:var(--color-text-muted);white-space:nowrap;font-size:11px}.price-card__title[data-v-8d7f5b50]{color:var(--color-text);word-break:break-word;margin:0;font-size:14px;line-height:1.35}.price-card__meta[data-v-8d7f5b50]{color:var(--color-text-secondary);margin:0;font-size:12px}.price-card__grid[data-v-8d7f5b50]{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 8px;margin:0;display:grid}.price-card__field[data-v-8d7f5b50]{min-width:0}.price-card__field dt[data-v-8d7f5b50]{color:var(--color-text-muted);margin:0;font-size:11px}.price-card__field dd[data-v-8d7f5b50]{color:var(--color-text);word-break:break-word;margin:0;font-size:13px}.price-card__total[data-v-8d7f5b50]{border-radius:var(--radius-md);color:#065f46;background:#ecfdf5;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 10px;font-size:13px;display:flex}.price-card__total strong[data-v-8d7f5b50]{color:#047857;font-size:16px}.price-card__actions[data-v-8d7f5b50]{gap:6px;display:flex}.price-card__actions .app-btn[data-v-8d7f5b50]{flex:1;min-height:34px;padding-top:4px;padding-bottom:4px}@media (width<=767px){.toolbar[data-v-8d7f5b50]{justify-content:stretch}.toolbar .app-btn[data-v-8d7f5b50]{flex:1;min-width:0}.empty-box[data-v-8d7f5b50]{min-height:120px}}.code-row[data-v-8d7f5b50]{gap:10px;display:flex}.code-row input[data-v-8d7f5b50]{flex:1}.mock-hint[data-v-8d7f5b50],.submit-btn[data-v-8d7f5b50]{width:100%}.submit-btn[data-v-8d7f5b50]{min-height:48px;font-size:16px}.empty-box[data-v-8d7f5b50]{min-height:160px;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.table-wrap[data-v-8d7f5b50]{overflow-x:auto}.price-table[data-v-8d7f5b50]{border-collapse:collapse;width:100%;font-size:13px}.price-table th[data-v-8d7f5b50],.price-table td[data-v-8d7f5b50]{border-bottom:1px solid var(--color-border-soft);text-align:left;white-space:nowrap;padding:7px 10px}.price-table th[data-v-8d7f5b50]{color:var(--color-text-secondary);background:#f8fafc;font-weight:600}.price-highlight[data-v-8d7f5b50]{color:#047857;font-weight:700}.actions-cell[data-v-8d7f5b50]{gap:6px;display:flex}.dialog-wide[data-v-8d7f5b50]{max-width:640px}.dialog-form[data-v-8d7f5b50]{margin-top:16px}.form-row[data-v-8d7f5b50]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tax-price-box[data-v-8d7f5b50]{border-radius:var(--radius-md);color:#065f46;background:#ecfdf5;align-items:baseline;gap:10px;padding:12px 14px;display:flex}.tax-price-box strong[data-v-8d7f5b50]{font-size:20px}.tax-price-tip[data-v-8d7f5b50]{color:#047857;font-size:12px}.form-row--3[data-v-8d7f5b50]{grid-template-columns:repeat(3,minmax(0,1fr))}.field-tip[data-v-8d7f5b50]{color:var(--color-text-muted);margin-top:4px;font-size:11px;display:block}@media (width<=768px){.form-row--3[data-v-8d7f5b50],.form-row[data-v-8d7f5b50]{grid-template-columns:1fr}}
