.td-shell{
  --td-ink:#14171A;--td-ink-soft:#1F252B;--td-steel:#5B6672;--td-steel-line:#DAD7CD;
  --td-paper:#F5F6F4;--td-white:#FFFFFF;--td-amber:#FFC229;--td-amber-deep:#E39F00;
  --td-teal:#12856A;--td-teal-deep:#0B6350;--td-red:#C0392B;--td-blue:#32679F;--td-border-mid:#CFC9B4;
  font-family:'Inter',sans-serif;color:var(--td-ink);line-height:1.5;
}
.td-shell *{box-sizing:border-box;}
.td-shell h1,.td-shell h2,.td-shell h3{font-family:'Outfit',sans-serif;letter-spacing:-.01em;margin:0;}
.td-shell a{text-decoration:none;color:inherit;}
.td-shell button{font-family:inherit;}

/* ---- Guest / placeholder ---- */
.td-shell .td-guest-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:radial-gradient(circle at 18% 16%,rgba(255,194,41,.12),transparent 32%),linear-gradient(120deg,#F5F6F4 0%,#ECEFEC 100%);}
.td-shell .td-guest-card{max-width:420px;width:100%;text-align:center;background:var(--td-white);border:1px solid var(--td-steel-line);border-radius:16px;padding:40px 34px;box-shadow:0 24px 60px rgba(20,23,26,.1);}
.td-shell .td-guest-icon{width:60px;height:60px;margin:0 auto 16px;border-radius:16px;background:linear-gradient(135deg,#FFF1DE,#FFE4B0);color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:24px;}
.td-shell .td-guest-eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--td-amber-deep);margin-bottom:10px;}
.td-shell .td-guest-card h2{font-size:21px;margin-bottom:10px;}
.td-shell .td-guest-card p{font-size:13.5px;color:var(--td-steel);margin-bottom:22px;line-height:1.6;}
.td-shell .btn-block{width:100%;}
.td-shell .td-guest-features{margin-top:26px;padding-top:20px;border-top:1px dashed var(--td-steel-line);display:flex;flex-direction:column;gap:10px;text-align:left;}
.td-shell .td-guest-features div{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--td-steel);font-weight:600;}
.td-shell .td-guest-features i{width:28px;height:28px;border-radius:8px;background:var(--td-paper);color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;}
.td-shell .td-guest-wrap{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;}

/* ---- Shell ---- */
.td-shell .dash-shell{display:flex;min-height:100vh;background:var(--td-paper);}

