*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #0f1117;--color-surface: #1a1d27;--color-surface-hover: #242736;--color-border: #2a2d3a;--color-text: #e4e6ed;--color-text-muted: #9196a6;--color-primary: #4f8cff;--color-urgent: #f14c4c;--color-high: #f09c3a;--color-medium: #4f8cff;--color-low: #9196a6;--color-backlog: #6b7280;--color-planned: #4f8cff;--color-in-progress: #8b5cf6;--color-waiting-approval: #f09c3a;--color-blocked: #f14c4c;--color-done: #22c55e;--color-canceled: #6b7280;--color-platform-mercari: #f14c4c;--color-platform-rakuten: #bf3a2b;--color-platform-amazon: #f09c3a;--radius: 8px;--radius-sm: 4px}html{font-size:14px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.5;min-height:100vh}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}input,textarea,select{font-family:inherit;font-size:inherit}.layout{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:1.5rem 0;flex-shrink:0}.sidebar h1{font-size:1rem;font-weight:600;padding:0 1.25rem;margin-bottom:1.5rem;color:var(--color-text)}.sidebar nav{display:flex;flex-direction:column}.sidebar nav a{padding:.5rem 1.25rem;color:var(--color-text-muted);font-size:.9rem;transition:background .15s,color .15s}.sidebar nav a:hover{background:var(--color-surface-hover);color:var(--color-text);text-decoration:none}.sidebar nav a.active{color:var(--color-primary);background:var(--color-surface-hover)}.main-content{flex:1;padding:1.5rem 2rem;overflow-y:auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header h2{font-size:1.25rem;font-weight:600}.btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:.85rem;cursor:pointer;transition:background .15s}.btn:hover{background:var(--color-surface-hover)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover{opacity:.9}.btn-sm{padding:.3rem .6rem;font-size:.8rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.text-sm{font-size:.85rem}.text-xs{font-size:.75rem}.text-muted{color:var(--color-text-muted)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid{display:grid}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}.grid-cols-7{grid-template-columns:repeat(7,1fr)}.col-span-1{grid-column:span 1}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{font-size:.85rem;color:var(--color-text-muted);font-weight:500}.form-group input,.form-group textarea,.form-group select{padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text)}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.attachment-list{display:flex;flex-direction:column;gap:.5rem}.attachment-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:.75rem;align-items:center;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.attachment-item:not(:has(.attachment-preview)){grid-template-columns:minmax(0,1fr)}.attachment-preview{width:72px;height:72px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg)}
