/*
--------------------------------------------------
KitchenCAD PRO
Workspace
--------------------------------------------------
*/

#kcp-workspace{

    width:100%;

    min-height:100vh;

    background:#f4f5f7;

    padding:12px;

    margin:0;

    box-sizing:border-box;

}

#kcp-header{

    height:72px;

    background:#18181b;

    border:1px solid #2b2b2b;

    border-radius:14px;

    color:#ffffff;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 28px;

    margin-bottom:18px;

    box-sizing:border-box;

}

#kcp-header-left strong{

    font-size:20px;

    font-weight:600;

    letter-spacing:.5px;

    text-transform:uppercase;

}

#kcp-header-left strong{

    font-size:22px;

    font-weight:700;

}

#kcp-project-name{

    color:#8b8b8b;

    font-size:14px;

    font-weight:500;

}

#kcp-header-right{

    display:flex;

    align-items:center;

    gap:10px;

}

#kcp-header-right button{

    height:40px;

    padding:0 20px;

    border:1px solid #3a3a3a;

    border-radius:10px;

    background:#242428;

    color:#ffffff;

    cursor:pointer;

    font-size:13px;

    font-weight:600;

    transition:.2s;

}

#kcp-header-right button:hover{

    background:#2f2f34;

    border-color:#666;

}

#kcp-main{

    display:grid;

    grid-template-columns:190px 1fr 320px;

    gap:18px;

    margin-top:18px;

    align-items:stretch;

}

#kcp-toolbar{

    min-height:600px;

    background:#1b1d22;

    border:1px solid #2e3138;

    border-radius:14px;

    color:#ffffff;

    padding:20px;

    box-sizing:border-box;

}

#kcp-canvas{

    min-height:600px;

    background:#ffffff;

    border:2px dashed #d1d5db;

    position:relative;

    overflow:hidden;

    box-sizing:border-box;

    padding:0;

    width:100%;

    min-width:0;

}

#kcp-scene{

    position:relative;

    width:100%;

    height:100%;

    flex:1;

    overflow:hidden;

}

#kcp-grid{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    display:block;

}

#kcp-inspector{

    min-height:600px;

    background:#ffffff;

    border-left:1px solid #ececec;

    padding:20px;

    box-sizing:border-box;

}

#kcp-catalog{

    margin-top:20px;

    min-height:220px;

    background:#ffffff;

    border-top:1px solid #e5e7eb;

    padding:20px;

    box-sizing:border-box;

}

#kcp-statusbar{

    margin-top:20px;

    height:45px;

    background:#111827;

    color:#ffffff;

    display:flex;

    align-items:center;

    padding:0 20px;

}



/* ==========================================================
   KITCHENCAD PRO - TOOLBAR v2
========================================================== */

#kcp-toolbar{

    display:flex;
    flex-direction:column;
    gap:12px;

    background:#1b1c20;
    border:1px solid #2c2d31;
    border-radius:16px;

    padding:18px;

    box-sizing:border-box;

}

.kcp-tool-group{

    display:flex;
    flex-direction:column;
    gap:8px;

}

.kcp-tool-separator{

    height:1px;

    margin:4px 0;

    background:#303238;

}

.kcp-tool{

    display:flex;
    align-items:center;

    gap:14px;

    height:46px;

    padding:0 14px;

    border-radius:10px;

    background:transparent;

    border:1px solid transparent;

    transition:.18s;

    cursor:pointer;

}

.kcp-tool:hover{

    background:#24262b;

    border-color:#3a3d44;

}

.kcp-tool.active{

    background:transparent;

    border-color:transparent;

}

.kcp-tool.active:hover{

    background:#24262b;

    border-color:#3a3d44;

}

.kcp-tool-icon{

    width:24px;
    height:24px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    color:#e7e7e7;

}

.kcp-tool-icon svg{

    width:30px;
    height:30px;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;

    fill:none;

    overflow:visible;

}

.kcp-tool-label{

    color:#f3f3f3;

    font-size:13px;

    font-weight:600;

    letter-spacing:.2px;

    white-space:nowrap;

}

#kcp-statusbar{

    height:32px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 12px;

    background:#1f1f22;

    border-top:1px solid #3a3a3a;

    color:#d7d7d7;

    font-size:12px;

    font-family:Segoe UI,sans-serif;

}

#kcp-status-left,
#kcp-status-right{

    display:flex;

    align-items:center;

    gap:18px;

}

#kcp-statusbar span{

    white-space:nowrap;

}

/* ==========================================================
   KITCHENCAD PRO - TOP DIALOG
========================================================== */

.kcp-dialog{

    position:fixed;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    z-index:99999;

}

.kcp-dialog-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.45);

}

.kcp-dialog-window{

    position:relative;

    width:1450px;

    max-width:94vw;

    min-height:650px;

    background:#ffffff;

    border-radius:18px;

    box-shadow:0 30px 90px rgba(0,0,0,.35);

    overflow:hidden;

    z-index:2;

}

.kcp-dialog-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 24px;

    border-bottom:1px solid #ececec;

}

.kcp-dialog-header h2{

    margin:0 0 8px;

    font-size:22px;

    font-weight:700;

    color:#2F343A;

    letter-spacing:-0.2px;

    display:inline-block;

    position:relative;

}

.kcp-dialog-header h2::after{

    content:"";

    display:block;

    width:180px;

    height:3px;

    margin-top:8px;

    background:#C8A16B;

    border-radius:2px;

}

