/* 내 차고 공용 스타일 (my-garage.html + mypage.html) */
.gg-wrap{max-width:1000px;margin:0 auto;padding:44px 20px 80px;}

/* ── 제목 줄 우측에 등록 버튼 배치 ── */
.gg-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin-bottom:8px;}
.gg-title-row h2{margin-bottom:0 !important;}
@media (max-width:600px){ .gg-title-row .gg-toggle-btn{width:100%;} }

/* ── 등록 폼 = 드롭다운 ── */
.gg-toolbar{display:flex;justify-content:flex-end;margin-bottom:14px;}
.gg-toggle-btn{display:inline-flex;align-items:center;gap:8px;background:#1947BA;color:#fff;font-size:14px;font-weight:700;padding:11px 18px;border-radius:10px;transition:background .15s;}
.gg-toggle-btn:hover{background:#0F3491;}
.gg-toggle-btn .chev{font-size:11px;transition:transform .2s;}
.gg-toggle-btn.open .chev{transform:rotate(180deg);}
.gg-form-panel{display:none;background:#F7F9FD;border:1px solid rgba(26,26,26,.1);border-radius:14px;padding:20px;margin-bottom:18px;}
.gg-form-panel.open{display:block;animation:ggDrop .2s ease;}
@keyframes ggDrop{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
.gg-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;}
.gg-form-panel .gg-add-btn{max-width:240px;margin-left:auto;display:block;}
@media (max-width:700px){
  .gg-form-grid{grid-template-columns:1fr;}
  .gg-toggle-btn{width:100%;justify-content:center;}
  .gg-form-panel .gg-add-btn{max-width:none;}
}
.gg-head{text-align:center;margin-bottom:30px;}
.gg-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#1947BA;background:#EEF3FF;padding:7px 15px;border-radius:100px;margin-bottom:14px;}
.gg-head h1{font-size:clamp(28px,5vw,40px);font-weight:800;letter-spacing:-0.03em;line-height:1.2;margin-bottom:12px;}
.gg-head p{font-size:15.5px;color:#666;line-height:1.6;max-width:560px;margin:0 auto;}
.gg-layout{display:grid;grid-template-columns:330px 1fr;gap:22px;align-items:start;}
@media (max-width:820px){ .gg-layout{grid-template-columns:1fr;} }
.gg-card{background:#fff;border:1px solid rgba(26,26,26,.1);border-radius:18px;padding:22px;box-shadow:0 4px 18px rgba(15,52,145,.05);}
.gg-card h2{font-size:16.5px;font-weight:800;margin-bottom:16px;}
.gg-field{margin-bottom:13px;}
.gg-field label{display:block;font-size:13px;font-weight:700;color:#555;margin-bottom:6px;}
.gg-input,.gg-select{width:100%;padding:12px 13px;border:1.5px solid rgba(26,26,26,.2);border-radius:10px;font-size:14.5px;background:#fff;color:#1A1A1A;}
.gg-input:focus,.gg-select:focus{outline:none;border-color:#1947BA;}
.gg-select:disabled{opacity:.55;}
.gg-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.gg-add-btn{width:100%;margin-top:6px;background:#1947BA;color:#fff;font-size:15px;font-weight:700;padding:13px;border-radius:11px;transition:background .15s;}
.gg-add-btn:hover:not(:disabled){background:#0F3491;}
.gg-add-btn:disabled{opacity:.5;cursor:not-allowed;}
.gg-grid{display:flex;flex-direction:column;gap:14px;}
.veh-card{background:#fff;border:1px solid rgba(26,26,26,.1);border-radius:16px;padding:18px 20px;box-shadow:0 3px 14px rgba(15,52,145,.05);position:relative;overflow:hidden;}
.veh-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;}
.veh-card.overdue::before{background:#E0483A;} .veh-card.soon::before{background:#F2AB00;} .veh-card.ok::before{background:#1E8C57;}
.veh-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;}
.veh-name{font-size:17px;font-weight:800;color:#1A1A1A;}
.veh-sub{font-size:12.5px;color:#888;margin-top:3px;}
.veh-badge{flex-shrink:0;font-size:12px;font-weight:700;padding:5px 11px;border-radius:100px;white-space:nowrap;}
.veh-badge.overdue{background:rgba(224,72,58,.12);color:#E0483A;}
.veh-badge.soon{background:rgba(242,171,0,.16);color:#B97D00;}
.veh-badge.ok{background:rgba(30,140,87,.12);color:#1E8C57;}
.veh-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:#555;padding:12px 0;border-top:1px dashed rgba(26,26,26,.1);border-bottom:1px dashed rgba(26,26,26,.1);margin-bottom:12px;}
.veh-meta b{color:#1A1A1A;}
.veh-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.veh-btn{font-size:13px;font-weight:700;padding:9px 14px;border-radius:9px;}
.veh-btn.buy{background:#1947BA;color:#fff;} .veh-btn.buy:hover{background:#0F3491;}
.veh-btn.sub{background:#FFF4D9;color:#B97D00;border:1.5px solid #F2AB00;} .veh-btn.sub:hover{background:#ffeec2;}
.veh-btn.edit{background:#EEF3FF;color:#1947BA;border:1.5px solid rgba(25,71,186,.25);} .veh-btn.edit:hover{background:#e2ebff;}
.veh-alarm{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:12.5px;color:#777;cursor:pointer;user-select:none;}
.veh-alarm .sw{width:38px;height:22px;border-radius:100px;background:#ccc;position:relative;transition:background .15s;flex-shrink:0;}
.veh-alarm .sw::after{content:'';position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;}
.veh-alarm.on .sw{background:#1E8C57;} .veh-alarm.on .sw::after{transform:translateX(16px);}
.gg-empty{text-align:center;padding:50px 20px;color:#999;background:#fff;border:1px dashed rgba(26,26,26,.18);border-radius:16px;}
.gg-empty .ei{font-size:40px;display:block;margin-bottom:12px;}
.gg-summary{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.gg-sum{flex:1;min-width:110px;background:#fff;border:1px solid rgba(26,26,26,.1);border-radius:12px;padding:13px 15px;}
.gg-sum .n{font-size:22px;font-weight:800;font-family:'Space Grotesk',sans-serif;}
.gg-sum .l{font-size:12px;color:#888;margin-top:2px;}
.gg-sum.alert .n{color:#E0483A;}
.gg-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:#1A1A1A;color:#fff;font-size:14px;font-weight:600;padding:13px 22px;border-radius:100px;opacity:0;pointer-events:none;transition:all .25s;z-index:400;}
.gg-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* 수정·메모 모달 */
.gg-modal-overlay{display:none;position:fixed;inset:0;background:rgba(15,25,55,.5);z-index:500;align-items:center;justify-content:center;padding:18px;}
.gg-modal-overlay.show{display:flex;}
.gg-modal{background:#fff;border-radius:18px;width:100%;max-width:480px;max-height:88vh;overflow-y:auto;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.gg-modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;}
.gg-modal-head h3{font-size:19px;font-weight:800;color:#1A1A1A;}
.gg-modal-head h3 small{display:block;font-size:12.5px;color:#999;font-weight:500;margin-top:3px;}
.gg-x{font-size:24px;color:#bbb;line-height:1;padding:0 4px;} .gg-x:hover{color:#1A1A1A;}
.gg-check-row{display:flex;gap:18px;margin:6px 0 4px;font-size:14px;}
.gg-check-row label{display:flex;align-items:center;gap:7px;font-weight:600;color:#444;cursor:pointer;}
.gg-memo-sec{margin-top:18px;border-top:1px solid rgba(26,26,26,.1);padding-top:16px;}
.gg-memo-title{font-size:14px;font-weight:800;margin-bottom:10px;}
.gg-memo-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:13.5px;color:#444;padding:9px 0;border-bottom:1px dashed rgba(26,26,26,.1);line-height:1.5;}
.gg-memo-item .gm-date{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:#999;margin-right:6px;}
.gm-del{color:#bbb;font-size:12px;font-weight:600;flex-shrink:0;} .gm-del:hover{color:#E0483A;}
.gg-memo-empty{font-size:12.5px;color:#aaa;padding:8px 0;}
.gg-memo-add{display:flex;gap:8px;margin-top:12px;}
.gg-memo-add .gg-input{flex:1;}
.gg-memo-btn{background:#1947BA;color:#fff;font-size:13.5px;font-weight:700;padding:0 18px;border-radius:9px;white-space:nowrap;}
.gg-modal-foot{display:flex;justify-content:space-between;align-items:center;margin-top:22px;}
.gg-del-btn{color:#E0483A;font-size:13px;font-weight:700;}
.gg-btn-ghost{color:#888;font-size:14px;font-weight:700;padding:10px 16px;}
.gg-btn-primary{background:#1947BA;color:#fff;font-size:14px;font-weight:700;padding:10px 20px;border-radius:9px;} .gg-btn-primary:hover{background:#0F3491;}