/* ---- Sidebar ---- */
.td-shell .sidebar{width:250px;background:var(--td-ink);color:#fff;flex-shrink:0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;}
.td-shell .sidebar-brand{display:flex;align-items:center;gap:10px;padding:22px 22px 18px;font-family:'Outfit',sans-serif;font-weight:800;font-size:18px;border-bottom:1px solid rgba(255,255,255,.08);}
.td-shell .sidebar-brand .mark{width:30px;height:30px;border-radius:7px;background:var(--td-amber);color:var(--td-ink);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;}
.td-shell .sidebar-role{padding:14px 22px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--td-amber);}
.td-shell .sidebar-nav{flex:1;padding:6px 12px;}
.td-shell .nav-item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:8px;color:#B9C0C6;font-size:13.5px;font-weight:600;cursor:pointer;margin-bottom:2px;transition:background .15s,color .15s;border:0;background:none;width:100%;text-align:left;}
.td-shell .nav-item i{width:16px;text-align:center;font-size:14px;}
.td-shell .nav-item:hover{background:rgba(255,255,255,.06);color:#fff;}
.td-shell .nav-item.active{background:var(--td-amber);color:var(--td-ink);}
.td-shell .nav-item .badge-count{margin-left:auto;background:rgba(255,255,255,.14);color:#fff;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:99px;}
.td-shell .nav-item.active .badge-count{background:rgba(20,23,26,.16);color:var(--td-ink);}
.td-shell .nav-item-logout{margin-top:8px;padding-top:13px;border-top:1px dashed rgba(255,255,255,.12);color:#c98a86;}
.td-shell .nav-item-logout:hover{background:rgba(192,57,43,.12);color:#ff8f87;}
.td-shell .sidebar-foot{padding:16px 22px;border-top:1px solid rgba(255,255,255,.08);}
.td-shell .sidebar-user{display:flex;align-items:center;gap:10px;}
.td-shell .sidebar-user .avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#FFD666,var(--td-amber) 60%,var(--td-amber-deep));color:var(--td-ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0;}
.td-shell .sidebar-user b{display:block;font-size:12.5px;}
.td-shell .sidebar-user span{font-size:11px;color:#8a929a;}
.td-shell .sidebar-logout{margin-top:12px;display:flex;align-items:center;gap:8px;font-size:12px;color:#8a929a;cursor:pointer;}
.td-shell .sidebar-logout:hover{color:#fff;}

/* ---- Main ---- */
.td-shell .main{flex:1;min-width:0;}
.td-shell .topbar{background:var(--td-white);border-bottom:1px solid var(--td-steel-line);padding:16px 32px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;}
.td-shell .topbar h1{font-size:20px;font-weight:800;}
.td-shell .topbar p{font-size:12.5px;color:var(--td-steel);margin-top:2px;}
.td-shell .topbar-actions{display:flex;gap:10px;align-items:center;}
.td-shell .content{padding:28px 32px 60px;}
.td-shell .view{display:none;}
.td-shell .view.active{display:block;animation:tdFadeIn .3s ease both;}
@keyframes tdFadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}

/* ---- Buttons ---- */
.td-shell .btn{display:inline-flex;align-items:center;gap:8px;justify-content:center;font-weight:700;font-size:13.5px;padding:10px 18px;border-radius:7px;border:1.5px solid transparent;cursor:pointer;transition:transform .12s ease,box-shadow .15s ease;}
.td-shell .btn:hover{transform:translateY(-1px);}
.td-shell .btn-amber{background:linear-gradient(135deg,#FFD666,var(--td-amber) 55%,var(--td-amber-deep));color:var(--td-ink);box-shadow:0 4px 14px rgba(255,194,41,.3);}
.td-shell .btn-dark{background:linear-gradient(135deg,var(--td-ink-soft),var(--td-ink));color:#fff;}
.td-shell .btn-light{background:#fff;border-color:var(--td-steel-line);color:var(--td-ink);}
.td-shell .btn-light:hover{border-color:var(--td-amber-deep);color:var(--td-amber-deep);}
.td-shell .btn-sm{padding:7px 13px;font-size:12px;}
.td-shell .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;}

/* ---- Stat cards ---- */
.td-shell .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px;}
.td-shell .stat-card{background:var(--td-white);border:1px solid var(--td-steel-line);border-radius:12px;padding:18px 20px;box-shadow:0 4px 14px rgba(20,23,26,.04);}
.td-shell .stat-card .stat-icon{width:36px;height:36px;border-radius:9px;background:var(--td-paper);color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:12px;}
.td-shell .stat-card b{display:block;font-family:'Outfit',sans-serif;font-size:24px;font-weight:800;}
.td-shell .stat-card span{font-size:12px;color:var(--td-steel);}

/* ---- Panel ---- */
.td-shell .panel{background:var(--td-white);border:1px solid var(--td-steel-line);border-radius:12px;padding:22px;margin-bottom:20px;box-shadow:0 4px 14px rgba(20,23,26,.04);}
.td-shell .td-simple-table{width:100%;border-collapse:collapse;}
.td-shell .td-simple-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#9AA1A8;padding:0 10px 10px;border-bottom:1.5px solid var(--td-steel-line);}
.td-shell .td-simple-table td{padding:12px 10px;border-bottom:1px solid var(--td-steel-line);vertical-align:middle;}
.td-shell .td-simple-table tr:last-child td{border-bottom:none;}
.td-shell .td-simple-table tr:hover td{background:#FAFAF8;}
.td-shell .panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap;}
.td-shell .panel-head h2{font-size:16px;font-weight:800;}
.td-shell .panel-head p{font-size:12px;color:var(--td-steel);margin-top:2px;}

/* ---- Form ---- */
.td-shell .form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.td-shell .form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
.td-shell .form-row-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.td-shell .form-row-25-25-50{display:grid;grid-template-columns:1fr 1fr 2fr;gap:14px;}
@media(max-width:900px){.td-shell .form-row-4{grid-template-columns:1fr 1fr;}.td-shell .form-row-25-25-50{grid-template-columns:1fr;}}
@media(max-width:600px){.td-shell .form-row-4{grid-template-columns:1fr;}.td-shell .td-upload-row{grid-template-columns:1fr!important;}}
.td-shell .form-group{margin-bottom:16px;}
.td-shell .td-checkbox-row{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:12.5px;color:var(--td-steel);}
.td-shell .td-checkbox-row input{margin-top:3px;accent-color:var(--td-amber-deep);width:16px;height:16px;flex-shrink:0;}
.td-shell .td-checkbox-row b{color:var(--td-ink);}
.td-shell .form-group label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--td-steel);margin-bottom:7px;}
.td-shell .form-field{width:100%;border:1px solid var(--td-steel-line);border-radius:7px;background:var(--td-paper);font-size:13.5px;color:var(--td-ink);padding:10px 13px;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s;}
.td-shell .form-field:focus{border-color:var(--td-amber);background:#fff;box-shadow:0 0 0 4px rgba(255,194,41,.14);}
.td-shell .form-field:disabled{background:#F0F1EF;color:#9AA1A8;}
.td-shell textarea.form-field{resize:vertical;min-height:80px;}

/* ---- Tabs ---- */
.td-shell .subtabs{display:flex;gap:6px;background:var(--td-paper);border-radius:8px;padding:4px;margin-bottom:18px;width:fit-content;}
.td-shell .subtab{border:0;background:none;padding:8px 16px;border-radius:6px;font-size:12.5px;font-weight:700;color:var(--td-steel);cursor:pointer;}
.td-shell .subtab.active{background:var(--td-ink);color:#fff;}

/* ---- Requirement list ---- */
.td-shell .req-item{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid var(--td-steel-line);border-radius:10px;margin-bottom:10px;transition:border-color .15s,box-shadow .15s;flex-wrap:wrap;}
.td-shell .req-item:hover{border-color:var(--td-amber-deep);box-shadow:0 4px 14px rgba(20,23,26,.05);}
.td-shell .req-icon{width:42px;height:42px;border-radius:9px;background:var(--td-paper);color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.td-shell .req-info{flex:1;min-width:160px;}
.td-shell .req-info b{font-size:13.5px;display:block;margin-bottom:3px;}
.td-shell .req-info span{font-size:11.5px;color:var(--td-steel);}
.td-shell .req-status{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:99px;white-space:nowrap;}
.td-shell .status-active{background:#EAF6F0;color:var(--td-teal-deep);}
.td-shell .status-closed{background:#F0F1EF;color:var(--td-steel);}
.td-shell .req-quotes{font-size:12px;font-weight:700;color:var(--td-amber-deep);white-space:nowrap;}
.td-shell .req-thumb{background-size:cover;background-position:center;color:transparent;}
.td-shell .td-optional-tag{font-size:9.5px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--td-steel);}
.td-shell .td-required-tag{font-size:9.5px;font-weight:700;text-transform:none;letter-spacing:0;color:var(--td-amber-deep);background:#FFF1DE;padding:2px 7px;border-radius:99px;}

/* ---- Image picker ---- */
.td-shell .td-image-picker{display:flex;flex-wrap:wrap;gap:10px;}
.td-shell .td-image-grid{display:flex;flex-wrap:wrap;gap:10px;}
.td-shell .td-image-thumb{width:56px;height:56px;border-radius:8px;overflow:hidden;position:relative;border:1px solid var(--td-steel-line);}
.td-shell .td-image-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.td-shell .td-image-remove{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:rgba(20,23,26,.75);color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;}
.td-shell .td-image-add{width:auto;min-width:56px;height:56px;padding:0 14px;border:2px dashed var(--td-border-mid);border-radius:8px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;color:var(--td-steel);cursor:pointer;transition:border-color .15s,background .15s;font-size:12px;font-weight:600;white-space:nowrap;text-align:left;}
.td-shell .td-image-add:hover{border-color:var(--td-amber-deep);background:#FFFBF3;}
.td-shell .td-image-add i{font-size:16px;color:var(--td-amber-deep);}
.td-shell .td-image-add.is-hidden{display:none;}
.td-shell .td-hint{font-size:11.5px;color:var(--td-steel);margin-top:8px;}
.td-shell .td-inline-alert{margin-top:8px;margin-bottom:0;font-size:11.5px;padding:8px 12px;}

/* ---- Saved grid ---- */
.td-shell .saved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.td-shell .saved-card{border:1px solid var(--td-steel-line);border-radius:10px;padding:16px;position:relative;transition:border-color .15s,transform .15s;background:var(--td-white);}
.td-shell .saved-card:hover{border-color:var(--td-amber-deep);transform:translateY(-2px);}
.td-shell .saved-card .fav-icon{position:absolute;top:14px;right:14px;color:var(--td-amber-deep);border:0;background:none;cursor:pointer;font-size:14px;}
.td-shell .saved-card .thumb{width:44px;height:44px;border-radius:9px;background:var(--td-paper);display:flex;align-items:center;justify-content:center;color:var(--td-border-mid);font-size:17px;margin-bottom:12px;}
.td-shell .saved-card b{font-size:13px;display:block;margin-bottom:3px;}
.td-shell .saved-card span{font-size:11.5px;color:var(--td-steel);}

/* ---- Messages ---- */
.td-shell .msg-item{display:flex;gap:14px;padding:14px 16px;border:1px solid var(--td-steel-line);border-radius:10px;margin-bottom:10px;cursor:pointer;transition:border-color .15s;}
.td-shell .msg-item:hover{border-color:var(--td-amber-deep);}
.td-shell .msg-item.unread{background:#FFFBF3;border-color:#F1D2AA;}
.td-shell .msg-avatar{width:40px;height:40px;border-radius:50%;background:var(--td-ink);color:var(--td-amber);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0;}
.td-shell .msg-body{flex:1;min-width:0;}
.td-shell .msg-top{display:flex;justify-content:space-between;gap:8px;}
.td-shell .msg-top b{font-size:13px;}
.td-shell .msg-top span{font-size:11px;color:var(--td-steel);white-space:nowrap;}
.td-shell .msg-preview{font-size:12.5px;color:var(--td-steel);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;}

.td-shell .td-thread-panel{display:none;}
.td-shell .td-thread-messages{max-height:360px;overflow-y:auto;padding:6px 0;margin-bottom:14px;}
.td-shell .td-thread-bubble{max-width:70%;padding:9px 13px;border-radius:10px;font-size:13px;margin-bottom:8px;line-height:1.4;}
.td-shell .td-thread-bubble.mine{background:var(--td-ink);color:#fff;margin-left:auto;border-bottom-right-radius:3px;}
.td-shell .td-thread-bubble.theirs{background:var(--td-paper);color:var(--td-ink);border-bottom-left-radius:3px;}
.td-shell .td-thread-bubble time{display:block;font-size:10px;opacity:.6;margin-top:4px;}
.td-shell .td-thread-reply{display:flex;gap:10px;align-items:flex-end;}
.td-shell .td-thread-reply textarea{flex:1;}

/* ---- Profile ---- */
.td-shell .profile-header{display:flex;align-items:center;gap:18px;margin-bottom:22px;}
.td-shell .profile-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#FFD666,var(--td-amber) 60%,var(--td-amber-deep));color:var(--td-ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;}
.td-shell .verify-chip{display:inline-flex;align-items:center;gap:6px;background:#EAF6F0;color:var(--td-teal-deep);font-size:11px;font-weight:700;padding:4px 10px;border-radius:99px;margin-top:4px;}

/* ---- Alerts / empty states ---- */
.td-shell .td-alert{border-radius:8px;padding:11px 14px;font-size:12.5px;font-weight:600;margin-bottom:14px;}
.td-shell .td-alert-ok{background:#EAF6F0;border:1px solid #BFE3D0;color:#0B6350;}
.td-shell .td-alert-error{background:#FDECEA;border:1px solid #F3B9B2;color:var(--td-red);}
.td-shell .td-empty{text-align:center;padding:40px 20px;color:var(--td-steel);}
.td-shell .td-empty i{font-size:26px;color:var(--td-border-mid);margin-bottom:10px;display:block;}
.td-shell .td-empty p{font-size:13px;margin-bottom:14px;}

@media(max-width:1100px){.td-shell .stat-grid{grid-template-columns:1fr 1fr;}.td-shell .saved-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:900px){.td-shell .sidebar{position:fixed;left:-260px;z-index:100;transition:left .2s;}.td-shell .sidebar.open{left:0;}.td-shell .form-row-2,.td-shell .form-row-3{grid-template-columns:1fr;}}

/* ---- View drawer ---- */
.td-shell .td-drawer-backdrop{position:fixed;inset:0;background:rgba(15,18,22,.55);display:none;z-index:9999;}
.td-shell .td-drawer-backdrop.active{display:block;}
.td-shell .td-drawer{position:fixed;top:0;right:-460px;width:440px;max-width:100%;height:100%;background:var(--td-white);box-shadow:-14px 0 40px rgba(0,0,0,.2);transition:right .3s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;z-index:10000;}
.td-shell .td-drawer-backdrop.active .td-drawer{right:0;}
.td-shell .td-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--td-steel-line);flex-shrink:0;}
.td-shell .td-drawer-head h3{font-size:17px;font-weight:800;}
.td-shell .td-drawer-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--td-steel-line);background:#fff;cursor:pointer;color:var(--td-steel);}
.td-shell .td-drawer-close:hover{color:var(--td-red);border-color:var(--td-red);}
.td-shell .td-drawer-body{padding:22px;overflow-y:auto;flex:1;}
.td-shell .td-drawer-gallery{display:flex;gap:8px;overflow-x:auto;margin-bottom:18px;}
.td-shell .td-drawer-gallery img{width:84px;height:84px;border-radius:9px;object-fit:cover;flex-shrink:0;border:1px solid var(--td-steel-line);}
.td-shell .td-drawer-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;}
.td-shell .td-drawer-meta div{background:var(--td-paper);border-radius:8px;padding:10px 12px;}
.td-shell .td-drawer-meta label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--td-steel);margin-bottom:3px;}
.td-shell .td-drawer-meta span{font-size:13px;font-weight:600;}
.td-shell .td-drawer-section-title{font-size:13px;font-weight:800;margin:20px 0 10px;}
.td-shell .td-drawer-details{font-size:13px;color:var(--td-steel);line-height:1.6;background:var(--td-paper);border-radius:8px;padding:12px 14px;}
.td-shell .td-quote-card{border:1px solid var(--td-steel-line);border-radius:10px;padding:14px;margin-bottom:10px;}
.td-shell .td-quote-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
.td-shell .td-quote-top b{font-size:13px;}
.td-shell .td-quote-amount{font-family:'Outfit',sans-serif;font-weight:800;color:var(--td-teal-deep);font-size:14px;}
.td-shell .td-quote-card p{font-size:12.5px;color:var(--td-steel);margin-bottom:4px;}
.td-shell .td-quote-time{font-size:11px;color:#9AA1A8;}

/* ---- Listing rows (reuse req-item base, add specifics) ---- */
.td-shell .listing-row{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--td-steel-line);border-radius:10px;margin-bottom:10px;transition:border-color .15s;flex-wrap:wrap;}
.td-shell .listing-row:hover{border-color:var(--td-amber-deep);}
.td-shell .listing-thumb{width:44px;height:44px;border-radius:9px;background:var(--td-paper);color:var(--td-border-mid);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;background-size:cover;background-position:center;}
.td-shell .listing-info{flex:1;min-width:160px;}
.td-shell .listing-info b{font-size:13.5px;display:block;margin-bottom:3px;}
.td-shell .listing-info span{font-size:11.5px;color:var(--td-steel);}
.td-shell .listing-stat{text-align:center;min-width:56px;}
.td-shell .listing-stat b{display:block;font-size:14px;font-family:'Outfit',sans-serif;}
.td-shell .listing-stat span{font-size:10px;color:var(--td-steel);text-transform:uppercase;}
.td-shell .listing-status{font-size:10.5px;font-weight:700;text-transform:uppercase;padding:4px 10px;border-radius:99px;white-space:nowrap;}

/* ---- Quote modal ---- */
.td-shell .td-modal-backdrop{position:fixed;inset:0;background:rgba(15,18,22,.6);display:none;align-items:center;justify-content:center;z-index:99999;padding:20px;}
.td-shell .td-modal-backdrop.active{display:flex;}
.td-shell .td-modal{width:420px;max-width:100%;background:var(--td-white);border-radius:14px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);}
.td-shell .td-modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
.td-shell .td-modal-head h3{font-size:18px;}
.td-shell .td-modal-sub{font-size:12.5px;color:var(--td-steel);margin-bottom:16px;}

/* ---- Profile completion gate banner ---- */
.td-gate-banner{display:flex;align-items:center;gap:14px;background:#FFF7ED;border:1px solid #F1D2AA;border-radius:12px;padding:16px 18px;margin-bottom:22px;}
.td-gate-banner-icon{width:38px;height:38px;border-radius:9px;background:#FFE9C7;color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.td-gate-banner-body{flex:1;min-width:0;}
.td-gate-banner-body b{display:block;font-size:13.5px;margin-bottom:2px;}
.td-gate-banner-body span{font-size:12px;color:#7D5119;}

/* ---- Informational product-limit banner ---- */
.td-shell .td-info-banner{display:flex;align-items:center;gap:14px;background:#EEF5FF;border:1px solid #C7DBFA;border-radius:12px;padding:16px 18px;margin-bottom:22px;}
.td-shell .td-info-banner-icon{width:38px;height:38px;border-radius:9px;background:#DCE9FE;color:#3268C4;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.td-shell .td-info-banner-body{flex:1;min-width:0;}
.td-shell .td-info-banner-body b{display:block;font-size:13.5px;margin-bottom:2px;color:#1F4E8C;}
.td-shell .td-info-banner-body span{font-size:12px;color:#3268C4;}

/* ---- Badges in nav ---- */
.td-badge-ok{background:#12856A!important;color:#fff!important;}
.td-badge-pending{background:var(--td-amber)!important;color:var(--td-ink)!important;}

/* ---- Notices ---- */
.td-shell .td-notice{display:flex;align-items:center;gap:10px;background:#EEF5FF;border:1px solid #C7DBFA;border-radius:8px;padding:12px 14px;font-size:12.5px;color:#1F4E8C;font-weight:600;margin-bottom:16px;}
.td-shell .td-notice i{color:#3268C4;}
.td-shell .td-notice-ok{background:#EAF6F0;border-color:#BFE3D0;color:#0B6350;}
.td-shell .td-notice-ok i{color:var(--td-teal-deep);}

/* ---- Radio row (shipping scope) ---- */
.td-shell .td-radio-row{display:flex;gap:20px;flex-wrap:wrap;}
.td-shell .td-radio{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--td-ink);cursor:pointer;}
.td-shell .td-radio input{accent-color:var(--td-amber-deep);width:16px;height:16px;}

/* ---- Shipping toggle cards ---- */
.td-shell .td-ship-toggle{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:600px){.td-shell .td-ship-toggle{grid-template-columns:1fr;}}
.td-shell .td-ship-card{position:relative;display:flex!important;flex-wrap:nowrap!important;flex-direction:row!important;align-items:center;gap:8px;border:1.5px solid var(--td-steel-line);border-radius:10px;padding:9px 14px;cursor:pointer;background:var(--td-white);transition:border-color .15s,background .15s,box-shadow .15s,transform .12s;}
.td-shell .td-ship-icon{width:28px;height:28px;border-radius:8px;background:var(--td-paper);color:var(--td-amber-deep);display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;transition:background .15s,color .15s;}
.td-shell .td-ship-text{flex:1 1 auto;min-width:0;display:flex!important;flex-wrap:nowrap!important;align-items:baseline;gap:6px;overflow:hidden;}
.td-shell .td-ship-text b{font-size:12px;white-space:nowrap;flex-shrink:0;}
.td-shell .td-ship-text small{font-size:10px;color:var(--td-steel);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.td-shell .td-ship-card:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(20,23,26,.06);}
.td-shell .td-ship-card input{position:absolute;opacity:0;pointer-events:none;}
.td-shell .td-ship-check{color:var(--td-steel-line);font-size:15px;flex-shrink:0;transition:color .15s;}

/* ---- Location + submit inline row ---- */
.td-shell .td-location-submit-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;}
.td-shell .td-location-group{flex:0 0 30%;max-width:30%;margin-bottom:16px;}
.td-shell .td-location-submit-row .btn{flex-shrink:0;height:46px;margin-left:auto;}
@media(max-width:700px){.td-shell .td-location-submit-row{flex-direction:column;align-items:stretch;}.td-shell .td-location-group{flex:1;max-width:100%;}.td-shell .td-location-submit-row .btn{margin-left:0;}}
.td-shell .td-ship-card:has(input:checked),.td-shell .td-ship-card.active{border-color:var(--td-amber-deep);background:#FFFBF3;box-shadow:0 4px 14px rgba(255,194,41,.16);}
.td-shell .td-ship-card:has(input:checked) .td-ship-icon,.td-shell .td-ship-card.active .td-ship-icon{background:var(--td-amber);color:var(--td-ink);}
.td-shell .td-ship-card:has(input:checked) .td-ship-check,.td-shell .td-ship-card.active .td-ship-check{color:var(--td-teal);}

/* ---- Document picker ---- */
.td-shell .td-doc-picker{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;}
.td-shell .td-doc-list{display:flex;flex-wrap:wrap;gap:10px;}
.td-shell .td-doc-chip{display:flex;align-items:center;gap:8px;background:var(--td-paper);border:1px solid var(--td-steel-line);border-radius:9px;padding:8px 10px;font-size:12px;font-weight:600;max-width:220px;}
.td-shell .td-doc-chip i.fa-file-pdf{color:#C0392B;}
.td-shell .td-doc-chip i.fa-file-image{color:#3268C4;}
.td-shell .td-doc-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.td-shell .td-doc-remove{border:0;background:none;color:var(--td-red);cursor:pointer;font-size:11px;flex-shrink:0;}
.td-shell .td-doc-add{display:flex;align-items:center;gap:8px;border:2px dashed var(--td-border-mid);border-radius:9px;padding:10px 16px;color:var(--td-steel);cursor:pointer;font-size:12.5px;transition:border-color .15s,background .15s;}
.td-shell .td-doc-add:hover{border-color:var(--td-amber-deep);background:#FFFBF3;}
.td-shell .td-doc-add i{color:var(--td-amber-deep);}
.td-shell .td-doc-add.is-hidden{display:none;}

/* ---- Logo picker ---- */
.td-shell .td-logo-picker{display:flex;align-items:center;gap:14px;margin-bottom:6px;}
.td-shell .td-logo-preview{width:64px;height:64px;border-radius:12px;background:var(--td-paper);border:1px solid var(--td-steel-line);display:flex;align-items:center;justify-content:center;color:var(--td-border-mid);font-size:22px;overflow:hidden;flex-shrink:0;}
.td-shell .td-logo-preview img{width:100%;height:100%;object-fit:cover;}

/* ---- Map picker ---- */
/* Map picker removed for now — plain text location fields used instead. */

/* Sidebar avatar image support */
.td-shell .sidebar-user .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;}

/* ---- Listing limit pill ---- */
.td-shell .td-limit-pill{display:inline-flex;align-items:center;gap:6px;background:#EAF6F0;color:var(--td-teal-deep);border:1px solid #BFE3D0;border-radius:99px;padding:6px 12px;font-size:11.5px;font-weight:700;white-space:nowrap;}
.td-shell .td-limit-pill.full{background:#FDECEA;color:var(--td-red);border-color:#F3B9B2;}