.kcp-dialog-close{

    width:40px;

    height:40px;

    display:flex;

    align-items:center;

    justify-content:center;

    border:0;

    background:transparent;

    color:#1f2937;

    font-size:30px;

    font-weight:400;

    line-height:1;

    cursor:pointer;

    border-radius:8px;

    transition:.2s;

}

.kcp-dialog-close:hover{

    background:#f3f4f6;

}

.kcp-dialog-body{

    min-height:500px;

    padding:30px;

}

.kcp-dialog-footer{

    display:flex;

    justify-content:flex-end;

    gap:12px;

    padding:20px 30px;

    border-top:1px solid #ececec;

    background:#fafafa;

}

.kcp-btn-cancel,
.kcp-btn-create{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:42px;
    padding:0 22px;

    border-radius:10px;

    border:none;

    font-size:14px;
    font-weight:600;

    cursor:pointer;

    transition:all .20s ease;

}

.kcp-btn-cancel{

    background:#FFFFFF;

    color:#2F343A;

    border:1px solid #D8DCE2;

}

.kcp-btn-cancel:hover{

    background:#FFFFFF;

    color:#2F343A;

    border-color:#C8A16B;

}

.kcp-btn-create{

    background:#2F343A;

    color:#FFFFFF;

}

.kcp-btn-create:hover{

    background:#1F2327;

    transform:translateY(-1px);

}

/* ==========================================================
   TOP DIALOG - FORM
========================================================== */

.kcp-form-grid{

    display:grid;

    grid-template-columns:240px 720px 320px;

    gap:30px;

    align-items:start;

}

.kcp-form-section h3{

    margin:0 0 18px;

    font-size:17px;

    color:#1f2937;

}

.kcp-radio{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:14px;

    cursor:pointer;

    font-size:15px;

}

.kcp-radio input{

    width:18px;

    height:18px;

}

#kcp-top-config{

    min-height:220px;

    border:1px dashed #d6d6d6;

    border-radius:10px;

    padding:20px;

    background:#fafafa;

}

/* ==========================================================
   TOP DIALOG - PREVIEW
========================================================== */

.kcp-preview-wrapper{

    display:flex;

    flex-direction:column;

    gap:24px;

}

.kcp-preview-texture,
.kcp-preview-top{

    display:flex;

    flex-direction:column;

    gap:12px;

}

.kcp-preview-texture h4,
.kcp-preview-top h4{

    margin:0;

    font-size:14px;

    font-weight:600;

    color:#2F343A;

}

#kcp-texture-preview{

    height:120px;

    border:1px solid #D8DCE2;

    border-radius:12px;

    background:#FAFAFA;

}

#kcp-top-preview{

    height:340px;

    border:1px solid #D8DCE2;

    border-radius:12px;

    background:#FFFFFF;

}

/* ==========================================================
   TOP CONFIG WIZARD
========================================================== */

.kcp-config-step{

    display:flex;

    flex-direction:column;

    gap:8px;

    margin-bottom:22px;

}

.kcp-config-step:last-child{

    margin-bottom:0;

}

/* ==========================================================
   KITCHENCAD PRO
   INSPECTOR v2
========================================================== */

#kcp-inspector{

    min-height:600px;

    background:#1b1c20;

    border:1px solid #2c2d31;

    border-radius:16px;

    padding:22px;

    box-sizing:border-box;

    color:#f3f3f3;

}

.kcp-inspector-header{

    font-size:22px;

    font-weight:700;

    letter-spacing:.5px;

    color:#ffffff;

    margin-bottom:8px;

}

.kcp-section-title{

    font-size:13px;

    color:#C8A16B;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:18px;

}

.kcp-divider{

    height:1px;

    background:#303238;

    margin:20px 0;

}

.kcp-group-title{

    font-size:12px;

    color:#8e939b;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:16px;

}

.kcp-info-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:12px;

    font-size:14px;

}

.kcp-info-row span{

    color:#9ca3af;

}

.kcp-info-row strong{

    color:#ffffff;

    font-weight:600;

}

.kcp-texture-preview{

    height:120px;

    border:1px solid #34363d;

    border-radius:12px;

    background:#25272d;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#72757d;

    font-size:13px;

    margin-top:18px;

    margin:20px 0 24px;

    box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.02),
    0 6px 18px rgba(0,0,0,.18);

}

.kcp-field{

    margin-bottom:18px;

}

.kcp-field label{

    display:block;

    margin-bottom:8px;

    color:#9ca3af;

    font-size:13px;

}

.kcp-input-row{

    display:flex;

    gap:10px;

    align-items:center;

}

.kcp-input-row input{

    flex:1;

    max-width:210px;

    height:44px;

    background:#24262b;

    border:1px solid #3a3d44;

    border-radius:10px;

    color:#ffffff;

    padding:0 14px;

    font-size:16px;

    font-weight:600;

}

.kcp-input-row input:focus{

    outline:none;

    border-color:#C8A16B;

}

#kcp-length-save{

    width:44px;

    height:44px;

    border:none;

    border-radius:10px;

    background:#C8A16B;

    color:#FFFFFF;

    font-size:22px;

    font-weight:700;

    display:flex;

    align-items:center;

    justify-content:center;

    line-height:1;

    cursor:pointer;

    transition:.18s;

    padding:0;

    min-width:50px !important;
max-width:50px !important;
flex:0 0 50px !important;

}

#kcp-length-save:hover{

    background:#d8b27b;

}