/* TOALDO Soft Furnishing Workspace V1.8 — reliable property input + privacy-safe customer UI. */
#toaldo-soft-workspace-v1{position:fixed!important;z-index:7000!important;inset:0!important;width:100vw!important;max-width:100vw!important;background:#0a0f14!important;color:#e9eef5!important;overflow:hidden!important;font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif!important;box-sizing:border-box!important;container-type:inline-size!important;isolation:isolate!important;color-scheme:dark!important}
#toaldo-soft-workspace-v1 *,#toaldo-soft-workspace-v1 *::before,#toaldo-soft-workspace-v1 *::after{box-sizing:border-box!important}
#toaldo-soft-workspace-v1 button,#toaldo-soft-workspace-v1 input,#toaldo-soft-workspace-v1 select,#toaldo-soft-workspace-v1 textarea{font:inherit!important;letter-spacing:normal!important;text-transform:none!important;max-width:100%!important}
#toaldo-soft-workspace-v1 button{width:auto!important;height:auto!important;min-width:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
#toaldo-soft-workspace-v1 input,#toaldo-soft-workspace-v1 select,#toaldo-soft-workspace-v1 textarea{width:100%!important;min-width:0!important}
#toaldo-soft-workspace-v1 aside,#toaldo-soft-workspace-v1 section,#toaldo-soft-workspace-v1 nav,#toaldo-soft-workspace-v1 header,#toaldo-soft-workspace-v1 main{float:none!important;transform:none!important;position:relative!important;inset:auto!important;margin:0!important}
#toaldo-soft-workspace-v1 nav{width:auto!important;height:auto!important}
.tsfw-shell{display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;height:100%!important;width:100%!important;min-width:0!important;overflow:hidden!important}
.tsfw-topbar{display:grid!important;grid-template-columns:210px minmax(300px,1fr) auto!important;grid-template-areas:"brand project actions"!important;align-items:center!important;gap:10px!important;padding:10px 14px!important;border-bottom:1px solid #26313c!important;background:#0b1117!important;min-height:66px!important;overflow:hidden!important}
.tsfw-brand{grid-area:brand!important;min-width:0!important}.tsfw-brand .eyebrow{font-size:10px!important;letter-spacing:.17em!important;color:#7fa3c5!important;white-space:nowrap!important}.tsfw-brand h1{font-size:18px!important;line-height:1.2!important;margin:4px 0 0!important;font-weight:650!important;white-space:nowrap!important;color:#f0f4f8!important}
.tsfw-project{grid-area:project!important;display:grid!important;grid-template-columns:minmax(150px,220px) minmax(180px,1fr) auto!important;align-items:center!important;gap:8px!important;min-width:0!important;width:100%!important}.tsfw-project input,.tsfw-project select{background:#0d151d!important;border:1px solid #2b3946!important;color:#edf3f8!important;border-radius:8px!important;padding:9px 10px!important;min-width:0!important;width:100%!important;box-shadow:none!important}
.tsfw-actions{grid-area:actions!important;display:flex!important;gap:7px!important;flex-wrap:nowrap!important;justify-content:flex-end!important;align-items:center!important;min-width:0!important;width:auto!important;overflow:visible!important}.tsfw-btn{border:1px solid #354554!important;background:#111922!important;color:#eaf0f5!important;border-radius:8px!important;padding:8px 11px!important;cursor:pointer!important;white-space:nowrap!important;line-height:1.2!important;box-shadow:none!important}.tsfw-btn:hover{border-color:#61778a!important;background:#14202a!important}.tsfw-btn.primary{background:#e9eef4!important;color:#0a0f14!important;border-color:#e9eef4!important;font-weight:650!important}.tsfw-btn.danger{border-color:#713c42!important;color:#ffc1c8!important}.tsfw-btn:disabled{opacity:.42!important;cursor:not-allowed!important}.tsfw-btn.small{padding:7px 9px!important;font-size:12px!important}
.tsfw-status{display:flex!important;gap:7px!important;align-items:center!important;padding:7px 16px!important;border-bottom:1px solid #202a34!important;background:#0d141b!important;color:#91a4b7!important;font-size:12px!important;min-height:34px!important;overflow:hidden!important;white-space:nowrap!important}.tsfw-status strong,.tsfw-status>span:last-child{overflow:hidden!important;text-overflow:ellipsis!important}.tsfw-status strong{color:#dce6ef!important}.tsfw-dot{width:8px!important;height:8px!important;min-width:8px!important;border-radius:999px!important;background:#607284!important}.tsfw-dot.ok{background:#6db78c!important}.tsfw-dot.warn{background:#d9b66b!important}.tsfw-dot.bad{background:#cf6e78!important}
.tsfw-main{display:grid!important;grid-template-columns:244px minmax(0,1fr) minmax(340px,370px)!important;grid-template-rows:minmax(0,1fr)!important;min-height:0!important;height:100%!important;width:100%!important;overflow:hidden!important}.tsfw-main.tsfw-context-wide{grid-template-columns:244px minmax(0,1fr)!important}.tsfw-main.tsfw-context-wide>.tsfw-right{display:none!important}.tsfw-left,.tsfw-right{display:block!important;min-width:0!important;width:auto!important;height:100%!important;background:#0c131a!important;overflow:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important}.tsfw-left{border-right:1px solid #26313c!important}.tsfw-right{border-left:1px solid #26313c!important}.tsfw-center{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;min-width:0!important;width:auto!important;height:100%!important;background:#080d12!important;overflow:hidden!important}
.tsfw-tabs{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:4px!important;padding:8px 10px!important;border-bottom:1px solid #202a34!important;background:#0b1117!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;min-height:50px!important;width:100%!important;scrollbar-width:thin!important}.tsfw-tab{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:auto!important;background:transparent!important;border:0!important;color:#8193a5!important;padding:8px 11px!important;border-radius:7px!important;cursor:pointer!important;white-space:nowrap!important;line-height:1.2!important;margin:0!important}.tsfw-tab:hover{color:#d4dee7!important;background:#111922!important}.tsfw-tab.active{background:#151e27!important;color:#f2f6fa!important}.tsfw-pane{display:none!important;height:100%!important;min-height:0!important;width:100%!important;overflow:auto!important}.tsfw-pane.active{display:block!important}
.tsfw-section{padding:14px!important;border-bottom:1px solid #202a34!important}.tsfw-section h3{margin:0 0 10px!important;font-size:13px!important;color:#e4edf5!important}.tsfw-section p{margin:6px 0!important;color:#8fa0b1!important;font-size:12px!important;line-height:1.55!important}.tsfw-stack{display:grid!important;gap:8px!important}.tsfw-label{display:grid!important;gap:5px!important;font-size:11px!important;color:#8fa0b1!important}.tsfw-label input,.tsfw-label select,.tsfw-label textarea{background:#0b1219!important;border:1px solid #2a3947!important;color:#edf3f8!important;border-radius:7px!important;padding:8px!important;box-shadow:none!important}.tsfw-label textarea{min-height:72px!important;resize:vertical!important}.tsfw-grid2{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}.tsfw-grid3{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.tsfw-chip-row{display:flex!important;gap:6px!important;flex-wrap:wrap!important}.tsfw-chip{font-size:11px!important;border:1px solid #334351!important;background:#111922!important;padding:5px 7px!important;border-radius:999px!important;color:#b8c5d1!important}.tsfw-chip.active{background:#1b2833!important;color:#fff!important;border-color:#526879!important}.tsfw-muted{color:#8193a5!important}.tsfw-note{padding:9px 10px!important;border:1px solid #2c3d4b!important;background:#0f1820!important;border-radius:8px!important;color:#aebdca!important;font-size:11px!important;line-height:1.55!important}.tsfw-note.warn{border-color:#69593a!important;color:#d8c495!important}.tsfw-note.bad{border-color:#6c3840!important;color:#e1a4aa!important}.tsfw-note.ok{border-color:#345a49!important;color:#a6d5bc!important}
.tsfw-plan-wrap{height:100%!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;min-height:0!important}.tsfw-plan-toolbar{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;padding:9px 10px!important;border-bottom:1px solid #202a34!important;background:#0b1117!important}.tsfw-plan-stage{position:relative!important;min-height:320px!important;height:100%!important;overflow:hidden!important;background-color:#080d12!important;background-image:linear-gradient(#17212a 1px,transparent 1px),linear-gradient(90deg,#17212a 1px,transparent 1px)!important;background-size:28px 28px!important}.tsfw-plan-stage:has(.tsfw-plan-svg:empty)::before{content:"打开已有软装项目或上传空间图纸后开始摆放";position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);font-size:14px;color:#6f8396;pointer-events:none}.tsfw-plan-svg{width:100%!important;height:100%!important;display:block!important;touch-action:none!important;position:relative!important;z-index:1!important}.tsfw-plan-svg .geom{fill:none!important;stroke:#7f8d99!important;stroke-width:.8!important;vector-effect:non-scaling-stroke!important}.tsfw-plan-svg .obj circle{fill:#e8edf2!important;stroke:#091017!important;stroke-width:1.5!important;vector-effect:non-scaling-stroke!important}.tsfw-plan-svg .obj text{fill:#f5f8fb!important;font-size:10px!important;paint-order:stroke!important;stroke:#0a0f14!important;stroke-width:3px!important;pointer-events:none!important}.tsfw-plan-svg .obj.selected circle{fill:#f1c777!important}.tsfw-plan-hint{position:absolute!important;z-index:3!important;left:12px!important;bottom:12px!important;background:rgba(10,15,20,.92)!important;border:1px solid #2b3946!important;padding:8px 10px!important;border-radius:8px!important;font-size:11px!important;color:#aebac5!important;max-width:72%!important}
.tsfw-reference{padding:14px!important;display:grid!important;grid-template-columns:minmax(320px,1fr) 280px!important;gap:14px!important;min-height:100%!important}.tsfw-ref-stage{min-height:480px!important;border:1px solid #293744!important;border-radius:10px!important;background:#05090d!important;display:grid!important;place-items:center!important;overflow:auto!important;position:relative!important}.tsfw-ref-stage canvas{max-width:100%!important;height:auto!important;display:block!important;cursor:crosshair!important}.tsfw-ref-empty{position:absolute!important;inset:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;padding:30px!important;text-align:center!important;background:linear-gradient(180deg,rgba(5,9,13,.86),rgba(13,20,27,.94))!important;color:#dce6ef!important;z-index:2!important}.tsfw-ref-empty b{font-size:17px!important}.tsfw-ref-empty span{max-width:520px!important;color:#8398aa!important;font-size:12px!important;line-height:1.7!important}.tsfw-ref-empty>div{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:center!important}.tsfw-ref-side{display:grid!important;align-content:start!important;gap:10px!important}.tsfw-video{width:100%!important;max-height:240px!important;background:#000!important;border:1px solid #26313c!important;border-radius:8px!important}
.tsfw-empty-state{margin:16px!important;min-height:220px!important;border:1px dashed #344553!important;border-radius:12px!important;background:#0b1218!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;text-align:center!important;padding:24px!important}.tsfw-empty-state.compact{min-height:126px!important;margin-bottom:0!important}.tsfw-empty-state b{font-size:15px!important}.tsfw-empty-state span{max-width:620px!important;font-size:12px!important;line-height:1.7!important;color:#8195a7!important}.tsfw-empty-state>div{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:center!important}
.tsfw-object-list{padding:14px!important}.tsfw-object-card{display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:10px!important;border:1px solid #26313c!important;border-radius:9px!important;background:#0d141b!important;margin-bottom:8px!important;cursor:pointer!important;width:100%!important}.tsfw-object-card.selected{border-color:#788b9b!important;background:#121b24!important}.tsfw-thumb{width:54px!important;height:54px!important;border-radius:7px!important;background:#141c24!important;object-fit:cover!important;border:1px solid #293744!important}.tsfw-object-card b{font-size:12px!important}.tsfw-object-card span{display:block!important;font-size:11px!important;color:#8fa0b1!important;margin-top:4px!important}.tsfw-badge{font-size:10px!important;border:1px solid #344653!important;border-radius:999px!important;padding:4px 6px!important;color:#aab9c5!important}
.tsfw-table-wrap{padding:14px!important;overflow:auto!important}.tsfw-table{width:100%!important;border-collapse:collapse!important;font-size:12px!important;min-width:900px!important}.tsfw-table th,.tsfw-table td{border-bottom:1px solid #26313c!important;padding:8px!important;text-align:left!important;vertical-align:top!important}.tsfw-table th{position:sticky!important;top:0!important;background:#0b1117!important;color:#aebccb!important}.tsfw-table td{color:#d8e1e9!important}.tsfw-table input,.tsfw-table select{width:100%!important;min-width:90px!important;background:#0b1219!important;border:1px solid #283743!important;color:#eaf0f5!important;border-radius:6px!important;padding:6px!important}
.tsfw-delivery{padding:16px!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:10px!important}.tsfw-delivery-card{border:1px solid #293744!important;border-radius:10px!important;background:#0d141b!important;padding:12px!important}.tsfw-delivery-card label{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;gap:9px!important;align-items:start!important}.tsfw-delivery-card input{width:16px!important;min-width:16px!important;height:16px!important;margin:1px 0 0!important}.tsfw-delivery-card b{font-size:13px!important}.tsfw-delivery-card p{font-size:11px!important;color:#8fa0b1!important;margin:6px 0 0!important;line-height:1.55!important}.tsfw-video-workflow{padding:16px!important;max-width:1100px!important;margin:0 auto!important}.tsfw-step{border:1px solid #293744!important;border-radius:10px!important;padding:14px!important;margin-bottom:10px!important;background:#0d141b!important}.tsfw-step h4{margin:0 0 6px!important}.tsfw-step p{margin:0 0 10px!important;color:#8fa0b1!important;font-size:12px!important;line-height:1.55!important}.tsfw-check{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;gap:9px!important;align-items:start!important;justify-content:start!important;width:100%!important;font-size:12px!important;color:#bcc9d4!important;line-height:1.5!important}.tsfw-check input{width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;margin:1px 0 0!important;padding:0!important}
.tsfw-quote{margin-top:10px!important;padding:10px!important;border:1px solid #52606d!important;border-radius:8px!important;background:#101820!important;font-size:12px!important}.tsfw-overlay-msg{position:absolute!important;z-index:20!important;right:16px!important;bottom:16px!important;max-width:420px!important;padding:10px 12px!important;border-radius:8px!important;background:#17212a!important;border:1px solid #3b4d5d!important;box-shadow:0 10px 30px rgba(0,0,0,.35)!important;font-size:12px!important}.tsfw-modal-backdrop{position:absolute!important;inset:0!important;z-index:40!important;background:rgba(0,0,0,.64)!important;display:grid!important;place-items:center!important;padding:24px!important}.tsfw-modal{width:min(820px,96%)!important;max-height:80vh!important;overflow:auto!important;background:#0d141b!important;border:1px solid #344453!important;border-radius:12px!important;padding:16px!important}#toaldo-soft-workspace-v1.tsfw-loading{pointer-events:auto!important;opacity:1!important;background:#0a0f14!important}
#toaldo-soft-workspace-v1.tsfw-loading::before{content:""!important;position:absolute!important;inset:0!important;z-index:9000!important;background:rgba(10,15,20,.70)!important;pointer-events:auto!important}
#toaldo-soft-workspace-v1.tsfw-loading::after{content:"正在打开软装工作区，请稍候…"!important;position:absolute!important;z-index:9001!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;padding:12px 18px!important;border:1px solid #344553!important;border-radius:10px!important;background:#101820!important;color:#eaf0f5!important;font-size:13px!important;box-shadow:0 18px 50px rgba(0,0,0,.35)!important;pointer-events:none!important;white-space:nowrap!important}
.tsfw-hidden{display:none!important}
@container (max-width:1340px){.tsfw-topbar{grid-template-columns:180px minmax(0,1fr)!important;grid-template-areas:"brand project" "actions actions"!important;row-gap:8px!important}.tsfw-actions{justify-content:flex-end!important;overflow-x:auto!important;overflow-y:hidden!important;padding-bottom:1px!important}.tsfw-main{grid-template-columns:226px minmax(0,1fr) minmax(320px,340px)!important}.tsfw-main.tsfw-context-wide{grid-template-columns:226px minmax(0,1fr)!important}.tsfw-project{grid-template-columns:minmax(140px,190px) minmax(170px,1fr) auto!important}}
@container (max-width:980px){.tsfw-main{grid-template-columns:210px minmax(0,1fr)!important}.tsfw-right{display:none!important}.tsfw-main.tsfw-context-wide{grid-template-columns:210px minmax(0,1fr)!important}.tsfw-reference{grid-template-columns:1fr!important}.tsfw-ref-side{grid-template-columns:1fr 1fr!important}.tsfw-ref-side>.tsfw-note,.tsfw-ref-side>.tsfw-video{grid-column:1/-1!important}}
@container (max-width:720px){.tsfw-topbar{grid-template-columns:1fr!important;grid-template-areas:"brand" "project" "actions"!important}.tsfw-project{grid-template-columns:1fr auto!important}.tsfw-project input{grid-column:1/-1!important}.tsfw-main,.tsfw-main.tsfw-context-wide{grid-template-columns:1fr!important}.tsfw-left,.tsfw-right{display:none!important}}

/* V1.5 property editor reliability */
#toaldo-soft-workspace-v1 .tsfw-right{min-width:340px!important}
#toaldo-soft-workspace-v1 .tsfw-right .tsfw-section{padding:14px 16px!important}
#toaldo-soft-workspace-v1 .tsfw-right .tsfw-grid3{grid-template-columns:repeat(3,minmax(92px,1fr))!important;gap:10px!important}
#toaldo-soft-workspace-v1 .tsfw-right .tsfw-grid2{grid-template-columns:repeat(2,minmax(128px,1fr))!important;gap:10px!important}
#toaldo-soft-workspace-v1 #tsfw-property input,#toaldo-soft-workspace-v1 #tsfw-property select,#toaldo-soft-workspace-v1 #tsfw-property textarea{pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important;touch-action:manipulation!important;opacity:1!important;visibility:visible!important;caret-color:#f4f7fa!important;min-height:38px!important;line-height:20px!important}
#toaldo-soft-workspace-v1 #tsfw-property input[data-tsfw-numeric]{appearance:textfield!important;-moz-appearance:textfield!important;font-variant-numeric:tabular-nums!important;font-feature-settings:"tnum" 1!important}
#toaldo-soft-workspace-v1 #tsfw-property input[data-tsfw-numeric]::-webkit-outer-spin-button,#toaldo-soft-workspace-v1 #tsfw-property input[data-tsfw-numeric]::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important}
#toaldo-soft-workspace-v1 .tsfw-unit-inline{display:inline!important;font-size:10px!important;color:#6f8294!important;margin-left:3px!important;font-weight:400!important}
@container (max-width:1180px){#toaldo-soft-workspace-v1 .tsfw-main{grid-template-columns:220px minmax(0,1fr) 330px!important}#toaldo-soft-workspace-v1 .tsfw-right{min-width:330px!important}#toaldo-soft-workspace-v1 .tsfw-right .tsfw-grid3{grid-template-columns:repeat(2,minmax(110px,1fr))!important}}


/* V1.6 property panel containment + full visibility.
   Fixes the customer-side right editor being clipped by its own grid/action rules.
   No production/API/worker behavior changes. */
#toaldo-soft-workspace-v1 .tsfw-main:not(.tsfw-context-wide){
  grid-template-columns:244px minmax(0,1fr) minmax(410px,430px)!important;
}
#toaldo-soft-workspace-v1 .tsfw-right{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:auto!important;
}
#toaldo-soft-workspace-v1 .tsfw-right .tsfw-section,
#toaldo-soft-workspace-v1 #tsfw-property{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
#toaldo-soft-workspace-v1 #tsfw-property{
  overflow:visible!important;
  grid-template-columns:minmax(0,1fr)!important;
}
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-grid3{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-grid2{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-label,
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-label input,
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-label select,
#toaldo-soft-workspace-v1 #tsfw-property .tsfw-label textarea{
  min-width:0!important;
  max-width:100%!important;
}
/* .tsfw-actions is also used by the top toolbar. Inside the property editor it
   must not inherit the toolbar's named grid-area, otherwise Chromium can create
   an implicit column and push the delete button outside the rail. */
#toaldo-soft-workspace-v1 #tsfw-property > .tsfw-actions{
  grid-area:auto!important;
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  padding:0!important;
  margin:2px 0 0!important;
}
#toaldo-soft-workspace-v1 #tsfw-delete-object{
  position:static!important;
  max-width:100%!important;
  flex:0 0 auto!important;
}
@container (max-width:1340px) and (min-width:981px){
  #toaldo-soft-workspace-v1 .tsfw-main:not(.tsfw-context-wide){grid-template-columns:226px minmax(0,1fr) minmax(370px,390px)!important}
}
@container (max-width:1180px) and (min-width:981px){
  #toaldo-soft-workspace-v1 .tsfw-main:not(.tsfw-context-wide){grid-template-columns:210px minmax(0,1fr) 360px!important}
  #toaldo-soft-workspace-v1 #tsfw-property .tsfw-grid3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* V1.9 customer dashboard: mounted INSIDE the existing soft-furnishing page.
   This intentionally does not cover the Client sidebar. */
.tsfi-soft-host-v19{position:relative!important;min-height:100%!important;overflow:auto!important;background:#0a0f14!important}
.tsfi-soft-host-v19>*:not(#toaldo-soft-intro-v19){display:none!important}
#toaldo-soft-intro-v19{position:relative!important;z-index:1!important;width:100%!important;min-width:0!important;min-height:100%!important;background:#0a0f14!important;color:#edf3f8!important;font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif!important;box-sizing:border-box!important;color-scheme:dark!important;isolation:isolate!important}
#toaldo-soft-intro-v19 *,#toaldo-soft-intro-v19 *::before,#toaldo-soft-intro-v19 *::after{box-sizing:border-box!important}
#toaldo-soft-intro-v19.tsfi-hidden{display:none!important}
#toaldo-soft-intro-v19 button,#toaldo-soft-intro-v19 input{font:inherit!important;text-transform:none!important;letter-spacing:normal!important}
#toaldo-soft-intro-v19 .tsfi-shell{min-height:100%;padding:22px 28px 46px;background:radial-gradient(circle at 88% 3%,rgba(87,134,170,.08),transparent 30%),#0a0f14}
#toaldo-soft-intro-v19 .tsfi-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid #26313c;padding:0 0 18px}
#toaldo-soft-intro-v19 .tsfi-eyebrow{font-size:10px;letter-spacing:.16em;color:#73a8ce;font-weight:700;margin-bottom:7px}
#toaldo-soft-intro-v19 h1{font-size:29px;line-height:1.15;margin:0 0 8px;font-weight:750;color:#f5f8fb}
#toaldo-soft-intro-v19 .tsfi-top p{margin:0;color:#91a3b3;font-size:13px;line-height:1.65;max-width:900px}
#toaldo-soft-intro-v19 .tsfi-main{padding-top:22px;max-width:1500px;margin:0 auto}
#toaldo-soft-intro-v19 .tsfi-hero{padding:24px 28px;border:1px solid #2a3742;border-radius:13px;background:linear-gradient(135deg,#101820,#0d141b)}
#toaldo-soft-intro-v19 .tsfi-kicker{color:#7fb0d2;font-size:10px;letter-spacing:.1em;margin-bottom:10px;font-weight:700}
#toaldo-soft-intro-v19 .tsfi-hero h2{font-size:24px;line-height:1.35;margin:0 0 9px;color:#f0f4f8}
#toaldo-soft-intro-v19 .tsfi-hero p{font-size:13px;line-height:1.75;color:#9babb9;margin:0;max-width:980px}
#toaldo-soft-intro-v19 .tsfi-workgrid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(520px,1.45fr);gap:16px;margin-top:16px;align-items:stretch}
#toaldo-soft-intro-v19 .tsfi-panel{border:1px solid #293844;border-radius:13px;background:#0d151c;min-width:0;overflow:hidden}
#toaldo-soft-intro-v19 .tsfi-panel-head{padding:20px 22px 12px}
#toaldo-soft-intro-v19 .tsfi-panel-head-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
#toaldo-soft-intro-v19 .tsfi-panel-head span{display:block;color:#76a8c9;font-size:10px;letter-spacing:.1em;font-weight:700;margin-bottom:7px}
#toaldo-soft-intro-v19 .tsfi-panel-head h3{margin:0 0 6px;font-size:18px;color:#edf3f8}
#toaldo-soft-intro-v19 .tsfi-panel-head p{margin:0;color:#8fa1b0;font-size:12px;line-height:1.65}
#toaldo-soft-intro-v19 .tsfi-create-form{display:grid;gap:11px;padding:8px 22px 22px}
#toaldo-soft-intro-v19 label{display:grid;gap:7px;color:#91a3b3;font-size:11px}
#toaldo-soft-intro-v19 input{width:100%!important;min-width:0!important;height:42px!important;border:1px solid #31414e!important;border-radius:8px!important;background:#0a1117!important;color:#edf3f8!important;padding:0 12px!important;outline:none!important;box-shadow:none!important}
#toaldo-soft-intro-v19 input:focus{border-color:#6e9fbe!important;box-shadow:0 0 0 2px rgba(110,159,190,.12)!important}
#toaldo-soft-intro-v19 .tsfi-primary,#toaldo-soft-intro-v19 .tsfi-secondary,#toaldo-soft-intro-v19 .tsfi-danger,#toaldo-soft-intro-v19 .tsfi-link{border-radius:8px!important;cursor:pointer!important;font-weight:650!important;white-space:nowrap!important}
#toaldo-soft-intro-v19 .tsfi-primary{border:1px solid #e6edf3!important;background:#e9eff5!important;color:#071018!important;padding:11px 16px!important}
#toaldo-soft-intro-v19 .tsfi-secondary{border:1px solid #344554!important;background:#101820!important;color:#e7eef4!important;padding:9px 13px!important}
#toaldo-soft-intro-v19 .tsfi-danger{border:1px solid #633a42!important;background:#171014!important;color:#ef9ca6!important;padding:9px 13px!important}
#toaldo-soft-intro-v19 .tsfi-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
#toaldo-soft-intro-v19 .tsfi-message{margin:0 22px 20px;padding:10px 12px;border:1px solid #34424e;border-radius:8px;background:#0b1218;color:#aebbc7;font-size:12px}
#toaldo-soft-intro-v19 .tsfi-message.ok{border-color:#315443;color:#9ed0af}.tsfi-message.bad{border-color:#633a42;color:#ef9ca6}
#toaldo-soft-intro-v19 .tsfi-hidden{display:none!important}
#toaldo-soft-intro-v19 .tsfi-draft-list{padding:0 14px 14px;display:grid;gap:8px;max-height:360px;overflow:auto}
#toaldo-soft-intro-v19 .tsfi-draft-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid #24333f;border-radius:9px;background:#0a1117}
#toaldo-soft-intro-v19 .tsfi-draft-main{min-width:0}.tsfi-draft-main b{display:block;color:#edf3f8;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tsfi-draft-main span{display:block;color:#8396a7;font-size:11px;margin-top:5px}
#toaldo-soft-intro-v19 .tsfi-draft-actions{display:flex;gap:8px;align-items:center}.tsfi-link{padding:8px 11px!important;border:1px solid #344554!important;background:#111a22!important;color:#dce7ef!important}.tsfi-link.primary{border-color:#607f95!important;color:#eaf3f8!important}.tsfi-link.danger{border-color:#633a42!important;color:#ef9ca6!important;background:#171014!important}
#toaldo-soft-intro-v19 .tsfi-lock{font-size:11px;color:#778896;white-space:nowrap}
#toaldo-soft-intro-v19 .tsfi-empty{min-height:112px;border:1px dashed #2b3a46;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#788c9d;font-size:12px;gap:6px;padding:18px}.tsfi-empty b{color:#dce5ec;font-size:13px}
#toaldo-soft-intro-v19 .tsfi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
#toaldo-soft-intro-v19 .tsfi-grid article{min-height:128px;padding:18px;border:1px solid #283642;border-radius:11px;background:#0e151c}
#toaldo-soft-intro-v19 .tsfi-grid article>span{display:inline-block;font-size:9px;color:#6f9fc0;letter-spacing:.12em;margin-bottom:12px}.tsfi-grid h3{margin:0 0 9px;font-size:15px;color:#ecf2f7}.tsfi-grid p{margin:0;color:#8fa1b0;font-size:11.5px;line-height:1.7}
#toaldo-soft-intro-v19 .tsfi-note{margin-top:16px;border-left:3px solid #6d9fbe;padding:13px 16px;background:#0d151c;color:#9aabb9;font-size:11.5px;line-height:1.7}.tsfi-note b{display:block;color:#dfe8ee;margin-bottom:4px}.tsfi-note p{margin:0}
/* Fallback only: if a future host removes the soft-furnishing page container, keep the dashboard usable. */
#toaldo-soft-intro-v19.tsfi-fallback-fixed{position:fixed!important;z-index:6800!important;inset:0!important;overflow:auto!important}
#tsfi-nav-mirror-v19{position:fixed!important;z-index:6900!important;left:0!important;top:0!important;bottom:0!important;width:218px!important;background:#0b1117!important;border-right:1px solid #26313c!important;padding:22px 12px!important;color:#dce6ef!important;overflow:auto!important;font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif!important}
#tsfi-nav-mirror-v19.tsfi-hidden{display:none!important}#tsfi-nav-mirror-v19 .tsfi-nav-brand{padding:0 10px 18px;border-bottom:1px solid #26313c;margin-bottom:12px}#tsfi-nav-mirror-v19 .tsfi-nav-brand b{display:block;font-size:15px;letter-spacing:.08em}#tsfi-nav-mirror-v19 .tsfi-nav-brand span{font-size:9px;letter-spacing:.28em;color:#728698}
#tsfi-nav-mirror-v19 .tsfi-nav-list{display:grid!important;gap:2px!important;width:100%!important}#tsfi-nav-mirror-v19 .tsfi-nav-list button{display:block!important;width:100%!important;text-align:left!important;border:0!important;background:transparent!important;color:#91a4b7!important;padding:9px 10px!important;border-radius:7px!important;cursor:pointer!important;font-size:12px!important}#tsfi-nav-mirror-v19 .tsfi-nav-list button:hover,#tsfi-nav-mirror-v19 .tsfi-nav-list button.active{background:#151e27!important;color:#f0f4f8!important}
body:has(#tsfi-nav-mirror-v19:not(.tsfi-hidden)) #toaldo-soft-intro-v19.tsfi-fallback-fixed{left:218px!important;width:calc(100vw - 218px)!important}
@media(max-width:1150px){#toaldo-soft-intro-v19 .tsfi-workgrid{grid-template-columns:1fr}#toaldo-soft-intro-v19 .tsfi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#toaldo-soft-intro-v19 .tsfi-shell{padding:18px 14px 34px}#toaldo-soft-intro-v19 .tsfi-grid{grid-template-columns:1fr}#toaldo-soft-intro-v19 .tsfi-draft-row{grid-template-columns:1fr}.tsfi-draft-actions{justify-content:flex-start!important}#tsfi-nav-mirror-v19{display:none!important}body:has(#tsfi-nav-mirror-v19:not(.tsfi-hidden)) #toaldo-soft-intro-v19.tsfi-fallback-fixed{left:0!important;width:100vw!important}}
